public class PILPTail
extends java.lang.Object
implements nl.tue.astar.FastLowerBoundTail
| Modifier and Type | Field and Description |
|---|---|
protected int |
estimate |
protected boolean |
isExact |
protected short[] |
variables |
| Modifier | Constructor and Description |
|---|---|
protected |
PILPTail(int estimate,
short[] variables,
boolean isExact) |
|
PILPTail(PILPDelegate delegate,
PHead h,
int minCost) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
canComplete()
returns true if and only if the replay can finish according to this tail,
i.e.
|
void |
computeEstimate(nl.tue.astar.Delegate<? extends nl.tue.astar.Head,? extends nl.tue.astar.Tail> d,
nl.tue.astar.Head head,
int lastEstimate)
Starts the computation of the exact estimate on the first call.
|
int |
getEstimate() |
int |
getEstimatedCosts(nl.tue.astar.Delegate<? extends nl.tue.astar.Head,? extends nl.tue.astar.Tail> d,
nl.tue.astar.Head head)
get an estimate of the remaining distance to the target state in the
search.
|
PILPTail |
getNextTail(nl.tue.astar.Delegate<? extends nl.tue.astar.Head,? extends nl.tue.astar.Tail> d,
nl.tue.astar.Head newHead,
int modelMove,
int logMove,
int activity)
constructs the new tail based on the two operations from the old head.
|
<S> nl.tue.astar.Tail |
getNextTailFromStorage(nl.tue.astar.Delegate<? extends nl.tue.astar.Head,? extends nl.tue.astar.Tail> d,
nl.tue.storage.CompressedStore<S> store,
long index,
int modelMove,
int logMove,
int activity)
constructs the new tail based on the two operations from the old state,
which is stored in the given store at the given index.
|
static int |
getSizeFor(int variables) |
short[] |
getVariables() |
boolean |
isExactEstimateKnown()
This method should return true if the exact estimate is known.
|
protected int estimate
protected final short[] variables
protected boolean isExact
public PILPTail(PILPDelegate delegate, PHead h, int minCost)
protected PILPTail(int estimate,
short[] variables,
boolean isExact)
public static int getSizeFor(int variables)
public PILPTail getNextTail(nl.tue.astar.Delegate<? extends nl.tue.astar.Head,? extends nl.tue.astar.Tail> d, nl.tue.astar.Head newHead, int modelMove, int logMove, int activity)
nl.tue.astar.TailgetNextTail in interface nl.tue.astar.Tailpublic <S> nl.tue.astar.Tail getNextTailFromStorage(nl.tue.astar.Delegate<? extends nl.tue.astar.Head,? extends nl.tue.astar.Tail> d,
nl.tue.storage.CompressedStore<S> store,
long index,
int modelMove,
int logMove,
int activity)
throws java.io.IOException
nl.tue.astar.TailgetNextTailFromStorage in interface nl.tue.astar.Tailjava.io.IOExceptionpublic int getEstimatedCosts(nl.tue.astar.Delegate<? extends nl.tue.astar.Head,? extends nl.tue.astar.Tail> d,
nl.tue.astar.Head head)
nl.tue.astar.FastLowerBoundTailgetEstimatedCosts in interface nl.tue.astar.FastLowerBoundTailgetEstimatedCosts in interface nl.tue.astar.Tailpublic boolean canComplete()
nl.tue.astar.TailcanComplete in interface nl.tue.astar.Tailpublic int getEstimate()
public short[] getVariables()
public void computeEstimate(nl.tue.astar.Delegate<? extends nl.tue.astar.Head,? extends nl.tue.astar.Tail> d,
nl.tue.astar.Head head,
int lastEstimate)
nl.tue.astar.FastLowerBoundTailcomputeEstimate in interface nl.tue.astar.FastLowerBoundTailpublic boolean isExactEstimateKnown()
nl.tue.astar.FastLowerBoundTailisExactEstimateKnown in interface nl.tue.astar.FastLowerBoundTail