diff --git a/WHATS_NEW.md b/WHATS_NEW.md index 574781c9..02e26465 100644 --- a/WHATS_NEW.md +++ b/WHATS_NEW.md @@ -8,8 +8,22 @@ WHATS NEW SKILLS 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. +It lets you assign hard requirements to jobs and vehicles/drivers. For example, your vehicle requires a loading bridge to unload freight at customer A or +a technician requires a screwdriver, a hammer and an electric drill to serve customer A. +You assign latter skills to your customer as follows: + +
Service service = Service.Builder.newInstance(serviceId).addRequiredSkill("screwdriver")
+ .addRequiredSkill("hammer").addRequiredSkill("electric-drill"). ... .build();
+
+
+Assign these skills to your technician as well:
+
+VehicleImpl skilled_technician = VehicleImpl.Builder.newInstance(technicianId).addSkill("screwdriver")
+ .addSkill("hammer").addSkill("electric-drill"). ... .build();
+
+
+
+Note that 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: