java.lang.Object
org.maxicp.search.blackbox.RunnableSearch
org.maxicp.search.blackbox.SchedulingLNSRunnableSearch
Large Neighborhood Search (LNS) improvement phase for scheduling and hybrid scheduling+integer models.
Rotates across three scheduling neighborhood operators:
- Prefix time-window freeze: fixes tasks starting before a cutoff time
tCutwhile relaxing the suffix so later tasks can be re-sequenced and left-shifted. - Random subset freeze with left-shift allowance: freezes a random subset of non-critical
tasks (either fixing
start == incStartor boundingstart <= incStart). - Optional-presence / contiguous-block relaxation: for optional-interval models (such as Flexible Job Shop), freezes the presence/machine assignment of most tasks while re-optimizing the remaining alternatives and start times; for mandatory-interval models, relaxes a contiguous block of tasks.
-
Field Summary
Fields inherited from class org.maxicp.search.blackbox.RunnableSearch
blackBoxSearch -
Constructor Summary
ConstructorsConstructorDescriptionSchedulingLNSRunnableSearch(BlackBoxSearch blackBoxSearch, ModelDispatcher model, List<IntervalVar> intervals, List<IntExpression> vars, Objective objective, int failureLimitPerRestart, int initialFreezeRatePercent, long randomSeed) -
Method Summary
Methods inherited from class org.maxicp.search.blackbox.RunnableSearch
hasFeasibleSolution
-
Constructor Details
-
SchedulingLNSRunnableSearch
public SchedulingLNSRunnableSearch(BlackBoxSearch blackBoxSearch, ModelDispatcher model, List<IntervalVar> intervals, List<IntExpression> vars, Objective objective, int failureLimitPerRestart, int initialFreezeRatePercent, long randomSeed)
-
-
Method Details
-
run
-