Linearization Methods for Constrained Problems

advertisement
ENGINEERING OPTIMIZATION
Methods and Applications
A. Ravindran, K. M. Ragsdell, G. V. Reklaitis
Chapter 8: Linearization Methods for
Constrained Problems
Book Review
Presented by Kartik Pandit
July 23, 2010
1
Outline
• Introduction
• Direct Use of Successive Linear Programs
– Linearly Constrained Case
– General Nonlinear Programming Case
• Separable Programming
– Single-Variable Functions
– Multivariable Separable Functions
– Linear Programming Solutions of Separable
– Problems
2
Introduction
3
Introduction
• Efficient algorithms exist for two problem classes:
– Unconstrained problems
– Completely linear constrained problems
• Most approaches to solve the general problem of non-linear
objective functions with non-linear constraints exploit techniques
that solve the “easy” problems.
4
Introduction
•
The basic Idea:
1. Use linear functions to approximate both the objective function
as well as the constraints (Linearization).
2. Employ LP algorithms to solve this new linear program.
5
Introduction
•
Linearization can be achieved in two ways:
•
Any non-linear function
can be approximated in the
vicinity of a point
by using Taylor’s expansion,
•
is called the linearization point.
Using piecewise linear approximations and then applying a
modified simplex algorithm (separable programming).
6
8.1 Direct Use of Successive Linear
Programs
7
8.1 Direct Use of Successive Linear
Programs
•
•
•
Using Taylor’s expansion linearize all problem functions at some selected
estimate of the solution. Result is an LP. is called the linearization
point.
With some additional precautions the LP solution ought to be an
improvement over the linearization point.
There are two cases to be considered:
1. Linearly constrained NLP case:
2.
General NLP case:
8
8.1.1 Direct Use of Successive Linear
Programs: Linearly constrained NLP case
9
8.1.1 Linearly constrained NLP case
• The linearly constrained NLP problem that of:
•
is a nonlinear objective function. Feasible region is a polyhedron,
however optimal solution can lie anywhere within the feasible
region.
10
8.1.1 Linearly Constrained NLP case
• Using Taylor’s approximation around the linearization point
and
ignoring the second and higher order terms we obtain the linear
approximation of
around the point
.
• So the linearized version becomes:
• The Solution of the linearized version is
. How close is
the solution to the original NLP?
• By virtue of minimization it must be true that
to
11
8.1.1 Linearly Constrained NLP case
• Using a bit of algebra leads us to the result:
• So the vector
is a descent direction.
• In chapter 6 we studied that a descent direction can lead to an
improved point only if it is coupled with a step adjustment procedure.
• All points between and
are feasible. Moreover since
is a
corner point, any point beyond it on the line are outside the feasible
region.
• So, to improve upon
, a line search method is employed in the
line segment:
• Minimizing
will find a point
such that
12
8.1.1 Linearly Constrained NLP case
•
will not in general be the optimal solution but it will serve as a
linearization point for the next approximating LP.
• The text book presents the Frank-Wolfe Algorithm that employs this
sequence of alternating LP’s and line searches.
13
8.1.1 Linearly Constrained NLP case: Frank-Wolfe
Algorithm (page 339)
14
Frank-Wolfe Algorithm Execution: Example 8.1 (Page
Number 340)
15
Frank-Wolfe Algorithm Execution: Example 8.1 (Page
Number 340)
16
Frank-Wolfe Algorithm
• Frank-Wolfe algorithm converges to a Kuhn-Tucker point from any
feasible starting point.
• No analysis for rate of convergence.
• However, if
is convex we can obtain estimates on how much
remaining improvements can be achieved.
• If
is convex and it is linearized at a point
, for all
• Hence after each cycle the difference
estimate of the improvement.
gives an
17
8.1.2 Direct Use of Successive Linear
Programs: General NLP case
18
8.1.2 General Nonlinear Programming
Case
• At some linearization point
the linear approximation is
19
General Nonlinear Programming Case
• If we solve the LP approximation we obtain a new point
is highly unlikely that it is feasible.
, but it
• If
is infeasible then
is no guarantee
than an improved estimate of the true optimum has been attained.
• if
is a series of points each of which is the solution of the LP
problem then in order to attain convergence to the true optimum
solution it is sufficient that at each point
an improvement be
made in both the objective function value and the constraint
infeasibility.
20
General Nonlinear Programming Case: Example 8.4 (page
349)
• The linearized sub-problem after simplification is:
21
Example 8.4
22
8.1.2 General Nonlinear Programming Case
• In example 8.4 we saw a case where there is a divergence away
from the optimal.
• For suitably small neighborhood of any linearization point
linearization is a good approximation.
• Need to ensure that the linearization is used only within the
immediate vicinity of the base point.
• Where
is some step size.
23
Example 8.5: Step Size Constraints
• Bounds of
are introduced in the example of 8.4.
• Where
24
Example 8.5: Step Size Constraints
25
Penalty Functions
•
•
We can remove the constraints
and instead do a line search over a penalty function in the direction
defines by the vector
A two step algorithm can be developed:
1.
2.
Construct the LP and solve it to yield a new point
For a suitable parameter
the line search problem:
would be solved o yield a new point
26
8.2 Separable Programming
27
8.2 Separable Programming
•
•
For a nonlinear function
, partition the interval into
subintervals. and construct individual linear approximations over
each subinterval.
Need to consider:
1.
2.
Single variable functions.
Multi-variable functions.
28
8.2.1 Separable Programming: Single-Variable Functions
• Consider some single variable continuous function
, defined
over the interval
.
• Arbitrarily choose
points over the interval denoted by
• Obtain
• For every pair of points
draw a straight line connecting
• The equations for each of these lines is given by
29
Separable Programming: Single-Variable Functions
• These equations can be rewritten as:
• Simplifying further gives:
30
Separable Programming: Single-Variable Functions
• Consequently
equations
sets of equations can be represented by two
31
8.2.2 Multivariable Separable Functions
• Definition: A function
of variables is said to be separable if it
van be expressed as a sum of single-variable functions that each
involve only one of the
variables.
• Example:
• But not:
•
needs to be separable in order to build piecewise linear
approximations.
32
8.2.2 Multivariable Separable Functions
• Subdivide the interval of values on each variable
with
points.
• Then the approximating piecewise linear function is
grid
33
LP Solutions of Separable Problems
• The only feature requiring special attention is condition:
• In the ordinary simplex method the basic variables are the only ones
that can be nonzero.
• Before entering one of the ‘s into the basis a check is made to
ensure that no more than one other
associated with the
corresponding variable
is in the basis (is nonzero) and, if it is,
that the ‘s are adjacent.
• This is known as restricted basis entry.
34
End
35
Download