Mixed Integer Programming

As with linear and integer programs, any mixed integer linear program is defined by the number of variables and the number of constraints. Do not count the non-negativity restrictions as constraints.

Consider the following example:

maximize
subject to	30x + 33y + 50z
23x + 43y + 16z <= 1000
32x + 33y + 25z <= 2500
43x + 53y + 26z <= 1500
x, y, z >= 0
x integer,
z 0/1
The components are identical to linear and integer programming except that there is one extra row of information that needs to be given indicating the type of each variable (real, integer, or 0/1).

Objective function. The choice of minimization or maximization is made in the usual way at the time of problem creation but it can be changed on the data screen using the objective options above the data.

Objective function coefficients. The coefficients (typically referred to as cj ) are entered as numerical values.

Constraint coefficients. The main body of information are the constraint coefficients which typically are called the aijs . These coefficients may be positive or negative.

The constraint sign. This can be entered in one of two ways. It is permissible to press the [<] key, the [>] key, or the [=] key. When you go to a cell with the constraint sign then a drop down arrow appears in the cell.

Right hand side coefficients. The values on the right hand side of the constraints are entered here. These are also termed the bis . They must be non-negative.

The variable type. This is a drop-down box that will change the variable type from "integer," to "real," to "0/1." You can change all at once by clicking on the leftmost column. This is very useful for capital budgeting problems.

The solution

The variable types and their values are displayed.

In addition, the iterations can be displayed.

NOTE: Integer programs can be entered as mixed integer programs without any loss of results. The same is not true for linear programs. Linear programs will be solved but the range table and linear programming iterations will not be available.