- Timestamp:
- 06/22/15 16:56:47 (10 years ago)
- Location:
- trunk/sources
- Files:
-
- 13 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Problems.VehicleRouting/3.4/Analyzer/ConstraintRelaxation/Capacitated/CapacityRelaxationVRPAnalyzer.cs
r12012 r12488 136 136 double max = cvrp.OverloadPenalty.Value * (1 + phi); 137 137 138 cvrp. OverloadPenalty = new DoubleValue(min + (max - min) * factor);139 if (cvrp. OverloadPenalty.Value < minPenalty)140 cvrp. OverloadPenalty.Value = minPenalty;141 if (cvrp. OverloadPenalty.Value > maxPenalty)142 cvrp. OverloadPenalty.Value = maxPenalty;138 cvrp.CurrentOverloadPenalty = new DoubleValue(min + (max - min) * factor); 139 if (cvrp.CurrentOverloadPenalty.Value < minPenalty) 140 cvrp.CurrentOverloadPenalty.Value = minPenalty; 141 if (cvrp.CurrentOverloadPenalty.Value > maxPenalty) 142 cvrp.CurrentOverloadPenalty.Value = maxPenalty; 143 143 144 144 for (int j = 0; j < qualities.Length; j++) { 145 qualities[j].Value += overloads[j].Value * cvrp. OverloadPenalty.Value;145 qualities[j].Value += overloads[j].Value * cvrp.CurrentOverloadPenalty.Value; 146 146 } 147 147 148 148 if (!results.ContainsKey("Current Overload Penalty")) { 149 results.Add(new Result("Current Overload Penalty", new DoubleValue(cvrp. OverloadPenalty.Value)));149 results.Add(new Result("Current Overload Penalty", new DoubleValue(cvrp.CurrentOverloadPenalty.Value))); 150 150 } else { 151 (results["Current Overload Penalty"].Value as DoubleValue).Value = cvrp. OverloadPenalty.Value;151 (results["Current Overload Penalty"].Value as DoubleValue).Value = cvrp.CurrentOverloadPenalty.Value; 152 152 } 153 153 -
trunk/sources/HeuristicLab.Problems.VehicleRouting/3.4/Analyzer/ConstraintRelaxation/PickupAndDelivery/PickupViolationsRelaxationVRPAnalyzer.cs
r12012 r12488 136 136 double max = pdp.PickupViolationPenalty.Value * (1 + phi); 137 137 138 pdp. PickupViolationPenalty = new DoubleValue(min + (max - min) * factor);139 if (pdp. PickupViolationPenalty.Value < minPenalty)140 pdp. PickupViolationPenalty.Value = minPenalty;141 if (pdp. PickupViolationPenalty.Value > maxPenalty)142 pdp. PickupViolationPenalty.Value = maxPenalty;138 pdp.CurrentPickupViolationPenalty = new DoubleValue(min + (max - min) * factor); 139 if (pdp.CurrentPickupViolationPenalty.Value < minPenalty) 140 pdp.CurrentPickupViolationPenalty.Value = minPenalty; 141 if (pdp.CurrentPickupViolationPenalty.Value > maxPenalty) 142 pdp.CurrentPickupViolationPenalty.Value = maxPenalty; 143 143 144 144 for (int j = 0; j < qualities.Length; j++) { 145 qualities[j].Value += pickupViolations[j].Value * pdp. PickupViolationPenalty.Value;145 qualities[j].Value += pickupViolations[j].Value * pdp.CurrentPickupViolationPenalty.Value; 146 146 } 147 147 148 148 if (!results.ContainsKey("Current Pickup Violation Penalty")) { 149 results.Add(new Result("Current Pickup Violation Penalty", new DoubleValue(pdp. PickupViolationPenalty.Value)));149 results.Add(new Result("Current Pickup Violation Penalty", new DoubleValue(pdp.CurrentPickupViolationPenalty.Value))); 150 150 } else { 151 (results["Current Pickup Violation Penalty"].Value as DoubleValue).Value = pdp. PickupViolationPenalty.Value;151 (results["Current Pickup Violation Penalty"].Value as DoubleValue).Value = pdp.CurrentPickupViolationPenalty.Value; 152 152 } 153 153 -
trunk/sources/HeuristicLab.Problems.VehicleRouting/3.4/Analyzer/ConstraintRelaxation/TimeWindowed/TimeWindowRelaxationVRPAnalyzer.cs
r12012 r12488 136 136 double max = vrptw.TardinessPenalty.Value * (1 + phi); 137 137 138 vrptw. TardinessPenalty = new DoubleValue(min + (max - min) * factor);139 if (vrptw. TardinessPenalty.Value < minPenalty)140 vrptw. TardinessPenalty.Value = minPenalty;141 if (vrptw. TardinessPenalty.Value > maxPenalty)142 vrptw. TardinessPenalty.Value = maxPenalty;138 vrptw.CurrentTardinessPenalty = new DoubleValue(min + (max - min) * factor); 139 if (vrptw.CurrentTardinessPenalty.Value < minPenalty) 140 vrptw.CurrentTardinessPenalty.Value = minPenalty; 141 if (vrptw.CurrentTardinessPenalty.Value > maxPenalty) 142 vrptw.CurrentTardinessPenalty.Value = maxPenalty; 143 143 144 144 for (int j = 0; j < qualities.Length; j++) { 145 qualities[j].Value += tardiness[j].Value * vrptw. TardinessPenalty.Value;145 qualities[j].Value += tardiness[j].Value * vrptw.CurrentTardinessPenalty.Value; 146 146 } 147 147 148 148 if (!results.ContainsKey("Current Tardiness Penalty")) { 149 results.Add(new Result("Current Tardiness Penalty", new DoubleValue(vrptw. TardinessPenalty.Value)));149 results.Add(new Result("Current Tardiness Penalty", new DoubleValue(vrptw.CurrentTardinessPenalty.Value))); 150 150 } else { 151 (results["Current Tardiness Penalty"].Value as DoubleValue).Value = vrptw. TardinessPenalty.Value;151 (results["Current Tardiness Penalty"].Value as DoubleValue).Value = vrptw.CurrentTardinessPenalty.Value; 152 152 } 153 153 -
trunk/sources/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances/MultiDepotVRP/MDCVRP/MDCVRPProblemInstance.cs
r12012 r12488 61 61 return OverloadPenaltyParameter.Value; 62 62 } 63 } 64 DoubleValue ICapacitatedProblemInstance.CurrentOverloadPenalty { 65 get { return CurrentOverloadPenaltyParameter.Value; } 63 66 set { CurrentOverloadPenaltyParameter.Value = value; } 64 67 } … … 87 90 Parameters.Add(new ValueParameter<DoubleArray>("Capacity", "The capacity of each vehicle.", new DoubleArray())); 88 91 Parameters.Add(new ValueParameter<DoubleValue>("EvalOverloadPenalty", "The overload penalty considered in the evaluation.", new DoubleValue(100))); 89 Parameters.Add(new OptionalValueParameter<DoubleValue>("CurrentOverloadPenalty", "The current overload penalty considered in the evaluation.") );92 Parameters.Add(new OptionalValueParameter<DoubleValue>("CurrentOverloadPenalty", "The current overload penalty considered in the evaluation.") { Hidden = true }); 90 93 91 94 AttachEventHandlers(); -
trunk/sources/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances/MultiDepotVRP/MDCVRP/MDCVRPTW/MDCVRPPDTW/MDCVRPPDTWProblemInstance.cs
r12012 r12488 61 61 return PickupViolationPenaltyParameter.Value; 62 62 } 63 } 64 DoubleValue IPickupAndDeliveryProblemInstance.CurrentPickupViolationPenalty { 65 get { return CurrentPickupViolationPenaltyParameter.Value; } 63 66 set { CurrentPickupViolationPenaltyParameter.Value = value; } 64 67 } … … 94 97 95 98 Parameters.Add(new ValueParameter<DoubleValue>("EvalPickupViolationPenalty", "The pickup violation penalty considered in the evaluation.", new DoubleValue(100))); 96 Parameters.Add(new OptionalValueParameter<DoubleValue>("CurrentPickupViolationPenalty", "The current pickup violation penalty considered in the evaluation.") );99 Parameters.Add(new OptionalValueParameter<DoubleValue>("CurrentPickupViolationPenalty", "The current pickup violation penalty considered in the evaluation.") { Hidden = true }); 97 100 98 101 AttachEventHandlers(); -
trunk/sources/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances/MultiDepotVRP/MDCVRP/MDCVRPTW/MDCVRPTWProblemInstance.cs
r12012 r12488 83 83 return TardinessPenaltyParameter.Value; 84 84 } 85 } 86 DoubleValue ITimeWindowedProblemInstance.CurrentTardinessPenalty { 87 get { return CurrentTardinessPenaltyParameter.Value; } 85 88 set { CurrentTardinessPenaltyParameter.Value = value; } 86 89 } … … 113 116 Parameters.Add(new ValueParameter<DoubleValue>("EvalTimeFactor", "The time factor considered in the evaluation.", new DoubleValue(0))); 114 117 Parameters.Add(new ValueParameter<DoubleValue>("EvalTardinessPenalty", "The tardiness penalty considered in the evaluation.", new DoubleValue(100))); 115 Parameters.Add(new OptionalValueParameter<DoubleValue>("CurrentTardinessPenalty", "The current tardiness penalty considered in the evaluation.") );118 Parameters.Add(new OptionalValueParameter<DoubleValue>("CurrentTardinessPenalty", "The current tardiness penalty considered in the evaluation.") { Hidden = true }); 116 119 117 120 AttachEventHandlers(); -
trunk/sources/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances/SingleDepotVRP/CVRP/CVRPProblemInstance.cs
r12012 r12488 61 61 return OverloadPenaltyParameter.Value; 62 62 } 63 } 64 DoubleValue ICapacitatedProblemInstance.CurrentOverloadPenalty { 65 get { return CurrentOverloadPenaltyParameter.Value; } 63 66 set { CurrentOverloadPenaltyParameter.Value = value; } 64 67 } … … 87 90 Parameters.Add(new ValueParameter<DoubleValue>("Capacity", "The capacity of each vehicle.", new DoubleValue(0))); 88 91 Parameters.Add(new ValueParameter<DoubleValue>("EvalOverloadPenalty", "The overload penalty considered in the evaluation.", new DoubleValue(100))); 89 Parameters.Add(new OptionalValueParameter<DoubleValue>("CurrentOverloadPenalty", "The current overload penalty considered in the evaluation.") );92 Parameters.Add(new OptionalValueParameter<DoubleValue>("CurrentOverloadPenalty", "The current overload penalty considered in the evaluation.") { Hidden = true }); 90 93 91 94 AttachEventHandlers(); -
trunk/sources/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances/SingleDepotVRP/CVRP/CVRPTW/CVRPPDTW/CVRPPDTWProblemInstance.cs
r12012 r12488 61 61 return PickupViolationPenaltyParameter.Value; 62 62 } 63 } 64 DoubleValue IPickupAndDeliveryProblemInstance.CurrentPickupViolationPenalty { 65 get { return CurrentOverloadPenaltyParameter.Value; } 63 66 set { CurrentPickupViolationPenaltyParameter.Value = value; } 64 67 } … … 94 97 95 98 Parameters.Add(new ValueParameter<DoubleValue>("EvalPickupViolationPenalty", "The pickup violation penalty considered in the evaluation.", new DoubleValue(100))); 96 Parameters.Add(new OptionalValueParameter<DoubleValue>("CurrentPickupViolationPenalty", "The current pickup violation penalty considered in the evaluation.") );99 Parameters.Add(new OptionalValueParameter<DoubleValue>("CurrentPickupViolationPenalty", "The current pickup violation penalty considered in the evaluation.") { Hidden = true }); 97 100 98 101 AttachEventHandlers(); -
trunk/sources/HeuristicLab.Problems.VehicleRouting/3.4/ProblemInstances/SingleDepotVRP/CVRP/CVRPTW/CVRPTWProblemInstance.cs
r12012 r12488 83 83 return TardinessPenaltyParameter.Value; 84 84 } 85 } 86 DoubleValue ITimeWindowedProblemInstance.CurrentTardinessPenalty { 87 get { return CurrentTardinessPenaltyParameter.Value; } 85 88 set { CurrentTardinessPenaltyParameter.Value = value; } 86 89 } … … 113 116 Parameters.Add(new ValueParameter<DoubleValue>("EvalTimeFactor", "The time factor considered in the evaluation.", new DoubleValue(0))); 114 117 Parameters.Add(new ValueParameter<DoubleValue>("EvalTardinessPenalty", "The tardiness penalty considered in the evaluation.", new DoubleValue(100))); 115 Parameters.Add(new OptionalValueParameter<DoubleValue>("CurrentTardinessPenalty", "The current tardiness penalty considered in the evaluation.") );118 Parameters.Add(new OptionalValueParameter<DoubleValue>("CurrentTardinessPenalty", "The current tardiness penalty considered in the evaluation.") { Hidden = true }); 116 119 117 120 AttachEventHandlers(); -
trunk/sources/HeuristicLab.Problems.VehicleRouting/3.4/Variants/Capacitated/ICapacitatedProblemInstance.cs
r12012 r12488 25 25 namespace HeuristicLab.Problems.VehicleRouting.Variants { 26 26 public interface ICapacitatedProblemInstance : IVRPProblemInstance { 27 DoubleValue OverloadPenalty { get; set; } 27 DoubleValue OverloadPenalty { get; } 28 DoubleValue CurrentOverloadPenalty { get; set; } 28 29 } 29 30 } -
trunk/sources/HeuristicLab.Problems.VehicleRouting/3.4/Variants/PickupAndDelivery/IPickupAndDeliveryProblemInstance.cs
r12012 r12488 26 26 public interface IPickupAndDeliveryProblemInstance : IVRPProblemInstance { 27 27 IntArray PickupDeliveryLocation { get; } 28 DoubleValue PickupViolationPenalty { get; set; } 28 DoubleValue PickupViolationPenalty { get; } 29 DoubleValue CurrentPickupViolationPenalty { get; set; } 29 30 30 31 int GetPickupDeliveryLocation(int city); -
trunk/sources/HeuristicLab.Problems.VehicleRouting/3.4/Variants/TimeWindowed/ITimeWindowedProblemInstance.cs
r12012 r12488 29 29 DoubleArray ServiceTime { get; } 30 30 DoubleValue TimeFactor { get; } 31 DoubleValue TardinessPenalty { get; set; } 31 DoubleValue TardinessPenalty { get; } 32 DoubleValue CurrentTardinessPenalty { get; set; } 32 33 } 33 34 } -
trunk/sources/HeuristicLab.Tests/HeuristicLab.Problems.VehicleRouting-3.4/VRPInstancesTest.cs
r12012 r12488 42 42 foreach (var provider in providers) { 43 43 IEnumerable<IDataDescriptor> instances = ((dynamic)provider).GetDataDescriptors(); 44 Assert.IsTrue(instances.Any(), "No instances could be found.");44 Assert.IsTrue(instances.Any(), string.Format("No instances could be found in {0}.", provider.Name)); 45 45 46 46 foreach (var instance in instances) {
Note: See TracChangeset
for help on using the changeset viewer.