3.6. Constrained Problems

The major difference between a constrained and unconstrained problem is that for a constrained problem, an optimal solution must be sought in a feasible region; for an unconstrained problem, the feasible region contains the entire design domain. For a constrained problem, bringing an infeasible design into a feasible region is critical, in which gradients of active constraints are taken into consideration when determining the search direction for the next design. In this section, we first outline the nature of the constrained optimization problem and the concept of solution techniques. In Section 3.6.2, we then discuss a widely accepted strategy for dealing with the constraint functions, the so-called ε-active strategy. Thereafter, in Sections 3.6.33.6.5 we discuss the mainstream solution techniques for solving constrained optimization problems, including SLP, SQP, and the feasible direction method. These solution techniques are capable of solving general optimization problems with multiple constraints and many design variables. Before closing out this section, we introduce the penalty method, which solves a constrained problem by converting it to an unconstrained problem, and then we solve the unconstrained problem using methods discussed in Section 3.5. For illustration purposes, we use simple examples of one or two design variables. Like Section 3.5, we offer sample MATLAB scripts (see Appendix A) for solving example problems.

3.6.1. Basic Concept

Recall the mathematical definition of the constrained optimization problem:

Minimize:f(x)

image (3.67a)

Subjectto:gi(x)0,i=1,m

image (3.67b)

hj(x)=0,j=1,p

image (3.67c)

xkxkxku,k=1,n

image (3.67d)

Similar to solving unconstrained optimization problems, all numerical methods are based on the iterative process, in which the next design point is updated by a search direction n and a step size α along the direction. The next design point xk+1 is then obtained by evaluating the design at the current design point xk (some methods include information from previous design iterations) as

xk+1=xk+Δxk=xk+αknk

image (3.68)

For an unconstrained problem, the search direction n considers only the gradient of the objective function. For constrained problems, however, optimal solutions must be sought in the feasible region. Therefore, active constraints in addition to objective functions must be considered while determining the search direction as well as the step size. As with the unconstrained problems, all algorithms need an initial design to initiate the iterative process. The difference is for a constrained problem, the starting design can be feasible or infeasible, as illustrated in Figure 3.15a, in which a constrained optimization of two design variables x1 and x2 is assumed. The feasible region of the problem is identified on the surface of the objective function as well as projected onto the x1x2 plane.
If an initial design is inside the feasible region, such as points A0 or B0, then we minimize the objective function by moving along its descent direction—say, the steepest descent direction—as if we are dealing with an unconstrained problem. We continue such iterations until either a minimum point is reached, such as the search path starting at point A0, or a constraint is encountered (i.e., the boundary of the feasible region is reached, like the path of initial design at point B0). Once the constraint boundary is encountered at point B1, one strategy is to travel along a tangent line to the boundary, such as the direction B1B2 illustrated in Figure 3.15b. This leads to an infeasible point from where the constraints are corrected in order to again reach the feasible point B3. From there, the preceding steps are repeated until the optimum point is reached.
image
FIGURE 3.15 Concept illustration for solving a constrained optimization problem. (a) Paths illustrating different solution scenarios. (b) Top view of the feasible region, with a design point B residing on the boundary of the feasible region.
Another strategy is to deflect the tangential direction B1B2 toward the feasible region by a small angle θ when there are no equality constraints. Then, a line search is performed through the feasible region to reach the boundary point B4, as shown in Figure 3.15b. The procedure is then repeated from there.
When the starting point is infeasible, like points C0 or D0 in Figure 3.15a, one strategy is to correct constraint violations to reach the constraint boundary. From there, the strategies described in the preceding paragraph can be followed to reach the optimum point. For example, for D0, a similar path to that shown in path B1B2B3 or B1B4 in Figure 3.15b is followed. The case for point C0 is easier because the decent direction of objective function also corrects the constraint violations.
A good analogy for finding a minimum of a constrained problem is rolling a ball in a fenced downhill field. The boundary of the feasible region is the fence, and the surface of the downhill field is the objective function. When a ball is released at a location (i.e., the initial design), the ball rolls due to gravity. If the initial point is chosen such that the ball does not encounter the fence, the ball rolls to a local crest (minimum point). If an initial point chosen allows the ball to hit the fence, the ball rolls along the fence to reach a crest. If the initial point is outside the fenced area, the ball has to be thrown into the fenced area before it starts rolling.
Several algorithms based on the strategies described in the foregoing have been developed and evaluated. Some algorithms are better for a certain class of problems than others. In this section, we focus on general algorithms that have no restriction on the form of the objective or the constraint functions. Most of the algorithms that we will describe in this chapter can treat feasible and infeasible initial designs.
In general, numerical algorithms for solving constrained problems start with a linearization of the objective and constraint functions at the current design. The linearized subproblem is solved to determine the search direction n. Once the search direction is found, a line search is carried out to find an adequate step size α for the next design iteration. Following the general solution steps, we introduce three general methods: SLP, SQP, and the feasible direction method. Before we discuss the solution techniques, we discuss the ε-active strategy that determines the active constraints to incorporate for design optimization.

