From 616faa7d0d2818d13733ae7c5970bdef167dfa27 Mon Sep 17 00:00:00 2001 From: oblonski <4sschroeder@gmail.com> Date: Wed, 27 Aug 2014 06:15:50 +0200 Subject: [PATCH] update WHATS_NEW --- WHATS_NEW.md | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/WHATS_NEW.md b/WHATS_NEW.md index f24e8ee0..3a341d3f 100644 --- a/WHATS_NEW.md +++ b/WHATS_NEW.md @@ -4,7 +4,27 @@ WHATS NEW SKILLS -- new feature: skills can now be included easily (see for example https://github.com/jsprit/jsprit/blob/master/jsprit-examples/src/main/java/jsprit/examples/SolomonWithSkillsExample.java) +Skills can now be included easily (see for example https://github.com/jsprit/jsprit/blob/master/jsprit-examples/src/main/java/jsprit/examples/SolomonWithSkillsExample.java). +It lets you assign hard requirements to jobs and vehicles/drivers. For example, a technician requires a screwdriver to serve customer A or +your vehicle requires a loading bridge to unload freight at customer B etc.. You can add an arbitrary number of skills to jobs and vehicles. + +To enable the algorithm to consider skills, you need to use core.algorithm.VehicleRoutingAlgorithmBuilder as follows: + +

+VehicleRoutingAlgorithmBuilder vraBuilder = new VehicleRoutingAlgorithmBuilder(skillProblem,yourConfig);
+vraBuilder.addCoreConstraints();
+vraBuilder.addDefaultCostCalculators();
+           
+StateManager stateManager = new StateManager(skillProblem);
+stateManager.updateSkillStates();
+
+ConstraintManager constraintManager = new ConstraintManager(skillProblem,stateManager);
+constraintManager.addSkillsConstraint();
+
+VehicleRoutingAlgorithm vra = vraBuilder.build();
+
+ + UNASSIGNED JOB LIST