• No results found

2.4 Fundamentals of optimization

2.4.2 Multi-Objective Optimization Methods

The techniques used to solve MOPs are not usually restricted to finding a single solution, but a set of compromise solutions between the multiple conflicting objectives, since there is usually no solution that simultaneously optimizes all objectives. Two stages can therefore be distinguished when addressing this type of problem: on the one hand, the optimization of several objective functions involved and, on the other hand, the decision-making process on which compromise solution is most appropriate [87].

Figure 2.8: General classification of optimization techniques

A simple classification of the optimization methods used throughout the history of Computer Science is shown in Figure 2.8. In a first approach, the techniques can be classified into Exact and Approximate. Exact techniques, which are based on the mathematical finding of the optimal solution, or an exhaustive search until the optimum is found, guarantee the optimality of the obtained solution. However, these techniques present some drawbacks. The time they require may be very large, especially for NP-hard problems. Furthermore, it is not always possible to find such an exact technique for every problem. This makes exact techniques lead to poor performance, since both their time and memory requirements can become unreasonably high for large scale problems. For this reason, approximate techniques have been widely used by the international research community in the last few decades. These methods sacrifice the guarantee of finding the optimum in favor of providing some satisfactory solution within reasonable times. Among approximate algorithms, we can find two types: ad hoc heuristics, andmetaheuristics, which we focus on this thesis.

Metaheuristics are approximate algorithms that combine basic heuristics methods in higher level frameworks aimed at efficiently and effectively exploring a search space, Blum et al. [103]

34 2.4. FUNDAMENTALS OF OPTIMIZATION

summarize metaheuristics characteristics as:

• Metaheuristics are strategies that guide the search process.

• The goal is to explore, in an efficiently way, the search space so as to find optimal solutions or the nearest solution to the optimal.

• There exist a ton of metaheuristics techniques from simple local search procedures to complex learning process.

• Metaheuristics algorithms are approximate and typically non-deterministic.

• They usually incorporate mechanisms to avoid getting stuck in confined areas of the search space.

• The basic concepts of metaheuristics permit an abstract level description.

• Metaheuristics are not problem-specific.

• Metaheuristics may make use of domain-specific knowledge in the form of heuristics that are controlled by the upper level strategy.

Formally, a metaheuristic is defined as a tuple of elements that, depending on how they are defined, leads to a particular technique or another. This formal definition has been developed in [104] and subsequently extended in [105].

Definition 2 (Metaheuristic). A metaheuristic M is a tuple composed by the following eight components:

M=hT,Ξ, µ, λ,Φ, σ,U, τi , (2.5) where:

• T is the set of elements that are handled by the metaheuristic. This set contains the search space and in most cases it coincides with it.

• Ξ = {(ξ1, D1),(ξ2, D2), . . . ,(ξv, Dv)} is a set of v pairs. Each pair is composed by a state

variable of the metaheuristic and by the domain of this variable.

• µis the number of solutions with which Moperates in one step.

• λis the number of new solutions that are generated in each iteration of M.

• Φ :Tµ× Qv

i=1

Di× Tλ → [0,1] represents the operator that creates new solutions from the

existent ones. This function must fulfill for allx∈ Tµ and for alltQv

i=1Di, X y∈Tλ Φ(x, t, y) = 1 . (2.6) • σ:Tµ× Tλ×Qv i=1

Di× Tµ→[0,1]is a function that allows to select those solutions that will

be handled in the following iteration ofM. This function must fulfill for allx∈ Tµ,z∈ Tλ

andt∈Qv i=1Di, X y∈Tµ σ(x, z, t, y) = 1 , (2.7) ∀y∈ Tµ, σ(x, z, t, y) = 0 (2.8) ∨σ(x, z, t, y)>0∧ (∀i∈ {1, . . . , µ} •(∃j∈ {1, . . . , µ}, yi=xj)∨(∃j∈ {1, . . . , λ}, yi=zj)) .

