LocalSolver 8.5¶
Caution
This release introduces a number of breaking changes in the APIs.
Release notes
The bound calculations for models involving bool, int and float decisions have been improved.
This release also brings performance improvements for models involving set or list decisions.
A modeling guide for routing problems has been added to the advanced features.
The API for setting objective thresholds has been modified. They are no longer named bounds but thresholds and can be set via the solver parameters. See the API changes below for the specific instructions.
The objective bounds computed by the solver can now be obtained from the solution. See the API changes below for the specific instructions.
API Changes¶
LSP¶
Deprecated the global variable
lsAnnealingLevel
. It will be removed in a future release.Removed the global method
getObjectiveBound()
.Deprecated the global method
setObjectiveBound()
. It will be removed in a future release.Added the global variable
lsObjectiveThreshold
. It can either take a single value or a collection of values if your model has multiple objectives.
Python¶
Added support for Python 3.7
Deprecated the methods
LSParam.get_annealing_level()
andLSParam.set_annealing_level()
. The attributeLSParam.annealing_level
has also been deprecated. They will be removed in a future release.Removed
LSParam.get_objective_bound()
andLSParam.set_objective_bound()
.Added the methods
LSParam.set_objective_threshold()
andLSParam.get_objective_threshold()
to replace the methods above.Added the method
LSSolution.get_objective_bound()
to retrieve the objective bounds computed by the solver.
C++¶
Deprecated the methods
LSParam::getAnnealingLevel()
andLSParam::setAnnealingLevel()
. They will be removed in a future release.Removed the following methods:
LSParam::getObjectiveBound()
LSParam::getIntObjectiveBound()
LSParam::getDoubleObjectiveBound()
LSParam::setObjectiveBound()
LSParam::setIntObjectiveBound()
LSParam::setDoubleObjectiveBound()
Added the following methods to replace the methods above:
Added the following methods to retrieve the objective bounds computed by the solver:
C#¶
Deprecated the methods
LSParam.GetAnnealingLevel()
andLSParam.SetAnnealingLevel()
. They will be removed in a future release.Removed the following methods:
LSParam.GetObjectiveBound()
LSParam.GetIntObjectiveBound()
LSParam.GetDoubleObjectiveBound()
LSParam.SetObjectiveBound()
LSParam.SetIntObjectiveBound()
LSParam.SetDoubleObjectiveBound()
Added the following methods to replace the methods above:
Added the following methods to retrieve the obejctive bounds computed by the solver:
Java¶
Deprecated the methods
LSParam.getAnnealingLevel()
andLSParam.setAnnealingLevel()
. They will be removed in a future release.Removed the following methods:
LSParam.getObjectiveBound()
LSParam.getIntObjectiveBound()
LSParam.getDoubleObjectiveBound()
LSParam.setObjectiveBound()
LSParam.setIntObjectiveBound()
LSParam.setDoubleObjectiveBound()
Added the following methods to replace the methods above:
LSParam.getObjectiveThreshold()
LSParam.getIntObjectiveThreshold()
LSParam.getDoubleObjectiveThreshold()
LSParam.setObjectiveThreshold()
LSParam.setIntObjectiveThreshold()
LSParam.setDoubleObjectiveThreshold()
Added the following methods to retrieve the objective bounds computed by the solver:
LSSolution.getObjectiveBound()
LSSolution.getIntObjectiveBound()
LSSolution.getDoubleObjectiveBound()