The OPTMODEL Procedure

Reduced Costs

In linear programming problems, each variable has a corresponding reduced cost. To access the reduced cost of a variable, add the suffix .rc or .dual to the variable name. These two suffixes are interchangeable.

The reduced cost of a variable is the rate at which the objective value changes when the value of that variable changes. At optimality, basic variables have a reduced cost of zero; a nonbasic variable with zero reduced cost indicates the existence of multiple optimal solutions.

In nonlinear programming problems, the reduced cost interpretation does not apply. The .dual and .rc variable suffixes represent the gradient of the Lagrangian function, computed using the values returned by the solver.

The following example illustrates the use of the .rc suffix:

    proc optmodel;                                                                                                                          
       var x >= 0, y >= 0, z >= 0;                                                                                                          
       max cost = 4*x + 3*y - 5*z;                                                                                                          
       con                                                                                                                                  
          -x + y + 5*z <= 15,                                                                                                               
          3*x - 2*y - z <= 12,                                                                                                              
          2*x + 4*y + 2*z <= 16;                                                                                                            
       solve;                                                                                                                               
       print x y z;                                                                                                                         
       print x.rc y.rc z.rc;
 

The PRINT statements generate the output shown in Output 6.54.

The OPTMODEL Procedure

x y z
5 1.5 0

x.RC y.RC z.RC
0 0 -6.5


Figure 6.54: Reduced Cost in Maximization Problem: Display

In this example, x and y are basic variables, while z is nonbasic. The reduced cost of z is - 6.5, which implies that increasing z from 0 to 1 decreases the optimal value from 24.5 to 18.

Previous Page | Next Page | Top of Page