16.10.2013 Views

Stochastic Programming (SP) with EMP - Gams

Stochastic Programming (SP) with EMP - Gams

Stochastic Programming (SP) with EMP - Gams

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

638 <strong>Stochastic</strong> <strong>Programming</strong> (<strong>SP</strong>) <strong>with</strong> <strong>EMP</strong><br />

5 Summary of keywords and solver configurations<br />

The following keywords can be used in the emp.info file to describe the uncertainty of a problem:<br />

chance: This defines individual or joint chance constraints (CC) using the following syntax:<br />

chance equ {equ} [holds] minRatio [weight|varName]<br />

This way one defines that a single constraint equ (individual CC) or a set of constraints (joint CC) does only have<br />

to hold for a certain ratio (0 ≤ minRatio ≤ 1) of the possible outcomes. The keyword holds is optional and<br />

does not affect the solver. If weight is defined, the violation of a CC gets penalized in the objective (weight ∗<br />

violationRatio). Alternatively, the violation can be multiplied by an existing variable if this is defined by varName.<br />

cvar: This keyword is used to declare that a scalar is the confidence level for the Conditional Value at Risk. There are two<br />

options for the syntax:<br />

cvar scalar<br />

and<br />

cvar rv var scalar<br />

In the first option the scalar is simply named, in the second option the random variable and a variable for the value of<br />

CVaR are added. Note that the keyword cvarlo is identical to cvar and the keyword cvarup refers to the right tail<br />

of the distribution.<br />

ExpectedValue: This keyword is used to state that a variable is the expected value of a random variable. The syntax is as<br />

follows:<br />

ExpectedValue rv var<br />

jrandvar: Jrandvar can be used to define discrete random variables and their joint distribution:<br />

jrandvar rv rv {rv} prob val val {val} {prob val val {val}}<br />

At least two random variables rv are defined and the outcome of those is coupled. The probability of the outcomes is<br />

defined by prob and the corresponding realization for each random variable by val.<br />

randvar: This defines both discrete and parametric random variables:<br />

randvar rv discrete prob val {prob val}<br />

The distribution of discrete random variables is defined by pairs of the probability prob of an outcome and the<br />

corresponding realization val.<br />

randvar rv distr par {par}<br />

A list of all supported parametric distributions can be found in Table 29.2 on page 621. All possible values for distr<br />

and the related parameters par are listed there.<br />

sample: This allows the user to customize the size of the sample of a random variable from a continuous distribution and<br />

there is also the option to determine the variance reduction method to be used:<br />

sample rv1 [rv2 ... rvn] sampleSize [varRedMethod]<br />

In rv the name of the random variable is given. The sample size of more than one random variable can be customized<br />

simultaneously. In this case the names of the random variables are listed. sampleSize is a number, namely the<br />

desired size of the sample and varRedGroup is optional. For more details about variance reduction methods see<br />

section 2.3 and in addition, please consult the LINDO manual.<br />

setSeed: This sets the seed for the random number generator of the sampling routines called using the sample keyword. If<br />

setSeed is used in the emp.info file, the seed is set once before we generate all samples.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!