public abstract class AbstractNAryTreeLPDelegate<T extends nl.tue.astar.Tail> extends AbstractNAryTreeDelegate<T> implements lpsolve.MsgListener
Modifier and Type | Field and Description |
---|---|
protected int[] |
cldCnt |
protected int |
columns |
protected int[] |
leaf2sync |
protected int[] |
maxValRHS |
protected java.util.Map<lpsolve.LpSolve,double[]> |
relaxed |
protected int |
rows |
protected nl.tue.astar.util.LPProblemProvider |
solvers |
protected int |
threads |
protected int |
timeOut |
protected int |
treeSize |
protected short[] |
types |
protected boolean |
useInt |
protected boolean |
useORrows |
protected boolean |
useSemCon |
protected int |
varUpBo |
algorithm, classes, configurationNumber, headCompressor, localStateBuilder, node2cost, scaling, tree
Constructor and Description |
---|
AbstractNAryTreeLPDelegate(AStarAlgorithm algorithm,
NAryTree tree,
int configurationNumber,
int[] node2cost,
int threads,
boolean useInt,
boolean useSemiCon,
int timeOut,
int varUpBo) |
AbstractNAryTreeLPDelegate(AStarAlgorithm algorithm,
NAryTree tree,
int configurationNumber,
int[] node2cost,
int threads,
boolean useInt,
boolean useSemiCon,
int timeOut,
int varUpBo,
boolean useORRows) |
Modifier and Type | Method and Description |
---|---|
protected boolean |
canUtilizeMsgfunc() |
void |
deleteLPs() |
nl.tue.astar.util.LPResult |
estimate(byte[] state,
nl.tue.astar.util.ShortShortMultiset parikh,
int minCost) |
int |
getNumberVariables() |
int |
getSyncMoveVar(int leaf) |
boolean |
isIntVariables() |
void |
msgfunc(lpsolve.LpSolve solver,
java.lang.Object handle,
int message)
This routine is called when a situation specified in the mask parameter
of putMsgfunc occurs.
|
void |
printLp() |
void |
setAllowImplicitOrTermination(boolean allowImplicitOrTermination) |
protected double[] |
setupRhs(byte[] state,
nl.tue.astar.util.ShortShortMultiset parikh,
int minCost) |
protected byte[] |
setupRhsByte(byte[] state,
nl.tue.astar.util.ShortShortMultiset parikh,
int minCost)
Sets up the right hand side where every variable is represented by one
byte.
|
protected short[] |
setupRhsShort(byte[] state,
nl.tue.astar.util.ShortShortMultiset parikh,
int minCost)
Sets up the right hand side where every variable is represented by one
short.
|
createInitialRecord, enabledIterator, enabledIterator, getActivitiesFor, getAStarAlgorithm, getClassOf, getCostFor, getEventClass, getHeadBasedEqualOperation, getHeadBasedHashOperation, getHeadDeflater, getHeadInflater, getIndexOf, getLogMoveCost, getModelMoveCost, getScaling, getState, getStateBuilder, getStateSizeInBytes, getTree, isBlocked, isFinal, isLeaf, numEventClasses, numNodes, setPushDownUnderAND, setStateSpace, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
protected final nl.tue.astar.util.LPProblemProvider solvers
protected final boolean useInt
protected final boolean useSemCon
protected int rows
protected int columns
protected final int threads
protected final int[] leaf2sync
protected final int[] cldCnt
protected final short[] types
protected final java.util.Map<lpsolve.LpSolve,double[]> relaxed
protected final int timeOut
protected final boolean useORrows
protected final int treeSize
protected final int varUpBo
protected int[] maxValRHS
public AbstractNAryTreeLPDelegate(AStarAlgorithm algorithm, NAryTree tree, int configurationNumber, int[] node2cost, int threads, boolean useInt, boolean useSemiCon, int timeOut, int varUpBo)
public AbstractNAryTreeLPDelegate(AStarAlgorithm algorithm, NAryTree tree, int configurationNumber, int[] node2cost, int threads, boolean useInt, boolean useSemiCon, int timeOut, int varUpBo, boolean useORRows)
public boolean isIntVariables()
protected boolean canUtilizeMsgfunc()
public void setAllowImplicitOrTermination(boolean allowImplicitOrTermination)
setAllowImplicitOrTermination
in class AbstractNAryTreeDelegate<T extends nl.tue.astar.Tail>
public void msgfunc(lpsolve.LpSolve solver, java.lang.Object handle, int message) throws lpsolve.LpSolveException
lpsolve.MsgListener
msgfunc
in interface lpsolve.MsgListener
solver
- the problem this Listener was defined forhandle
- the userhandle object that was passed to putMsgfunc
message
- event code why this method was calledlpsolve.LpSolveException
public void deleteLPs()
public void printLp()
public int getSyncMoveVar(int leaf)
protected double[] setupRhs(byte[] state, nl.tue.astar.util.ShortShortMultiset parikh, int minCost)
protected short[] setupRhsShort(byte[] state, nl.tue.astar.util.ShortShortMultiset parikh, int minCost)
state
- parikh
- minCost
- length
- protected byte[] setupRhsByte(byte[] state, nl.tue.astar.util.ShortShortMultiset parikh, int minCost)
state
- parikh
- minCost
- length
- public nl.tue.astar.util.LPResult estimate(byte[] state, nl.tue.astar.util.ShortShortMultiset parikh, int minCost)
public int getNumberVariables()