Changeset 7807 for branches/GeneralizedQAP/HeuristicLab.Problems.GeneralizedQuadraticAssignment/3.3/Operators/Manipulators
- Timestamp:
- 05/14/12 15:59:39 (13 years ago)
- Location:
- branches/GeneralizedQAP/HeuristicLab.Problems.GeneralizedQuadraticAssignment/3.3/Operators/Manipulators
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/GeneralizedQAP/HeuristicLab.Problems.GeneralizedQuadraticAssignment/3.3/Operators/Manipulators/DemandEquivalentSwapEquipmentManipluator.cs
r7523 r7807 80 80 groupedLocations[location2].Remove(equipment2); 81 81 if (!groupedLocations[location2].Any()) break; 82 equipment2 = groupedLocations[location2]. ChooseUniformRandom(random);82 equipment2 = groupedLocations[location2].SampleRandom(random); 83 83 } 84 84 } -
branches/GeneralizedQAP/HeuristicLab.Problems.GeneralizedQuadraticAssignment/3.3/Operators/Manipulators/RelocateEquipmentManipluator.cs
r7523 r7807 79 79 } 80 80 81 var sourceLocation = overbookedLocations. ChooseUniformRandom(random);82 int equipmentToRelocate = groupedLocations[sourceLocation.Key]. ChooseUniformRandom(random);81 var sourceLocation = overbookedLocations.SampleRandom(random); 82 int equipmentToRelocate = groupedLocations[sourceLocation.Key].SampleRandom(random); 83 83 var bestFreeLocations = freeLocations.Where(x => capacities[x.Key] > x.Value + demands[equipmentToRelocate]); 84 84 85 85 if (bestFreeLocations.Any()) { // a feasible solution will still be feasible, an infeasible solution might become feasible 86 var selected = bestFreeLocations. ChooseUniformRandom(random);86 var selected = bestFreeLocations.SampleRandom(random); 87 87 assignment[equipmentToRelocate] = sourceLocation.Key; 88 88 } else { // the solution will become infeasible 89 sourceLocation = freeLocations. ChooseUniformRandom(random);89 sourceLocation = freeLocations.SampleRandom(random); 90 90 assignment[equipmentToRelocate] = sourceLocation.Key; 91 91 }
Note: See TracChangeset
for help on using the changeset viewer.