3.6.2. ε-Active Strategy

An ε-active constraint strategy (Arora 2012), shown in Figure 3.16, is often employed in solving constrained optimization problems. Inequality constraints in Eq. 3.67b and equality constraints of Eq. 3.67c are first normalized by their respective bounds:

bi=gigiu10,i=1,m

image (3.69a)

and

ei=hjhju1,j=1,p

image (3.69b)

Usually, when bi (or ei) is between two parameters CT (usually 0.03) and CTMIN (usually 0.005), gi is active, as shown in Figure 3.16. When bi is less than CT, the constraint function is inactive or feasible. When bi is larger than CTMIN, the constraint function is violated. Note that CTMIN-CT = ε.

3.6.3. The Sequential Linear Programming Algorithm

The original optimization problem stated in Eq. 3.67 is first linearized by writing Taylor's expansions for the objective and constraint functions at the current design xk as below.
Minimize the linearized objective function:

f(xk+1)=f(xk+Δxk)f(xk)+fT(xk)Δxk

image (3.70a)

subject to the linearized inequality constraints

gi(xk+1)=gi(xk+Δxk)gi(xk)+giT(xk)Δxk0;i=1,m

image (3.70b)

and the linearized equality constraints
image
FIGURE 3.16 ε-Active constraint strategy.

hj(xk+1)=hj(xk+Δxk)hj(xk)+hjT(xk)Δxk=0;j=1,p

image (3.70c)

in which ∇fxk), ∇gixk), and ∇hjxk) are the gradients of the objective function, the ith inequality constraint and the jth equality constraint, respectively, and ≈ implies approximate equality.
To simplify the mathematical notations in our discussion, we rewrite the linearized equations in Eq. 3.70 as

Minimize:f¯=cTd

image (3.71a)

Subjectto:ATdb

image (3.71b)

NTd=e

image (3.71c)

ΔdΔu

image (3.71d)

where

cn×1=f(xk)=[f(xk)/x1,f(xk)/x2,,f(xk)/xn]T;

image

dn×1=Δxk=[Δx1k,Δx2k,,Δxnk]T;

image

Am×n=[g1(xk),g2(xk),,gm(xk)]m×n,

image

in whichgi(xk)=[gi(xk)/x1,gi(xk)/x2,,gi(xk)/xn]n×1T;

image

Np×n=[h1(xk),h2(xk),,hp(xk)]p×n,

image

in whichhi(xk)=[hi(xk)/x1,hi(xk)/x2,,hi(xk)/xn]n×1T;

image

bm×1=gi(xk)=[g1(xk),g2(xk),,gm(xk)]m×1;

image

and

em×1=hi(xk)=[h1(xk),h2(xk),,hp(xk)]p×1.

image

Note that in Eq. 3.71a, f(xk) is dropped. Δ=[Δ1k,Δ2k,,Δnk]n×1Timage and Δu=[Δ1uk,Δ2uk,,Δnuk]n×1Timage are the move limits—that is, the maximum allowed decrease and increase in the design variables at the kth design iteration. Note that the move limits make the linearized subproblem bounded and give the design changes directly without performing the line search for a step size α. Therefore, no line search is required in SLP. Choosing adequate move limits is critical to the SLP. More about the move limits will be discussed in Example 3.16.
As discussed before, the SLP algorithm starts with an initial design x0. At the kth design iteration, we evaluate the objective and constraint functions as well as their gradients at the current design xk. We select move limits Δik and Δiuk to define an LP subproblem of Eq. 3.71. Solve the linearized subproblem for dk, and update the design for the next iteration as xk+1 = xk + dk. The process repeats until convergent criteria are met. In general, the convergent criteria for an LP subproblem include

