Changeset 17698 for branches/2521_ProblemRefactoring/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances
- Timestamp:
- 07/24/20 00:58:42 (4 years ago)
- Location:
- branches/2521_ProblemRefactoring/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances
- Files:
-
- 12 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2521_ProblemRefactoring/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances/MultiDepotVRP/MDCVRP/MDCVRPEvaluator.cs
r17226 r17698 40 40 } 41 41 42 protected override void EvaluateTour(VRPEvaluation eval, IVRPProblemInstance instance, Tour tour, IVRPEncod ingsolution) {42 protected override void EvaluateTour(VRPEvaluation eval, IVRPProblemInstance instance, Tour tour, IVRPEncodedSolution solution) { 43 43 TourInsertionInfo tourInfo = new TourInsertionInfo(solution.GetVehicleAssignment(solution.GetTourIndex(tour))); 44 44 eval.InsertionInfo.AddTourInsertionInfo(tourInfo); … … 96 96 } 97 97 98 protected override double GetTourInsertionCosts(IVRPProblemInstance instance, IVRPEncod ingsolution, TourInsertionInfo tourInsertionInfo, int index, int customer,98 protected override double GetTourInsertionCosts(IVRPProblemInstance instance, IVRPEncodedSolution solution, TourInsertionInfo tourInsertionInfo, int index, int customer, 99 99 out bool feasible) { 100 100 CVRPInsertionInfo insertionInfo = tourInsertionInfo.GetStopInsertionInfo(index) as CVRPInsertionInfo; -
branches/2521_ProblemRefactoring/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances/MultiDepotVRP/MDCVRP/MDCVRPTW/MDCVRPPDTW/MDCVRPPDTWEvaluator.cs
r17226 r17698 42 42 } 43 43 44 protected override void EvaluateTour(VRPEvaluation eval, IVRPProblemInstance instance, Tour tour, IVRPEncod ingsolution) {44 protected override void EvaluateTour(VRPEvaluation eval, IVRPProblemInstance instance, Tour tour, IVRPEncodedSolution solution) { 45 45 TourInsertionInfo tourInfo = new TourInsertionInfo(solution.GetVehicleAssignment(solution.GetTourIndex(tour))); 46 46 eval.InsertionInfo.AddTourInsertionInfo(tourInfo); … … 182 182 } 183 183 184 protected override double GetTourInsertionCosts(IVRPProblemInstance instance, IVRPEncod ingsolution, TourInsertionInfo tourInsertionInfo, int index, int customer,184 protected override double GetTourInsertionCosts(IVRPProblemInstance instance, IVRPEncodedSolution solution, TourInsertionInfo tourInsertionInfo, int index, int customer, 185 185 out bool feasible) { 186 186 CVRPPDTWInsertionInfo insertionInfo = tourInsertionInfo.GetStopInsertionInfo(index) as CVRPPDTWInsertionInfo; -
branches/2521_ProblemRefactoring/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances/MultiDepotVRP/MDCVRP/MDCVRPTW/MDCVRPTWEvaluator.cs
r17226 r17698 45 45 } 46 46 47 protected override void EvaluateTour(VRPEvaluation eval, IVRPProblemInstance instance, Tour tour, IVRPEncod ingsolution) {47 protected override void EvaluateTour(VRPEvaluation eval, IVRPProblemInstance instance, Tour tour, IVRPEncodedSolution solution) { 48 48 TourInsertionInfo tourInfo = new TourInsertionInfo(solution.GetVehicleAssignment(solution.GetTourIndex(tour))); 49 49 eval.InsertionInfo.AddTourInsertionInfo(tourInfo); … … 161 161 } 162 162 163 protected override double GetTourInsertionCosts(IVRPProblemInstance instance, IVRPEncod ingsolution, TourInsertionInfo tourInsertionInfo, int index, int customer,163 protected override double GetTourInsertionCosts(IVRPProblemInstance instance, IVRPEncodedSolution solution, TourInsertionInfo tourInsertionInfo, int index, int customer, 164 164 out bool feasible) { 165 165 CVRPTWInsertionInfo insertionInfo = tourInsertionInfo.GetStopInsertionInfo(index) as CVRPTWInsertionInfo; -
branches/2521_ProblemRefactoring/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances/MultiDepotVRP/MultiDepotVRPEvaluator.cs
r17226 r17698 30 30 [StorableType("AFC33483-2E8A-4469-8216-1F4FEE0AEB51")] 31 31 public class MultiDepotVRPEvaluator : VRPEvaluator { 32 protected override void EvaluateTour(VRPEvaluation eval, IVRPProblemInstance instance, Tour tour, IVRPEncod ingsolution) {32 protected override void EvaluateTour(VRPEvaluation eval, IVRPProblemInstance instance, Tour tour, IVRPEncodedSolution solution) { 33 33 TourInsertionInfo tourInfo = new TourInsertionInfo(solution.GetVehicleAssignment(solution.GetTourIndex(tour))); 34 34 eval.InsertionInfo.AddTourInsertionInfo(tourInfo); … … 66 66 } 67 67 68 protected override double GetTourInsertionCosts(IVRPProblemInstance instance, IVRPEncod ingsolution, TourInsertionInfo tourInsertionInfo, int index, int customer,68 protected override double GetTourInsertionCosts(IVRPProblemInstance instance, IVRPEncodedSolution solution, TourInsertionInfo tourInsertionInfo, int index, int customer, 69 69 out bool feasible) { 70 70 StopInsertionInfo insertionInfo = tourInsertionInfo.GetStopInsertionInfo(index); -
branches/2521_ProblemRefactoring/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances/MultiDepotVRP/MultiDepotVRPProblemInstance.cs
r17226 r17698 116 116 } 117 117 118 public int GetDepot(int customer, IVRPEncod ingsolution) {118 public int GetDepot(int customer, IVRPEncodedSolution solution) { 119 119 int depot = -1; 120 120 … … 131 131 } 132 132 133 public override double GetDistance(int start, int end, IVRPEncod ingsolution) {133 public override double GetDistance(int start, int end, IVRPEncodedSolution solution) { 134 134 if (start == 0 && end == 0) 135 135 return 0; … … 149 149 } 150 150 151 public override double GetInsertionDistance(int start, int customer, int end, IVRPEncod ingsolution,151 public override double GetInsertionDistance(int start, int customer, int end, IVRPEncodedSolution solution, 152 152 out double startDistance, out double endDistance) { 153 153 if (start == 0) { -
branches/2521_ProblemRefactoring/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances/SingleDepotVRP/CVRP/CVRPEvaluator.cs
r17226 r17698 40 40 } 41 41 42 protected override void EvaluateTour(VRPEvaluation eval, IVRPProblemInstance instance, Tour tour, IVRPEncod ingsolution) {42 protected override void EvaluateTour(VRPEvaluation eval, IVRPProblemInstance instance, Tour tour, IVRPEncodedSolution solution) { 43 43 TourInsertionInfo tourInfo = new TourInsertionInfo(solution.GetVehicleAssignment(solution.GetTourIndex(tour))); ; 44 44 eval.InsertionInfo.AddTourInsertionInfo(tourInfo); … … 98 98 } 99 99 100 protected override double GetTourInsertionCosts(IVRPProblemInstance instance, IVRPEncod ingsolution, TourInsertionInfo tourInsertionInfo, int index, int customer,100 protected override double GetTourInsertionCosts(IVRPProblemInstance instance, IVRPEncodedSolution solution, TourInsertionInfo tourInsertionInfo, int index, int customer, 101 101 out bool feasible) { 102 102 CVRPInsertionInfo insertionInfo = tourInsertionInfo.GetStopInsertionInfo(index) as CVRPInsertionInfo; -
branches/2521_ProblemRefactoring/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances/SingleDepotVRP/CVRP/CVRPTW/CVRPPDTW/CVRPPDTWEvaluator.cs
r17226 r17698 42 42 } 43 43 44 protected override void EvaluateTour(VRPEvaluation eval, IVRPProblemInstance instance, Tour tour, IVRPEncod ingsolution) {44 protected override void EvaluateTour(VRPEvaluation eval, IVRPProblemInstance instance, Tour tour, IVRPEncodedSolution solution) { 45 45 TourInsertionInfo tourInfo = new TourInsertionInfo(solution.GetVehicleAssignment(solution.GetTourIndex(tour))); 46 46 eval.InsertionInfo.AddTourInsertionInfo(tourInfo); … … 167 167 } 168 168 169 protected override double GetTourInsertionCosts(IVRPProblemInstance instance, IVRPEncod ingsolution, TourInsertionInfo tourInsertionInfo, int index, int customer,169 protected override double GetTourInsertionCosts(IVRPProblemInstance instance, IVRPEncodedSolution solution, TourInsertionInfo tourInsertionInfo, int index, int customer, 170 170 out bool feasible) { 171 171 CVRPPDTWInsertionInfo insertionInfo = tourInsertionInfo.GetStopInsertionInfo(index) as CVRPPDTWInsertionInfo; -
branches/2521_ProblemRefactoring/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances/SingleDepotVRP/CVRP/CVRPTW/CVRPTWEvaluator.cs
r17226 r17698 45 45 } 46 46 47 protected override void EvaluateTour(VRPEvaluation eval, IVRPProblemInstance instance, Tour tour, IVRPEncod ingsolution) {47 protected override void EvaluateTour(VRPEvaluation eval, IVRPProblemInstance instance, Tour tour, IVRPEncodedSolution solution) { 48 48 TourInsertionInfo tourInfo = new TourInsertionInfo(solution.GetVehicleAssignment(solution.GetTourIndex(tour))); 49 49 eval.InsertionInfo.AddTourInsertionInfo(tourInfo); … … 149 149 } 150 150 151 protected override double GetTourInsertionCosts(IVRPProblemInstance instance, IVRPEncod ingsolution, TourInsertionInfo tourInsertionInfo, int index, int customer,151 protected override double GetTourInsertionCosts(IVRPProblemInstance instance, IVRPEncodedSolution solution, TourInsertionInfo tourInsertionInfo, int index, int customer, 152 152 out bool feasible) { 153 153 CVRPTWInsertionInfo insertionInfo = tourInsertionInfo.GetStopInsertionInfo(index) as CVRPTWInsertionInfo; -
branches/2521_ProblemRefactoring/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances/SingleDepotVRP/SingleDepotVRPEvaluator.cs
r17226 r17698 30 30 [StorableType("1E0DECD9-54BF-4F69-A743-228C481749A0")] 31 31 public class SingleDepotVRPEvaluator : VRPEvaluator { 32 protected override void EvaluateTour(VRPEvaluation eval, IVRPProblemInstance instance, Tour tour, IVRPEncod ingsolution) {32 protected override void EvaluateTour(VRPEvaluation eval, IVRPProblemInstance instance, Tour tour, IVRPEncodedSolution solution) { 33 33 TourInsertionInfo tourInfo = new TourInsertionInfo(solution.GetVehicleAssignment(solution.GetTourIndex(tour))); 34 34 eval.InsertionInfo.AddTourInsertionInfo(tourInfo); … … 66 66 } 67 67 68 protected override double GetTourInsertionCosts(IVRPProblemInstance instance, IVRPEncod ingsolution, TourInsertionInfo tourInsertionInfo, int index, int customer,68 protected override double GetTourInsertionCosts(IVRPProblemInstance instance, IVRPEncodedSolution solution, TourInsertionInfo tourInsertionInfo, int index, int customer, 69 69 out bool feasible) { 70 70 StopInsertionInfo insertionInfo = tourInsertionInfo.GetStopInsertionInfo(index); -
branches/2521_ProblemRefactoring/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances/SingleDepotVRP/SingleDepotVRPProblemInstance.cs
r17226 r17698 22 22 using System.Collections.Generic; 23 23 using System.Linq; 24 using HEAL.Attic; 24 25 using HeuristicLab.Common; 25 26 using HeuristicLab.Core; 26 27 using HeuristicLab.Data; 27 28 using HeuristicLab.Optimization; 28 using HEAL.Attic;29 29 using HeuristicLab.PluginInfrastructure; 30 30 using HeuristicLab.Problems.VehicleRouting.Interfaces; -
branches/2521_ProblemRefactoring/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances/VRPEvaluator.cs
r17226 r17698 32 32 [StorableType("164315D4-BCCF-4A79-B75B-11A49C56C5E1")] 33 33 public abstract class VRPEvaluator : VRPOperator, IVRPEvaluator { 34 public ILookupParameter<IVRPEncod ing> VRPToursParameter {35 get { return (ILookupParameter<IVRPEncod ing>)Parameters["VRPTours"]; }34 public ILookupParameter<IVRPEncodedSolution> VRPToursParameter { 35 get { return (ILookupParameter<IVRPEncodedSolution>)Parameters["VRPTours"]; } 36 36 } 37 37 … … 57 57 58 58 public VRPEvaluator() { 59 Parameters.Add(new LookupParameter<IVRPEncod ing>("VRPTours", "The VRP tours which should be evaluated."));59 Parameters.Add(new LookupParameter<IVRPEncodedSolution>("VRPTours", "The VRP tours which should be evaluated.")); 60 60 61 61 Parameters.Add(new LookupParameter<DoubleValue>("Quality", "The evaluated quality of the VRP solution.")); … … 74 74 } 75 75 76 protected abstract void EvaluateTour(VRPEvaluation eval, IVRPProblemInstance instance, Tour tour, IVRPEncod ingsolution);76 protected abstract void EvaluateTour(VRPEvaluation eval, IVRPProblemInstance instance, Tour tour, IVRPEncodedSolution solution); 77 77 78 78 protected virtual void InitResultParameters() { … … 96 96 } 97 97 98 protected abstract double GetTourInsertionCosts(IVRPProblemInstance instance, IVRPEncod ingsolution, TourInsertionInfo tourInsertionInfo, int index, int customer, out bool feasible);98 protected abstract double GetTourInsertionCosts(IVRPProblemInstance instance, IVRPEncodedSolution solution, TourInsertionInfo tourInsertionInfo, int index, int customer, out bool feasible); 99 99 100 public double GetInsertionCosts(IVRPProblemInstance instance, IVRPEncod ingsolution, VRPEvaluation eval, int customer, int tour, int index, out bool feasible) {100 public double GetInsertionCosts(IVRPProblemInstance instance, IVRPEncodedSolution solution, VRPEvaluation eval, int customer, int tour, int index, out bool feasible) { 101 101 bool tourFeasible; 102 102 double costs = GetTourInsertionCosts( … … 112 112 } 113 113 114 public VRPEvaluation EvaluateTour(IVRPProblemInstance instance, Tour tour, IVRPEncod ingsolution) {114 public VRPEvaluation EvaluateTour(IVRPProblemInstance instance, Tour tour, IVRPEncodedSolution solution) { 115 115 VRPEvaluation evaluation = CreateTourEvaluation(); 116 116 EvaluateTour(evaluation, instance, tour, solution); … … 118 118 } 119 119 120 public virtual VRPEvaluation Evaluate(IVRPProblemInstance instance, IVRPEncod ingsolution) {120 public virtual VRPEvaluation Evaluate(IVRPProblemInstance instance, IVRPEncodedSolution solution) { 121 121 VRPEvaluation evaluation = CreateTourEvaluation(); 122 122 … … 132 132 133 133 VRPEvaluation evaluation = CreateTourEvaluation(); 134 IVRPEncod ingsolution = VRPToursParameter.ActualValue;134 IVRPEncodedSolution solution = VRPToursParameter.ActualValue; 135 135 foreach (Tour tour in solution.GetTours()) { 136 136 EvaluateTour(evaluation, ProblemInstance, tour, solution); -
branches/2521_ProblemRefactoring/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances/VRPProblemInstance.cs
r17226 r17698 23 23 using System.Collections.Generic; 24 24 using System.Linq; 25 using HEAL.Attic; 25 26 using HeuristicLab.Common; 26 27 using HeuristicLab.Core; 27 28 using HeuristicLab.Data; 28 29 using HeuristicLab.Parameters; 29 using HEAL.Attic;30 30 using HeuristicLab.Problems.VehicleRouting.Encodings.General; 31 31 using HeuristicLab.Problems.VehicleRouting.Interfaces; … … 178 178 return evaluator; 179 179 } 180 181 180 set { 182 181 lock (locker) { … … 188 187 } 189 188 190 public virtual double GetDistance(int start, int end, IVRPEncod ingsolution) {189 public virtual double GetDistance(int start, int end, IVRPEncodedSolution solution) { 191 190 if (distanceMatrix == null && UseDistanceMatrix.Value) { 192 191 distanceMatrix = DistanceMatrix ?? CreateDistanceMatrix(); … … 197 196 } 198 197 199 public virtual double GetInsertionDistance(int start, int customer, int end, IVRPEncod ingsolution,198 public virtual double GetInsertionDistance(int start, int customer, int end, IVRPEncodedSolution solution, 200 199 out double startDistance, out double endDistance) { 201 200 double distance = GetDistance(start, end, solution); … … 209 208 } 210 209 211 public bool Feasible(IVRPEncod ingsolution) {210 public bool Feasible(IVRPEncodedSolution solution) { 212 211 return evaluator.Feasible( 213 212 evaluator.Evaluate( … … 215 214 } 216 215 217 public bool TourFeasible(Tour tour, IVRPEncod ingsolution) {216 public bool TourFeasible(Tour tour, IVRPEncodedSolution solution) { 218 217 return evaluator.Feasible( 219 218 evaluator.EvaluateTour( … … 221 220 } 222 221 223 public VRPEvaluation Evaluate(IVRPEncod ingsolution) {222 public VRPEvaluation Evaluate(IVRPEncodedSolution solution) { 224 223 return evaluator.Evaluate(this, solution); 225 224 } 226 225 227 public VRPEvaluation EvaluateTour(Tour tour, IVRPEncod ingsolution) {226 public VRPEvaluation EvaluateTour(Tour tour, IVRPEncodedSolution solution) { 228 227 return evaluator.EvaluateTour(this, tour, solution); 229 228 } … … 233 232 } 234 233 235 public double GetInsertionCosts(VRPEvaluation eval, IVRPEncod ingsolution, int customer, int tour, int index, out bool feasible) {234 public double GetInsertionCosts(VRPEvaluation eval, IVRPEncodedSolution solution, int customer, int tour, int index, out bool feasible) { 236 235 return evaluator.GetInsertionCosts(this, solution, eval, customer, tour, index, out feasible); 237 236 }
Note: See TracChangeset
for help on using the changeset viewer.