- Prof. Lucas de Souza Batista - DEE/EE/UFMG
Otimização Multiobjetivo
Multiobjective Evolutionary Algorithm based on Decomposition (MOEA/D)
Otimizao Multiobjective Evolutionary Algorithm based on - - PowerPoint PPT Presentation
Prof. Lucas de Souza Batista - DEE/EE/UFMG Otimizao Multiobjective Evolutionary Algorithm based on Multiobjetivo Decomposition (MOEA/D) Introduo O MOEA/D decompe um problema de otimizao multiobjetivo em N subproblemas
Multiobjective Evolutionary Algorithm based on Decomposition (MOEA/D)
❖ O MOEA/D decompõe um problema de otimização
multiobjetivo em N subproblemas de otimização escalar;
❖ Esses subproblemas são otimizados simultaneamente a partir da
evolução de uma população de soluções;
❖ Em cada geração, a população é composta pelas melhores
soluções encontradas para cada subproblema;
❖ Cada subproblema é otimizado considerando apenas
informações de subproblemas vizinhos;
❖ Apresenta baixa complexidade computacional se comparado a
métodos populares: NSGA-II, MOGLS;
❖ O MOEA/D provê uma maneira simples e eficiente para
introdução de técnicas de decomposição em MOEAs;
❖ Simplifica a atribuição de fitness e manutenção de
diversidade (em relação a outros MOEAs);
❖ Permite a inclusão de técnicas de normalização dos
❖ Viabiliza a otimização dos subproblemas por métodos
de otimização escalar, o que representa uma grande vantagem em relação a MOEAs tradicionais;
(1)
❖ Weighted Sum Approach
❖ Tchebycheff Approach
❖ Tchebycheff Approach
❖ Penalty-based Boundary Intersection (PBI) Approach
❖ Penalty-based Boundary Intersection (PBI) Approach
❖ Penalty-based Boundary Intersection (PBI) Approach
f1
f2
1 0.75 0.5 0.25 0.25 1 0.75 0.5 !"#$ !"#$ %"!$ %"!$ !"& !"& !"#$ !"& %"!$ %"' !"#$ !"& %"!$ %"'
f1
f2
1 0.75 0.5 0.25 0.25 1 0.75 0.5 !"#$ !"& %"!$ !"#$ !"& %"!$
f1
f2
1 0.75 0.5 0.25 0.25 1 0.75 0.5 %"' %"'
❖ Simplex-Lattice Design ❖ em que H é um inteiro positivo (definido pelo usuário); ❖ O número de vetores (igual ao tamanho da população) é
dado por:
λi
j ∈
H , 1 H , 2 H , · · · ,H H
N = C
H+nf−1 nf−1
❖ Simplex-Lattice Design ❖ Por exemplo, assumindo nf = 3 objetivos e diferentes
valores de H, tem-se:
H = 1, N = C3
2 = 3,
λ λ λ ∈ {(1,0,0),(0,1,0),(0,0,1)} H = 2, N = C4
2 = 6,
λ λ λ ∈ {(1,0,0),(0,1,0),(0,0,1),(0,1/2,1/2),(1/2,0,1/2),(1/2,1/2,0)} H = 3, N = C5
2 = 10,
λ λ λ ∈
⎧ ⎪ ⎨ ⎪ ⎩
(1,0,0),(0,1,0),(0,0,1),(0,1/3,2/3),(1/3,0,2/3),(1/3,2/3,0) (0,2/3,1/3),(2/3,0,1/3),(2/3,1/3,0),(1/3,1/3,1/3) . (2
❖ Simplex-Lattice Design ❖ Por exemplo, assumindo nf = 3 e H = 5:
A structured set of reference points (β ) is generated spanning a hyper plane with a uniform spacing of δ = 1/p for any number δ
the table shows the combination of all β’s in each column
(a)
A structured set of reference points (β ) is generated spanning a hyper plane with a uniform spacing of δ = 1/p for any number δ
the table shows the combination of all β’s in each column
❖ Simplex-Lattice Design ❖ Por exemplo, assumindo nf = 3 e H = 4:
0.25 0.5 0.75 1 0.25 0.5 0.75 1 0.25 0.5 0.75 ...... 1 0.75 0.5 0.25 0.75 0.5 0.25
At each generation , MOEA/D with the Tchebycheff ap- proach maintains:
points , where is the current solution to the th subproblem;
is the
, i.e., for each ;
is the best value found so far for objective ;
dominated solutions found during the search.
Input:
MOEA/D;
weight vectors: ;
Output: .
Step 1) Initialization: Step 1.1) Set . Step 1.2) Compute the Euclidean distances between any two weight vectors and then work out the closest weight vectors to each weight vector. For each , set , where are the closest weight vectors to . Step 1.3) Generate an initial population randomly or by a problem-specific method. Set . Step 1.4) Initialize by a problem-specific method.
Step 2) Update: For , do Step 2.1) Reproduction: Randomly select two indexes from , and then generate a new solution from and by using genetic operators. Step 2.2) Improvement: Apply a problem-specific repair/ improvement heuristic on to produce . Step 2.3) Update of : For each , if , then set . Step 2.4) Update of Neighboring Solutions: For each index , if , then set and . Step 2.5) Update of : Remove from all the vectors dominated by . Add to if no vectors in dominate .
use “>" for minimization
Step 3) Stopping Criteria: If stopping criteria is satisfied, then stop and output . Otherwise, go to Step 2.
❖ Q. Zhang & H. Li, MOEA/D: A multiobjective
❖ H. Li & Q. Zhang, Multiobjective optimization problems