gi(xk+1)ε1,i=1,m;|hj(xk+1)|ε1,j=1,p;anddkε2

image (3.72)


EXAMPLE 3.16
Solve Example 3.7 with one additional equality constraint using SLP. The optimization problem is restated as below.

Minimize:f(x)=(x13)2+(x23)2

image (3.73a)

 

Subjectto:g1(x)=3x1+x260

image (3.73b)

 

h1(x)=x1x2=0

image (3.73c)

 

0x1,0x2

image (3.73d)

 
Solutions
We sketch the feasible region bounded by inequality constraint g1(x) ≤ 0, side constraints, and equality constraint h1(x) = 0, as shown below. As is obvious in the sketch, the optimal solution is found at x = (1.5, 1.5), the intersection of g1(x) = 0, and h1(x) = 0, in which f(x) = 4.5.
image
Now we use this example to illustrate the solution steps using SLP. We assume an initial design at x0 = (2, 2). At the initial design, we have f(2, 2) = (x13)2 + (x23)2 = 2, g1(2, 2) = 3x1 + x2  6 = 2 > 0, and h1(2, 2) = 0. The inequality constraint g1 is greater than 0; therefore, this constraint is violated. The initial design is not in the feasible region, as also illustrated in the figure above. The optimization problem defined in Eqs 3.73a3.73d is linearized as follows:

Minimize:f¯=cTd=[2(x13)2(x23)][Δx1Δx2]

image (3.73e)

 

Subjectto:ATdb;i.e.,[31][Δx1Δx2]6,org¯1=3Δx1+Δx260

image (3.73f)

 

NTd=e;i.e.,[11][Δx1Δx2]=0,orh¯1=Δx1Δx2=0

image (3.73g)

 

0.2Δx10.2,0.2Δx20.2

image (3.73h)

 
We have chosen the move limits to be 0.2, which is 10% of the current design variable values, as shown in Eq. 3.73h. At the initial design, x0 = (2, 2), we are minimizing f¯=[22][Δx1Δx2]=2Δx12Δx2image subject to constraints (Eqs 3.73f3.73h). The subproblem has two variables; it can be solved by referring to the sketch below. Because we chose 0.2 as the move limits, the solution to the LP subproblem must lie in the region of the small dotted square box shown below. It can be seen that there is no feasible solution to this linearized subproblem because the small box does not intersect the line g¯1=0image. We must enlarge this region by increasing the move limits. Thus, we note that if the move limits are too restrictive, the linearized subproblem may not have a solution.
image
If we choose the move limits to be 1—that is, 50% of the design variable values—then the design must lie within a larger box ABCD of 2×2 as shown above. Hence the feasible region of the LP problem is now the triangle AED intersecting h¯1image = 0 (that is, line segment AF). Therefore, the optimal solution of the LP problem is found at point F: xF = (1.5, 1.5), where f¯image = 6. That is, d = [Δx10, Δx20]T = [0.5, 0.5]T, and x1 = x0 + d = [2, 2]T + [0.5, 0.5]T = [1.5, 1.5]T = xF.
In the next design x1, we evaluate the objective and constraint functions of the original optimization problem as well as their gradients. We have f(1.5, 1.5) = (x13)2 + (x23)2 = 4.5, g1(1.5, 1.5) = 3x1 + x2  6 = 0, and h1(1.5, 1.5) = 0. The design is feasible. Again, at the design iteration x1 = (1.5, 1.5), we create the LP problem as

Minimizing:f¯=[33][Δx1Δx2]=3Δx13Δx2

image

 

Subjectto:g¯1=3Δx1+Δx260

image

 

h¯1=Δx1Δx2=0

image

 

1Δx11,1Δx21

