Class VariableReleaseDatesSchedulingComputer
- java.lang.Object
-
- ai.libs.jaicore.problems.scheduling.ASchedulingComputer
-
- ai.libs.jaicore.problems.scheduling.computers.VariableReleaseDatesSchedulingComputer
-
- All Implemented Interfaces:
IScheduleComputer
public class VariableReleaseDatesSchedulingComputer extends ASchedulingComputer
The unique aspect of this computer is that Job release dates are ignored. Instead, release dates are automatically derived from the assignments and the latest arrival date: The release date is set to the minimum of the processing time and the latest allowed arrival time.
-
-
Constructor Summary
Constructors Constructor Description VariableReleaseDatesSchedulingComputer()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidfillTimes(IJobSchedulingInput problemInput, java.util.List<Pair<Operation,Machine>> assignments, java.util.Map<Job,java.lang.Integer> arrivalTimes, java.util.Map<Operation,java.lang.Integer> startTimes, java.util.Map<Operation,java.lang.Integer> endTimes, java.util.Map<Operation,java.lang.Integer> setupStartTimes, java.util.Map<Operation,java.lang.Integer> setupEndTimes)intgetTimeWhenMachineBecomesAvailableForOperation(java.util.Map<Job,java.lang.Integer> arrivalTimes, java.util.Map<Machine,java.lang.Integer> machineReadiness, Machine m)inttimeWhenOperationArrivesAtMachine(java.util.Map<Job,java.lang.Integer> arrivalTimes, java.util.Map<Machine,java.lang.Integer> machineReadiness, java.util.Map<Job,java.lang.Integer> jobReadyness, Operation o, Machine m)
-
-
-
Method Detail
-
fillTimes
public void fillTimes(IJobSchedulingInput problemInput, java.util.List<Pair<Operation,Machine>> assignments, java.util.Map<Job,java.lang.Integer> arrivalTimes, java.util.Map<Operation,java.lang.Integer> startTimes, java.util.Map<Operation,java.lang.Integer> endTimes, java.util.Map<Operation,java.lang.Integer> setupStartTimes, java.util.Map<Operation,java.lang.Integer> setupEndTimes)
- Specified by:
fillTimesin interfaceIScheduleComputer- Overrides:
fillTimesin classASchedulingComputer
-
getTimeWhenMachineBecomesAvailableForOperation
public int getTimeWhenMachineBecomesAvailableForOperation(java.util.Map<Job,java.lang.Integer> arrivalTimes, java.util.Map<Machine,java.lang.Integer> machineReadiness, Machine m)
- Specified by:
getTimeWhenMachineBecomesAvailableForOperationin classASchedulingComputer
-
timeWhenOperationArrivesAtMachine
public int timeWhenOperationArrivesAtMachine(java.util.Map<Job,java.lang.Integer> arrivalTimes, java.util.Map<Machine,java.lang.Integer> machineReadiness, java.util.Map<Job,java.lang.Integer> jobReadyness, Operation o, Machine m)
- Specified by:
timeWhenOperationArrivesAtMachinein classASchedulingComputer
-
-