Changeset 8053 for trunk/sources/HeuristicLab.Problems.VehicleRouting/3.4/Encodings/Alba/AlbaEncoding.cs
- Timestamp:
- 06/19/12 13:17:29 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Problems.VehicleRouting/3.4/Encodings/Alba/AlbaEncoding.cs
r7906 r8053 1 1 #region License Information 2 2 /* HeuristicLab 3 * Copyright (C) 2002-201 0Heuristic and Evolutionary Algorithms Laboratory (HEAL)3 * Copyright (C) 2002-2012 Heuristic and Evolutionary Algorithms Laboratory (HEAL) 4 4 * 5 5 * This file is part of HeuristicLab. … … 20 20 #endregion 21 21 22 using System.Collections.Generic; 22 23 using HeuristicLab.Common; 23 24 using HeuristicLab.Core; … … 25 26 using HeuristicLab.Encodings.PermutationEncoding; 26 27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 27 using System.Collections.Generic;28 28 using HeuristicLab.Problems.VehicleRouting.Encodings.General; 29 29 using HeuristicLab.Problems.VehicleRouting.Interfaces; 30 using HeuristicLab.Problems.VehicleRouting.Variants;31 30 32 31 namespace HeuristicLab.Problems.VehicleRouting.Encodings.Alba { 33 32 [Item("AlbaEncoding", "Represents an Alba encoding of VRP solutions. It is implemented as described in Alba, E. and Dorronsoro, B. (2004). Solving the Vehicle Routing Problem by Using Cellular Genetic Algorithms.")] 34 33 [StorableClass] 35 public class AlbaEncoding : PermutationEncoding {34 public class AlbaEncoding : PermutationEncoding { 36 35 #region IVRPEncoding Members 37 36 public override List<Tour> GetTours() { … … 40 39 41 40 int cities = ProblemInstance.Cities.Value; 42 41 43 42 Tour tour = new Tour(); 44 43 for (int i = 0; i < this.array.Length; i++) { … … 77 76 vehicleAssignment = this.array[i] - ProblemInstance.Cities.Value; 78 77 } 79 78 80 79 i--; 81 80 } 82 } 83 else 81 } else 84 82 vehicleAssignment = this[lastStopIndex + 1] - this.ProblemInstance.Cities.Value; 85 83 … … 123 121 public static AlbaEncoding ConvertFrom(List<int> routeParam, IVRPProblemInstance instance) { 124 122 List<int> route = new List<int>(routeParam); 125 123 126 124 int cities = instance.Cities.Value; 127 125 … … 153 151 int delimiter = 0; 154 152 int arrayIndex = 0; 155 153 156 154 foreach (Tour tour in tours) { 157 155 foreach (int city in tour.Stops) { … … 162 160 if (arrayIndex != array.Length) { 163 161 array[arrayIndex] = cities + encoding.GetVehicleAssignment(delimiter); 164 162 165 163 delimiter++; 166 164 arrayIndex++;
Note: See TracChangeset
for help on using the changeset viewer.