- Timestamp:
- 07/03/08 09:52:15 (16 years ago)
- Location:
- trunk/sources/HeuristicLab.Scheduling.JSSP
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Scheduling.JSSP/ScheduleInjector.cs
r77 r361 43 43 AddVariableInfo(new VariableInfo("Timespan", "Desired timespan for the schedule", typeof(IntData), VariableKind.In)); 44 44 GetVariableInfo("Timespan").Local = true; 45 AddVariable(new Variable("Timespan", new IntData( 10000)));45 AddVariable(new Variable("Timespan", new IntData(Int32.MaxValue))); 46 46 AddVariableInfo(new VariableInfo("Schedule", "Schedule", typeof(Schedule), VariableKind.New)); 47 47 } -
trunk/sources/HeuristicLab.Scheduling.JSSP/ScheduleTree.cs
r2 r361 110 110 111 111 private bool FitsIntoEmptySlot(TimeSlot slot, int start, int duration) { 112 return ((slot.free >= duration) && (slot.start <= start) && (slot.end >= start + duration)); 112 // beware of operations with processing time zero --> check operation != null 113 return ((slot.free >= duration) && (slot.start <= start) && (slot.end >= start + duration) && (slot.operation == null)); 113 114 } 114 115 … … 133 134 } 134 135 if(IsLeaf(slot)) { 135 // fits exactly into slot 136 if((slot.Data.start == op.Start) && (slot.Data.end == end) ) {136 // fits exactly into slot; beware of operations with processing time 0 --> check operation != null 137 if((slot.Data.start == op.Start) && (slot.Data.end == end) && (slot.Data.operation == null)) { 137 138 slot.Data = new TimeSlot(op); 138 139 UpdateMaxFreeSlot(slot);
Note: See TracChangeset
for help on using the changeset viewer.