image

 
As illustrated in the figure next page, the feasible region of the LP subproblem is now the polygon A1E1F1D1 intersecting h¯1image = 0. Therefore, the optimal solution of the LP problem is found again at x1 = (1.5, 1.5), the same point. That is, in this design iteration, d = [Δx11, Δx21]T = [0, 0]T.
image
At this point, the convergent criterion stated in Eq. 3.72, for example, ||d1|| = 0 ≤ ε2, is satisfied; hence, an optimal solution is found at x1 = (1.5, 1.5).
In fact, for this particular problem, it takes only one iteration to find the optimal solution. In general, this may not be the case. An iterative process often takes numerous iterations to achieve a convergent solution.
Although the SLP algorithm is a simple and straightforward approach to solving constrained optimization problems, it should not be used as a black-box approach for engineering design problems. The selection of move limits is in essence trial and error and can be best achieved in an interactive mode. Also, the method may not converge to the precise minimum because no descent function is defined, and the line search is not performed along the search direction to compute a step size. Nevertheless, this method may be used to obtain improved designs in practice. It is a good method to include in our toolbox for solving constrained optimization problems.

3.6.4. The Sequential Quadratic Programming Algorithm

The SQP algorithm incorporates second-order information about the problem functions in determining a search direction n and step size α. A search direction in the design space is calculated by utilizing the values and the gradients of the objective and constraint functions. A quadratic programming subproblem is defined as

Minimize:f¯=cTd+12dTd

image (3.74a)

Subjectto:ATdb

image (3.74b)

NTd=e

image (3.74c)

in which a quadratic term is added to the objective function f¯image and the constraint functions (3.74b) and (3.74c) are identical to those of LP subproblem, except that there is no need to define the move limits. The solution of the QP problem d defines the search direction n (where n = d/||d||). Once the search direction is determined, a line search is carried out to find an adequate step size α. The process repeats until the convergent criteria defined in Eq. 3.72 are met.
EXAMPLE 3.17
Solve the same problem of Example 3.16 using SQP.
Solutions
We assume the same initial design at x0 = (2, 2). At the initial design, we have f(2, 2) = (x13)2 + (x23)2 = 2, g1(2, 2) = 3x1 + x2  6 = 2 > 0, and h1(2, 2) = 0. The initial design is infeasible. The QP subproblem can be written as

Minimize:f¯=cTd+12dTd=[2(x13)2(x23)][Δx1Δx2]+12[Δx1Δx2][Δx1Δx2]

image (3.75a)

 

Subjectto:g¯1=3Δx1+Δx260

image (3.75b)

 

h¯1=Δx1Δx2=0

image (3.75c)

 
At the initial design, x0 = (2, 2), we are minimizing

f¯=[22][Δx1Δx2]+12[Δx1Δx2][Δx1Δx2]=2Δx12Δx2+12(Δx12+Δx22)

image

 
subject to constraint Eqs 3.75b and 3.75c. The QP subproblem can be solved by either using the KKT condition or graphical method. We use the graphical method for this example.
Referring to the sketch below, the optimal solution to the QP subproblem is found at point F: xF = (1.5, 1.5), where f¯=3.75image. That is, d=[Δx10,Δx20]T=[0.5,0.5]T.image Note that the quadratic function f¯image is sketched using the MATLAB script shown in Appendix A (Script 12).
For the next iteration, we have n=d/d=[0.707,0.707]Timage and assume a step size α = 1. Hence, for the next design, x1 = x0 + αn0 = [2, 2]T + 1[0.707, 0.707]T = [1.293, 1.293]T.
image
In the next design x1, we evaluate the objective and constraint functions of the original optimization problem as well as their gradients. We have f(1.293, 1.293) = (x1  3)2 + (x2  3)2 = 5.828, g1(1.293, 1.293) = 3x1 + x2  6 = 0.828, and h1(1.293, 1.293) = 0. The design is feasible. Again, at the design iteration x1 = (1.293, 1.293), we create the QP problem as

Minimizing:f¯=[3.4143.414][Δx1Δx2]+12[Δx1Δx2][Δx1Δx2]=3.414Δx13.414Δx2+12(Δx12+Δx22)

image

 

Subjectto:g¯1=3Δx1+Δx260

image

 

