The OPTMODEL Procedure

Getting Started: OPTMODEL Procedure

(View the complete code for this example.)

Optimization or mathematical programming is a search for a maximum or minimum of an objective function (also called a cost function), where search variables are restricted to particular constraints. Constraints are said to define a feasible region (see Figure 1).

Figure 1: Examples of Feasible Regions

Examples of Feasible Regions


A more rigorous general formulation of such problems is as follows.

Let

f colon upper S right arrow double struck upper R

be a real-valued function. Find x Superscript asterisk such that

  • x Superscript asterisk Baseline element of upper S

  • f left parenthesis x Superscript asterisk Baseline right parenthesis less than or equals f left parenthesis x right parenthesis comma for all x element of upper S

Note that the formulation is for the minimum of f and that the maximum of f is simply the negation of the minimum of negative f.

Here, function f is the objective function, and the variable in the objective function is called the optimization variable (or decision variable). S is the feasible region. Typically S is a subset of the Euclidean space double struck upper R Superscript n specified by the set of constraints, which are often a set of equalities (=) or inequalities (less than or equals comma greater than or equals) that every element in S is required to satisfy simultaneously. For the special case where upper S equals double struck upper R Superscript n, the problem is an unconstrained optimization. An element x of S is called a feasible solution to the optimization problem, and the value f left parenthesis x right parenthesis is called the objective value. A feasible solution x Superscript asterisk that minimizes the objective function is called an optimal solution to the optimization problem, and the corresponding objective value is called the optimal value.

In mathematics, special notation is used to denote an optimization problem. Generally, you can write an optimization problem as follows:

StartLayout 1st Row 1st Column minimize 2nd Column f left parenthesis x right parenthesis 2nd Row 1st Column subject to 2nd Column x element of upper S EndLayout

Normally, an empty body of constraint (the part after "subject to") implies that the optimization is unconstrained (that is, the feasible region is the whole space double struck upper R Superscript n). The optimal solution (x Superscript asterisk) is denoted as

x Superscript asterisk Baseline equals normal a normal r normal g normal m normal i normal n Underscript x element of upper S Endscripts f left parenthesis x right parenthesis

The optimal value (f left parenthesis x Superscript asterisk Baseline right parenthesis) is denoted as

f left parenthesis x Superscript asterisk Baseline right parenthesis equals min Underscript x element of upper S Endscripts f left parenthesis x right parenthesis

Optimization problems can be classified by the forms (linear, quadratic, nonlinear, and so on) of the functions in the objective and constraints. For example, a problem is said to be linearly constrained if the functions in the constraints are linear. A linear programming problem is a linearly constrained problem with a linear objective function. A nonlinear programming problem occurs where some function in the objective or constraints is nonlinear, and so on.

Last updated: October 07, 2022