Initializing help system before first use

XPRSloadbasis

Purpose
Loads a basis from the user's areas.
Topic areas
Synopsis
int XPRS_CC XPRSloadbasis(XPRSprob prob, const int rowstat[], const int colstat[]);
Arguments
prob 
The current problem.
rowstat 
Integer array of length ROWS containing the basis status of the slack, surplus or artificial variable associated with each row. The status must be one of:
XPRS_NONBASIC_LOWER (0) 
slack, surplus or artificial is non-basic at lower bound;
XPRS_BASIC (1) 
slack, surplus or artificial is basic;
XPRS_NONBASIC_UPPER (2) 
slack or surplus is non-basic at upper bound.
XPRS_SUPERBASIC (3) 
slack or surplus is super-basic.
colstat 
Integer array of length COLS containing the basis status of each of the columns in the constraint matrix. The status must be one of:
XPRS_NONBASIC_LOWER (0) 
variable is non-basic at lower bound or superbasic at zero if the variable has no lower bound;
XPRS_BASIC (1) 
variable is basic;
XPRS_NONBASIC_UPPER (2) 
variable is at upper bound;
XPRS_SUPERBASIC (3) 
variable is super-basic.
Example
This example loads a problem and then reloads a (previously optimized) basis from a similar problem to speed up the optimization:
XPRSreadprob(prob,"problem","");
XPRSloadbasis(prob,rowstat,colstat);
XPRSlpoptimize(prob,"");
See also examples globjpar.c, glrhspar.c.
Further information
If the problem has been altered since saving an advanced basis, you may want to alter the basis as follows before loading it:
  • Make new variables non-basic at their lower bound (colstat[icol]=0), unless a variable has an infinite lower bound and a finite upper bound, in which case make the variable non-basic at its upper bound (colstat[icol]=2);
  • Make new constraints basic (rowstat[jrow]=1);
  • Try not to delete basic variables, or non-basic constraints.
Related topics

© 2001-2025 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.