Você está na página 1de 37

Estudo sobre as

Metaheursticas

Leandro Ferro Luzia


Mauricio Chui Rodrigues

Estudo sobre as Metaheursticas


1. Metaheursticas e Otimizao
2. Objetivo do Estudo
3. Mtodo do Gradiente
4. Hill Climbing
5. Ant Colony Optimization
6. Harmony Search
7. Concluso

Estudo sobre as Metaheursticas


1. Metaheursticas e Otimizao
2. Objetivo do Estudo
3. Mtodo do Gradiente
4. Hill Climbing
5. Ant Colony Optimization
6. Harmony Search
7. Concluso

Otimizao
Otimizao o processo de escolher o melhor elemento em
um conjunto de alternativas disponveis
Relacionado a uma funo objetivo, aplicada sobre os
elementos do conjunto
Diversos tipos de otimizao
o
o
o
o

Programao Linear
Programao Inteira
Otimizao Combinatria
Otimizao Estocstica
Metaheursticas

Metaheursticas
Mtodos que coordenam procedimentos de busca local com
estratgias de mais alto nvel
Objetivo de criar um processo capaz de escapar de
mnimos locais e realizar uma busca robusta no espao de
solues
Aplicadas para resolver problemas sobre os quais h pouca
informao, mas que, uma vez oferecida uma soluo
candidata, esta pode ser testada
No apresentam garantias de otimalidade

Estudo sobre as Metaheursticas


1. Metaheursticas e Otimizao
2. Objetivo do Estudo
3. Mtodo do Gradiente
4. Hill Climbing
5. Ant Colony Optimization
6. Harmony Search
7. Concluso

Objetivo do Estudo
Analisar diversas metaheursticas
Definio
Formas de implementao
Vantagens e desvantagens
Exemplos de aplicao

o
o
o
o

Metaheursticas abordadas:

Best-first Search
Hill Climbing
Tabu Search
Simulated Annealing
GRASP

Ant Colony Optimiz.


Particle Swarm Optimiz.
Harmony Search
Memetic Algorithms
Genetic Algorithms

Estudo sobre as Metaheursticas


1. Metaheursticas e Otimizao
2. Objetivo do Estudo
3. Mtodo do Gradiente
4. Hill Climbing
5. Ant Colony Optimization
6. Harmony Search
7. Concluso

Fonte:
http://en.wikipedia.org/wiki/Gradient_descent

Mtodo do Gradiente
Algoritmo tradicional de aproximao de funes
Baseia-se na inclinao da funo em um ponto, para
definir em que sentido da funo ir buscar uma melhor
soluo
Tempo de convergncia grande, pois h oscilao do
sinal do gradiente quando se aproxima de um
mximo/mnimo
Pode ficar preso em mximos/mnimos locais ou pontos de
inflexo, nos quais o gradiente nulo

Estudo sobre as Metaheursticas


1. Metaheursticas e Otimizao
2. Objetivo do Estudo
3. Mtodo do Gradiente
4. Hill Climbing
5. Ant Colony Optimization
6. Harmony Search
7. Concluso

Hill Climbing
Tcnica simples de busca local: no armazena o caminho
percorrido at a soluo atual
Algoritmo similar ao do mtodo do gradiente
No requer conhecimento sobre a derivada ou o gradiente
da funo
Avalia solues candidatas na regio atual, optando pela
que melhorar a avaliao da funo objetivo

Hill Climbing
Algoritmo Bsico
1:
2:
3:
4:
5:
6:
7:

S soluo inicial
repita
R NovaSoluo(S)
se (Qualidade(R) > Qualidade(S)) ento
S R
at que S seja ideal ou o tempo se esgote
devolva S

Hill Climbing
Vantagens
o
o

Fcil implementao
Base para outras metaheursticas

Desvantagens
o
o

Mximos/mnimos locais com grande vizinhana


No usa informaes adicionais sobre o problema

Hill Climbing
Diversas aplicaes a escalonamentos
o

Mais interessante: escalonamento de recursos


computacionais em sistemas distribudos e
multiprocessados

Estudo sobre as Metaheursticas


1. Metaheursticas e Otimizao
2. Objetivo do Estudo
3. Mtodo do Gradiente
4. Hill Climbing
5. Ant Colony Optimization
6. Harmony Search
7. Concluso

Ant Colony Optimization


Abordagem baseada no uso que as formigas reais fazem do
feromnio para se comunicar
Dois conceitos importantes:
o

Formigas - agentes que constroem solues


iterativamente (atuam como uma memria de curta
durao do algoritmo)

Feromnio - informao numrica distribuda que ajuda a


