Change MPL Language Options

You can change the various preferences for MPL by choosing MPL Language from the Options menu. This will display the MPL Languages Options dialog box shown below.

The MPL Language Options Dialog Box

Figure 4.37: The MPL Language Options Dialog Box

MPL Language Options

Case Sensitive: Directs whether the MPL language is case sensitive or not. The default is case sensitive On.

Plain variables must be defined: Specifies whether plain variables must be defined in the Decision Variable section of the model or can be introduced as they appear in the model. For larger models, requiring plain variables to be defined, can increase the maintainability of the model.

Send log information to:

Message window: Specifies whether log information from the MPL language parser are send to the Message Window. This is the same option as the Performance statistics option in the MPL Environment Options dialog box.

Log file: Specifies whether log information from the MPL language parser are to send to file.

Default Model Type

Linear Models:Specifies that the MPL language parser should only accept models that are either linear or mixed integer.

Quadratic Models: Specifies that the MPL language parser should accept models that are quadratic in addition to the standard linear or mixed integer models. Please note, that in order to solve quadratic problems, you will need a optimizer that supports quadratic programming, such as the CPLEX Barrier solver.

Quadratic problems are defined to have the objective function of the following form: Q * xT * x + cT x where T means that the vector is transposed. Q is a matrix of quadratic objective function coefficients. The elements Qjj are coefficients of the quadratic terms xj^2 while the elements Qij and Qji are summed together to be the coefficient of the term xi*xj.

There are two different types of Q matrices that are supported: a separable problem is one where only the diagonal terms of the matrix are defined, and a non-separable is one where at least one off-diagonal term of the matrix is not zero. Quadratic solvers, such as CPLEX Barrier, will solve only convex quadratic minimization problems (or concave maximization problems). For convex problems, Q must be positive semi-definite, which means that the term Q * xT * x >= 0 for any x, whether or not x is feasible. (For maximization problems, the requirement is that Q is negative semi-definite, which means that Q * xT * x <= 0 for all x). Note that for separable Q (in a minimization problem), Q positive semi-definite is equivalent to Q >= 0.

Nonlinear Models: Specifies that the MPL language parser should accept models that are nonlinear, for example have variables multiplied together or uses one of the arithmetic functions like LOG or EXP on variables. Please note, that in order to solve nonlinear problems, you will need a solver that handles nonlinear models. MPL currently supports the nonlinear solvers CONOPT from ARKI Consulting and LSGRG2 from Optimal Methods.

Data Files

Input Directory: Selects the folder where MPL will search for input data files. The default is the current folder.

Output Directory: Selects the folder where MPL will save output data files. The default is the current folder.

Check sparse data for duplicate entries: Specifies whether sparse data files are checked for duplicate index entries. In some cases the user may want to read in a data file without receiving errors even if it has duplicate entries. When there are duplicate entries, the last entry in the file will be used by MPL.

Use quicksort for sparse data: Specifies whether sparse data is sorted with quicksort after it is read in. It is normally faster to use quicksort but if there is an invalid entry, such as duplicates, in the data file MPL will not be able to pinpoint the problem line accurately.

Name Generation

Indexed names: Directs MPL to generate names for vector variables and constraints using the indexes they were defined with.

Numeric names: Directs MPL to generate variable names as numeric with the prefix 'C' and constraint names with the prefix 'R'.

Prefixed numeric names: Directs MPL to generate names for vector variables and constraints as numeric with the prefix based on the vector name.

Max variable length: Most LP solvers have a restriction on the length of variable names. Since MPL, in most cases, sends the matrix directly through memory to the solver, the variable names are normally not needed. If they are needed, the value set here helps you ensure that the variable names generated are within limits. The default value is 8.

Max subscript Length: This value decides how many characters of indexes are retained in the generated variable name. This allows you to use long index names in the model, but keep variable names concise in the generated input file. The default value is 3.


Back To Top | Maximal Home Page | Table of Contents | Previous Page | Next Page