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

set min ratio - related to #271

This commit is contained in:
oblonski 2016-08-15 10:57:41 +02:00
parent 040f5d5c76
commit 2212f53b73

View file

@ -29,9 +29,11 @@ import java.util.Collection;
final class ConfigureFixCostCalculator implements InsertionStartsListener, JobInsertedListener {
VehicleRoutingProblem vrp;
private final VehicleRoutingProblem vrp;
JobInsertionConsideringFixCostsCalculator calcConsideringFix;
private final JobInsertionConsideringFixCostsCalculator calcConsideringFix;
private final double minRatio = 0.5;
private int nuOfJobsToRecreate;
@ -50,15 +52,13 @@ final class ConfigureFixCostCalculator implements InsertionStartsListener, JobIn
public void informInsertionStarts(Collection<VehicleRoute> routes, Collection<Job> unassignedJobs) {
this.nuOfJobsToRecreate = unassignedJobs.size();
double completenessRatio = (1 - ((double) nuOfJobsToRecreate / (double) vrp.getJobs().values().size()));
calcConsideringFix.setSolutionCompletenessRatio(completenessRatio);
// log.debug("initialise completenessRatio to " + completenessRatio);
calcConsideringFix.setSolutionCompletenessRatio(Math.max(minRatio,completenessRatio));
}
@Override
public void informJobInserted(Job job2insert, VehicleRoute inRoute, double additionalCosts, double additionalTime) {
nuOfJobsToRecreate--;
double completenessRatio = (1 - ((double) nuOfJobsToRecreate / (double) vrp.getJobs().values().size()));
calcConsideringFix.setSolutionCompletenessRatio(completenessRatio);
// log.debug("set completenessRatio to " + completenessRatio);
calcConsideringFix.setSolutionCompletenessRatio(Math.max(minRatio,completenessRatio));
}
}