choco.cp.solver.constraints.global.scheduling.disjunctive
Class AltDisjunctive

java.lang.Object
  extended by choco.kernel.solver.propagation.Propagator
      extended by choco.kernel.solver.constraints.AbstractSConstraint<IntDomainVar>
          extended by choco.kernel.solver.constraints.integer.AbstractIntSConstraint
              extended by choco.kernel.solver.constraints.integer.AbstractLargeIntSConstraint
                  extended by choco.kernel.solver.constraints.global.scheduling.AbstractTaskSConstraint
                      extended by choco.cp.solver.constraints.global.scheduling.AbstractResourceSConstraint
                          extended by choco.cp.solver.constraints.global.scheduling.disjunctive.Disjunctive
                              extended by choco.cp.solver.constraints.global.scheduling.disjunctive.AltDisjunctive
All Implemented Interfaces:
IExtensionnable, IPretty, IResource<TaskVar>, IResourceParameters, SConstraint<IntDomainVar>, IntPropagator, TaskPropagator, Serializable, Cloneable, EventListener

public class AltDisjunctive
extends Disjunctive

Since:
2 mars 2009 version 2.0.3
Version:
2.0.3
Author:
Arnaud Malapert
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class choco.cp.solver.constraints.global.scheduling.disjunctive.Disjunctive
Disjunctive.Policy
 
Field Summary
 
Fields inherited from class choco.cp.solver.constraints.global.scheduling.disjunctive.Disjunctive
DETECTABLE_PRECEDENCE, EDGE_FINDING_D, NF_NL, OVERLOAD_CHECKING, policy, rules
 
Fields inherited from class choco.cp.solver.constraints.global.scheduling.AbstractResourceSConstraint
flags, indexUB, makespan, name, rtasks, TASK_MASK
 
Fields inherited from class choco.kernel.solver.constraints.global.scheduling.AbstractTaskSConstraint
endOffset, startOffset, taskIntVarOffset, taskvars
 
Fields inherited from class choco.kernel.solver.constraints.AbstractSConstraint
cIndices, constraintType, extensions, vars
 
Fields inherited from class choco.kernel.solver.propagation.Propagator
active, constAwakeEvent, priority, propagationEngine
 
Fields inherited from interface choco.kernel.solver.constraints.SConstraint
LOGGER
 
Constructor Summary
AltDisjunctive(Solver solver, String name, TaskVar[] taskvars, IntDomainVar[] usages, IntDomainVar makespan)
           
 
Method Summary
 void awakeOnRem(int varIdx, int val)
          Default propagation on one value removal: propagation on domain revision.
 void awakeOnRemovals(int idx, DisposableIntIterator deltaDomain)
          The default implementation of propagation when a variable has been modified consists in iterating all values that have been removed (the delta domain) and propagate them one after another, incrementally.
 void fireTaskRemoval(IRTask rtask)
           
 int getFilteredEventMask(int idx)
           
 void propagate()
          Propagate.
 
Methods inherited from class choco.cp.solver.constraints.global.scheduling.disjunctive.Disjunctive
applySingleRule, defaultFiltering, isSatisfied, isTaskConsistencyEnforced, noSingleRule, readOptions, setFilteringPolicy, singleRuleFiltering, vilimFiltering
 
Methods inherited from class choco.cp.solver.constraints.global.scheduling.AbstractResourceSConstraint
asRTaskList, asTaskList, awake, awakeOnBounds, awakeOnInf, awakeOnInst, awakeOnSup, checkTask, enforceTaskConsistency, getFlags, getHeight, getHeightIndex, getNbOptionalTasks, getNbRegularTasks, getRscName, getRTask, getRTaskIterator, getTaskIterator, getUsageIndex, indexOf, isCumulativeSatisfied, isRegular, isTaskSatisfied, pretty
 
Methods inherited from class choco.kernel.solver.constraints.global.scheduling.AbstractTaskSConstraint
addListener, awakeOnHypDomMod, createTaskVarArray, getDurationIndex, getEndIndex, getNbTasks, getStartIndex, getTask, getTaskIntVarOffset, makeIntVarArray, pretty
 
Methods inherited from class choco.kernel.solver.constraints.integer.AbstractIntSConstraint
getConstraintType, isConsistent, isSatisfied
 
Methods inherited from class choco.kernel.solver.constraints.AbstractSConstraint
addExtension, clone, getAbstractSConstraintExtensionNumber, getConstraintIdx, getExtension, getFineDegree, getNbVarNotInst, getNbVars, getVar, getVarQuick, isCompletelyInstantiated, isEntailed, opposite, setConstraintIndex, setExtension, setVar, toString
 
Methods inherited from class choco.kernel.solver.propagation.Propagator
activate, constAwake, fail, getEvent, getPriority, isActive, setActive, setActiveSilently, setEntailed, setPassive, setPropagationEngine
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface choco.kernel.solver.constraints.global.scheduling.IResource
getNbTasks, getTask
 

Constructor Detail

AltDisjunctive

public AltDisjunctive(Solver solver,
                      String name,
                      TaskVar[] taskvars,
                      IntDomainVar[] usages,
                      IntDomainVar makespan)
Method Detail

fireTaskRemoval

public void fireTaskRemoval(IRTask rtask)
Overrides:
fireTaskRemoval in class AbstractResourceSConstraint

getFilteredEventMask

public int getFilteredEventMask(int idx)
Overrides:
getFilteredEventMask in class AbstractResourceSConstraint

awakeOnRem

public void awakeOnRem(int varIdx,
                       int val)
                throws ContradictionException
Description copied from class: AbstractIntSConstraint
Default propagation on one value removal: propagation on domain revision.

Specified by:
awakeOnRem in interface IntPropagator
Overrides:
awakeOnRem in class AbstractTaskSConstraint
Throws:
ContradictionException

awakeOnRemovals

public void awakeOnRemovals(int idx,
                            DisposableIntIterator deltaDomain)
                     throws ContradictionException
Description copied from class: AbstractIntSConstraint
The default implementation of propagation when a variable has been modified consists in iterating all values that have been removed (the delta domain) and propagate them one after another, incrementally.

Specified by:
awakeOnRemovals in interface IntPropagator
Overrides:
awakeOnRemovals in class AbstractTaskSConstraint
Throws:
ContradictionException

propagate

public void propagate()
               throws ContradictionException
Description copied from class: Disjunctive
Propagate. called for any bound events.

Overrides:
propagate in class Disjunctive
Throws:
ContradictionException - the contradiction exception
See Also:
Propagator.propagate()


Copyright © 2012. All Rights Reserved.