h¯1=Δx1Δx2=0

image

 
The optimal design of the QP problem is found again at x1 = (1.5, 1.5), the same point since the constraint functions are unchanged. That is, d=[Δx11,Δx21]T=[0.207,0.207]Timage. The process continues until the convergent criterion stated in Eq. 3.72 are satisfied. After several iteration, an optimal solution is found at x = (1.5, 1.5).

3.6.5. Feasible Direction Method

The basic idea of the feasible direction method is to determine a search direction that moves from the current design point to an improved feasible point in the design space. Thus, given a design xk, an improving feasible search direction nk is determined such that for a sufficiently small step size α > 0, the new design, xk+1 = xk + αknk is feasible, and the new objective function is smaller than the current one; that is, f(xk+1) < f(xk). Note that n is a normalized vector, defined as n = d/||d||, where d is the nonnormalized search direction solved from a subproblem to be discussed.
Because along the search direction dk the objective function must decrease without violating the applied constraints, taking in account only inequality constraints, it must result that

f(xk)·dk<0

image (3.76)

and

gi(xk)·dk<0,foriIk

image (3.77)

Ik is the potential constraint set at the current point, defined as

Ik{i|gi(x)k+ε0i=1,m}

image (3.78)

Note that ε is a small positive number, selected to determine ε-active constraints as discussed in Section 3.6.1. Note that gi(x) is normalized as in Eq. 3.69a. The inequality constraints enclosed in the set of Eq. 3.78 are either violated or ε-active, meaning they have to be considered in determining a search direction that brings the design into the feasible region. Equations 3.76 and 3.77 are referred to as usability and feasibility requirements, respectively. A geometrical interpretation of the requirements is shown in Figure 3.17 for a two-variable optimization problem, in which the search direction n points to the usable-feasible region.
This method has been developed and applied mostly to optimization problems with inequality constraints. This is because, in implementation, the search direction n is determined by defining a linearized subproblem (to be discussed next) at the current feasible point, and the step size α is determined to reduce the objective function as well as maintain feasibility of design. Because linear approximations are used, it is difficult to maintain feasibility with respect to the equality constraints. Although some procedures have been developed to treat equality constraints in these methods, we will describe the method for problems with only inequality constraints.
image
FIGURE 3.17 Geometric description of the feasible direction method.
The desired search direction d will meet the requirements of usability and feasibility, and it gives the highest reduction of the objective function along it. Mathematically, it is obtained by solving the following linear subproblem in d:

Minimize:β

image (3.79a)

Subjectto:fT(x)dβ0

image (3.79b)

giT(x)dβ0,foriIk

image (3.79c)

djdjdju,forj=1,n

image (3.79d)

Note that this is a linear programming problem. If β < 0, then d is an improving feasible direction. If β = 0, then the current design satisfies the KKT necessary conditions and the optimization process is terminated. To compute the improved design in this direction, a step size α is needed.
EXAMPLE 3.18
Solve the optimization problem of Example 3.7 using the feasible direction method. The problem is restated below:

Minimize:f(x)=(x13)2+(x23)2

image (3.80a)

 

Subjectto:g1(x)=3x1+x260

image (3.80b)

 

0x1,and0x2

image (3.80c)

 
Solutions
Referring to the sketch of Example 3.7, the optimal solution is found as x = (1.2, 2.4), in which f(x) = 3.6. In this example, we present two cases of two respective initial designs, one in the feasible region and the other one in the infeasible region.
Case A: feasible initial design at x0 = (1, 1). From Eq. 3.79, a subproblem can be written at the initial design as

Minimize:β

image (3.80d)

 

Subjectto:q1=4d14d2β0

image (3.80e)

 

1d11,1d21

image (3.80f)

 
Note that we do not need to include the linearized constraint equation g1 ≤ 0 because the design is feasible. We assume lower and upper bounds of the subproblem as 1 and 1, respectively, as stated in Eq. 3.80f.
We sketch the feasible region defined by Eqs 3.80e and 3.80f with β = 0 and 8, respectively, as shown below. For β = 0, the feasible region is the triangle ABC, and for β = 8, the feasible region reduces to a single point C = (1, 1). As is obvious in the sketches below, the optimal solution of the subproblem is found at C = (1, 1), in which β = 8.
image
Certainly, if the bounds of d1 and d2 are changed, the solution changes as well. However, the search direction defined by n = d/||d|| = [1, 1]T/||[1, 1]T|| = [0.707, 0. 707]T remains the same. From Eq. 3.79b, we have

