Main

## Objective Variables

Objective variables are defined to construct an objective function. The objective function is a summation of all variables that are designated as objective-type. Variables are defined as objective function contributions by starting with obj. Thus, the variables obj1, objective, object[1] would be included in the objective function summation.

Additionally, slack variables are included in the objective function. These variables begin with the key letters slk and are defined with a lower bound of zero.

### Minimize vs. Maximize

The objective function is always minimized with APMonitor. Maximizing an objective function is accomplished by minimizing the negative of the original objective.

 ! original objective
maximize z


The objective is modified by minimizing the negative of the original objective function.

 ! modified objective
minimize -z


The APMonitor objective is reported in the minimized form. Thus, a maximized objective with a result of +17 is reported as -17.

### Retrieve Objective Function

The objective function is retrieved as the parameter nlc.objfcnval in a programming script from the apm_tag function such as:

 obj = apm_tag(s,a,'nlc.objfcnval')


This obtains the current objective function value with input arguments s=server and a=application name. An objective may consist of multiple objectives that are maximized or minimized. They are all converted to minimization functions and added together.

### Example

  ! Example model with an objective variable Parameters p1 = 5 Variables objective v1 > 6 Equations objective = (v1 - p1)^2   ! Equivalent model with a minimize objective statement Parameters p1 = 5 Variables v1 > 6 Equations minimize (v1 - p1)^2   ! Equivalent model with a maximize objective statement Parameters p1 = 5 Variables v1 > 6 Equations maximize -(v1 - p1)^2   Solution p1 = 5 v1 = 6 objective = 1