1
0
Fork 0
mirror of https://github.com/graphhopper/jsprit.git synced 2020-01-24 07:45:05 +01:00

inspect and remove warnings

This commit is contained in:
Stefan Schroeder 2013-12-18 17:05:19 +01:00
parent 7ec9786c2b
commit 5ff6d40d63
63 changed files with 86 additions and 283 deletions

View file

@ -100,8 +100,6 @@ public class GraphStreamViewer {
private long renderDelay_in_ms = 0;
private boolean enableAutoLayout = false;
private boolean renderShipments = false;
private Center center;
@ -136,7 +134,6 @@ public class GraphStreamViewer {
}
public GraphStreamViewer setEnableAutoLayout(boolean enableAutoLayout) {
this.enableAutoLayout = enableAutoLayout;
return this;
}
@ -177,9 +174,6 @@ public class GraphStreamViewer {
//result-panel
JPanel resultPanel = createResultPanel();
//legend-panel
final JPanel legendPanel = createLegendPanel();
//graphstream-panel
Graph g = new MultiGraph("g");
g.addAttribute("ui.quality");
@ -256,67 +250,6 @@ public class GraphStreamViewer {
}
private JPanel createLegendPanel() {
int width = 800;
int height = 50;
JPanel panel = new JPanel();
panel.setPreferredSize(new Dimension((int)(width*scaling),(int)(height*scaling)));
panel.setBackground(Color.WHITE);
JPanel subpanel = new JPanel();
subpanel.setLayout(new FlowLayout());
subpanel.setPreferredSize(new Dimension((int)(700*scaling),(int)(40*scaling)));
subpanel.setBackground(Color.WHITE);
subpanel.setBorder(BorderFactory.createLineBorder(Color.LIGHT_GRAY, 1));
Font font = Font.decode("couriernew");
//graphic2d
// Graphics2D gr = new
//label
JLabel depots = new JLabel(new String("depots"));
depots.setFont(font);
depots.setPreferredSize(new Dimension((int)(40*scaling),(int)(25*scaling)));
//graphic2d
//label
JLabel pickups = new JLabel(new String("pickups"));
pickups.setFont(font);
pickups.setPreferredSize(new Dimension((int)(40*scaling),(int)(25*scaling)));
//graphic2d
//label
JLabel deliveries = new JLabel(new String("deliveries"));
deliveries.setFont(font);
deliveries.setPreferredSize(new Dimension((int)(40*scaling),(int)(25*scaling)));
//shipments
// if(renderShipments()){
//
// }
subpanel.add(depots);
JLabel emptyLabel1 = createEmptyLabel();
subpanel.add(emptyLabel1);
subpanel.add(pickups);
subpanel.add(createEmptyLabel());
subpanel.add(deliveries);
panel.add(subpanel);
return panel;
}
private JLabel createEmptyLabel() {
JLabel emptyLabel1 = new JLabel();
emptyLabel1.setPreferredSize(new Dimension((int)(40*scaling),(int)(25*scaling)));

View file

@ -24,8 +24,6 @@ import java.util.Collection;
import jsprit.core.util.BenchmarkResult;
import org.jfree.chart.renderer.xy.DeviationRenderer;
public class HtmlBenchmarkTableWriter implements BenchmarkWriter{
private String filename;

View file

@ -95,7 +95,7 @@ class NeighborhoodThresholdInitialiser implements AlgorithmStartsListener{
}
private double determineThreshold(VehicleRoutingProblem pblm, Locations locations, Collection<VehicleRoutingProblemSolution> mySolutions) {
VehicleRoutingProblemSolution bestSolution = Solutions.getBest(mySolutions);
VehicleRoutingProblemSolution bestSolution = Solutions.bestOf(mySolutions);
double[] distances = new double[bestSolution.getRoutes().size()+pblm.getJobs().size()];
getDistances(distances,bestSolution,locations);
Mean mean = new Mean();

View file

@ -27,7 +27,6 @@ import jsprit.core.algorithm.listener.IterationEndsListener;
import jsprit.core.algorithm.listener.IterationStartsListener;
import jsprit.core.algorithm.listener.SearchStrategyListener;
import jsprit.core.algorithm.listener.SearchStrategyModuleListener;
import jsprit.core.algorithm.listener.StrategySelectedListener;
import jsprit.core.algorithm.listener.VehicleRoutingAlgorithmListener;
import jsprit.core.algorithm.listener.VehicleRoutingAlgorithmListeners;
import jsprit.core.algorithm.termination.IterationWithoutImprovementTermination;
@ -67,10 +66,6 @@ public class VehicleRoutingAlgorithm {
}
}
public void print() {
log.info(this.name + counter);
}
public void reset() {
counter=0;
nextCounter=1;

View file

@ -127,7 +127,7 @@ public class ExperimentalSchrimpfAcceptance implements SolutionAcceptor, Iterati
@Override
public void informIterationEnds(int iteration, VehicleRoutingProblem problem, Collection<VehicleRoutingProblemSolution> solutions) {
double result = Solutions.getBest(solutions).getCost();
double result = Solutions.bestOf(solutions).getCost();
// logger.info("result="+result);
results[iteration-1] = result;
}

View file

@ -122,7 +122,7 @@ public class SchrimpfAcceptance implements SolutionAcceptor, IterationStartsList
@Override
public void informIterationEnds(int iteration, VehicleRoutingProblem problem, Collection<VehicleRoutingProblemSolution> solutions) {
double result = Solutions.getBest(solutions).getCost();
double result = Solutions.bestOf(solutions).getCost();
// logger.info("result="+result);
results[iteration-1] = result;
}

View file

@ -37,6 +37,7 @@ class InsertionFactory {
private static Logger log = Logger.getLogger(InsertionFactory.class);
@SuppressWarnings("deprecation")
public static InsertionStrategy createInsertion(VehicleRoutingProblem vrp, HierarchicalConfiguration config,
VehicleFleetManager vehicleFleetManager, StateManager routeStates, List<PrioritizedVRAListener> algorithmListeners, ExecutorService executorService, int nuOfThreads, ConstraintManager constraintManager){

View file

@ -856,7 +856,6 @@ public class VehicleRoutingAlgorithms {
ruin = getRandomRuin(vrp, routeStates, definedClasses, ruinKey, shareToRuin);
}
else if(ruin_name.equals("radialRuin")){
String ruin_distance = moduleConfig.getString("ruin.distance");
JobDistance jobDistance = new AvgServiceAndShipmentDistance(vrp.getTransportCosts());
// if(ruin_distance == null) jobDistance
// else {

View file

@ -18,7 +18,6 @@ package jsprit.core.algorithm.recreate;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import jsprit.core.problem.driver.Driver;
import jsprit.core.problem.job.Job;
@ -36,7 +35,7 @@ class CalculatesServiceInsertionWithTimeScheduling implements JobInsertionCostsC
private JobInsertionCostsCalculator jic;
private Random random = new Random();
// private Random random = new Random();
private int nOfDepartureTimes = 3;
@ -65,8 +64,8 @@ class CalculatesServiceInsertionWithTimeScheduling implements JobInsertionCostsC
else currentStart = currentRoute.getStart().getEndTime();
vehicleDepartureTimes.add(currentStart);
double earliestDeparture = newVehicle.getEarliestDeparture();
double latestEnd = newVehicle.getLatestArrival();
// double earliestDeparture = newVehicle.getEarliestDeparture();
// double latestEnd = newVehicle.getLatestArrival();
for(int i=0;i<nOfDepartureTimes;i++){
double neighborStartTime_earlier = currentStart - (i+1)*timeSlice;

View file

@ -288,7 +288,6 @@ class CalculatorBuilder {
JobInsertionCostsCalculator jobInsertionCalculator = new ServiceInsertionOnRouteLevelCalculator(vrp.getTransportCosts(), vrp.getActivityCosts(), routeLevelCostEstimator, constraintManager, constraintManager);
((ServiceInsertionOnRouteLevelCalculator)jobInsertionCalculator).setNuOfActsForwardLooking(after);
((ServiceInsertionOnRouteLevelCalculator)jobInsertionCalculator).setMemorySize(solutionMemory);
((ServiceInsertionOnRouteLevelCalculator)jobInsertionCalculator).setNeighborhood(vrp.getNeighborhood());
((ServiceInsertionOnRouteLevelCalculator) jobInsertionCalculator).setStates(activityStates2);
PenalyzeInsertionCostsWithPenaltyVehicle penalyzeInsertionCosts = new PenalyzeInsertionCostsWithPenaltyVehicle(jobInsertionCalculator);

View file

@ -25,17 +25,9 @@ import jsprit.core.problem.VehicleRoutingProblem;
import jsprit.core.problem.job.Job;
import jsprit.core.problem.solution.route.VehicleRoute;
import org.apache.log4j.Logger;
final class ConfigureFixCostCalculator implements InsertionStartsListener, JobInsertedListener{
private static Logger log = Logger.getLogger(ConfigureFixCostCalculator.class);
VehicleRoutingProblem vrp;
JobInsertionConsideringFixCostsCalculator calcConsideringFix;

View file

@ -16,8 +16,6 @@
******************************************************************************/
package jsprit.core.algorithm.recreate;
import org.apache.log4j.Logger;
import jsprit.core.algorithm.recreate.InsertionData.NoInsertionFound;
import jsprit.core.algorithm.recreate.listener.InsertionListeners;
import jsprit.core.problem.job.Job;
@ -120,8 +118,6 @@ class Inserter {
private JobInsertionHandler jobInsertionHandler;
private static Logger log = Logger.getLogger(Inserter.class);
public Inserter(InsertionListeners insertionListeners) {
this.insertionListeners = insertionListeners;
new DefaultTourActivityFactory();

View file

@ -33,7 +33,6 @@ import jsprit.core.problem.solution.route.activity.End;
import jsprit.core.problem.solution.route.activity.Start;
import jsprit.core.problem.solution.route.activity.TourActivity;
import jsprit.core.problem.solution.route.activity.TourShipmentActivityFactory;
import jsprit.core.problem.vehicle.PenaltyVehicleType;
import jsprit.core.problem.vehicle.Vehicle;
import jsprit.core.problem.vehicle.VehicleImpl.NoVehicle;
import jsprit.core.util.CalculationUtils;

View file

@ -23,8 +23,6 @@ import jsprit.core.problem.job.Shipment;
import jsprit.core.util.Coordinate;
import jsprit.core.util.EuclideanDistanceCalculator;
import org.apache.log4j.Logger;
/**
@ -37,8 +35,6 @@ import org.apache.log4j.Logger;
*/
public class AvgServiceAndShipmentDistance implements JobDistance {
private static Logger log = Logger.getLogger(AvgServiceAndShipmentDistance.class);
private VehicleRoutingTransportCosts costs;
public AvgServiceAndShipmentDistance(VehicleRoutingTransportCosts costs) {

View file

@ -20,8 +20,6 @@ import jsprit.core.problem.cost.VehicleRoutingTransportCosts;
import jsprit.core.problem.job.Job;
import jsprit.core.problem.job.Service;
import org.apache.log4j.Logger;
/**
@ -34,8 +32,6 @@ import org.apache.log4j.Logger;
*/
public class AvgServiceDistance implements JobDistance {
private static Logger log = Logger.getLogger(AvgServiceDistance.class);
private VehicleRoutingTransportCosts costs;
public AvgServiceDistance(VehicleRoutingTransportCosts costs) {

View file

@ -22,8 +22,6 @@ import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import org.apache.log4j.Logger;
import jsprit.core.algorithm.listener.IterationStartsListener;
import jsprit.core.algorithm.recreate.listener.InsertionEndsListener;
import jsprit.core.algorithm.recreate.listener.InsertionListener;
@ -52,8 +50,6 @@ import jsprit.core.problem.solution.route.state.StateFactory.States;
public class StateManager implements RouteAndActivityStateGetter, IterationStartsListener, RuinListener, InsertionStartsListener, JobInsertedListener, InsertionEndsListener {
private static Logger log = Logger.getLogger(StateManager.class);
private Map<VehicleRoute,States> vehicleRouteStates = new HashMap<VehicleRoute, States>();
private Map<TourActivity,States> activityStates = new HashMap<TourActivity, States>();

View file

@ -9,8 +9,6 @@ import jsprit.core.problem.solution.route.activity.TourActivity;
import jsprit.core.problem.solution.route.state.StateFactory;
import jsprit.core.util.ActivityTimeTracker;
import org.apache.log4j.Logger;
/**
* Updates total costs (i.e. transport and activity costs) at route and activity level.
@ -25,8 +23,6 @@ import org.apache.log4j.Logger;
*/
public class UpdateVariableCosts implements ActivityVisitor,StateUpdater{
private static Logger log = Logger.getLogger(UpdateVariableCosts.class);
private VehicleRoutingActivityCosts activityCost;
private ForwardTransportCost transportCost;

View file

@ -128,7 +128,7 @@ public class VariationCoefficientTermination implements PrematureAlgorithmTermin
@Override
public void informIterationStarts(int i, VehicleRoutingProblem problem, Collection<VehicleRoutingProblemSolution> solutions) {
if(lastAccepted == null) lastAccepted = Solutions.getBest(solutions);
if(lastAccepted == null) lastAccepted = Solutions.bestOf(solutions);
}

View file

@ -13,6 +13,7 @@ import jsprit.core.problem.solution.route.state.RouteAndActivityStateGetter;
import org.apache.log4j.Logger;
@SuppressWarnings("deprecation")
public class ConstraintManager implements HardActivityStateLevelConstraint, HardRouteStateLevelConstraint{
public static enum Priority {

View file

@ -8,8 +8,6 @@ import jsprit.core.problem.solution.route.activity.TourActivity;
import jsprit.core.problem.solution.route.state.RouteAndActivityStateGetter;
import jsprit.core.problem.solution.route.state.StateFactory;
import org.apache.log4j.Logger;
/**
* Constraint that ensures capacity constraint at each activity.
@ -22,8 +20,6 @@ import org.apache.log4j.Logger;
*/
public class PickupAndDeliverShipmentLoadActivityLevelConstraint implements HardActivityStateLevelConstraint {
private static Logger logger = Logger.getLogger(PickupAndDeliverShipmentLoadActivityLevelConstraint.class);
private RouteAndActivityStateGetter stateManager;
/**

View file

@ -9,8 +9,6 @@ import jsprit.core.problem.solution.route.activity.TourActivity;
import jsprit.core.problem.solution.route.state.RouteAndActivityStateGetter;
import jsprit.core.problem.solution.route.state.StateFactory;
import org.apache.log4j.Logger;
/**
* Ensures load constraint for inserting ServiceActivity.
@ -23,8 +21,6 @@ import org.apache.log4j.Logger;
*/
class ServiceLoadActivityLevelConstraint implements HardActivityStateLevelConstraint {
private static Logger log = Logger.getLogger(ServiceLoadActivityLevelConstraint.class);
private RouteAndActivityStateGetter stateManager;
public ServiceLoadActivityLevelConstraint(RouteAndActivityStateGetter stateManager) {

View file

@ -7,8 +7,6 @@ import jsprit.core.problem.solution.route.state.RouteAndActivityStateGetter;
import jsprit.core.problem.solution.route.state.StateFactory;
import jsprit.core.util.CalculationUtils;
import org.apache.log4j.Logger;
/**
* ljsljslfjs
@ -17,8 +15,6 @@ import org.apache.log4j.Logger;
*/
class TimeWindowConstraint implements HardActivityStateLevelConstraint {
private static Logger log = Logger.getLogger(TimeWindowConstraint.class);
private RouteAndActivityStateGetter states;
private VehicleRoutingTransportCosts routingCosts;

View file

@ -56,6 +56,7 @@ import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
@SuppressWarnings("deprecation")
public class VrpXMLReader{
public interface ServiceBuilderFactory {
@ -223,7 +224,6 @@ public class VrpXMLReader{
List<HierarchicalConfiguration> routeConfigs = solutionConfig.configurationsAt("routes.route");
List<VehicleRoute> routes = new ArrayList<VehicleRoute>();
for(HierarchicalConfiguration routeConfig : routeConfigs){
String driverId = routeConfig.getString("driverId");
//! here, driverId is set to noDriver, no matter whats in driverId.
Driver driver = DriverImpl.noDriver();
String vehicleId = routeConfig.getString("vehicleId");

View file

@ -47,6 +47,11 @@ public class VrpXMLWriter {
static class XMLConf extends XMLConfiguration {
/**
*
*/
private static final long serialVersionUID = 1L;
public Document createDoc() throws ConfigurationException{
Document doc = createDocument();
return doc;

View file

@ -46,7 +46,7 @@ class VehicleFleetManagerImpl implements VehicleFleetManager {
public static class DefaultFleetManager extends VehicleFleetManagerImpl {
public DefaultFleetManager() {
super(Collections.EMPTY_LIST);
super(Collections.<Vehicle> emptyList());
}
@ -54,13 +54,10 @@ class VehicleFleetManagerImpl implements VehicleFleetManager {
static class TypeContainer {
private VehicleTypeKey type;
private ArrayList<Vehicle> vehicleList;
public TypeContainer(VehicleTypeKey type) {
super();
this.type = type;
vehicleList = new ArrayList<Vehicle>();
}

View file

@ -35,6 +35,7 @@ public class VehicleImpl implements Vehicle {
public static class NoVehicle extends VehicleImpl {
@SuppressWarnings("deprecation")
public NoVehicle() {
super(Builder.newInstance("noVehicle").setType(VehicleTypeImpl.newInstance(null, 0, null)));
}

View file

@ -23,8 +23,6 @@ import jsprit.core.problem.cost.AbstractForwardVehicleRoutingTransportCosts;
import jsprit.core.problem.driver.Driver;
import jsprit.core.problem.vehicle.Vehicle;
import org.apache.log4j.Logger;
/**
@ -33,8 +31,6 @@ import org.apache.log4j.Logger;
*/
public class CrowFlyCosts extends AbstractForwardVehicleRoutingTransportCosts {
private static Logger logger = Logger.getLogger(CrowFlyCosts.class);
public int speed = 1;
public double detourFactor = 1.0;

View file

@ -16,12 +16,9 @@
******************************************************************************/
package jsprit.core.util;
import org.apache.log4j.Logger;
public class StopWatch {
private static Logger log = Logger.getLogger(StopWatch.class);
private double ran;
private double startTime;

View file

@ -34,8 +34,6 @@ public class VrpVerifier implements AlgorithmStartsListener{
private static Logger log = Logger.getLogger(VrpVerifier.class);
private boolean hardTimeWindows = true;
@Override
public void informAlgorithmStarts(VehicleRoutingProblem problem, VehicleRoutingAlgorithm algorithm, Collection<VehicleRoutingProblemSolution> solutions) {
//check capacity
@ -54,7 +52,6 @@ public class VrpVerifier implements AlgorithmStartsListener{
Service s = (Service)j;
boolean jobCanBeRoutedWithinTimeWindow = false;
for(Vehicle v : problem.getVehicles()){
double transportCost = problem.getTransportCosts().getTransportCost(v.getLocationId(), s.getLocationId(), v.getEarliestDeparture(), DriverImpl.noDriver(), v);
double transportTime = problem.getTransportCosts().getTransportTime(v.getLocationId(), s.getLocationId(), v.getEarliestDeparture(), DriverImpl.noDriver(), v);
if(transportTime+v.getEarliestDeparture() < s.getTimeWindow().getEnd()){
jobCanBeRoutedWithinTimeWindow = true;

View file

@ -21,7 +21,6 @@ import static org.junit.Assert.assertEquals;
import java.util.Collection;
import jsprit.core.algorithm.acceptor.GreedyAcceptance;
import jsprit.core.algorithm.listener.IterationStartsListener;
import jsprit.core.algorithm.module.RuinAndRecreateModule;
import jsprit.core.algorithm.recreate.BestInsertionBuilder;
import jsprit.core.algorithm.recreate.InsertionStrategy;

View file

@ -28,6 +28,7 @@ import jsprit.core.algorithm.ruin.RuinStrategy;
import jsprit.core.algorithm.ruin.distance.AvgServiceDistance;
import jsprit.core.algorithm.selector.SelectBest;
import jsprit.core.algorithm.state.StateManager;
import jsprit.core.algorithm.termination.IterationWithoutImprovementTermination;
import jsprit.core.problem.VehicleRoutingProblem;
import jsprit.core.problem.constraint.ConstraintManager;
import jsprit.core.problem.io.VrpXMLReader;
@ -106,7 +107,7 @@ public class BuildPDVRPAlgoFromScratch_IT {
vra.addInitialSolution(iniSolution);
vra.setNuOfIterations(1000);
vra.setPrematureBreak(100);
vra.setPrematureAlgorithmTermination(new IterationWithoutImprovementTermination(100));
}

View file

@ -16,6 +16,8 @@
******************************************************************************/
package jsprit.core.algorithm;
import static org.junit.Assert.assertTrue;
import java.util.Collection;
import jsprit.core.algorithm.acceptor.GreedyAcceptance;
@ -38,7 +40,6 @@ import jsprit.core.problem.solution.route.VehicleRoute;
import jsprit.core.problem.solution.route.state.StateFactory;
import jsprit.core.problem.vehicle.InfiniteFleetManagerFactory;
import jsprit.core.problem.vehicle.VehicleFleetManager;
import jsprit.core.util.Solutions;
import org.apache.log4j.Logger;
import org.junit.Before;
@ -119,7 +120,7 @@ public class BuildPDVRPWithShipmentsAlgoFromScratch_IT {
@Test
public void test(){
Collection<VehicleRoutingProblemSolution> solutions = vra.searchSolutions();
VehicleRoutingProblemSolution best = Solutions.bestOf(solutions);
assertTrue(!solutions.isEmpty());
}
}

View file

@ -27,6 +27,7 @@ import java.util.Collection;
import java.util.Map;
import jsprit.core.algorithm.box.GreedySchrimpfFactory;
import jsprit.core.algorithm.termination.IterationWithoutImprovementTermination;
import jsprit.core.problem.VehicleRoutingProblem;
import jsprit.core.problem.VehicleRoutingProblem.FleetSize;
import jsprit.core.problem.cost.VehicleRoutingTransportCosts;
@ -184,7 +185,7 @@ public class RefuseCollection_IT {
vrpBuilder.setRoutingCost(matrixBuilder.build());
VehicleRoutingProblem vrp = vrpBuilder.build();
VehicleRoutingAlgorithm vra = new GreedySchrimpfFactory().createAlgorithm(vrp);
vra.setPrematureBreak(100);
vra.setPrematureAlgorithmTermination(new IterationWithoutImprovementTermination(100));
Collection<VehicleRoutingProblemSolution> solutions = vra.searchSolutions();
assertEquals(397.0,Solutions.bestOf(solutions).getCost(),0.01);
@ -209,7 +210,7 @@ public class RefuseCollection_IT {
/*
* and add it to problem
*/
vrpBuilder.addService(service);
vrpBuilder.addJob(service);
}
reader.close();
}

View file

@ -25,8 +25,6 @@ import static org.mockito.Mockito.when;
import java.util.ArrayList;
import java.util.List;
import jsprit.core.algorithm.acceptor.GreedyAcceptance;
import jsprit.core.problem.VehicleRoutingProblem;
import jsprit.core.problem.solution.VehicleRoutingProblemSolution;
import org.junit.Test;
@ -39,7 +37,6 @@ public class AcceptNewRemoveWorstTest {
@Test
public void whenHavingNewSolAndLimitedMemory_removeWorstAndAddNew(){
VehicleRoutingProblem vrp = mock(VehicleRoutingProblem.class);
VehicleRoutingProblemSolution sol1 = mock(VehicleRoutingProblemSolution.class);
VehicleRoutingProblemSolution sol2 = mock(VehicleRoutingProblemSolution.class);
when(sol1.getCost()).thenReturn(1.0);

View file

@ -16,10 +16,6 @@
******************************************************************************/
package jsprit.core.algorithm.box;
import jsprit.core.algorithm.VehicleRoutingAlgorithm;
import jsprit.core.algorithm.box.SchrimpfFactory;
import jsprit.core.problem.VehicleRoutingProblem;
import org.junit.Test;
@ -28,8 +24,6 @@ public class TestSchrimpf {
@Test
public void whenUsingSchrimpfFactory_itFindsTheConfig(){
VehicleRoutingAlgorithm vra = new SchrimpfFactory().createAlgorithm(VehicleRoutingProblem.Builder.newInstance().build());
}
}

View file

@ -148,9 +148,6 @@ public class TestAlgorithmReader {
String acceptorName = "acceptor";
String acceptorId = "acceptorId";
String moduleName = "acceptor";
String moduleId = "acceptorId";
ModKey key = new ModKey(acceptorName,acceptorId);
RuinStrategyKey accKey = new RuinStrategyKey(key);
RuinStrategy acceptor = new RuinStrategy(){
@ -221,6 +218,7 @@ public class TestAlgorithmReader {
@SuppressWarnings("deprecation")
@Test
public void initialiseConstructionAlgoCorrectly(){
VehicleRoutingAlgorithms.readAndCreateAlgorithm(vrp, config);
@ -229,18 +227,21 @@ public class TestAlgorithmReader {
@Test
public void whenCreatingAlgorithm_nOfStrategiesIsCorrect(){
@SuppressWarnings("deprecation")
VehicleRoutingAlgorithm algo = VehicleRoutingAlgorithms.readAndCreateAlgorithm(vrp, config);
assertEquals(3, algo.getSearchStrategyManager().getStrategies().size());
}
@Test
public void whenCreatingAlgorithm_nOfIterationsIsReadCorrectly(){
@SuppressWarnings("deprecation")
VehicleRoutingAlgorithm algo = VehicleRoutingAlgorithms.readAndCreateAlgorithm(vrp, config);
assertEquals(10, algo.getNuOfIterations());
}
@Test
public void whenCreatingAlgorithm_nOfStrategyModulesIsCorrect(){
@SuppressWarnings("deprecation")
VehicleRoutingAlgorithm algo = VehicleRoutingAlgorithms.readAndCreateAlgorithm(vrp, config);
int nOfModules = 0;
for(SearchStrategy strat : algo.getSearchStrategyManager().getStrategies()){
@ -249,21 +250,4 @@ public class TestAlgorithmReader {
assertEquals(3, nOfModules);
}
// @Test
// public void whenCreatingAlgorithm_regretInsertionIsReadCorrectly(){
// VehicleRoutingAlgorithm algo = VehicleRoutingAlgorithms.readAndCreateAlgorithm(vrp, "src/test/resources/configWithRegretInsertion.xml");
// int nOfModules = 0;
// for(SearchStrategy strat : algo.getSearchStrategyManager().getStrategies()){
// for(SearchStrategyModule module : strat.getSearchStrategyModules()){
// if(module.getName().contains("ruin_and_recreate")){
// nOfModules++;
// }
// }
//
// }
// assertEquals(3, nOfModules);
//
// }
//
}

View file

@ -46,7 +46,7 @@ public class CalcWithTimeSchedulingTest {
setLocationCoord(Coordinate.newInstance(0, 0)).setLocationId("0,0")
.setType(VehicleTypeImpl.Builder.newInstance("myType", 20).setCostPerDistance(1.0).build()).build();
vrpBuilder.addVehicle(vehicle);
vrpBuilder.addService(Service.Builder.newInstance("myService", 2).setLocationId("0,20").setCoord(Coordinate.newInstance(0, 20)).build());
vrpBuilder.addJob(Service.Builder.newInstance("myService", 2).setLocationId("0,20").setCoord(Coordinate.newInstance(0, 20)).build());
vrpBuilder.setFleetSize(FleetSize.INFINITE);
vrpBuilder.setRoutingCost(getTpCosts(new CrowFlyCosts(vrpBuilder.getLocations())));
VehicleRoutingProblem vrp = vrpBuilder.build();
@ -54,7 +54,7 @@ public class CalcWithTimeSchedulingTest {
VehicleRoutingAlgorithm vra = VehicleRoutingAlgorithms.readAndCreateAlgorithm(vrp, "src/test/resources/testConfig.xml");
Collection<VehicleRoutingProblemSolution> solutions = vra.searchSolutions();
VehicleRoutingProblemSolution sol = Solutions.getBest(solutions);
VehicleRoutingProblemSolution sol = Solutions.bestOf(solutions);
assertEquals(40.0,sol.getCost(),0.01);
assertEquals(1, sol.getRoutes().size());
VehicleRoute route = sol.getRoutes().iterator().next();

View file

@ -22,7 +22,6 @@ import jsprit.core.problem.driver.DriverImpl;
import jsprit.core.problem.job.Pickup;
import jsprit.core.problem.job.Shipment;
import jsprit.core.problem.misc.JobInsertionContext;
import jsprit.core.problem.solution.route.RouteActivityVisitor;
import jsprit.core.problem.solution.route.VehicleRoute;
import jsprit.core.problem.solution.route.activity.TourActivity;
import jsprit.core.problem.vehicle.Vehicle;
@ -212,8 +211,6 @@ public class ShipmentInsertionCalculatorTest {
public void whenInsertingServiceWhileNoCapIsAvailable_itMustReturnNoInsertionData(){
Shipment shipment = Shipment.Builder.newInstance("s", 1).setPickupLocation("0,10").setDeliveryLocation("0,0").build();
Shipment shipment2 = Shipment.Builder.newInstance("s2", 1).setPickupLocation("10,10").setDeliveryLocation("0,0").build();
Shipment shipment3 = Shipment.Builder.newInstance("s3", 1).setPickupLocation("10,10").setDeliveryLocation("0,").build();
VehicleRoute route = VehicleRoute.emptyRoute();
route.setVehicle(vehicle, 0.0);

View file

@ -16,7 +16,6 @@
******************************************************************************/
package jsprit.core.algorithm.recreate;
import static org.junit.Assert.*;
import static org.junit.Assert.assertEquals;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;

View file

@ -17,7 +17,6 @@
package jsprit.core.algorithm.recreate;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;

View file

@ -17,7 +17,6 @@
package jsprit.core.algorithm.recreate;
import static org.junit.Assert.assertEquals;
import static org.mockito.Mockito.mock;
import java.util.Collection;
@ -33,7 +32,6 @@ import jsprit.core.problem.solution.route.activity.TimeWindow;
import jsprit.core.problem.solution.route.activity.TourActivity;
import jsprit.core.problem.vehicle.Vehicle;
import jsprit.core.problem.vehicle.VehicleImpl;
import jsprit.core.problem.vehicle.VehicleType;
import jsprit.core.problem.vehicle.VehicleTypeImpl;
import jsprit.core.util.Coordinate;
import jsprit.core.util.Solutions;
@ -47,7 +45,6 @@ public class TestDepartureTimeOpt {
public void whenSettingOneCustWithTWAnd_NO_DepTimeChoice_totalCostsShouldBe50(){
TimeWindow timeWindow = TimeWindow.newInstance(40, 45);
Service service = Service.Builder.newInstance("s", 0).setLocationId("servLoc").setCoord(Coordinate.newInstance(0, 10)).setTimeWindow(timeWindow).build();
VehicleType type = mock(VehicleTypeImpl.class);
Vehicle vehicle = VehicleImpl.Builder.newInstance("v").setLocationId("vehLoc").setLocationCoord(Coordinate.newInstance(0, 0))
.setType(VehicleTypeImpl.Builder.newInstance("vType", 0).build()).build();
@ -62,12 +59,12 @@ public class TestDepartureTimeOpt {
}
});
VehicleRoutingProblem vrp = vrpBuilder.addService(service).addVehicle(vehicle).build();
VehicleRoutingProblem vrp = vrpBuilder.addJob(service).addVehicle(vehicle).build();
VehicleRoutingAlgorithm vra = VehicleRoutingAlgorithms.readAndCreateAlgorithm(vrp, "src/test/resources/algorithmConfig.xml");
Collection<VehicleRoutingProblemSolution> solutions = vra.searchSolutions();
assertEquals(20.0+30.0,Solutions.getBest(solutions).getCost(),0.1);
assertEquals(20.0+30.0,Solutions.bestOf(solutions).getCost(),0.1);
}
@ -75,7 +72,6 @@ public class TestDepartureTimeOpt {
public void whenSettingOneCustWithTWAnd_NO_DepTimeChoice_depTimeShouldBe0(){
TimeWindow timeWindow = TimeWindow.newInstance(40, 45);
Service service = Service.Builder.newInstance("s", 0).setLocationId("servLoc").setCoord(Coordinate.newInstance(0, 10)).setTimeWindow(timeWindow).build();
VehicleType type = mock(VehicleTypeImpl.class);
Vehicle vehicle = VehicleImpl.Builder.newInstance("v").setLocationId("vehLoc").setLocationCoord(Coordinate.newInstance(0, 0))
.setType(VehicleTypeImpl.Builder.newInstance("vType", 0).build()).build();
@ -90,12 +86,12 @@ public class TestDepartureTimeOpt {
}
});
VehicleRoutingProblem vrp = vrpBuilder.addService(service).addVehicle(vehicle).build();
VehicleRoutingProblem vrp = vrpBuilder.addJob(service).addVehicle(vehicle).build();
VehicleRoutingAlgorithm vra = VehicleRoutingAlgorithms.readAndCreateAlgorithm(vrp, "src/test/resources/algorithmConfig.xml");
Collection<VehicleRoutingProblemSolution> solutions = vra.searchSolutions();
assertEquals(0.0,Solutions.getBest(solutions).getRoutes().iterator().next().getStart().getEndTime(),0.1);
assertEquals(0.0,Solutions.bestOf(solutions).getRoutes().iterator().next().getStart().getEndTime(),0.1);
}
@ -117,13 +113,13 @@ public class TestDepartureTimeOpt {
}
});
VehicleRoutingProblem vrp = vrpBuilder.addService(service).addVehicle(vehicle).build();
VehicleRoutingProblem vrp = vrpBuilder.addJob(service).addVehicle(vehicle).build();
VehicleRoutingAlgorithm vra = VehicleRoutingAlgorithms.readAndCreateAlgorithm(vrp, "src/test/resources/algorithmConfigWithDepartureTimeChoice.xml");
Collection<VehicleRoutingProblemSolution> solutions = vra.searchSolutions();
assertEquals(20.0,Solutions.getBest(solutions).getCost(),0.1);
assertEquals(20.0,Solutions.bestOf(solutions).getCost(),0.1);
}
@ -145,13 +141,13 @@ public class TestDepartureTimeOpt {
}
});
VehicleRoutingProblem vrp = vrpBuilder.addService(service).addVehicle(vehicle).build();
VehicleRoutingProblem vrp = vrpBuilder.addJob(service).addVehicle(vehicle).build();
VehicleRoutingAlgorithm vra = VehicleRoutingAlgorithms.readAndCreateAlgorithm(vrp, "src/test/resources/algorithmConfigWithDepartureTimeChoice.xml");
Collection<VehicleRoutingProblemSolution> solutions = vra.searchSolutions();
assertEquals(30.0,Solutions.getBest(solutions).getRoutes().iterator().next().getStart().getEndTime(),0.1);
assertEquals(30.0,Solutions.bestOf(solutions).getRoutes().iterator().next().getStart().getEndTime(),0.1);
}
@ -177,13 +173,13 @@ public class TestDepartureTimeOpt {
}
});
VehicleRoutingProblem vrp = vrpBuilder.addService(service).addService(service2).addVehicle(vehicle).build();
VehicleRoutingProblem vrp = vrpBuilder.addJob(service).addJob(service2).addVehicle(vehicle).build();
VehicleRoutingAlgorithm vra = VehicleRoutingAlgorithms.readAndCreateAlgorithm(vrp, "src/test/resources/algorithmConfigWithDepartureTimeChoice.xml");
Collection<VehicleRoutingProblemSolution> solutions = vra.searchSolutions();
assertEquals(40.0,Solutions.getBest(solutions).getCost(),0.1);
assertEquals(40.0,Solutions.bestOf(solutions).getCost(),0.1);
}
@ -209,13 +205,13 @@ public class TestDepartureTimeOpt {
}
});
VehicleRoutingProblem vrp = vrpBuilder.addService(service).addService(service2).addVehicle(vehicle).build();
VehicleRoutingProblem vrp = vrpBuilder.addJob(service).addJob(service2).addVehicle(vehicle).build();
VehicleRoutingAlgorithm vra = VehicleRoutingAlgorithms.readAndCreateAlgorithm(vrp, "src/test/resources/algorithmConfigWithDepartureTimeChoice.xml");
Collection<VehicleRoutingProblemSolution> solutions = vra.searchSolutions();
assertEquals(10.0,Solutions.getBest(solutions).getRoutes().iterator().next().getStart().getEndTime(),0.1);
assertEquals(10.0,Solutions.bestOf(solutions).getRoutes().iterator().next().getStart().getEndTime(),0.1);
}

View file

@ -1,9 +1,6 @@
package jsprit.core.algorithm.recreate;
import static org.junit.Assert.*;
import jsprit.core.algorithm.VehicleRoutingAlgorithm;
import jsprit.core.algorithm.recreate.BestInsertionBuilder;
import jsprit.core.algorithm.recreate.InsertionStrategy;
import static org.junit.Assert.assertTrue;
import jsprit.core.algorithm.state.StateManager;
import jsprit.core.problem.VehicleRoutingProblem;
import jsprit.core.problem.constraint.ConstraintManager;
@ -13,12 +10,11 @@ import jsprit.core.problem.vehicle.InfiniteFleetManagerFactory;
import jsprit.core.problem.vehicle.Vehicle;
import jsprit.core.problem.vehicle.VehicleFleetManager;
import jsprit.core.problem.vehicle.VehicleImpl;
import jsprit.core.problem.vehicle.VehicleImpl.Builder;
import jsprit.core.problem.vehicle.VehicleType;
import jsprit.core.problem.vehicle.VehicleTypeImpl;
import jsprit.core.problem.vehicle.VehicleImpl.Builder;
import jsprit.core.util.Coordinate;
import org.junit.Before;
import org.junit.Test;
@ -78,8 +74,6 @@ public class TestMixedServiceAndShipmentsProblemOnRouteLevel {
VehicleRoutingProblem vrp = vrpBuilder.build();
VehicleRoutingAlgorithm vra;
final StateManager stateManager = new StateManager(vrp);
@ -91,6 +85,7 @@ public class TestMixedServiceAndShipmentsProblemOnRouteLevel {
BestInsertionBuilder bestIBuilder = new BestInsertionBuilder(vrp, fleetManager, stateManager,constraintManager);
bestIBuilder.setRouteLevel(2, 2);
@SuppressWarnings("unused")
InsertionStrategy bestInsertion = bestIBuilder.build();
}
@ -144,8 +139,6 @@ public class TestMixedServiceAndShipmentsProblemOnRouteLevel {
VehicleRoutingProblem vrp = vrpBuilder.build();
VehicleRoutingAlgorithm vra;
final StateManager stateManager = new StateManager(vrp);
ConstraintManager constraintManager = new ConstraintManager(vrp,stateManager);
@ -156,6 +149,7 @@ public class TestMixedServiceAndShipmentsProblemOnRouteLevel {
BestInsertionBuilder bestIBuilder = new BestInsertionBuilder(vrp, fleetManager, stateManager,constraintManager);
bestIBuilder.setRouteLevel(2, 2);
@SuppressWarnings("unused")
InsertionStrategy bestInsertion = bestIBuilder.build();
assertTrue(true);

View file

@ -1,13 +1,12 @@
package jsprit.core.algorithm.ruin;
import static org.junit.Assert.*;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import jsprit.core.algorithm.ruin.RuinRadial.JobNeighborhoodsImpl;
import jsprit.core.algorithm.ruin.RuinRadial.JobNeighborhoodsImplWithCapRestriction;
import jsprit.core.algorithm.ruin.distance.EuclideanServiceDistance;
import jsprit.core.algorithm.ruin.distance.JobDistance;

View file

@ -46,6 +46,7 @@ public class TestJobDistanceAvgCosts {
@Override
public double getTransportCost(String fromId, String toId,
double departureTime, Driver driver, Vehicle vehicle) {
@SuppressWarnings("unused")
String vehicleId = vehicle.getId();
return 0;
}
@ -82,6 +83,7 @@ public class TestJobDistanceAvgCosts {
@Override
public double getTransportCost(String fromId, String toId,
double departureTime, Driver driver, Vehicle vehicle) {
@SuppressWarnings("unused")
String vehicleId = vehicle.getId();
return 0;
}

View file

@ -53,7 +53,7 @@ public class SelectBestTest {
@Test
public void whenHavingNoSolutions_returnNull(){
assertNull(new SelectBest().selectSolution(Collections.EMPTY_LIST));
assertNull(new SelectBest().selectSolution(Collections.<VehicleRoutingProblemSolution> emptyList()));
}
}

View file

@ -78,6 +78,6 @@ public class SelectRandomlyTest {
SelectRandomly selectRandomly = new SelectRandomly();
selectRandomly.setRandom(random);
assertNull(selectRandomly.selectSolution(Collections.EMPTY_LIST));
assertNull(selectRandomly.selectSolution(Collections.<VehicleRoutingProblemSolution> emptyList()));
}
}

View file

@ -26,9 +26,7 @@ import java.util.Collection;
import java.util.List;
import jsprit.core.problem.VehicleRoutingProblem;
import jsprit.core.problem.VehicleRoutingProblem.FleetComposition;
import jsprit.core.problem.VehicleRoutingProblem.FleetSize;
import jsprit.core.problem.io.VrpXMLReader;
import jsprit.core.problem.job.Job;
import jsprit.core.problem.job.Service;
import jsprit.core.problem.job.Shipment;
@ -53,7 +51,6 @@ public class VrpReaderV2Test {
new VrpXMLReader(builder, null).read(inFileName);
VehicleRoutingProblem vrp = builder.build();
assertEquals(FleetSize.FINITE,vrp.getFleetSize());
assertEquals(FleetComposition.HETEROGENEOUS,vrp.getFleetComposition());
}
@Test

View file

@ -17,23 +17,10 @@
package jsprit.core.problem.io;
import static org.junit.Assert.assertEquals;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import jsprit.core.problem.VehicleRoutingProblem;
import jsprit.core.problem.VehicleRoutingProblem.Builder;
import jsprit.core.problem.VehicleRoutingProblem.FleetComposition;
import jsprit.core.problem.VehicleRoutingProblem.FleetSize;
import jsprit.core.problem.io.VrpXMLReader;
import jsprit.core.problem.io.VrpXMLWriter;
import jsprit.core.problem.job.Service;
import jsprit.core.problem.solution.VehicleRoutingProblemSolution;
import jsprit.core.problem.solution.route.VehicleRoute;
import jsprit.core.problem.solution.route.activity.End;
import jsprit.core.problem.solution.route.activity.ServiceActivity;
import jsprit.core.problem.solution.route.activity.Start;
import jsprit.core.problem.vehicle.Vehicle;
import jsprit.core.problem.vehicle.VehicleImpl;
import jsprit.core.problem.vehicle.VehicleTypeImpl;
@ -55,7 +42,6 @@ public class VrpWriterV2Test {
@Test
public void whenWritingInfiniteVrp_itWritesCorrectly(){
VehicleRoutingProblem.Builder builder = VehicleRoutingProblem.Builder.newInstance();
builder.setFleetComposition(FleetComposition.HETEROGENEOUS);
builder.setFleetSize(FleetSize.INFINITE);
// Depot depot = new Depot("depotLoc",Coordinate.newInstance(0, 0));
// Depot depot2 = new Depot("depotLoc2",Coordinate.newInstance(100, 100));
@ -72,7 +58,6 @@ public class VrpWriterV2Test {
@Test
public void whenWritingFiniteVrp_itWritesCorrectly(){
VehicleRoutingProblem.Builder builder = VehicleRoutingProblem.Builder.newInstance();
builder.setFleetComposition(FleetComposition.HETEROGENEOUS);
builder.setFleetSize(FleetSize.FINITE);
// Depot depot = new Depot("depotLoc",Coordinate.newInstance(0, 0));
// Depot depot2 = new Depot("depotLoc2",Coordinate.newInstance(100, 100));
@ -81,8 +66,6 @@ public class VrpWriterV2Test {
VehicleTypeImpl type2 = VehicleTypeImpl.Builder.newInstance("vehType2", 200).build();
Vehicle v1 = VehicleImpl.Builder.newInstance("v1").setLocationId("loc").setType(type1).build();
Vehicle v2 = VehicleImpl.Builder.newInstance("v2").setLocationId("loc").setType(type2).build();
builder.addVehicleType(type1);
builder.addVehicleType(type2);
builder.addVehicle(v1);
builder.addVehicle(v2);
VehicleRoutingProblem vrp = builder.build();
@ -92,7 +75,6 @@ public class VrpWriterV2Test {
@Test
public void t(){
VehicleRoutingProblem.Builder builder = VehicleRoutingProblem.Builder.newInstance();
builder.setFleetComposition(FleetComposition.HETEROGENEOUS);
builder.setFleetSize(FleetSize.FINITE);
// Depot depot = new Depot("depotLoc",Coordinate.newInstance(0, 0));
// Depot depot2 = new Depot("depotLoc2",Coordinate.newInstance(100, 100));
@ -101,8 +83,6 @@ public class VrpWriterV2Test {
VehicleTypeImpl type2 = VehicleTypeImpl.Builder.newInstance("vehType2", 200).build();
Vehicle v1 = VehicleImpl.Builder.newInstance("v1").setLocationId("loc").setType(type1).build();
Vehicle v2 = VehicleImpl.Builder.newInstance("v2").setLocationId("loc").setType(type2).build();
builder.addVehicleType(type1);
builder.addVehicleType(type2);
builder.addVehicle(v1);
builder.addVehicle(v2);
VehicleRoutingProblem vrp = builder.build();
@ -121,15 +101,13 @@ public class VrpWriterV2Test {
Vehicle v1 = VehicleImpl.Builder.newInstance("v1").setLocationId("loc").setType(type1).build();
Vehicle v2 = VehicleImpl.Builder.newInstance("v2").setLocationId("loc").setType(type2).build();
builder.addVehicleType(type1);
builder.addVehicleType(type2);
builder.addVehicle(v1);
builder.addVehicle(v2);
Service s1 = Service.Builder.newInstance("1", 1).setLocationId("loc").setServiceTime(2.0).build();
Service s2 = Service.Builder.newInstance("2", 1).setLocationId("loc2").setServiceTime(4.0).build();
VehicleRoutingProblem vrp = builder.addService(s1).addService(s2).build();
VehicleRoutingProblem vrp = builder.addJob(s1).addJob(s2).build();
new VrpXMLWriter(vrp, null).write(infileName);
VehicleRoutingProblem.Builder vrpToReadBuilder = VehicleRoutingProblem.Builder.newInstance();

View file

@ -52,16 +52,14 @@ public class TestVehicleRoute {
@Test
public void whenBuildingEmptyRouteCorrectly_go(){
VehicleRoute route = VehicleRoute.newInstance(TourActivities.emptyTour(),DriverImpl.noDriver(),VehicleImpl.noVehicle());
assertTrue(true);
assertTrue(route!=null);
}
@Test
public void whenBuildingEmptyRouteCorrectlyV2_go(){
VehicleRoute route = VehicleRoute.emptyRoute();
assertTrue(true);
assertTrue(route!=null);
}
@Test
@ -78,17 +76,16 @@ public class TestVehicleRoute {
@Test(expected=IllegalStateException.class)
public void whenBuildingEmptyRoute_(){
@SuppressWarnings("unused")
VehicleRoute route = VehicleRoute.newInstance(null,null,null);
}
@Test(expected=IllegalStateException.class)
public void whenBuildingRouteWithNonEmptyTour_throwException(){
TourActivities tour = new TourActivities();
tour.addActivity(ServiceActivity.newInstance(Service.Builder.newInstance("jo", 10).build()));
@SuppressWarnings("unused")
VehicleRoute route = VehicleRoute.newInstance(tour,DriverImpl.noDriver(),VehicleImpl.noVehicle());
}
@Test
@ -99,6 +96,7 @@ public class TestVehicleRoute {
Iterator<TourActivity> iter = route.getTourActivities().iterator();
int count = 0;
while(iter.hasNext()){
@SuppressWarnings("unused")
TourActivity act = iter.next();
count++;
}
@ -113,6 +111,7 @@ public class TestVehicleRoute {
Iterator<TourActivity> iter = route.getTourActivities().iterator();
int count = 0;
while(iter.hasNext()){
@SuppressWarnings("unused")
TourActivity act = iter.next();
count++;
}
@ -130,6 +129,7 @@ public class TestVehicleRoute {
Iterator<TourActivity> iter = route.getTourActivities().iterator();
int count = 0;
while(iter.hasNext()){
@SuppressWarnings("unused")
TourActivity act = iter.next();
count++;
}
@ -140,6 +140,7 @@ public class TestVehicleRoute {
Iterator<TourActivity> iter = route.getTourActivities().iterator();
int count = 0;
while(iter.hasNext()){
@SuppressWarnings("unused")
TourActivity act = iter.next();
count++;
}
@ -154,6 +155,7 @@ public class TestVehicleRoute {
Iterator<TourActivity> iter = route.getTourActivities().reverseActivityIterator();
int count = 0;
while(iter.hasNext()){
@SuppressWarnings("unused")
TourActivity act = iter.next();
count++;
}
@ -168,6 +170,7 @@ public class TestVehicleRoute {
Iterator<TourActivity> iter = route.getTourActivities().reverseActivityIterator();
int count = 0;
while(iter.hasNext()){
@SuppressWarnings("unused")
TourActivity act = iter.next();
count++;
}

View file

@ -42,7 +42,7 @@ public class TestRefs {
private void doSmth(List<Start> starts) {
int count = 0;
for(Start s : starts){
for(@SuppressWarnings("unused") Start s : starts){
s = Start.newInstance("yo_"+count,0.0,0.0);
count++;
}

View file

@ -64,6 +64,7 @@ public class TestVehicleFleetManager extends TestCase{
assertEquals(1, vehicles.size());
try{
fleetManager.lock(v1);
@SuppressWarnings("unused")
Collection<Vehicle> vehicles_ = fleetManager.getAvailableVehicles();
assertFalse(true);
}

View file

@ -22,7 +22,6 @@ import java.util.Collection;
import jsprit.analysis.toolbox.AlgorithmSearchProgressChartListener;
import jsprit.analysis.toolbox.Plotter;
import jsprit.analysis.toolbox.Plotter.Label;
import jsprit.analysis.toolbox.SolutionPlotter;
import jsprit.analysis.toolbox.SolutionPrinter;
import jsprit.core.algorithm.VehicleRoutingAlgorithm;
import jsprit.core.algorithm.io.VehicleRoutingAlgorithms;

View file

@ -17,7 +17,6 @@
package jsprit.examples;
import java.io.File;
import java.util.Arrays;
import java.util.Collection;
import jsprit.analysis.toolbox.GraphStreamViewer;

View file

@ -24,7 +24,7 @@ import jsprit.analysis.toolbox.SolutionPrinter;
import jsprit.core.algorithm.VehicleRoutingAlgorithm;
import jsprit.core.algorithm.box.SchrimpfFactory;
import jsprit.core.problem.VehicleRoutingProblem;
import jsprit.core.problem.VehicleRoutingProblem.Constraint;
import jsprit.core.problem.constraint.ServiceDeliveriesFirstConstraint;
import jsprit.core.problem.io.VrpXMLWriter;
import jsprit.core.problem.job.Delivery;
import jsprit.core.problem.job.Shipment;
@ -98,7 +98,7 @@ public class SimpleEnRoutePickupAndDeliveryWithDepotBoundedDeliveriesExample {
vrpBuilder.addJob(shipment1).addJob(shipment2).addJob(shipment3).addJob(shipment4)
.addJob(delivery1).addJob(delivery2).addJob(delivery3).addJob(delivery4).build();
vrpBuilder.addProblemConstraint(Constraint.DELIVERIES_FIRST);
vrpBuilder.addConstraint(new ServiceDeliveriesFirstConstraint());
VehicleRoutingProblem problem = vrpBuilder.build();

View file

@ -22,7 +22,6 @@ import java.util.Collection;
import jsprit.analysis.toolbox.SolutionPlotter;
import jsprit.analysis.toolbox.SolutionPrinter;
import jsprit.core.algorithm.VehicleRoutingAlgorithm;
import jsprit.core.algorithm.box.SchrimpfFactory;
import jsprit.core.algorithm.io.VehicleRoutingAlgorithms;
import jsprit.core.problem.VehicleRoutingProblem;
import jsprit.core.problem.io.VrpXMLWriter;

View file

@ -25,7 +25,7 @@ import jsprit.analysis.toolbox.SolutionPrinter;
import jsprit.core.algorithm.VehicleRoutingAlgorithm;
import jsprit.core.algorithm.box.SchrimpfFactory;
import jsprit.core.problem.VehicleRoutingProblem;
import jsprit.core.problem.VehicleRoutingProblem.Constraint;
import jsprit.core.problem.constraint.ServiceDeliveriesFirstConstraint;
import jsprit.core.problem.io.VrpXMLWriter;
import jsprit.core.problem.job.Delivery;
import jsprit.core.problem.job.Pickup;
@ -83,7 +83,7 @@ public class SimpleVRPWithBackhaulsExample {
vrpBuilder.addJob(pickup1).addJob(pickup2).addJob(delivery1).addJob(delivery2);
//
vrpBuilder.addProblemConstraint(Constraint.DELIVERIES_FIRST);
vrpBuilder.addConstraint(new ServiceDeliveriesFirstConstraint());
VehicleRoutingProblem problem = vrpBuilder.build();

View file

@ -27,7 +27,6 @@ import jsprit.core.algorithm.VehicleRoutingAlgorithm;
import jsprit.core.algorithm.io.VehicleRoutingAlgorithms;
import jsprit.core.algorithm.selector.SelectBest;
import jsprit.core.problem.VehicleRoutingProblem;
import jsprit.core.problem.VehicleRoutingProblem.Constraint;
import jsprit.core.problem.constraint.ServiceDeliveriesFirstConstraint;
import jsprit.core.problem.io.VrpXMLReader;
import jsprit.core.problem.solution.VehicleRoutingProblemSolution;

View file

@ -96,7 +96,7 @@ public class ChristofidesReader {
int demand = Integer.parseInt(tokens[2].trim());
String customer = Integer.valueOf(counter-1).toString();
Service service = Service.Builder.newInstance(customer, demand).setServiceTime(serviceTime).setCoord(customerCoord).build();
vrpBuilder.addService(service);
vrpBuilder.addJob(service);
}
counter++;
}

View file

@ -113,7 +113,7 @@ public class CordeauReader {
double serviceTime = Double.parseDouble(tokens[3].trim());
int demand = Integer.parseInt(tokens[4].trim());
Service service = Service.Builder.newInstance(id, demand).setServiceTime(serviceTime).setLocationId(id).setCoord(customerCoord).build();
vrpBuilder.addService(service);
vrpBuilder.addJob(service);
}
else if(counter <= (nOfCustomers+nOfDepots+nOfDepots)){
Coordinate depotCoord = makeCoord(tokens[1].trim(),tokens[2].trim());

View file

@ -18,16 +18,12 @@ package jsprit.instance.reader;
import java.util.List;
import jsprit.core.problem.VehicleRoutingProblem;
import jsprit.core.problem.VehicleRoutingProblem.Builder;
import jsprit.core.problem.cost.VehicleRoutingTransportCosts;
import jsprit.core.problem.driver.Driver;
import jsprit.core.problem.vehicle.Vehicle;
import jsprit.core.util.CrowFlyCosts;
import jsprit.core.util.Locations;
import org.apache.log4j.Logger;
public class FigliozziReader {
@ -127,17 +123,17 @@ public class FigliozziReader {
}
private VehicleRoutingProblem.Builder builder;
public FigliozziReader(Builder builder) {
super();
this.builder = builder;
}
public void read(String instanceFile, String speedScenarioFile, String speedScenario){
}
// private VehicleRoutingProblem.Builder builder;
//
// public FigliozziReader(Builder builder) {
// super();
// this.builder = builder;
// }
//
// public void read(String instanceFile, String speedScenarioFile, String speedScenario){
//
//
// }
//
}

View file

@ -23,7 +23,6 @@ import java.io.FileReader;
import java.io.IOException;
import jsprit.core.problem.VehicleRoutingProblem;
import jsprit.core.problem.VehicleRoutingProblem.FleetComposition;
import jsprit.core.problem.VehicleRoutingProblem.FleetSize;
import jsprit.core.problem.job.Service;
import jsprit.core.problem.solution.route.activity.TimeWindow;
@ -47,7 +46,7 @@ public class LuiShenReader {
public LuiShenReader(VehicleRoutingProblem.Builder vrpBuilder) {
super();
this.vrpBuilder = vrpBuilder;
this.vrpBuilder.setFleetComposition(FleetComposition.HETEROGENEOUS);
// this.vrpBuilder.setFleetComposition(FleetComposition.HETEROGENEOUS);
}
/**
@ -90,7 +89,7 @@ public class LuiShenReader {
else{
Service service = Service.Builder.newInstance("" + counter, demand).setCoord(coord).setLocationId(customerId).setServiceTime(serviceTime)
.setTimeWindow(TimeWindow.newInstance(start, end)).build();
vrpBuilder.addService(service);
vrpBuilder.addJob(service);
}
}
}

View file

@ -115,7 +115,7 @@ public class SolomonReader {
else{
Service service = Service.Builder.newInstance(customerId, demand).setCoord(coord).setLocationId(customerId).setServiceTime(serviceTime)
.setTimeWindow(TimeWindow.newInstance(start, end)).build();
vrpBuilder.addService(service);
vrpBuilder.addJob(service);
}
}
}

View file

@ -18,9 +18,7 @@ package jsprit.instance.reader;
import static org.junit.Assert.assertEquals;
import jsprit.core.problem.VehicleRoutingProblem;
import jsprit.core.problem.VehicleRoutingProblem.FleetComposition;
import jsprit.core.problem.VehicleRoutingProblem.FleetSize;
import jsprit.instance.reader.LuiShenReader;
import org.junit.Before;
import org.junit.Test;
@ -39,11 +37,6 @@ public class LuiShenReaderTest {
vrp = builder.build();
}
@Test
public void testFleetCompostion(){
assertEquals(FleetComposition.HETEROGENEOUS,vrp.getFleetComposition());
}
@Test
public void testFleetSize(){
assertEquals(FleetSize.INFINITE,vrp.getFleetSize());