• No results found

Multiobjective Optimization

6.4 The Weighted Sum Method

6.4.1 Two-Objective Case

solving multiobjective optimization problems. It is also the one that is most widely used. However, it possesses some serious deficiencies. The AOF is simply a weighted linear combination of all the objective functions. Let’s consider the two-objective case shown below.

J(x) = w1μ1(x) + w2μ2(x) (6.8)

The above equation is a linear function of the two objective functions. Therefore, if we plot the constant value curves (contour plot) of J in the objective space (see Fig. 6.3), these contours will appear as straight lines. Setting the weights in front of each objective function, and minimizing J yields a Pareto point. By changing the weights (w ≥ 0) uniformly, say from 0 to 1, we can obtain a series of Pareto points on the Pareto frontier. The mathematical formulation of the optimization problem is given below. (6.9) subject to g(x) ≤ 0 (6.10) h(x) = 0 (6.11) xl ≤ x ≤ xu (6.12)

Note that we are considering the generic constrained optimization problem in Eq. 6.9. The constraints g(x) and h(x) define the feasible region, which is shown in Fig. 6.4 as the shaded region. A pictorial representation of what goes on behind the scenes during the optimization process is also provided. The dashed lines are the constant value curves of J.

Figure 6.4. Weighted Sum Method

closer to the Pareto frontier. The optimization will terminate when it is no longer possible to decrease both μ1 and μ2 simultaneously while remaining in the feasible region. Notice that if you set w1 = 0, the constant value curves of J are parallel to μ1; and the optimum point obtained will be M2, the minimum of μ2. Similarly, if you set w2 = 0, you will obtain M1 as the minimum. For all other combinations of w1 and w2, different points on the Pareto frontier can be obtained. A typical way to set the weights is to vary them between 0 and 1 such that their sum is equal to 1. One of the deficiencies of the weighted sum method is that there is no easy way to know what values of w to use. They are generally chosen by trial and error.

6.4.2 Addressing More than Two Objectives

For two-objective (i.e., bi-objective) optimization problems, the two weights in Eq. 6.9

can be made to vary between 0 and 1 in an attempt to generate Pareto solutions. Here, we address the case of m objectives, where m > 2 and the Aggregate Objective Function can be expressed as

(x) = h1μ1(x) + h2μ2(x) + + hmμm(x) (6.13) where hi is greater than or equal to 0, and represents the weight for the ith objective function. Note that h i cannot be equal to 0 for all i. We now make the following observations. The solution obtained using (x) is the same as that obtained using J(x), where J(x) = (x) with α as a positive constant. If we let α = h1 + h2 + + hm, then the new objective function can be written as (6.14) where (6.15) (6.16) (6.17) (6.18)

Figure 6.5. The Plane of Weights for a Three-Objective Optimization Problem With the above construction, we note that

(6.19)

From Eq. 6.19, we observed that the weights, (w1,w2, ,wm) lie on the hyperplane defined by w1 + w2 + + wm = 1, where

0 ≤ wi ≤ 1 (6.20)

For three-objective optimization problems, the points belonging to the plane w1 + w2 + w3 = 1 (0 ≤ w1,w2,w3 ≤ 1) define the ranges of appropriate weights (see Fig. 6.5). To examine how the weights may change relative to each other, we recall that the sum of the weights is equal to 1, and we make the following observations: (i) We begin by allowing w1 to vary from 0 to 1. (ii) For a given w1, w2 must vary between 0 and (1 – w1), in order to have w1 + w2 = 1. (iii) For a given w1 and w2, w3 must vary between 0 and (1 – w1 – w2) in order to have w1 + w2 + w3 = 1. (iv) (For four objectives, we would have:) For a given w1, w2 and w3, w4 must vary between 0 and (1 – w1 – w2 – w3) in order to have w1 + w2 + w3 + w4 = 1. And the process continues.

Figure 6.5 describes the range of weights for the three-objective case, where the horizontal dashed line describes the generic range for w2 and the vertical dashed line

describes the generic range for w3.

The associated MATLAB code for the three-objective case is presented below. If we use an increment of 0.01 for the weights iterations, the range of weights can be evaluated using the following nested loop code. for w1=0:0.01:1 for w2=0:0.01:1-w1 w3=1-w1-w2; % (evaluate the objectives u1, u2, and u3) J = w1*u1 + w2*u2 + w3*u3; end end 6.5 Compromise Programming An important question is whether the weighted sum method has the ability to generate all correct results. To answer this question, consider Fig. 6.6. It displays, what we call in multiobjective optimization terminology, a non-convex Pareto frontier. (Recall that the Pareto frontier in Fig. 6.4 was part of a convex set.)

Figure 6.6. Weighted Sum for Non-convex Pareto Frontier

If we try to use the weighted sum method for this type of problem, the Pareto points that lie in the non-convex regions (all points between P and Q) will be unobtainable. A pictorial representation of the optimization is shown in Fig. 6.6. As the optimization progresses, you might think that it will stop when the dashed line passes through point T. In fact, it continues beyond point T and yields point P as the optimum solution. No matter what set of weights you use, points such as T (and any point between P and Q) are unobtainable, because they lie in a non-convex portion of the Pareto frontier. This is a serious drawback of the weighted sum method, and one that calls for particular caution.

extension of the weighted sum strategy. The mathematical form of the pertinent AOF is provided below. J(x) = w1μ1n(x) + w 2μ2n(x) (6.21) Notice the difference between the above equation and the weighted sum in Eq. 6.8. In Eq. 6.21, the objective functions have an exponent, n. If we plot the constant value curves of J, they will no longer be straight lines. Instead, they will be n-th order curves.

Figure 6.7 presents the constant value curves of J as dashed lines as the optimization progresses. Note that if we select a sufficiently high value for n, we can reach into the non-convex portions of the Pareto frontier. In this specific case, the optimum point obtained is point T, which was previously unobtainable using the weighted sum method.

Figure 6.7. Compromise Programming

As a general guideline, always choose n to be an even integer less than or equal to 8. In most cases, using n = 2 or n = 4 should yield satisfactory results. When n = 2, the compromise programming approach is sometimes called the weighted square sum method.