Changeset 6851 for branches/VRP/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances/SingleDepotVRP/CVRP/CVRPEvaluator.cs
- Timestamp:
- 09/29/11 15:51:56 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/VRP/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances/SingleDepotVRP/CVRP/CVRPEvaluator.cs
r6838 r6851 38 38 [Item("CVRPEvaluator", "Represents a single depot CVRP evaluator.")] 39 39 [StorableClass] 40 public class CVRPEvaluator: SingleDepotVRPEvaluator {40 public class CVRPEvaluator: VRPEvaluator { 41 41 public ILookupParameter<DoubleValue> OverloadParameter { 42 42 get { return (ILookupParameter<DoubleValue>)Parameters["Overload"]; } … … 79 79 80 80 //drive there 81 double currentDistace = instance.GetDistance(start, end );81 double currentDistace = instance.GetDistance(start, end, solution); 82 82 distance += currentDistace; 83 83 … … 103 103 } 104 104 105 protected override double GetTourInsertionCosts(IVRPProblemInstance instance, TourInsertionInfo tourInsertionInfo, int index, int customer,105 protected override double GetTourInsertionCosts(IVRPProblemInstance instance, IVRPEncoding solution, TourInsertionInfo tourInsertionInfo, int index, int customer, 106 106 out bool feasible) { 107 107 CVRPInsertionInfo insertionInfo = tourInsertionInfo.GetStopInsertionInfo(index) as CVRPInsertionInfo; … … 113 113 double overloadPenalty = cvrp.OverloadPenalty.Value; 114 114 115 double distance = instance.GetDistance(insertionInfo.Start, insertionInfo.End );115 double distance = instance.GetDistance(insertionInfo.Start, insertionInfo.End, solution); 116 116 double newDistance = 117 instance.GetDistance(insertionInfo.Start, customer ) +118 instance.GetDistance(customer, insertionInfo.End );117 instance.GetDistance(insertionInfo.Start, customer, solution) + 118 instance.GetDistance(customer, insertionInfo.End, solution); 119 119 costs += instance.DistanceFactor.Value * (newDistance - distance); 120 120
Note: See TracChangeset
for help on using the changeset viewer.