Initializing help system before first use

LoadMIQCQP Method (String, Int32, Int32, Char[], Double[], Double[], Double[], Int64[], Int32[], Int32[], Double[], Double[], Double[], Int64, Int32[], Int32[], Double[], Int32, Int32[], Int64[], Int32[], Int32[], Double[], Int32, Int32, Char[], Int32[], Double[], Char[], Int64[], Int32[], Double[])

Used to load a mixed integer quadratic problem with quadratic constraints into the Optimizer data structure. Such a problem may have quadratic terms in its objective function as well as in its constraints. Integer, binary, partial integer, semi-continuous and semi-continuous integer variables can be defined, together with sets of type 1 and 2. The reference row values for the set members are passed as an array rather than specifying a reference row.

Namespace:   Optimizer
Assembly:  xprsdn (in xprsdn.dll) Version: 44.01.04
Syntax
C#
public void LoadMIQCQP(
	string probname,
	int ncols,
	int nrows,
	char[] rowtype,
	double[] rhs,
	double[] rng,
	double[] objcoef,
	long[] start,
	int[] collen,
	int[] rowind,
	double[] rowcoef,
	double[] lb,
	double[] ub,
	long nobjqcoefs,
	int[] objqcol1,
	int[] objqcol2,
	double[] objqcoef,
	int nqrows,
	int[] qrowind,
	long[] nrowqcoefs,
	int[] rowqcol1,
	int[] rowqcol2,
	double[] rowqcoef,
	int nentities,
	int nsets,
	char[] coltype,
	int[] entind,
	double[] limit,
	char[] settype,
	long[] setstart,
	int[] setind,
	double[] refval
)

Parameters

probname
Type:  System.String
A string of up to MAXPROBNAMELENGTH characters containing a name for the problem.
ncols
Type:  System.Int32
Number of structural columns in the matrix.
nrows
Type:  System.Int32
Number of rows in the matrix (not including the objective row). Objective coefficients must be supplied in the objcoef array, and the objective function should not be included in any of the other arrays.
rowtype
Type:  System.Char
Character array of length nrows containing the row types:
  • L: indicates a <= constraint (use this one for quadratic constraints as well);
  • E: indicates an = constraint;
  • G: indicates a >= constraint;
  • R: indicates a range constraint;
  • N: indicates a nonbinding constraint.
rhs
Type:  System.Double
Double array of length nrows containing the right hand side coefficients of the rows. The right hand side value for a range row gives the upper bound on the row.
rng
Type:  System.Double
Double array of length nrows containing the range values for range rows. Values for all other rows will be ignored. May be null if there are no ranged constraints. The lower bound on a range row is the right hand side value minus the range value. The sign of the range value is ignored - the absolute value is used in all cases.
objcoef
Type:  System.Double
Double array of length ncols containing the objective function coefficients. This can be null to set all objective coefficients to 0 (zero).
start
Type:  System.Int64
Integer array containing the offsets in the rowind and rowcoef arrays of the start of the elements for each column. This array is of length ncols or, if collen is null, length ncols+1. If collen is null the extra entry of start, start[ncols], contains the position in the rowind and rowcoef arrays at which an extra column would start, if it were present. In C, this value is also the length of the rowind and rowcoef arrays.
collen
Type:  System.Int32
Integer array of length ncols containing the number of nonzero elements in each column. May be null if all elements are contiguous and start[ncols] contains the offset where the elements for column ncols+1 would start. This array is not required if the non-zero coefficients in the rowind and rowcoef arrays are continuous, and the start array has ncols+1 entries as described above. It may be null if not required.
rowind
Type:  System.Int32
Integer array containing the row indices for the nonzero elements in each column. If the indices are input contiguously, with the columns in ascending order, the length of the rowind is start[ncols-1]+collen[ncols-1] or, if collen is null, start[ncols].
rowcoef
Type:  System.Double
Double array containing the nonzero element values; length as for rowind.
lb
Type:  System.Double
Double array of length ncols containing the lower bounds on the columns. Use XPRS_MINUSINFINITY to represent a lower bound of minus infinity. If this is null then all lower bounds are 0 (zero).
ub
Type:  System.Double
Double array of length ncols containing the upper bounds on the columns. Use XPRS_PLUSINFINITY to represent an upper bound of plus infinity. It this is null then all upper bounds are infinite.
nobjqcoefs
Type:  System.Int64
Number of quadratic terms.
objqcol1
Type:  System.Int32
Integer array of size nobjqcoefs containing the column index of the first variable in each quadratic term.
objqcol2
Type:  System.Int32
Integer array of size nobjqcoefs containing the column index of the second variable in each quadratic term.
objqcoef
Type:  System.Double
Double array of size nobjqcoefs containing the quadratic coefficients.
nqrows
Type:  System.Int32
Number of rows containing quadratic matrices.
qrowind
Type:  System.Int32
Integer array of size nqrows, containing the indices of rows with quadratic matrices in them. Note that the rows are expected to be defined in rowtype as type L.
nrowqcoefs
Type:  System.Int64
Integer array of size nqrows, containing the number of nonzeros in each quadratic constraint matrix.
rowqcol1
Type:  System.Int32
Integer array of size nqcelem, where nqcelem equals the sum of the elements in nrowqcoefs (i.e. the total number of quadratic matrix elements in all the constraints). It contains the first column indices of the quadratic matrices. Indices for the first matrix are listed from 0 to nrowqcoefs[0]-1, for the second matrix from nrowqcoefs[0] to nrowqcoefs[0]+ nrowqcoefs[1]-1, etc.
rowqcol2
Type:  System.Int32
Integer array of size nqcelem, containing the second index for the quadratic constraint matrices.
rowqcoef
Type:  System.Double
Integer array of size nqcelem, containing the coefficients for the quadratic constraint matrices.
nentities
Type:  System.Int32
Number of binary, integer, semi-continuous, semi-continuous integer and partial integer entities.
nsets
Type:  System.Int32
Number of SOS1 and SOS2 sets.
coltype
Type:  System.Char
Character array of length nentities containing the entity types:
  • B: binary variables;
  • I: integer variables;
  • P: partial integer variables;
  • S: semi-continuous variables;
  • R: semi-continuous integer variables.
entind
Type:  System.Int32
Integer array of length nentities containing the column indices of the MIP entities.
limit
Type:  System.Double
Double array of length nentities containing the integer limits for the partial integer variables and lower bounds for semi-continuous and semi-continuous integer variables (any entries in the positions corresponding to binary and integer variables will be ignored). May be null if not required.
settype
Type:  System.Char
Character array of length nsets containing the set types:
  • 1: SOS1 type sets;
  • 2: SOS2 type sets.
May be null if not required.
setstart
Type:  System.Int64
Integer array containing the offsets in the setind and refval arrays indicating the start of the sets. This array is of length nsets+1, the last member containing the offset where set nsets+1 would start. May be null if not required.
setind
Type:  System.Int32
Integer array of length setstart[nsets]-1 containing the columns in each set. May be null if not required.
refval
Type:  System.Double
Double array of length setstart[nsets]-1 containing the reference row entries for each member of the sets. These define the order for SOS2 constraints and may be used in branching for both types. May be null if not required.
Remarks
See Also

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