Documentation |
You might need to formulate problems with more than one objective, since a single objective with several constraints may not adequately represent the problem being faced. If so, there is a vector of objectives,
F(x) = [F_{1}(x), F_{2}(x),...,F_{m}(x)],
that must be traded off in some way. The relative importance of these objectives is not generally known until the system's best capabilities are determined and tradeoffs between the objectives fully understood. As the number of objectives increases, tradeoffs are likely to become complex and less easily quantified. The designer must rely on his or her intuition and ability to express preferences throughout the optimization cycle. Thus, requirements for a multiobjective design strategy must enable a natural problem formulation to be expressed, and be able to solve the problem and enter preferences into a numerically tractable and realistic design problem.
Multiobjective optimization is concerned with the minimization of a vector of objectives F(x) that can be the subject of a number of constraints or bounds:
$$\begin{array}{l}\underset{x\in {\mathbb{R}}^{n}}{\mathrm{min}}F(x),\text{subjectto}\\ {G}_{i}(x)=0,\text{}i=1,\mathrm{...},{k}_{e};\text{}{G}_{i}(x)\le 0,\text{}i={k}_{e}+1,\mathrm{...},k;\text{}l\le x\le u.\end{array}$$
Note that because F(x) is a vector, if any of the components of F(x) are competing, there is no unique solution to this problem. Instead, the concept of noninferiority in Zadeh [4] (also called Pareto optimality in Censor [1] and Da Cunha and Polak [2]) must be used to characterize the objectives. A noninferior solution is one in which an improvement in one objective requires a degradation of another. To define this concept more precisely, consider a feasible region, Ω, in the parameter space. x is an element of the n-dimensional real numbers $$x\in {\mathbb{R}}^{n}$$ that satisfies all the constraints, i.e.,
$$\Omega =\left\{x\in {\mathbb{R}}^{n}\right\},$$
subject to
$$\begin{array}{l}{G}_{i}(x)=0,\text{}i=1,\mathrm{...},{k}_{e},\\ {G}_{i}(x)\le 0,\text{}i={k}_{e}+1,\mathrm{...},k,\\ l\le x\le u.\end{array}$$
This allows definition of the corresponding feasible region for the objective function space Λ:
$$\Lambda =\left\{y\in {\mathbb{R}}^{m}:y=F(x),x\in \Omega \right\}.$$
The performance vector F(x) maps parameter space into objective function space, as represented in two dimensions in the figure Mapping from Parameter Space into Objective Function Space.
A noninferior solution point can now be defined.
Definition: Point $$x*\in \Omega $$ is a noninferior solution if for some neighborhood of x* there does not exist a Δx such that $$\left(x*+\Delta x\right)\in \Omega $$ and
$$\begin{array}{l}{F}_{i}\left(x*+\Delta x\right)\le {F}_{i}(x*),\text{}i=1,\mathrm{...},m,\text{and}\\ {F}_{j}\left(x*+\Delta x\right){F}_{j}(x*)\text{foratleastone}j.\end{array}$$
In the two-dimensional representation of the figure Set of Noninferior Solutions, the set of noninferior solutions lies on the curve between C and D. Points A and B represent specific noninferior points.
A and B are clearly noninferior solution points because an improvement in one objective, F_{1}, requires a degradation in the other objective, F_{2}, i.e., F_{1B} < F_{1A}, F_{2B} > F_{2A}.
Since any point in Ω that is an inferior point represents a point in which improvement can be attained in all the objectives, it is clear that such a point is of no value. Multiobjective optimization is, therefore, concerned with the generation and selection of noninferior solution points.
Noninferior solutions are also called Pareto optima. A general goal in multiobjective optimization is constructing the Pareto optima. The algorithm used in gamultiobj is described in Deb [3].