Skip to content

Commit 0df651c

Browse files
committed
Merge pull request #175 from HeinrichFilter/logging-improvements
[Fix #173] Updated all logging statements to use parameter substitution
2 parents af9e75c + 44aeb38 commit 0df651c

36 files changed

+79
-79
lines changed

jsprit-core/src/main/java/jsprit/core/algorithm/SearchStrategy.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ public SearchStrategy(String id, SolutionSelector solutionSelector, SolutionAcce
8888
this.solutionAcceptor = solutionAcceptor;
8989
this.solutionCostCalculator = solutionCostCalculator;
9090
this.id = id;
91-
logger.debug("initialise " + this);
91+
logger.debug("initialise {}", this);
9292
}
9393

9494
public String getId() {
@@ -159,7 +159,7 @@ private String getErrMsg() {
159159
public void addModule(SearchStrategyModule module){
160160
if(module == null) throw new IllegalStateException("module to be added is null.");
161161
searchStrategyModules.add(module);
162-
logger.debug("module added [module=" + module + "][#modules=" + searchStrategyModules.size() + "]");
162+
logger.debug("module added [module={}][#modules={}]", module, searchStrategyModules.size());
163163
}
164164

165165
public void addModuleListener(SearchStrategyModuleListener moduleListener) {

jsprit-core/src/main/java/jsprit/core/algorithm/VehicleRoutingAlgorithm.java

+9-9
Original file line numberDiff line numberDiff line change
@@ -142,8 +142,8 @@ private void verify(VehicleRoutingProblemSolution solution) {
142142
}
143143
}
144144
if(nuJobs != problem.getJobs().values().size()){
145-
logger.warn("number of jobs in initial solution (" + nuJobs + ") is not equal nuJobs in vehicle routing problem (" + problem.getJobs().values().size() + ")" +
146-
"\n this might yield unintended effects, e.g. initial solution cannot be improved anymore.");
145+
logger.warn("number of jobs in initial solution ({}) is not equal nuJobs in vehicle routing problem ({})" +
146+
"\n this might yield unintended effects, e.g. initial solution cannot be improved anymore.", nuJobs, problem.getJobs().values().size() );
147147
}
148148
}
149149

@@ -188,7 +188,7 @@ public SearchStrategyManager getSearchStrategyManager() {
188188
* @see {@link SearchStrategyManager}, {@link VehicleRoutingAlgorithmListener}, {@link AlgorithmStartsListener}, {@link AlgorithmEndsListener}, {@link IterationStartsListener}, {@link IterationEndsListener}
189189
*/
190190
public Collection<VehicleRoutingProblemSolution> searchSolutions(){
191-
logger.info("algorithm starts: " + "[maxIterations=" + maxIterations + "]");
191+
logger.info("algorithm starts: [maxIterations={}]", maxIterations);
192192
double now = System.currentTimeMillis();
193193
int noIterationsThisAlgoIsRunning = maxIterations;
194194
counter.reset();
@@ -198,24 +198,24 @@ public Collection<VehicleRoutingProblemSolution> searchSolutions(){
198198
logger.info("iterations start");
199199
for(int i=0;i< maxIterations;i++){
200200
iterationStarts(i+1,problem,solutions);
201-
logger.debug("start iteration: " + i);
201+
logger.debug("start iteration: {}", i);
202202
counter.incCounter();
203203
SearchStrategy strategy = searchStrategyManager.getRandomStrategy();
204204
DiscoveredSolution discoveredSolution = strategy.run(problem, solutions);
205-
logger.trace("discovered solution: " + discoveredSolution);
205+
logger.trace("discovered solution: {}", discoveredSolution);
206206
memorizeIfBestEver(discoveredSolution);
207207
selectedStrategy(discoveredSolution,problem,solutions);
208208
if(terminationManager.isPrematureBreak(discoveredSolution)){
209-
logger.info("premature algorithm termination at iteration "+ (i+1));
209+
logger.info("premature algorithm termination at iteration {}", (i+1));
210210
noIterationsThisAlgoIsRunning = (i+1);
211211
break;
212212
}
213213
iterationEnds(i+1,problem,solutions);
214214
}
215-
logger.info("iterations end at " + noIterationsThisAlgoIsRunning + " iterations");
215+
logger.info("iterations end at {} iterations", noIterationsThisAlgoIsRunning);
216216
addBestEver(solutions);
217217
algorithmEnds(problem, solutions);
218-
logger.info("took " + ((System.currentTimeMillis()-now)/1000.0) + " seconds");
218+
logger.info("took {} seconds", ((System.currentTimeMillis()-now)/1000.0));
219219
return solutions;
220220
}
221221

@@ -267,7 +267,7 @@ private void algorithmStarts(VehicleRoutingProblem problem, Collection<VehicleRo
267267
*/
268268
public void setMaxIterations(int maxIterations) {
269269
this.maxIterations = maxIterations;
270-
logger.debug("set maxIterations to " + this.maxIterations);
270+
logger.debug("set maxIterations to {}", this.maxIterations);
271271
}
272272

273273
/**

jsprit-core/src/main/java/jsprit/core/algorithm/acceptor/ExperimentalSchrimpfAcceptance.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ public ExperimentalSchrimpfAcceptance(int solutionMemory, double alpha, int nOfW
5757
this.alpha = alpha;
5858
this.nOfRandomWalks = nOfWarmupIterations;
5959
this.solutionMemory = solutionMemory;
60-
logger.info("initialise " + this);
60+
logger.info("initialise {}", this);
6161
}
6262

6363

@@ -96,7 +96,7 @@ public String toString() {
9696

9797
private double getThreshold(int iteration) {
9898
double scheduleVariable = (double) iteration / (double) nOfTotalIterations;
99-
// logger.debug("iter="+iteration+" totalIter="+nOfTotalIterations+" scheduling="+scheduleVariable);
99+
// logger.debug("iter={} totalIter={} scheduling={}", iteration, nOfTotalIterations, scheduleVariable);
100100
double currentThreshold = initialThreshold * Math.exp(-Math.log(2) * scheduleVariable / alpha);
101101
return currentThreshold;
102102
}
@@ -126,7 +126,7 @@ public void informAlgorithmStarts(VehicleRoutingProblem problem, VehicleRoutingA
126126
@Override
127127
public void informIterationEnds(int iteration, VehicleRoutingProblem problem, Collection<VehicleRoutingProblemSolution> solutions) {
128128
double result = Solutions.bestOf(solutions).getCost();
129-
// logger.info("result="+result);
129+
// logger.info("result={}", result);
130130
results[iteration-1] = result;
131131
}
132132

@@ -138,8 +138,8 @@ public void informIterationEnds(int iteration, VehicleRoutingProblem problem, Co
138138
initialThreshold = standardDeviation / 2;
139139

140140
logger.info("warmup done");
141-
logger.info("total time: " + ((System.currentTimeMillis()-now)/1000.0) + "s");
142-
logger.info("initial threshold: " + initialThreshold);
141+
logger.info("total time: {}s", ((System.currentTimeMillis()-now)/1000.0));
142+
logger.info("initial threshold: {}", initialThreshold);
143143
logger.info("---------------------------------------------------------------------");
144144

145145
}

jsprit-core/src/main/java/jsprit/core/algorithm/acceptor/SchrimpfAcceptance.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ public class SchrimpfAcceptance implements SolutionAcceptor, IterationStartsList
8383
public SchrimpfAcceptance(int solutionMemory, double alpha){
8484
this.alpha = alpha;
8585
this.solutionMemory = solutionMemory;
86-
logger.debug("initialise " + this);
86+
logger.debug("initialise {}", this);
8787
}
8888

8989
@Override

jsprit-core/src/main/java/jsprit/core/algorithm/acceptor/SchrimpfInitialThresholdGenerator.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ public void informAlgorithmStarts(VehicleRoutingProblem problem,VehicleRoutingAl
6767
@Override
6868
public void informIterationEnds(int iteration, VehicleRoutingProblem problem, Collection<VehicleRoutingProblemSolution> solutions) {
6969
double result = Solutions.bestOf(solutions).getCost();
70-
// logger.info("result="+result);
70+
// logger.info("result={}", result);
7171
results[iteration-1] = result;
7272
}
7373

@@ -80,8 +80,8 @@ public void informIterationEnds(int iteration, VehicleRoutingProblem problem, Co
8080

8181
schrimpfAcceptance.setInitialThreshold(initialThreshold);
8282

83-
logger.info("took " + ((System.currentTimeMillis()-now)/1000.0) + " seconds");
84-
logger.debug("initial threshold: " + initialThreshold);
83+
logger.info("took {} seconds", ((System.currentTimeMillis()-now)/1000.0) );
84+
logger.debug("initial threshold: {}", initialThreshold);
8585
logger.info("---------------------------------------------------------------------");
8686
}
8787

jsprit-core/src/main/java/jsprit/core/algorithm/recreate/AbstractInsertionStrategy.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ public void addListener(InsertionListener insertionListener) {
110110
}
111111

112112
protected void insertJob(Job unassignedJob, InsertionData iData, VehicleRoute inRoute){
113-
logger.trace("insert: [jobId=" + unassignedJob.getId() + "]" + iData );
113+
logger.trace("insert: [jobId={}]{}", unassignedJob.getId(), iData);
114114
insertionsListeners.informBeforeJobInsertion(unassignedJob, iData, inRoute);
115115
if(!(inRoute.getVehicle().getId().equals(iData.getSelectedVehicle().getId()))){
116116
insertionsListeners.informVehicleSwitched(inRoute, inRoute.getVehicle(), iData.getSelectedVehicle());

jsprit-core/src/main/java/jsprit/core/algorithm/recreate/BestInsertion.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ public double makeNoise() {
5656
public BestInsertion(JobInsertionCostsCalculator jobInsertionCalculator, VehicleRoutingProblem vehicleRoutingProblem) {
5757
super(vehicleRoutingProblem);
5858
bestInsertionCostCalculator = jobInsertionCalculator;
59-
logger.debug("initialise " + this);
59+
logger.debug("initialise {}", this);
6060
}
6161

6262
@Override

jsprit-core/src/main/java/jsprit/core/algorithm/recreate/BestInsertionConcurrent.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ public BestInsertionConcurrent(JobInsertionCostsCalculator jobInsertionCalculato
9494
this.nuOfBatches = nuOfBatches;
9595
bestInsertionCostCalculator = jobInsertionCalculator;
9696
completionService = new ExecutorCompletionService<Insertion>(executorService);
97-
logger.debug("initialise " + this);
97+
logger.debug("initialise {}", this);
9898
}
9999

100100
@Override
@@ -136,7 +136,7 @@ public Insertion call() throws Exception {
136136
}
137137
catch (ExecutionException e) {
138138
e.printStackTrace();
139-
logger.error(e.getCause().toString());
139+
logger.error("Exception", e);
140140
System.exit(1);
141141
}
142142
VehicleRoute newRoute = VehicleRoute.emptyRoute();

jsprit-core/src/main/java/jsprit/core/algorithm/recreate/JobInsertionConsideringFixCostsCalculator.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ public JobInsertionConsideringFixCostsCalculator(final JobInsertionCostsCalculat
4646
super();
4747
this.standardServiceInsertion = standardInsertionCalculator;
4848
this.stateGetter = stateGetter;
49-
logger.debug("inialise " + this);
49+
logger.debug("inialise {}", this);
5050
}
5151

5252
@Override
@@ -77,7 +77,7 @@ private double getFixCostContribution(final VehicleRoute currentRoute,
7777

7878
public void setWeightOfFixCost(double weight){
7979
weight_deltaFixCost = weight;
80-
logger.debug("set weightOfFixCostSaving to " + weight);
80+
logger.debug("set weightOfFixCostSaving to {}", weight);
8181
}
8282

8383
@Override

jsprit-core/src/main/java/jsprit/core/algorithm/recreate/RegretInsertion.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ public RegretInsertion(JobInsertionCostsCalculator jobInsertionCalculator, Vehic
203203
this.scoringFunction = new DefaultScorer(vehicleRoutingProblem);
204204
this.insertionCostsCalculator = jobInsertionCalculator;
205205
this.vrp = vehicleRoutingProblem;
206-
logger.debug("initialise " + this);
206+
logger.debug("initialise {}", this);
207207
}
208208

209209
@Override

jsprit-core/src/main/java/jsprit/core/algorithm/recreate/RegretInsertionConcurrent.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,7 @@ else if(sJob.getScore() > bestScoredJob.getScore()){
144144
}
145145
catch (ExecutionException e) {
146146
e.printStackTrace();
147-
logger.error(e.getCause().toString());
147+
logger.error("Exception", e);
148148
System.exit(1);
149149
}
150150

jsprit-core/src/main/java/jsprit/core/algorithm/recreate/ServiceInsertionCalculator.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ public ServiceInsertionCalculator(VehicleRoutingTransportCosts routingCosts, Act
7070
softRouteConstraint = constraintManager;
7171
this.additionalTransportCostsCalculator = additionalTransportCostsCalculator;
7272
additionalAccessEgressCalculator = new AdditionalAccessEgressCalculator(routingCosts);
73-
logger.debug("initialise " + this);
73+
logger.debug("initialise {}", this);
7474
}
7575

7676
public void setJobActivityFactory(JobActivityFactory jobActivityFactory){

jsprit-core/src/main/java/jsprit/core/algorithm/recreate/ServiceInsertionOnRouteLevelCalculator.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ public void setJobActivityFactory(JobActivityFactory jobActivityFactory){
8181

8282
public void setMemorySize(int memorySize) {
8383
this.memorySize = memorySize;
84-
logger.debug("set [solutionMemory="+memorySize+"]");
84+
logger.debug("set [solutionMemory={}]", memorySize);
8585
}
8686

8787
public ServiceInsertionOnRouteLevelCalculator(VehicleRoutingTransportCosts vehicleRoutingCosts, VehicleRoutingActivityCosts costFunc, ActivityInsertionCostsCalculator activityInsertionCostsCalculator, HardRouteConstraint hardRouteLevelConstraint, HardActivityConstraint hardActivityLevelConstraint) {
@@ -92,7 +92,7 @@ public ServiceInsertionOnRouteLevelCalculator(VehicleRoutingTransportCosts vehic
9292
this.hardRouteLevelConstraint = hardRouteLevelConstraint;
9393
this.hardActivityLevelConstraint = hardActivityLevelConstraint;
9494
auxilliaryPathCostCalculator = new AuxilliaryCostCalculator(transportCosts, activityCosts);
95-
logger.debug("initialise " + this);
95+
logger.debug("initialise {}", this);
9696
}
9797

9898

@@ -102,7 +102,7 @@ public void setStates(RouteAndActivityStateGetter stateManager){
102102

103103
void setNuOfActsForwardLooking(int nOfActsForwardLooking) {
104104
this.nuOfActsForwardLooking = nOfActsForwardLooking;
105-
logger.debug("set [forwardLooking="+nOfActsForwardLooking+"]");
105+
logger.debug("set [forwardLooking={}]", nOfActsForwardLooking);
106106
}
107107

108108
@Override

jsprit-core/src/main/java/jsprit/core/algorithm/recreate/ShipmentInsertionCalculator.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ public ShipmentInsertionCalculator(VehicleRoutingTransportCosts routingCosts, Ac
6868
this.softRouteConstraint = constraintManager;
6969
this.transportCosts = routingCosts;
7070
additionalAccessEgressCalculator = new AdditionalAccessEgressCalculator(routingCosts);
71-
logger.debug("initialise " + this);
71+
logger.debug("initialise {}", this);
7272
}
7373

7474
public void setJobActivityFactory(JobActivityFactory activityFactory){
@@ -136,7 +136,7 @@ public InsertionData getInsertionData(final VehicleRoute currentRoute, final Job
136136
nextAct = end;
137137
tourEnd = true;
138138
}
139-
// logger.info("activity: " + i + ", act-size: " + activities.size());
139+
// logger.info("activity: {}, act-size: {}", i, activities.size());
140140
ConstraintsStatus pickupShipmentConstraintStatus = hardActivityLevelConstraint.fulfilled(insertionContext, prevAct, pickupShipment, nextAct, prevActEndTime);
141141
if(pickupShipmentConstraintStatus.equals(ConstraintsStatus.NOT_FULFILLED)){
142142
double nextActArrTime = prevActEndTime + transportCosts.getTransportTime(prevAct.getLocation(), nextAct.getLocation(), prevActEndTime, newDriver, newVehicle);

jsprit-core/src/main/java/jsprit/core/algorithm/recreate/VehicleTypeDependentJobInsertionCalculator.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ public VehicleTypeDependentJobInsertionCalculator(final VehicleRoutingProblem vr
6060
this.insertionCalculator = jobInsertionCalc;
6161
this.vrp = vrp;
6262
getInitialVehicleIds();
63-
logger.debug("initialise " + this);
63+
logger.debug("initialise {}", this);
6464
}
6565

6666
private void getInitialVehicleIds() {
@@ -89,7 +89,7 @@ public boolean isVehicleSwitchAllowed() {
8989
* @param vehicleSwitchAllowed the vehicleSwitchAllowed to set
9090
*/
9191
public void setVehicleSwitchAllowed(boolean vehicleSwitchAllowed) {
92-
logger.debug("set vehicleSwitchAllowed to " + vehicleSwitchAllowed);
92+
logger.debug("set vehicleSwitchAllowed to {}", vehicleSwitchAllowed);
9393
this.vehicleSwitchAllowed = vehicleSwitchAllowed;
9494
}
9595

jsprit-core/src/main/java/jsprit/core/algorithm/ruin/AbstractRuinStrategy.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ protected AbstractRuinStrategy(VehicleRoutingProblem vrp) {
6363
public Collection<Job> ruin(Collection<VehicleRoute> vehicleRoutes){
6464
ruinListeners.ruinStarts(vehicleRoutes);
6565
Collection<Job> unassigned = ruinRoutes(vehicleRoutes);
66-
logger.trace("ruin: " + "[ruined=" + unassigned.size() + "]");
66+
logger.trace("ruin: [ruined={}]", unassigned.size());
6767
ruinListeners.ruinEnds(vehicleRoutes,unassigned);
6868
return unassigned;
6969
}
@@ -116,7 +116,7 @@ protected boolean removeJob(Job job, VehicleRoute route) {
116116
if(jobIsInitial(job)) return false;
117117
boolean removed = route.getTourActivities().removeJob(job);
118118
if (removed) {
119-
logger.trace("ruin: " + job.getId());
119+
logger.trace("ruin: {}", job.getId());
120120
ruinListeners.removed(job,route);
121121
return true;
122122
}

jsprit-core/src/main/java/jsprit/core/algorithm/ruin/JobNeighborhoodsImpl.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ public JobNeighborhoodsImpl(VehicleRoutingProblem vrp, JobDistance jobDistance)
2626
super();
2727
this.vrp = vrp;
2828
this.jobDistance = jobDistance;
29-
logger.debug("intialise " + this);
29+
logger.debug("intialise {}", this);
3030
}
3131

3232
@Override
@@ -86,8 +86,8 @@ public int compare(ReferencedJob o1, ReferencedJob o2) {
8686

8787
}
8888
stopWatch.stop();
89-
logger.debug("preprocessing comp-time: " + stopWatch + "; nuOfDistances stored: " + nuOfDistancesStored + "; estimated memory: " +
90-
(distanceNodeTree.keySet().size()*64+nuOfDistancesStored*92) + " bytes");
89+
logger.debug("preprocessing comp-time: {}; nuOfDistances stored: {}; estimated memory: {}" +
90+
" bytes", stopWatch, nuOfDistancesStored, (distanceNodeTree.keySet().size()*64+nuOfDistancesStored*92) );
9191
}
9292

9393
}

jsprit-core/src/main/java/jsprit/core/algorithm/ruin/JobNeighborhoodsImplWithCapRestriction.java

+4-4
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ public JobNeighborhoodsImplWithCapRestriction(VehicleRoutingProblem vrp, JobDist
2929
this.vrp = vrp;
3030
this.jobDistance = jobDistance;
3131
this.capacity = capacity;
32-
logger.debug("intialise " + this);
32+
logger.debug("intialise {}", this);
3333
}
3434

3535
@Override
@@ -59,7 +59,7 @@ public void remove() {
5959

6060
@Override
6161
public void initialise(){
62-
logger.debug("calculates distances from EACH job to EACH job --> n^2="+Math.pow(vrp.getJobs().values().size(), 2) + " calculations, but 'only' "+(vrp.getJobs().values().size()*capacity)+ " are cached.");
62+
logger.debug("calculates distances from EACH job to EACH job --> n^2={} calculations, but 'only' {} are cached.", Math.pow(vrp.getJobs().values().size(), 2), (vrp.getJobs().values().size()*capacity));
6363
if(capacity==0) return;
6464
calculateDistancesFromJob2Job();
6565
}
@@ -101,8 +101,8 @@ public int compare(ReferencedJob o1, ReferencedJob o2) {
101101

102102
}
103103
stopWatch.stop();
104-
logger.debug("preprocessing comp-time: " + stopWatch + "; nuOfDistances stored: " + nuOfDistancesStored + "; estimated memory: " +
105-
(distanceNodeTree.keySet().size()*64+nuOfDistancesStored*92) + " bytes");
104+
logger.debug("preprocessing comp-time: {}; nuOfDistances stored: {}; estimated memory: {}" +
105+
" bytes", stopWatch, nuOfDistancesStored, (distanceNodeTree.keySet().size()*64+nuOfDistancesStored*92));
106106
}
107107

108108
@Override

jsprit-core/src/main/java/jsprit/core/algorithm/ruin/RuinClusters.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ public int createNumberToBeRemoved() {
8787
}
8888
});
8989
this.jobNeighborhoods = jobNeighborhoods;
90-
logger.debug("initialise " + this);
90+
logger.debug("initialise {}", this);
9191
}
9292

9393
public void setNoClusters(int noClusters) {

jsprit-core/src/main/java/jsprit/core/algorithm/ruin/RuinRadial.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ public int createNumberToBeRemoved() {
6868
JobNeighborhoodsImplWithCapRestriction jobNeighborhoodsImpl = new JobNeighborhoodsImplWithCapRestriction(vrp, jobDistance, noJobsToMemorize);
6969
jobNeighborhoodsImpl.initialise();
7070
jobNeighborhoods = jobNeighborhoodsImpl;
71-
logger.debug("initialise " + this);
71+
logger.debug("initialise {}", this);
7272
}
7373

7474
public RuinRadial(VehicleRoutingProblem vrp, int noJobs2beRemoved, JobDistance jobDistance) {
@@ -87,7 +87,7 @@ public int createNumberToBeRemoved() {
8787
JobNeighborhoodsImplWithCapRestriction jobNeighborhoodsImpl = new JobNeighborhoodsImplWithCapRestriction(vrp, jobDistance, noJobsToMemorize);
8888
jobNeighborhoodsImpl.initialise();
8989
jobNeighborhoods = jobNeighborhoodsImpl;
90-
logger.debug("initialise " + this);
90+
logger.debug("initialise {}", this);
9191
}
9292

9393
public RuinRadial(VehicleRoutingProblem vrp, int noJobs2beRemoved, JobNeighborhoods neighborhoods) {
@@ -103,7 +103,7 @@ public int createNumberToBeRemoved() {
103103

104104
};
105105
jobNeighborhoods = neighborhoods;
106-
logger.debug("initialise " + this);
106+
logger.debug("initialise {}", this);
107107
}
108108

109109
@Override

jsprit-core/src/main/java/jsprit/core/algorithm/ruin/RuinRadialMultipleCenters.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ public int createNumberToBeRemoved() {
6262
JobNeighborhoodsImplWithCapRestriction jobNeighborhoodsImpl = new JobNeighborhoodsImplWithCapRestriction(vrp, jobDistance, noJobsToMemorize);
6363
jobNeighborhoodsImpl.initialise();
6464
jobNeighborhoods = jobNeighborhoodsImpl;
65-
logger.debug("initialise " + this);
65+
logger.debug("initialise {}", this);
6666
}
6767

6868
public void setNumberOfRuinCenters(int noCenters){

0 commit comments

Comments
 (0)