Initializing help system before first use

xpress.vars

xpress.vars


Purpose
Creates an indexed set or map of variables. Similar to the creation of a single variable with xpress.var, vars allows for adding one or more index sets specified as sets, lists, or range objects in the arguments. A variable set x that is created with vars can be indexed, for instance, as x[i,j] where i and j are indices in the lists provided.
Synopsis
x = xpress.vars(*indices, name="", lb=0, ub=xpress.infinity, threshold=0, vartype=xpress.continuous)
Arguments
indices 
One or more lists, sets, or ranges to be combined; in alternative, one can specify one or more numbers k to signify the range 0..k-1.
name 
Prefix name for each variable, to be amended with the tuple of indices.
lb 
Lower bound for all variables in the map.
ub 
Upper bound for all variables in the map.
threshold 
Threshold for all variables in the map; only used if the variables are partially integer.
vartype 
Type of all variables in the map, similar to the definition of single variables.
Example
The following creates a variable map with 6 variables whose indices vary in the set {(0,'a'),(0,'b'),(0,'c'),(1,'a'),(1,'b'),(1,'c')}:
x = xpress.vars([0,1],['a','b','c'])
The following creates a variable map with 6 variables whose indices vary in the set {(0,0),(0,1),(0,2),(1,0),(1,1),(1,2)}:
x = xpress.vars(2,3)
The code below creates a variable map with 5 integer variables with names 'y(a)', 'y(b)', 'y(c)', 'y(d)', 'y(e)' and creates a constraint to bound their sum:
x = xpress.vars(['a','b','c','d','e'],
name='y', vartype=xpress.integer)
con1 = xpress.Sum(x) <= 4
The code below creates a variable map using the range operator in Python:
x = xpress.vars(range(5),
name='y', vartype=xpress.integer)
con1 = xpress.Sum(x) <= 4
Finally, the following creates a variable indexed by the set defined right before:
S = set()
S.add('john')
S.add('cleese')
x = xpress.vars(S, name='y', vartype=xpress.integer)
Further information
All lists must contain non-repeated elements to avoid having variables with equal names. If a list in the argument is, for instance, ['a','b','a'], an error is returned.
Related topics
xpress.var

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