loadmipsol
loadmipsol |
Purpose
Synopsis
function loadmipsol(s:array(set of mpvar) of real):integer
function loadmipsol(solnum:integer):integer
function loadmipsol(ms:mpsol):integer
Arguments
s
|
An array containing the solution
|
solnum
|
Solution number (between 1 and
XPRS_enumsols)
|
ms
|
A solution object
|
Return value
Operation status:
-1
|
Solution rejected because an error occurred
|
0
|
Solution accepted
|
1
|
Solution rejected because it is infeasible
|
2
|
Solution rejected because it is cut off
|
3
|
Solution rejected because the LP reoptimization was interrupted
|
Example
The following saves a MIP solution, modifies the problem, and then loads it into the Optimizer, reloading the MIP solution:
declarations MinCost:linctr mysol: array(set of mpvar) of real result: integer end-declarations savemipsol(mysol) ... ! Make some changes loadprob(MinCost) result:= loadmipsol(mysol) if result<>0 then writeln("Loading MIP solution failed"); end-if minimize(MinCost)
Further information
1. This function loads a MIP solution into the optimizer that has previously been saved using procedure
savemipsol or constructed by some external heuristic. In the latter case a value needs to be assigned to each discrete variable in the problem, such as
mysol(x):= 1 (where
x is a decision variable of type
mpvar).
2. The values for the continuous variables in the
s array are ignored and are calculated by fixing the integer variables and reoptimizing.
3. The second form of the routine can be called after a search for
n-best solutions has been performed by the optimiser: the selected solution is used as input.
4. The current problem definition must be loaded into the Optimizer for
loadmipsol to have any effect. If this has not recently been done,
e.g., by calling
maximize or
minimize, the problem must be explicitly loaded using
loadprob.
5. If the MIP solution is accepted by the Optimizer it causes the
MIPABSCUTOFF control to be set accordingly. The provided MIP solution may help guiding the MIP heuristics but the branch-and-bound search will start from the initial LP relaxation solution as usual.
Related topics
Module