guiar as formigas na construo de solues (atua como
uma memria de longa durao do algoritmo)

Ant Colony Optimization


Algoritmo bsico

Ant Colony Optimization


Vantagens
o
o

Flexibilidade
Viabilidade para problemas dinmicos (caractersticas se
alteram ao longo da execuo)

Desvantagens
o
o

Alto tempo computacional


Convergncia prematura

Ant Colony Optimization


Aplicaes a escalonamentos
o
o
o
o

Problema do caixeiro viajante - AntSystem


Roteamento em redes de comutao de pacotes - AntNet
Single Machine Total Weighted Tardiness Scheduling
Problemas Flow-Shop

Estudo sobre as Metaheursticas


1. Metaheursticas e Otimizao
2. Objetivo do Estudo
3. Mtodo do Gradiente
4. Hill Climbing
5. Ant Colony Optimization
6. Harmony Search
7. Concluso

Harmony Search
Metaheurstica baseada em msica (!!)
o
o

Derivada estocstica => variveis discretas


Conhecimento obtido no improviso do Jazz

Diversas analogias
o
o
o
o
o
o

Msico varivel de deciso


Pitch de instrumento valor de varivel
Harmonia musical vetor de solues
Esttica auditiva funo objetivo
Experincia matriz de memria
Prtica iteratividade

Harmony Search

Harmony Search
Algoritmo com sete passos:
o
o
o
o
o
o
o

Formulao do problema
Definio de parmetros do algoritmo
Tuning aleatrio para iniciar memria
Improviso de harmonia
Atualizao da memria
Execuo de terminao
Cadncia

Harmony Search
Formulao do problema

Funo objetivo o que mais importa

Violao de restries?
Opo 1: abandonar a soluo
Opo 2: aceitar penalidade

Harmony Search
Definio de parmetros do algoritmo
o
o
o
o
o
o

k: tamanho da memria de harmonia


nmero simultneo de vetores de soluo
phmcr: memria de harmonia considerando taxas
obteno de valor da memria
ppar: taxa de ajuste de pitch
alterao de um valor obtido da memria
fw ou bw: largura das casas
comprimento arbitrrio para variveis contnuas
: largura das casas (?)
distncia entre dois valores de conjunto discreto
improviso mximo
nmero de iteraes

Harmony Search
Tuning aleatrio: improvisar harmonias (no mnimo o
tamanho da memria) e selecionar as melhores
Improviso de harmonia: escolher nota da memria ou do
alcance (se da memria, alterar ou manter?)
Atualizao da memria: se a harmonia encontrada for
melhor do que a pior, descartar a pior
Execuo da terminao: finalizar se necessrio, seno
improvisar e iniciar nova iterao
Cadncia: execuo de procedimento aps o algoritmo

Harmony Search
Exemplo de implementao

Harmony Search
Vantagens
o
o
o

Trata variveis discretas ou contnuas


Estrutura simples => flexibilidade
Abundncia de informaes
http://www.hydroteq.com

Desvantagens
o
o

Compreenso terica
Dependncia de formulao do problema

Harmony Search
Diversas aplicaes em outras reas
o
o

IA, Viso Computacional


Engenharia, Medicina e Biologia

Poucas aplicaes a escalonamentos (por enquanto)


o

Escalonamento de diques
Extrao com mximo benefcio na gerao de
energia hdrica e na irrigao

Estudo sobre as Metaheursticas


1. Metaheursticas e Otimizao
2. Objetivo do Estudo
3. Mtodo do Gradiente
4. Hill Climbing
5. Ant Colony Optimization
6. Harmony Search
7. Concluso

Concluso
Metaheursticas podem ter as mais inesperadas e
inusitadas origens
Aplicaes em diversas reas, no s a escalonamentos
No existe uma metaheurstica suprema
Trata-se de uma rea de pesquisa ativa
Pesquisa completa demandaria muito mais do que algumas
semanas

Referncias

LUKE, S. (2009). Essentials of Metaheuristics. Disponvel em


http://cs.gmu.edu/~sean/book/metaheuristics/.

GLOVER, F. e KOCHENBERGER, G. A. (2003). Handbook of Metaheuristics. Kluwer


Academic Publishers, Boston.

GEEM, Z.W.. State-of-the-Art in the Structure of Harmony Search Algorithm.


Disponvel em: http://www.hydroteq.com/HS_Structure.pdf.

http://en.wikipedia.org/wiki/Harmony_search

As imagens presentes nesta apresentao no so de nossa autoria, todos os


crditos so, portanto, de seus respectivos autores.

Você também pode gostar