Search strategies
Missing docstring for SeaPearl.DFS
. Check Documenter's build log for details.
Missing docstring for SeaPearl.DFWBS
. Check Documenter's build log for details.
SeaPearl.LNSearch
— Typestruct LNSearch <: SearchStrategy Implementation of Large Neighboorhood Search This implementation is inspired on this paper: Using Constraint Programming and Local Search Methods to Solve Vehicle Routing Problems (April 1998, Paul Shaw) The number of values to remove in each destroy and repair loop is initialised to 1 and increase by 1 after limitIterNoImprovement
iterations with no improvement until limitValuesToRemove
is reached. limitValuesToRemove
will be set to half of the branching variables by default. With `repairLimits' one can fix limits (numberOfNodes, numberOfSolutions, searchingTime) that will be applied to the model used in the local search. Example: SeaPearl.solve!(model, SeaPearl.LNSearch(limitValuesToRemove=5, repairSearch=SeaPearl.ILDS(1), repairLimits=Dict("searchingTime" => 10)); ...)
SeaPearl.ILDSearch
— Typestruct ILDSearch <: SearchStrategy
implements the basic version of the Iterative Limited Discrepancy Search, ddue to the fact that the depth of the search tree is unknow before the search we cannot use the improved version of the Iterate Limited Discrepancy Search by Richard E. Korf. d is the max-discrepancy.
Missing docstring for SeaPearl.RBSearch
. Check Documenter's build log for details.
SeaPearl.staticRBSearch
— Typestruct staticRBSearch <: RBSearch
implements the static Restart-Based strategy where the stopping criteria L
remains the same at each restart.
SeaPearl.geometricRBSearch
— Typestruct geometricRBSearch <: RBSearch
implements the geometric Restart-Based strategy where the stopping criteria L
is increased by the geometric factor α
at each restart.
SeaPearl.lubyRBSearch
— Typestruct lubyRBSearch <: RBSearch
implements the Luby Restart-Based strategy where the stopping criteria L
is multiplied by the factor Luby[i]
for the i-th restart. The Luby sequence is a sequence of the following form: 1,1,2,1,1,2,4,1,1,2,1,1,2,4,8, . .and gives theoretical improvement on the search in the general case.