Class TSFastLowerBound
java.lang.Object
org.ddolib.examples.talentscheduling.TSFastLowerBound
- All Implemented Interfaces:
FastLowerBound<TSState>
Implementation of a fast lower bound for the Talent Scheduling Problem (TSP).
This class computes a heuristic lower bound on the total cost of a partially scheduled solution, based on the method described in Garcia et al.. It takes into account both the duration of scenes and the actor costs for scenes that are not yet scheduled.
The bound is computed in two main steps:
- Compute a contribution for each unscheduled scene based on actors present and their costs.
- Adjust for cumulative actor contributions using ratios and sort actors to estimate the remaining cost.
This lower bound is intended for use with search algorithms (e.g., ACS, A*, DDO) to prune suboptimal branches efficiently.
-
Constructor Summary
ConstructorsConstructorDescriptionTSFastLowerBound(TSProblem problem) Constructs a fast lower bound calculator for a given TSP problem. -
Method Summary
Modifier and TypeMethodDescriptiondoublefastLowerBound(TSState state, Set<Integer> variables) Computes a fast lower bound on the total cost from the given partial state.
-
Constructor Details
-
TSFastLowerBound
Constructs a fast lower bound calculator for a given TSP problem.- Parameters:
problem- The Talent Scheduling Problem instance.
-
-
Method Details
-
fastLowerBound
Computes a fast lower bound on the total cost from the given partial state.- Specified by:
fastLowerBoundin interfaceFastLowerBound<TSState>- Parameters:
state- The current state of the scheduling problem.variables- The set of variables (scenes) still to be scheduled.- Returns:
- The computed lower bound on the total cost, rounded up.
-