Changeset 4346 for branches/VRP/HeuristicLab.Problems.VehicleRouting/3.3/Encodings/Alba/Moves/IntraRouteInversion/AlbaExhaustiveIntraRouteInversionMoveGenerator.cs
- Timestamp:
- 08/31/10 14:03:12 (14 years ago)
- File:
-
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
branches/VRP/HeuristicLab.Problems.VehicleRouting/3.3/Encodings/Alba/Moves/IntraRouteInversion/AlbaExhaustiveIntraRouteInversionMoveGenerator.cs
r4341 r4346 29 29 30 30 namespace HeuristicLab.Problems.VehicleRouting.Encodings.Alba { 31 [Item(" ExhaustiveIntraRouteInversionGenerator", "Generates all possible intra route inversion moves from a given VRP encoding.")]31 [Item("AlbaExhaustiveIntraRouteInversionGenerator", "Generates all possible intra route inversion moves from a given VRP encoding. It is implemented as described in Alba, E. and Dorronsoro, B. (2004). Solving the Vehicle Routing Problem by Using Cellular Genetic Algorithms.")] 32 32 [StorableClass] 33 public sealed class ExhaustiveIntraRouteInversionGenerator :IntraRouteInversionMoveGenerator, IExhaustiveMoveGenerator, IAlbaIntraRouteInversionMoveOperator {33 public sealed class AlbaExhaustiveIntraRouteInversionGenerator : AlbaIntraRouteInversionMoveGenerator, IExhaustiveMoveGenerator, IAlbaIntraRouteInversionMoveOperator { 34 34 [StorableConstructor] 35 private ExhaustiveIntraRouteInversionGenerator(bool deserializing) : base(deserializing) { }35 private AlbaExhaustiveIntraRouteInversionGenerator(bool deserializing) : base(deserializing) { } 36 36 37 public ExhaustiveIntraRouteInversionGenerator()37 public AlbaExhaustiveIntraRouteInversionGenerator() 38 38 : base() { 39 39 } 40 40 41 protected override IntraRouteInversionMove[] GenerateMoves(AlbaEncoding individual) {42 List< IntraRouteInversionMove> moves = new List<IntraRouteInversionMove>();41 protected override AlbaIntraRouteInversionMove[] GenerateMoves(AlbaEncoding individual) { 42 List<AlbaIntraRouteInversionMove> moves = new List<AlbaIntraRouteInversionMove>(); 43 43 44 44 int currentTourStart = 0; … … 55 55 for (int i = 0; i <= tourLength - 4; i++ ) { 56 56 for (int j = i + 2; j <= tourLength - 2; j++) { 57 IntraRouteInversionMove move = newIntraRouteInversionMove(57 AlbaIntraRouteInversionMove move = new AlbaIntraRouteInversionMove( 58 58 currentTourStart + i, 59 59 currentTourStart + j,
Note: See TracChangeset
for help on using the changeset viewer.