Interface SingleMachineSchedulingProblem
-
- All Superinterfaces:
IntegerCostOptimizationProblem<Permutation>
,Problem<Permutation>
- All Known Implementing Classes:
MinimizeMakespan
,MinimizeMaximumFlowtime
,MinimizeMaximumLateness
,MinimizeMaximumTardiness
,WeightedEarlinessTardiness
,WeightedFlowtime
,WeightedLateness
,WeightedNumberTardyJobs
,WeightedSquaredTardiness
,WeightedTardiness
public interface SingleMachineSchedulingProblem extends IntegerCostOptimizationProblem<Permutation>
Implement this interface to define a single machine scheduling problem. A class that implements this interface should implement the cost function for the problem (i.e., the function we are optimizing) and must utilize a class implementing theSingleMachineSchedulingProblemData
interface to represent the data describing the instance, such as processing times, due dates, etc. You may have a single class that implements both interfaces, if desired, in which case, thegetInstanceData()
could just return the this reference.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description SingleMachineSchedulingProblemData
getInstanceData()
Gets an object that encapsulates the data describing the scheduling problem instance, such as number of jobs, and the characteristics of the jobs, such as processing times, setup times, due dates, weights, etc.-
Methods inherited from interface org.cicirello.search.problems.IntegerCostOptimizationProblem
cost, getSolutionCostPair, isMinCost, minCost, value
-
-
-
-
Method Detail
-
getInstanceData
SingleMachineSchedulingProblemData getInstanceData()
Gets an object that encapsulates the data describing the scheduling problem instance, such as number of jobs, and the characteristics of the jobs, such as processing times, setup times, due dates, weights, etc.- Returns:
- an encapsulation of the data describing the scheduling problem instance
-
-