fT(1,1)d=[4,4][1,1]T=8(=β)<0

image

 
Note that ∇fT d is a dot product of ∇fT and d. Geometrically, (∇fT d)/||∇fT d|| = 1 is the angle between the vectors ∇fT and d—in this case 180°, as shown below. This is because the initial design is feasible, and the search direction n (or d) is the negative of the gradient of the objective function ∇f.
image
Case B: infeasible initial design at x0 = (2, 2). From Eq. 3.79, a subproblem can be written at the initial design as

Minimize:β

image (3.80g)

 

Subjectto:q1=2d12d2β0

image (3.80h)

 

q2=3d1+d2β0

image (3.80i)

 

1d11,1d21

image (3.80j)

 
Similar to Case A, we sketch the feasible region defined by of Eqs 3.80h3.80j with β = 0 and 0.8, respectively, as shown below. For β = 0, the feasible region is the triangle ABO, and for β = 0.8, the feasible region reduces to a single point at C = (0.6, 1). As is obvious in the sketches, the optimal solution of the subproblem is found at C = (0.6, 1), in which β = 0.8.
image
The search direction is found as n=d/d=[0.6,1]T/[0.6,1]T=[0.441,0.735]Timage. From Eqs 3.79b and 3.79c, we have

fT(2,2)d=[2,2][0.6,1]T=0.8(=β)<0,andgiT(2,2)d=[3,1][0.6,1]T=0.8<0

image

 
Geometrically, they are the respective angles between the vectors ∇f T and d and ∇giT and d, as shown below. Because the design is infeasible, the gradient of the active constraint is taken into consideration in calculating the search direction. In fact, because the same parameter β is employed in the constraint equations of the subproblem, the search direction n points in a direction that splits the angle between f and g1.
image
In the constraint equations of the subproblem stated in Eqs 3.79b and 3.79c, the same parameter β is employed. As demonstrated in Case B of Example 3.18, the same β leads to a search direction n pointing in a direction that splits the angle between f and g1, in which g1 is an active constraint function.
To determine a better feasible direction d, the constraints of Eq. 3.79c can be modified as

giT(x)dθiβ0,foriIK

image (3.81)

where θi is called the push-off factor. The greater the value of θi, the more the direction vector d is pushed into the feasible region. The reason for introducing θi is to prevent the iterations from repeatedly hitting the constraint boundary and slowing down the convergence.
EXAMPLE 3.19
Find the search directions n for Case B of Example 3.18, assuming θ1 = 0, 0.5, and 1.5.
Solutions
We show the solutions in the following four cases.
Case A: θ1 = 0. From Eqs 3.79 and 3.81, a subproblem can be written at the initial design as

Minimize:β

image (3.82a)

 

Subjectto:q1=2d12d2β0

image (3.82b)

 

q2=3d1+d20

image (3.82c)

 

1d11,1d21

image (3.82d)

 
Following the similar approach as in Example 3.18, the solution to the subproblem defined in Eqs 3.82a3.82d is found at d = (1/3, 1) with β = 4/3. In fact, the search direction points in a direction that is parallel to the active constraint g1 at the current design x0; i.e., the search direction is perpendicular to the gradient of the constraint function ∇g1, as shown below in the vector d(0).
image
Case B: θ1 = 0.5. The constraint equation q2 of the subproblem becomes

q2=3d1+d20.5β0

image (3.82e)

 
The solution to the subproblem is found at d = (1/2, 1) with β = 1. The search direction n leans to g1, as shown in the figure above in the vector d(0.5). That is, the design is pushed more into the feasible region compared to the case where θ1 = 0.
Case C: θ1 = 1. The constraint equation q2 of the subproblem becomes

q2=3d1+d2β0

image (3.82f)

 
The solution to the subproblem is found at d = (0.6, 1) with β = 0.8. The search direction d leans more to g1, as shown in the figure above in the vector d(1).
Case D: θ1 = 1.5. The constraint equation q2 of the subproblem becomes

