XPRSfixglobals |
FIXGLOBALS |
Purpose
Fixes all the
global entities to the values of the last found MIP solution. This is useful for finding the
reduced costs for the continuous variables after the global variables have been fixed to their optimal values.
Synopsis
int XPRS_CC XPRSfixglobals(XPRSprob prob, int options);
FIXGLOBALS [-flags]
Arguments
prob
|
The current problem.
|
options
|
Options how to fix the globals.
|
Values
|
Bit
|
Meaning
|
0
|
If all global entities should be rounded to the nearest discrete value in the solution before being fixed.
|
1
|
If piecewise linear and general constraints should be kept in the problem with only the non-convex decisions (i.e. which part of a non-convex piecewise linear function or which variable attains a maximum) fixed. Otherwise all variables appearing in piecewise linear or general constraints will be fixed.
|
|
flags
|
Flags to pass to FIXGLOBALS:
r
|
round all global entities to the nearest feasible value in the solution before being fixed;
|
t
|
keep piecewise linear and general constraints and only fix their non-convex decisions;
|
|
Example 1 (Library)
This example performs a global search on problem
myprob and then uses
XPRSfixglobals before solving the remaining linear problem:
XPRSreadprob(prob,"myprob","");
XPRSmipoptimize(prob," ");
XPRSfixglobals(prob, 1);
XPRSlpoptimize(prob," ");
XPRSwriteprtsol(prob);
Example 2 (Console)
A similar set of commands at the console would be as follows:
READPROB
MIPOPTIMIZE
FIXGLOBALS -r
LPOPTIMIZE
PRINTSOL
Further information
1. Because of tolerances, it is possible for e.g. a binary variable to be slightly fractional in the MIP solution, where it might have the value
0.999999 instead of being at exactly
1.0. With
ifround = 0, such a binary will be fixed at
0.999999, but with
ifround = 1, it will be fixed at
1.0.
2. This command is useful for inspecting the reduced costs of the continuous variables in a matrix after the global entities have been fixed.
Sensitivity analysis can also be performed on the continuous variables in a MIP problem using
XPRSrhssa or
XPRSobjsa after calling
XPRSfixglobals (
FIXGLOBALS).
Related topics
© 2001-2020 Fair Isaac Corporation. All rights reserved. This documentation is the
property of Fair Isaac Corporation (“FICO”). Receipt or possession of this documentation does not
convey rights to disclose, reproduce, make derivative works, use, or allow others to use it except
solely for internal evaluation purposes to determine whether to purchase a license to the software
described in this documentation, or as otherwise set forth in a written software license agreement
between you and FICO (or a FICO affiliate). Use of this documentation and the software described in
it must conform strictly to the foregoing permitted uses, and no other use is permitted.