CHAPTER 2. CONTEXT AND FUNDAMENTALS 35 • U :Tµ× Tλ× Qv i=1 Di× v Q i=1

Di→[0,1]represents the update procedure of the state variable

of the metaheuristic. This function must fulfill for allx∈ Tµ,z∈ Tλ and tQv

i=1Di, X u∈Qv i=1Di U(x, z, t, u) = 1 . (2.9) • τ:Tµ×Qv i=1

Di→ {f alse, true} is a function that decides the termination of the algorithm.

The above definition reflects the typical stochastic behavior of metaheuristic techniques. In particular, theΦ,σ, andUfunctions must be interpreted as conditional probabilities. For example, the value ofΦ(x, t, y)is interpreted as the probability that the child vector y ∈ Tλ is generated

since at the moment the set of individuals with which the metaheuristic works isx∈ Tµ and its

internal state is defined by the state variables t ∈ Qv

i=1Di. It can be seen that the constraints

imposed on the functionsΦ,σyU allow to consider them as functions that return these conditional probabilities.

Definition 3 (Metaheuristic state). Let M=hT,Ξ, µ, λ,Φ, σ,U, τi be a metaheuristic and Θ =

{θ1, θ2, . . . , θµ} the set of variables that will store the solution set with which the metaheuristic

works. We will use the notationf irst(Ξ)to refer to the state variable set of the metaheuristic,

{ξ1, ξ2, . . . , ξv}. A states of the metaheuristic is a pair of functionss= (s1, s2) with

s1: Θ→ T, (2.10) s2:f irst(Ξ)→ v [ i=1 Di , (2.11) wheres2 satisfies s2(ξi)∈Di ∀ξi∈f irst(Ξ) . (2.12)

We will denote withSM the set of all states of a metaheuristicM.

Finally, once defined the state of a metaheuristic, we can define its dynamic.

Definition 4 (Metaheuristic dynamic). Let M = hT,Ξ, µ, λ,Φ, σ,U, τi be a metaheuristic and Θ ={θ1, θ2, . . . , θµ}the set of variables that will store the solution set with which the metaheuristic

works. We will use the notationΘfor the tuple(θ1, θ2, . . . , θµ)andΞfor the tuple(ξ1, ξ2, . . . , ξv).

We will extend the state definition so that it can be applied to element tuples. Then, we define

s= (s1, s2) where s1: Θn→ Tn , (2.13) s2:f irst(Ξ)n→ v [ i=1 Di !n , (2.14)

and besides that

s1(θi1, θi2, . . . , θin) = (s1(θi1), s1(θi2), . . . , s1(θin)) , (2.15) s2(ξj1, ξj2, . . . , ξjn) = (s2(ξj1), s2(ξj2), . . . , s2(ξjn)) , (2.16)

36 2.4. FUNDAMENTALS OF OPTIMIZATION

forn≥2. We will say thatris a successor state ofsift∈ Tλexists such thatΦ(s

1(Θ), s2(Ξ), t)>0

and besides that

σ(s1(Θ), t, s2(Ξ), r1(Θ))>0 y (2.17)

U(s1(Θ), t, s2(Ξ), r2(Ξ))>0 . (2.18)

We will denote with FM the binary relation “being a successor of” defined in the states set of a metaheuristicM. That is, FM⊆ SM× SM,and FM(s, r)ifris a successor state of s.

Definition 5 (Metaheuristic execution). A metaheuristicM execution is a finite or infinite se- quence of states,s0, s1, . . . in whichFM(si, si+1)for alli≥0and besides that:

• if the sequence is infinite τ(si(Θ), si(Ξ)) =f alseis satisfied for alli≥0 and

• if the sequence is finiteτ(sk(Θ), sk(Ξ)) =trueif satisfied for the last state sk and, besides,

τ(si(Θ), si(Ξ)) =f alsefor alli≥0 such that i < k.