Class IntVarLocalSearchOperator
- java.lang.Object
-
- com.google.ortools.constraintsolver.BaseObject
-
- com.google.ortools.constraintsolver.LocalSearchOperator
-
- com.google.ortools.constraintsolver.IntVarLocalSearchOperator
-
- Direct Known Subclasses:
BaseLns,ChangeValue,PathOperator
public class IntVarLocalSearchOperator extends LocalSearchOperator
Specialization of LocalSearchOperator built from an array of IntVars
which specifies the scope of the operator.
This class also takes care of storing current variable values in Start(),
keeps track of changes done by the operator and builds the delta.
The Deactivate() method can be used to perform Large Neighborhood Search.
-
-
Field Summary
-
Fields inherited from class com.google.ortools.constraintsolver.BaseObject
swigCMemOwn
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedIntVarLocalSearchOperator(long cPtr, boolean cMemoryOwn)IntVarLocalSearchOperator(IntVar[] vars)IntVarLocalSearchOperator(IntVar[] vars, boolean keep_inverse_values)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidactivate(long index)booleanactivated(long index)voidaddVars(IntVar[] vars)booleanApplyChanges(Assignment delta, Assignment deltadelta)voiddeactivate(long index)voiddelete()protected voidfinalize()protected static longgetCPtr(IntVarLocalSearchOperator obj)booleanHoldsDelta()booleanisIncremental()longoldValue(long index)protected booleanoneNeighbor()Creates a new neighbor.voidonStart()Called by Start() after synchronizing the operator with the current
assignment.longPrevValue(long index)voidRevertChanges(boolean change_was_incremental)voidsetValue(long index, long value)intsize()booleanSkipUnchanged(int index)voidstart(Assignment assignment)This method should not be overridden.protected voidswigDirectorDisconnect()protected static longswigRelease(IntVarLocalSearchOperator obj)voidswigReleaseOwnership()voidswigTakeOwnership()longvalue(long index)Returns the value in the current assignment of the variable of given
index.IntVarvar(long index)Returns the variable of given index.-
Methods inherited from class com.google.ortools.constraintsolver.LocalSearchOperator
getCPtr, HasFragments, nextNeighbor, reset, swigRelease
-
Methods inherited from class com.google.ortools.constraintsolver.BaseObject
getCPtr, swigRelease, toString
-
-
-
-
Method Detail
-
getCPtr
protected static long getCPtr(IntVarLocalSearchOperator obj)
-
swigRelease
protected static long swigRelease(IntVarLocalSearchOperator obj)
-
finalize
protected void finalize()
- Overrides:
finalizein classLocalSearchOperator
-
delete
public void delete()
- Overrides:
deletein classLocalSearchOperator
-
swigDirectorDisconnect
protected void swigDirectorDisconnect()
- Overrides:
swigDirectorDisconnectin classLocalSearchOperator
-
swigReleaseOwnership
public void swigReleaseOwnership()
- Overrides:
swigReleaseOwnershipin classLocalSearchOperator
-
swigTakeOwnership
public void swigTakeOwnership()
- Overrides:
swigTakeOwnershipin classLocalSearchOperator
-
HoldsDelta
public boolean HoldsDelta()
- Overrides:
HoldsDeltain classLocalSearchOperator
-
start
public void start(Assignment assignment)
This method should not be overridden. Override OnStart() instead which is
called before exiting this method.- Overrides:
startin classLocalSearchOperator
-
isIncremental
public boolean isIncremental()
-
size
public int size()
-
value
public long value(long index)
Returns the value in the current assignment of the variable of given
index.
-
var
public IntVar var(long index)
Returns the variable of given index.
-
SkipUnchanged
public boolean SkipUnchanged(int index)
-
oldValue
public long oldValue(long index)
-
PrevValue
public long PrevValue(long index)
-
setValue
public void setValue(long index, long value)
-
activated
public boolean activated(long index)
-
activate
public void activate(long index)
-
deactivate
public void deactivate(long index)
-
ApplyChanges
public boolean ApplyChanges(Assignment delta, Assignment deltadelta)
-
RevertChanges
public void RevertChanges(boolean change_was_incremental)
-
addVars
public void addVars(IntVar[] vars)
-
onStart
public void onStart()
Called by Start() after synchronizing the operator with the current
assignment. Should be overridden instead of Start() to avoid calling
IntVarLocalSearchOperator::Start explicitly.
-
oneNeighbor
protected boolean oneNeighbor()
Creates a new neighbor. It returns false when the neighborhood is
completely explored.
MakeNextNeighbor() in a subclass of IntVarLocalSearchOperator.
-
-