Purpose
Assign a constraint to be the determining row
for a variable
Synopsis
procedure SLPDATA(DR:string, Var:mpvar, Row:linctr|genctr)
Arguments
|
DR
|
string containing "DR", indicating the SLPDATA type
|
|
Var
|
the variable being assigned a determining row
|
|
Row
|
the linear (linctr) or general (genctr) constraint
which acts as the determining row for the variable
|
Example
The following code fragment assigns the constraints RVPq(P) to
be the determining rows of the variables RVP(P)
declarations
RVP, RVI:array(Prod) of mpvar
RVPq:array(Prod) of genctr
end-declarations
forall (P in Prod) RVPq(P):= RVP(P) = RVI(i)^1.25
forall (P in Prod) SLPDATA("DR",RVP(P),RVPq(P))
Further information
In the example shown, there is an implicit assumption that in some sense RVP is
calculated from RVI rather than the other way around. Therefore, for a given value of RVI
there is a corresponding value of RVP. However, the linear approximation to RVI1.25
will not generally be accurate, and so it is beneficial to be able to recalculate a correct value
for RVP from the actual value of RVI, using the formula rather than the linear approximation.
This is the purpose of the determining row which allows the SLP optimizer to
recalculate values which depend in a nonlinear way on other values.
If you have any comments or suggestions about these pages,
please send mail to docs@dashoptimization.com.