Nonlinear Programming Methods.S1 Separable Programming: Problem Statement
Nonlinear Programming Methods.S1 Separable Programming: Problem Statement
Problem Statement
Linearization
f(x)
Recall that any value of x lying between the two endpoints of the
kth line segment may be expressed as
fk+1 – fk
(x – x- k) = αfk+1 – (1 – α)fk for 0 ≤ α ≤ 1
^
f(x) = fk +
x- k+1 – x- k
Separable Programming 3
^
The approximation f(x) becomes increasingly more accurate as r gets
larger. Unfortunately, there is a corresponding growth in the size of the
resultant problem.
For the kth segment, let α = αk+1 and (1 – α) = αk. As such, for x- k ≤
x ≤ x- k+1, the above expresses is
∑ αkx- k,
r r
∑ αkfk, ∑ αk
^
x= f(x) = = 1, αk ≥ 0, k = 0, . . . ,r
k=0 k=0 k=0
such that at least one and no more than two αk can be greater than zero.
Furthermore, we require that if two αk are greater than zero, their indices
must differ by exactly 1. In other words, if αs is greater than zero then
only one of either αs+1 or αs-1 can be greater than zero. If the last
condition, known as the adjacency criterion, is not satisfied, the
^
approximation to f(x) will not lie on f(x).
To apply the above transformations, a grid of rj + 1 points must be
defined for each variable xj over its range. This requires the use of an
additional index for each variable and function. For the jth variable, for
example, f + 1 data points result: x- , x- , . . . , x- . With this notation in
j 1j 2 r jj
mind, the separable programming problem in x becomes the following
"almost" linear program in .
n rj
n rj
∑ αkj = 1, j =1, . . . ,n
k=0
Separable Programming 4
The reason that this is an "almost" linear programming problem is that the
adjacency criterion must be imposed on the new decision variables αkj
when any of the functions are nonconvex. This can be accomplished with
a restricted basis entry rule. When all the functions are convex, the
adjacency criterion will automatically be satisfied so no modifications of
the simplex algorithm are necessary. Note that the approximate problem
has m + n constraints and Σj rj + n variables.
From a practical point of view, one might start off with a rather
large grid and find the optimum to the corresponding approximate
problem. This should be easy to do but the results may not be very
accurate. To improve on the solution, we could then introduce a smaller
grid in the neighborhood of the optimum and solve the new problem. This
idea is further discussed by Bard et al. (2000).
Example 13
j 1 2
fj(xj) 2x21 – 3x1 2x2
k 0 1 2 3 4 5
xk1 0 0.4 0.75 1.0 1.25 1.75
xk2 0 0.3 0.6 0.9 1.2 1.5
fk1 0 – 0.88 – 1.125 –1 – 0.625 0.875
gk11 0 0.48 1.6875 3 4.6875 9.1875
gk21 12 7.68 4.6875 3 1.6875 0.1875
gk31 12 7.68 4.6875 3 1.6875 0.1875
fk2 0 0.6 1.2 1.8 2.4 3
gk12 0 0.36 1.44 3.24 5.76 9
gk22 20 14.45 9.8 6.05 3.2 1.25
gk32 20 14.45 9.8 6.05 3.2 1.25
f(x1) g12(x2)
0 6
1 x1
-1
0.5 1 1.5 x2
α01 α11 α21 α31 α41 α51 α02 α12 α22 α32 α42 α52
x1 1 1 1 1 1 1 0 0 0 0 0 0
x2 0 0 0 0 0 0 1 1 1 1 1 1
When comparing these values with the true optimum x1* = 0.9227, x2* =
0.1282, and f(x*) = – 0.8089, we can observe the effect of the linearization
process on the accuracy of the solution. With respect to the objective
function, our six-point approximation is off by 3.2%. For this particular
problem, however, we can get as close as desired by making the grid size
arbitrarily small in the neighborhood of the true optimum.
It is interesting to note that while the basic solutions given in Table
6 lie at vertices in the space, they do not necessarily have any relation to
the vertices in the original x space. This is illustrated in Fig. 8 which plots
the feasible region and several isovalue contours of f(x). Also shown are
the 6 basic solutions that comprise phase 2. The first basic solution
corresponds to iteration 5.3 in Table 6. As can be seen, none of the 6
iterates in the figure lies at a vertex of the feasible region. At the optimum
only g3 is binding.
These observations stem directly from the fact that the separable
programming method guarantees an approximate global optimum to the
original problem only when one is minimizing a convex function
(maximizing a concave function) over a convex set. When these
conditions hold, the accuracy of the approach is limited only by the
coarseness of the piecewise linear approximations that are used.
Furthermore, when solving a convex programming problem, we may solve
the approximate problem using ordinary linear programming methods
without enforcing the adjacency restrictions.
Nonconvex Programming
If the conditions that define a convex program are not present, several
outcomes may occur.
1. An approximate global optimum is found (as in the minimization
example above).
2. An approximate local optimum is found that is not the global
optimum.
3. The solution to the approximate problem may be infeasible with
respect to the original problem or be nowhere near a corresponding
local or global optimum. These outcomes are due to the fact that
an insufficient number of lines segments were chosen for the
approximation. In many cases, however, infeasible solutions will
be only slightly infeasible, and thus present no practical difficulty.