Class Schedule
- java.lang.Object
-
- ai.libs.jaicore.problems.scheduling.Schedule
-
-
Method Summary
-
-
-
Method Detail
-
getAssignments
public java.util.List<Pair<Operation,Machine>> getAssignments()
- Specified by:
getAssignments
in interfaceISchedule
-
getOperationsAssignedToMachine
public java.util.List<Operation> getOperationsAssignedToMachine(Machine m)
- Specified by:
getOperationsAssignedToMachine
in interfaceISchedule
-
getOrderOfOperationsForJob
public java.util.List<Operation> getOrderOfOperationsForJob(Job job)
- Specified by:
getOrderOfOperationsForJob
in interfaceISchedule
-
getStartTimeOfOperation
public int getStartTimeOfOperation(Operation o)
- Specified by:
getStartTimeOfOperation
in interfaceISchedule
-
getEndTimeOfOperation
public int getEndTimeOfOperation(Operation o)
- Specified by:
getEndTimeOfOperation
in interfaceISchedule
-
getSetupStartTimeOfOperation
public int getSetupStartTimeOfOperation(Operation o)
- Specified by:
getSetupStartTimeOfOperation
in interfaceISchedule
-
getSetupEndTimeOfOperation
public int getSetupEndTimeOfOperation(Operation o)
- Specified by:
getSetupEndTimeOfOperation
in interfaceISchedule
-
getJobFinishTime
public int getJobFinishTime(Job job)
- Specified by:
getJobFinishTime
in interfaceISchedule
-
getJobFlowTime
public int getJobFlowTime(Job job)
- Specified by:
getJobFlowTime
in interfaceISchedule
- Parameters:
job
-- Returns:
-
getJobTardiness
public int getJobTardiness(Job job)
- Specified by:
getJobTardiness
in interfaceISchedule
-
getAsString
public java.lang.String getAsString()
-
getGanttAsString
public java.lang.String getGanttAsString()
-
isActive
public boolean isActive()
A schedule is active if no operation can be scheduled earlier without any other change. This method determines whether the schedule is active.- Returns:
-
canOperationBeScheduledEarlierWithoutAnyOtherEffect
public boolean canOperationBeScheduledEarlierWithoutAnyOtherEffect(Operation o)
-
getEarliestTimeWhenMachineIsFreeForDurationInInterval
public int getEarliestTimeWhenMachineIsFreeForDurationInInterval(Machine m, int start, int end, Operation op)
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equals
in classjava.lang.Object
-
getMachineToWhichOperationHasBeenAssigned
public Machine getMachineToWhichOperationHasBeenAssigned(Operation o)
- Specified by:
getMachineToWhichOperationHasBeenAssigned
in interfaceISchedule
-
-