v1.7.2 @ 2017-06-08
- see Whats new
v1.7.1 @ 2017-05-11
- see Whats new
v1.7 @ 2017-01-12
- see Whats new
v1.6.2 @ 2016-02-02
new features:
-
driver breaks
-
multiple time windows
-
consideration of waiting times
-
fast regret
-
a number of internal improvements
v1.6.1 @ 2015-08-10
v1.6 @ 2015-03-12 ! Break change !
new features: see Whats new
v1.5 @ 2014-12-12 ! Break change !
It only breaks your code if you already build your algorithm from scratch since strategies now need to have unique ids. just add a unique id to the SearchStrategy constructor.
new features: see Whats new
v1.4.2 @ 2014-10-14
new feature: core.analysis.SolutionAnalyser
v1.4.1 @ 2014-09-25
v1.4 @ 2014-09-08
! Break change !
- detailed changelog
- migrated from log4j1x to log4j2 (if you do not use Maven, see how the dependencies changed: https://github.com/jsprit/jsprit/wiki/jsprit-core
- 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)
- new feature: unassigned job list
- countless improvements of javadocs
jsprit-core
-
renaming of core.problem.constraint.HardActivityStateLevelConstraint into HardActivityConstraint
-
renaming of core.problem.constraint.HardRouteStateLevelConstraint into HardRouteConstraint
-
StateFactory.createId(String name) moved to core.algorithm.state.StateManager.createStateId(String name)
-
StateFactory moved from core.problem.solution.route.state.StateFactory to core.algorithm.state.InternalStates
-
StateId moved from core.problem.route.state.StateFactory.StateId to core.algorithm.state.StateId
-
StateFactory.createId(String name) is not accessible anymore
-
constructor new StateManager(VehicleRoutingTransportCosts costs) does not exist anymore, but is new StateManager(VehicleRoutingProblem vrp)
-
StateManager.addDefault... methods do not exists anymore. Client must now decide what to do when state does not exist.
-
deprecated core.problem.VehicleRoutingProblem.Builder.addVehicle(Vehicle v) and added core.problem.VehicleRoutingProblem.Builder.addVehicle(AbstractVehicle v)
-
deprecated core.problem.VehicleRoutingProblem.Builder.addJob(Job j) and added core.problem.VehicleRoutingProblem.Builder.addJob(AbstractJob j)
-
this example might make migrating from v1.3.1 to v1.4 easier (since both versions are implemented - v1.3.1 was commented out)
-
bugfix #107
-
bugfix #109
-
bugfix #111
-
bugfix #112
-
bugfix #114
-
bugfix #126
-
bugfix #128
v1.3.1 @ 2014-06-14
jsprit-core
v1.3.0 @ 2014-05-19
- detailed changelog
- removed deprecated code (that had been deprecated before v1.2.0) which is definitely a break change (see details above)
jsprit-analysis
- redesigned analysis.toolbox.Plotter - it now always shows first activity as small triangle (no annotation that does not scale anymore)
- added analysis.toolbox.ComputationalLaboratory to conduct various sensitivity studies concurrently
- added analysis.toolbox.XYLineChartBuilder to simplify chart creation of n XYLines
- bugfix #59
jsprit-core
- added a number of unit- and integration-test to better guarantee/protect functionality
- added feature: algorithm maximizes/minimizes whatever constraints and custom objective suggest, i.e.constraints and custom objective function can now be easily defined and considered by the meta-heuristic #57, #72
- added feature: initial loads can now be defined #87
- bugfix #84
- bugfix #91
- bugfix #92
- bugfix #95
- bugfix #96
- bugfix #98
v1.2.0 @ 2014-03-06
- detailed changelog (containing added and deprecated methods and classes)
jsprit-core:
- added feature: multiple capacity dimensions (#55)
- added feature: different start and end locations of routes (#74)
- added a number of unit-tests
- reworked StateManager to deal with any state-object
- VrpXMLReader$ServiceBuilderFactory: Parameter 3 of 'public Service$Builder createBuilder(java.lang.String, java.lang.String, int)' has changed its type to java.lang.Integer
- Job: Method 'public Capacity getSize()' has been added to an interface [potential Break Change]
- Service$Builder: Removed field demand
- ServiceActivity: Removed field capacityDemand
- TourActivity: Method 'public Capacity getSize()' has been added to an interface [potential Break Change]
- RouteAndActivityStateGetter: Method 'public java.lang.Object getActivityState(TourActivity, StateFactory$StateId, java.lang.Class)' has been added to an interface [potential Break Change]
- RouteAndActivityStateGetter: Method 'public java.lang.Object getRouteState(VehicleRoute, StateFactory$StateId, java.lang.Class)' has been added to an interface [potential Break Change]
- Vehicle: Method 'public Coordinate getEndLocationCoordinate()' has been added to an interface [potential Break Change]
- Vehicle: Method 'public java.lang.String getEndLocationId()' has been added to an interface [potential Break Change]
- Vehicle: Method 'public Coordinate getStartLocationCoordinate()' has been added to an interface [potential Break Change]
- Vehicle: Method 'public java.lang.String getStartLocationId()' has been added to an interface [potential Break Change]
- VehicleFleetManager: Method 'public java.util.Collection getAvailableVehicles(Vehicle)' has been added to an interface [potential Break Change]
- VehicleType: Method 'public Capacity getCapacityDimensions()' has been added to an interface [potential Break Change]
- jsprit.core.util.VrpVerifier: Class jsprit.core.util.VrpVerifier removed [potential Break Change]
v1.1.1 @ 2014-01-31
jsprit-core:
- fixed bug: #80
- added new package reporting with basic reporting
v1.1.0 @ 2014-01-27
jsprit-core:
- added javadocs (VehicleRoutingProblem and classes in package vehicle. and job.)
- added unit-tests (for classes in package vehicle., job. and io.)
- deprecated methods in VehicleRoutingProblem, VehicleTypeImpl, VehicleImpl
- added func in VehicleRoutingProblem.Builder (.addPenaltyVehicle(...) methods)
- added feature: open-routes (#54)
- added func in VehicleImpl and VehicleImpl.Builder (.setReturnToDepot(...), isReturnToDepot())
- added feature: prohibit vehicles to take over entire route (#70)
- fixed bug: #58,#76-#79
- added abstract class AbstractForwardVehicleRoutingCosts
- inspected and removed all warnings
- visibility of methods activity.Start.get/setCoordinate(...) decreased from public to package [potential Break Change]
- visibility of methods activity.End.get/setCoordinate(...) decreased from public to package [potential Break Change]
- method isReturnToDepot() has been added to interface Vehicle [potential Break Change]
- visibility of constructor VehicleImpl.Builder decreased from public to private [potential Break Change]
jsprit-analysis:
- added GraphStreamViewer
- inspected and removed all warnings
jsprit-example:
- added BicycleMessenger
- enriched examples with GraphStreamViewer
- inspected and removed all warnings
jsprit-instance:
- added VrphGoldenReader (plus instances to bechmark VRPH)
- inspected and removed all warnings
v1.0.0 @ 2013-11-26 (break change)
- re-organized API
- new package names: jsprit.<module>.<folder(s)>
- most of the breaks can be fixed by (re-)organizing imports
- however the following breaks have to be fixed manually:
- SolutionPrinter.
print(solution, Print.VERBOSE)--> use .print(solution) instead - VehicleRoute:
getCosts(),getCostCalculator() - TimeBreaker --> TimeTermination, VariationCoefficentBreaker --> ...Termination, Iteration...Breaker --> ...Termination
- VehicleRoutingAlgorithm: setPrematureBreaker(...) --> setPrematureTermination(...)
- util.
Counter - detailed changelog
v0.0.5 @ 2013-11-22
- more memory-efficient RadialRuin (issue #53)
- bug fix (issue #51)
v0.0.4 @ 2013-10-17
- a number of internal improvements
- license change from GPLv2 to LGPLv3
- add premature algorithm termination: PrematureAlgorithmBreaker.java and its implementations
- searchStrategy.java: public SearchStrategy(SolutionSelector,SolutionAcceptor) --> public SearchStratgy(SolutionSelector,SolutionAcceptor,SolutionCostCalculator)
- searchStrategy.java: public boolean run(...) --> public DiscoveredSolution run(...)
- vehicleImpl.VehicleType.Builder --> VehicleTypeImpl.Builder
- vehicleImpl.VehicleBuilder --> VehicleImpl.Builder
v0.0.3 @ 2013-06-04
- bug fix - access resources in jar
v0.0.2 @ 2013-06-03
- bug fix - access resources in jar
v0.0.1 @ 2013-06-02