|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectchoco.kernel.solver.branch.AbstractBranchingStrategy
choco.kernel.solver.branch.AbstractIntBranchingStrategy
choco.kernel.solver.branch.AbstractLargeIntBranchingStrategy
choco.cp.solver.search.task.SetTimes
public class SetTimes
A search designed to minimize makespan. The search is not complete, so don't try a solveAll.
Field Summary | |
---|---|
protected IStateInt[] |
flags
The flags which indicates the last starting time of non selectable task. |
protected IStateBitSet |
nselect
The subset of non selectable tasks. |
protected IStateBitSet |
select
The subset of selectable tasks. |
protected TaskVarSelector |
selector
select a task. |
protected gnu.trove.TObjectIntHashMap<TaskVar> |
taskIndexM
map of index |
protected List<TaskVar> |
tasksL
The tasks list. |
Fields inherited from class choco.kernel.solver.branch.AbstractBranchingStrategy |
---|
LOG_DECISION_MSG_ASSIGN, LOG_DECISION_MSG_REMOVE, LOG_DOWN_MSG, LOG_UP_MSG, manager |
Fields inherited from interface choco.kernel.solver.branch.BranchingStrategy |
---|
LOGGER |
Constructor Summary | |
---|---|
SetTimes(Solver solver,
List<TaskVar> tasks,
Comparator<ITask> comparator)
|
|
SetTimes(Solver solver,
List<TaskVar> tasks,
Comparator<ITask> comparator,
long seed)
|
|
SetTimes(Solver solver,
List<TaskVar> tasks,
TaskVarSelector selector)
The Constructor. |
Method Summary | |
---|---|
boolean |
finishedBranching(IntBranchingDecision decision)
Finished branching. |
String |
getDecisionLogMessage(IntBranchingDecision decision)
The logging message associated with the current decision. |
void |
goDownBranch(IntBranchingDecision decision)
select a remaining task with the heuristic and assign its earliest starting time. |
void |
goUpBranch(IntBranchingDecision decision)
set the task not selectable. |
void |
initBranching()
This method is called before launching the search. it may be used to intialiaze data structures or counters for instance. |
Object |
selectBranchingObject()
Select branching object. |
void |
setFirstBranch(IntBranchingDecision decision)
compute the first decision by setting a branching value or modifying the branching object |
void |
setNextBranch(IntBranchingDecision decision)
compute the next decision by setting a branching value or modifying the branching object |
Methods inherited from class choco.kernel.solver.branch.AbstractIntBranchingStrategy |
---|
getDefaultAssignMsg, getDefaultAssignOrForbidMsg |
Methods inherited from class choco.kernel.solver.branch.AbstractBranchingStrategy |
---|
getManager, getNextBranching, initConstraintForBranching, setNextBranching, setSolver |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected final IStateInt[] flags
protected final IStateBitSet select
protected final IStateBitSet nselect
protected final List<TaskVar> tasksL
protected final gnu.trove.TObjectIntHashMap<TaskVar> taskIndexM
protected final TaskVarSelector selector
Constructor Detail |
---|
public SetTimes(Solver solver, List<TaskVar> tasks, Comparator<ITask> comparator)
public SetTimes(Solver solver, List<TaskVar> tasks, Comparator<ITask> comparator, long seed)
public SetTimes(Solver solver, List<TaskVar> tasks, TaskVarSelector selector)
selector
- the heuristicsolver
- based solvertasks
- the selectablesMethod Detail |
---|
public void initBranching()
AbstractBranchingStrategy
initBranching
in class AbstractBranchingStrategy
public boolean finishedBranching(IntBranchingDecision decision)
decision
- the last decision applied
choco.kernel.solver.branch.IntBranching#finishedBranching(java.lang.Object, int)
public void setFirstBranch(IntBranchingDecision decision)
IntBranching
public void setNextBranch(IntBranchingDecision decision)
IntBranching
public Object selectBranchingObject() throws ContradictionException
ContradictionException
public void goDownBranch(IntBranchingDecision decision) throws ContradictionException
x
- the xi
- the i
ContradictionException
- the contradiction exceptionchoco.kernel.solver.branch.AbstractIntBranchingStrategy#goDownBranch(java.lang.Object, int)
public void goUpBranch(IntBranchingDecision decision) throws ContradictionException
decision
- the decision that has been set at the father choice point
ContradictionException
- if a domain empties or a contradiction is
inferedpublic String getDecisionLogMessage(IntBranchingDecision decision)
IntBranching
decision
- current decision
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |