• Ingen resultater fundet

MODEL SCALING - THE SCALE OPTION 163

In document AUSER'SGUIDE GAMS (Sider 177-185)

SPECIAL LANGUAGE FEATURES

17.3 MODEL SCALING - THE SCALE OPTION 163

positive variables xprime1,x2 ; equation eqprime1, eqprime2 ; eqprime1.. 2*xprime1 + x2 =g= 4 ; eqprime2.. xprime1 - 2*xprime2 =l= 1 ; xprime1.up = 2 ; x2.up = 1.5 ;

17.3.4 Scaling of derivatives

For nonlinear models, the derivatives also need to be well scaled. The derivatives in the scaled model seen by the algorithm, i.e. d(Ga)/d(Va) are related to the derivatives in the user's model, d(Gu)/d(Vu) through the formula:

d Ga d Va

d Gu d Vu

Vs Gs ( )

( )

( ) ( )*

=

The user can affect the scaling of derivatives by scaling both the equation and variable involved.

18

GLOSSARY

Term: Explanations

acronym A GAMS data type used to give logical classifications to data points.

alias An alternative name for a set.

algorithm This term may be used in two ways. It is either a prescription for how to solve a problem, or a particular solver system.

assignment The statement used to change values associated with an identifier.

basic A classification of a row or column that is in the basis maintained by solu-tion methods that use linear programming iterasolu-tions.

binding An inequality constraint is binding when the value of the associated slack is zero.

bounds Upper and lower limits on the possible values that a column may assume in a feasible solution. May be "infinite", meaning that no limit is imposed.

column An individual decision variable in the model seen by a solver program.

Many may be associated with one GAMS variable.

compilation The initial phase of GAMS processing, when the program is being checked for syntax and consistency.

constant set A set is constant if it remains unchanged. It has to be initialized with a set definition statement and cannot be changed using assignment statement.

Sets used in domain definitions must be constant. Sets used in lag opera-tions must be ordered as well. Sometimes the word static is used instead of constant.

constraint A relationship between columns that must hold in a feasible solution.

There may be many constraints associated with one GAMS equation.

continuous There are two contexts. First a classification of a function. A plot of the function values will be a line without breaks in it. Second, a classification of variables. A continuous variable may assume any value within its bounds.

controlling sets See driving sets.

data types Each symbol or identifier has to be declared to be one of the six data types, which are set, parameter, variable, equation, model and acronym. The keywords scalar and table do not introduce separate data types but rather comprise a shorthand way to declare a symbol to be a parameter that will use a particular format for specifying initial values.

GLOSSARY 166

Term: Explanations

declaration The entry of a symbol and the specification of its data type. A declaration may include the specification of initial values, and then it is more properly called a definition.

default The value used, or the action taken, if the user provides no information.

definition The definitions of the algebraic relationships in an equation are the as-signment of initial values to parameters or of elements to sets as part of the initial declaration of the identifier.

definition state-ments

Units that describe symbols, assign initial values to them, and describe symbolic relationships. Some examples of the set, parameter, table, and model statements, and the equation definition statement.

direction Either maximization or minimization, depending on whether the user is in-terested in the largest or the smallest possible value for the objective func-tion.

discontinuous A classification of a function. A plot of the function values will be a line with breaks in it.

discrete A discrete variable (type binary or integer) may not assume any value be-tween the bounds, but must assume integer values.

dollar control op-tion

Directives or options used to control input or output detail associated with the GAMS compiler.

dollar operator An operator used for exceptions handling in assignment statements and in equation definitions.

domain checking The check that ensures that only legal label combination are used on every assignment to, or reference of, an identifier.

domain definition The label combinations whose data will be updated in an assignment statement, or that will generate an individual constraint in an equation definition.

domain restriction condition

The alteration to the domain of definition caused when a dollar operator is used on the left (of the "="in an assignment or of the ".." in an equation definition).

driving set The set that determine the domain of definition, or that control and index operation such as sum.

dynamic set A set is dynamic if it has been changed with an assignment statement. Dy-namic sets cannot be used with lag operations or in domain definitions.

endogenous Data values that change when a solve statement is processed. In GAMS most often associated with variables.

equation The GAMS data type used to specify required relationships between activ-ity levels of variables.

execution The second phase of GAMS processing, when GAMS is actually carrying out data transformations or generating a model.

execution state-ments

Instructions to carry out actions such as data transformations, model solu-tions, and report generation. Some examples are the assignment and the option, display, loop and solve statements.

exogenous Data values known before a solve statement is processed, and not changed by the solve. In GAMS most often parameters.

167

Term: Explanations

explanatory text See TEXT.

exponent A scale factor used to conveniently represent very large or small numbers.

extended arithme-tic

The usual computer arithmetic is extended to include plus and minus infin-ity (+inf and -inf) and a special value for an arbitrarily a small number (i.e., one which is close to zero) known as epsilon (eps). Also, not available (na) can be used to indicate missing data, and undefined (undf) is the re-sult of illegal operation. GAMS allows extended arithmetic for all opera-tions and funcopera-tions. The library problem [CRAZY] demonstrates extended arithmetic by showing the results for all operations and functions.

e-format The representation of numbers when an exponent is used explicitly. For example, 1.1E+07.

feasible Often used to describe a model that has at least one feasible solution (see below).

feasible solution A solution to a model in which all column activity levels are within the bounds and all the constraints are satisfied.

gams coordinator The person who looks after the administration of a GAMS system, and who will know what solvers are available and can tell you who to approach for help with GAMS problems. Unlikely to apply to personal computer ver-sions.

identifiers Names given to data entities. Also called symbols.

index position(s) Another way of describing the set(s) that must be used when referencing a symbol of dimensionality one or more (i.e., a vector or a matrix).

inequality con-straint

A constraint in which the imposed relationship between the columns is not fixed, but must be either greater than or equal to, or less than or equal to, a constant. The GAMS symbols =g= and =l= are used in equation definitions to specify these relationships.

infeasible Used to describe either a model that has no feasible solution, or an inter-mediate solution that is not feasible (although feasible solutions may exist).

See FEASIBLE, above.

initialization Associating initial values with sets or parameters using lists as part of the declaration or definition, or (for parameters only) using table statements.

labels Set elements. Sometimes called unique elements.

list One of the ways of specifying initial values. Used with sets or parameters, most often for one-dimensional but also for two and higher dimensional data structures.

list format One of the ways in which sets and parameters, can be initialized and all symbol classes having data can be displayed. Each unique label combina-tion is specified in full, with the associated non-default value alongside.

marginals Often called reduced costs or dual values. The values, which are meaning-ful only for non-basic rows or columns in optimal solutions, contain infor-mation about the rate at which the objective value will change of if the as-sociated bound or right hand side is changed.

matrix element See NONZERO ELEMENT

model generation The initial phase of processing a solve statement: preparing a problem

de-GLOSSARY 168

Term: Explanations

scription for the solver.

model list A list of equations used in a model, as specified in a model statement.

nonbasic A column that is not basic and (in nonlinear problems) not superbasic. Its value will be the same as the one of the finite bounds (or zero if there are no finite bounds) if the solution is feasible.

nonlinear nonzero In a linear programming problem, the nonzero elements are constant. In a nonlinear problem, one or more of them vary because their values depend on that of one or more columns. The ratio of nonlinear (varying) to linear (constant) non linear zero elements is a good indicator of the pervasiveness of non-linearities in the problem.

nonoptimal There are two contexts. First, describing a variable: a non-basic variable that would improve the objective value if made basic. The sign of the mar-ginal value is normally used to test for non-optimality. Second, for a solu-tion: other solutions exists with better objective values.

nonsmooth A classification of function that does not have continuous first derivatives, but has continuous function values. A plot of the function values will be a line with "kinks" in it.

nonzero element The coefficient of a particular column in a particular row if it is not zero.

Most mathematical programming problems are sparse meaning that only a small proportion of the entries in the full tableau of dimensions "number of rows" by "number of columns" is different from zero.

objective row (or function)

Solver system require the specification of a row on (for nonlinear systems) a function whose value will be maximized or minimized. GAMS users, in contrast, must specify a scalar variable.

objective value The current value of the objective row or of the objective variable.

objective variable The variable specified in the solve statement.

optimal A feasible solution in which the objective value is the best possible.

option The statement that allows users to change the default actions or values in many different parts of the system.

ordered sets A set is ordered if its content has been initialized with a set definition statement and the entry order of the individual elements of the set has the same partial order as the chronological order of the labels. A set name alone on the left-hand side of an assignment statement destroys the ordered property. Lag and Ordinality operations rely on the relative position of the individual elements and therefore require ordered sets. Ordered sets are by definition constant.

output A general name for the information produced by a computer program.

output file A disk file containing output. A GAMS task produces one such file that can be inspected.

parameter A constant or group of constants that may be a scalar, a vector, or a matrix of two or more dimensions. Of the six data types in GAMS.

problem type A model class that is dependent on functional form and specification. Ex-amples are linear, nonlinear, and mixed integer programs.

program A GAMS input file that provides a representation of the model or models.

169

Term: Explanations

relational operator This term may be used in two ways. First, in an equation definition it de-scribes the type of relationships the equation specifies, for example equal-ity, as specified with the =e= symbol. Second, in a logical expression, the symbols eq, ne, lt and so on are also called relational operators, and are used to specify a required relationship between two values.

right hand side The value of constant term in a constraint.

scalar One of the forms of parameter inputs. Used for single elements.

set A collection of elements (labels). The SET statement is used to declare and find a set.

simplex method The standard algorithm used to solve linear programming problems.

slack The amount by which an inequality constraint is not binding.

slack variable An artificial column introduced by a solver into a linear programming problem. Makes the implementation of simplex method much easier.

smooth A classification of a function that has continuous first derivatives.

solver A computer code used to solve a given problem type. An example is GAMS/MINOS, which is used to solve either linear or nonlinear program-ming problems.

statements Sometimes called units. The fundamental building block of GAMS pro-grams. Statements or sentences that define data structures, initial values, data modifications, and symbolic relationships. Examples are table, pa-rameter, variable, model, assignment and display statements.

static set See CONSTANT SET

superbasic In nonlinear programming, a variable that it is not in the basis but whose value is between the bounds. Nonlinear algorithms often search in the space defined by the superbasic variables.

symbol An identifier.

table One of the ways of initializing parameters. Used for tow and higher dimen-sional data structures.

text A description associated with an identifier or label.

type See data type, problem type or variable type.

unique element A label used to define set membership.

variable type The classification of variables. The default bounds are implicit in the type, and also whether continuous or discrete. The types are free, positive, bi-nary, integer and negative.

vector A one-dimensional array, corresponding to a symbol having one index po-sition.

zero default Parameter values are initially set to zero. Other values can be initialized using parameter or table statements. Assignment statements have to be used thereafter to change parameter values.

In document AUSER'SGUIDE GAMS (Sider 177-185)