diff --git a/jsprit-core/src/main/java/jsprit/core/problem/vehicle/VehicleType.java b/jsprit-core/src/main/java/jsprit/core/problem/vehicle/VehicleType.java index 8e1f9c40..c60e8392 100644 --- a/jsprit-core/src/main/java/jsprit/core/problem/vehicle/VehicleType.java +++ b/jsprit-core/src/main/java/jsprit/core/problem/vehicle/VehicleType.java @@ -55,4 +55,6 @@ public interface VehicleType { */ public VehicleCostParams getVehicleCostParams(); + public String getProfile(); + } diff --git a/jsprit-core/src/main/java/jsprit/core/problem/vehicle/VehicleTypeImpl.java b/jsprit-core/src/main/java/jsprit/core/problem/vehicle/VehicleTypeImpl.java index 1a4f77fa..fe1d5d34 100644 --- a/jsprit-core/src/main/java/jsprit/core/problem/vehicle/VehicleTypeImpl.java +++ b/jsprit-core/src/main/java/jsprit/core/problem/vehicle/VehicleTypeImpl.java @@ -80,6 +80,8 @@ public class VehicleTypeImpl implements VehicleType { private double fixedCost = 0.0; private double perDistance = 1.0; private double perTime = 0.0; + + private String profile = "car"; private Capacity.Builder capacityBuilder = Capacity.Builder.newInstance(); @@ -197,6 +199,11 @@ public class VehicleTypeImpl implements VehicleType { this.capacityDimensions = capacity; return this; } + + public Builder setProfile(String profile){ + this.profile = profile; + return this; + } } @Override @@ -231,6 +238,8 @@ public class VehicleTypeImpl implements VehicleType { private final String typeId; private final int capacity; + + private final String profile; private final VehicleTypeImpl.VehicleCostParams vehicleCostParams; @@ -249,6 +258,7 @@ public class VehicleTypeImpl implements VehicleType { maxVelocity = builder.maxVelo; vehicleCostParams = new VehicleCostParams(builder.fixedCost, builder.perTime, builder.perDistance); capacityDimensions = builder.capacityDimensions; + profile = builder.profile; } /* (non-Javadoc) @@ -283,4 +293,8 @@ public class VehicleTypeImpl implements VehicleType { public Capacity getCapacityDimensions() { return capacityDimensions; } + + @Override + public String getProfile(){ return profile; } + } diff --git a/jsprit-core/src/test/resources/infiniteWriterV2Test.xml b/jsprit-core/src/test/resources/infiniteWriterV2Test.xml index 07c5406a..2d9058ab 100644 --- a/jsprit-core/src/test/resources/infiniteWriterV2Test.xml +++ b/jsprit-core/src/test/resources/infiniteWriterV2Test.xml @@ -2,24 +2,9 @@ - FINITE + INFINITE - - v2 - vehType2 - - loc - - - loc - - - 0.0 - 1.7976931348623157E308 - - true - v1 vehType @@ -48,16 +33,58 @@ - - vehType2 - - 200 - - - 0.0 - 1.0 - - - + + + + loc + + + 1 + + 2.0 + + + 0.0 + 1.7976931348623157E308 + + + + + + loc2 + + + 1 + + 4.0 + + + 0.0 + 1.7976931348623157E308 + + + + + + + 10.0 + + + noDriver + v1 + 0.0 + + 1 + 0.0 + 0.0 + + 0.0 + + + + + + +