q2=3d1+d21.5β0

image (3.82g)

 
The solution to the subproblem is found at d = (2/3, 1) with β = 2/3. The search direction d leans more to g1, as shown in the figure above in the vector d(1.5).

3.6.6. Penalty Method

A penalty method replaces a constrained optimization problem by a series of unconstrained problems whose solutions ideally converge to the solution of the original constrained problem. The unconstrained problems are formed by adding a term, called a penalty function, to the objective function that consists of a penalty parameter multiplied by a measure of violation of the constraints. The measure of violation is nonzero when the constraints are violated and is zero in the region where constraints are not violated.
Recall that a constrained optimization problem considered is defined as

MinimizexSf(x)

image (3.83)

where S is the set of feasible designs defined by equality and inequality constraints. Using the penalty method, Eq. 3.83 is first converted to an unconstrained problem as

MinimizeΦ(x,rp)=f(x)+rpp(x)

image (3.84)

where f(x) is the original objective function, p(x) is an imposed penalty function, and rp is a multiplier that determines the magnitude of the penalty. The function Ф(x, rp) is called pseudo-objective function.
There are numerous ways to create a penalty function. One of the easiest is called exterior penalty (Vanderplaats 2007), in which a penalty function is defined as

p(x)=i=1m{max[0,gi(x)]}2+j=1p[hj(x)]2

image (3.85)

From Eq. 3.85, we see that no penalty is imposed if all constraints are satisfied. However, whenever one or more constraints are violated, the square of these constraints is included in the penalty function.
If we choose a small value for the multiplier rp, the pseudo-objective function Φ(x, rp) may be solved easily, but may converge to a solution with large constraint violations. On the other hand, a large value of rp ensures near satisfaction of all constraints but may create a poorly conditioned optimization problem that is unstable and difficult to solve numerically. Therefore, a better strategy is to start with a small rp and minimize Φ(x, rp). Then, we increase rp by a factor of γ (say γ = 10), and proceed with minimizing Φ(x, rp) again. Each time, we take the solution from the previous optimization problem as the initial design to speed up the optimization process. We repeat the steps until a satisfactory result is obtained. In general, solutions of the successive unconstrained problems will eventually converge to the solution of the original constrained problem.
EXAMPLE 3.20
Solve the following optimization problem using the penalty method.

Minimize:f(x)=x

image (3.86a)

 

Subjectto:g1(x)=1x0

image (3.86b)

 

g2(x)=12x10

image (3.86c)

 

0x3

image (3.86d)

 
Solutions
We show the objective and constraint functions in the sketch below. It is obvious that the feasible region is [1, 2], and the optimal solution is at x = 1, f(1) = 1.
image
Now we solve the problem using the penalty method. We convert the constrained problem to an unconstrained problem using Eq. 3.84 as

MinimizeΦ(x,rp)=x+rp{[max(0,1x)]2+[max(0,0.5x1)]2}

image (3.86e)

 
We start with rp = 1 and use the golden search to find the solution. The MATLAB script for finding the solution to Eq. 3.86e can be found in Appendix A (Script 13).
For rp = 1, the golden search found a solution of x = 0.5, Ф(0.5, 1) = 0.75, with constraint functions g1(0.5) = 0.5 (violated) and g2(0.5) = 0.75 (satisfied).
We increase rp = 10. The golden search found a solution of x = 0.950, Ф(0.950, 10) = 0.975, with constraint functions g1(0.950) = 0.05 (violated) and g2(0.950) = 0.525 (satisfied).
We increase rp = 100. The golden search found a solution of x = 0.995, Ф (0.995, 100) = 0.9975, with constraint functions g1(0.995) = 0.005 (violated) and g2(0.995) = 0.5025 (satisfied).
When we increase rp = 10,000, we have x = 0.9999, Ф(0.9999, 100) = 1.000, with constraint functions g1(0.9999) = 0.00001 (violated) and g2(0.9999) = 0.500 (satisfied). At this point, the objective function is f(0.9999) = 0.9999. The convergent trend is clear from results of increasing the rp value.
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset