Changeset 17698 for branches/2521_ProblemRefactoring/HeuristicLab.Problems.VehicleRouting/3.4/Encodings/Potvin/Crossovers/PotvinInsertionBasedCrossover.cs
- Timestamp:
- 07/24/20 00:58:42 (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2521_ProblemRefactoring/HeuristicLab.Problems.VehicleRouting/3.4/Encodings/Potvin/Crossovers/PotvinInsertionBasedCrossover.cs
r17226 r17698 51 51 } 52 52 53 private static int SelectRandomTourBiasedByLength(IRandom random, PotvinEncod ingindividual) {53 private static int SelectRandomTourBiasedByLength(IRandom random, PotvinEncodedSolution individual) { 54 54 int tourIndex = -1; 55 55 … … 109 109 } 110 110 111 private int SelectCityBiasedByNeighborDistance(IRandom random, Tour tour, IVRPEncod ingsolution) {111 private int SelectCityBiasedByNeighborDistance(IRandom random, Tour tour, IVRPEncodedSolution solution) { 112 112 int cityIndex = -1; 113 113 … … 150 150 151 151 private bool FindRouteInsertionPlace( 152 PotvinEncod ingindividual,152 PotvinEncodedSolution individual, 153 153 Tour tour, 154 154 int city, bool allowInfeasible, out int place) { … … 181 181 } 182 182 183 private ICollection<int> GetUnrouted(PotvinEncod ingsolution, int cities) {183 private ICollection<int> GetUnrouted(PotvinEncodedSolution solution, int cities) { 184 184 HashSet<int> undiscovered = new HashSet<int>(); 185 185 for (int i = 1; i <= cities; i++) { … … 195 195 } 196 196 197 protected override PotvinEncod ing Crossover(IRandom random, PotvinEncoding parent1, PotvinEncodingparent2) {198 PotvinEncod ing child = parent1.Clone() as PotvinEncoding;197 protected override PotvinEncodedSolution Crossover(IRandom random, PotvinEncodedSolution parent1, PotvinEncodedSolution parent2) { 198 PotvinEncodedSolution child = parent1.Clone() as PotvinEncodedSolution; 199 199 child.Tours.Clear(); 200 200 … … 202 202 203 203 List<Tour> R1 = new List<Tour>(); 204 PotvinEncod ing p1Clone = parent1.Clone() as PotvinEncoding;204 PotvinEncodedSolution p1Clone = parent1.Clone() as PotvinEncodedSolution; 205 205 206 206 int length = Math.Min(Length.Value.Value, parent1.Tours.Count) + 1; … … 277 277 else { 278 278 if (random.NextDouble() < 0.5) 279 return parent1.Clone() as PotvinEncod ing;279 return parent1.Clone() as PotvinEncodedSolution; 280 280 else 281 return parent2.Clone() as PotvinEncod ing;281 return parent2.Clone() as PotvinEncodedSolution; 282 282 } 283 283 }
Note: See TracChangeset
for help on using the changeset viewer.