You are on page 1of 29

Computao Natural

Semestre 2009/1 Renato Krohling


krohling.renato@gmail.com

Horrio de atendimento tarde de 14 - 17 horas Sala 17, Prdio CT VII a combinar por email
Algoritmos Genticos

Tpicos

Introduo computao inspirada em mecanismos biolgicos Computao evolutiva (algoritmo gentico, programao evolucionria, programao gentica, evoluo diferencial) Inteligncia coletiva computacional (particle swarm, ants colony) Sistemas imunolgicos artificiais Redes neurais Lgica nebulosa Abordagens hbridas
Algoritmos Genticos

Livro a ser usado como referncia

Computational Intelligence: Concepts to Implementations by Russell C. Eberhart and Yuhui Shi Na Intenet as Lectures esto disponveis no seguint endereo http://www.computelligence.org/issue/CICI/CICI.html#Download Material adicional ser fornecido de acordo com o tpico Material em portugs curso da Unicamp (Prof. F . von Zuben) http://www.dca.fee.unicamp.br/~vonzuben/courses/ia013.html
Algoritmos Genticos

Table of Contents

Chapter 1 - Background Chapter 2 - Computational Intelligence Chapter 3 - Evolutionary Computation Chapter 4 - Evolutionary Computation Implementations Chapter 5 - Artificial Neural Networks Chapter 6 - Artificial Neural Networks Implementations Chapter 7 - Fuzzy Systems Chapter 8 - Fuzzy System Implementation Chapter 9 - Computational Intelligence Implementations Chapter 10 - Performance Metrics Chapter 11 - Analysis and Explanation Chapter 12 - Case Study Summaries (click here to download) Glossary (click here to download)
Algoritmos Genticos

Avaliao Dois trabalhos computacionais a ser escolhido Seminrio sobre tpico atual (estado da arte) Um mini-projeto sobre tpico a ser definido (estudo de caso) com relatrio e apresentao oral

Algoritmos Genticos

Reviso: O problema da otimizao


Achar o ponto de mximo ou mnimo de uma funo f(x,y,z,u,...) de n variveis, x,y,z,u,...
f ( x) minimizar f(x) = - maximizar -f(x) x0
Parte do material: Estfane G. M. de Lacerda DCA/UFRN

Algoritmos Genticos

Funo unimodal x multimodal

x0 Funo unimodal

Mnimo local x0 x1

Mnimo global

Funo multimodal

Algoritmos Genticos

Exemplos de Funes Multimodais (1/3)

Algoritmos Genticos

Exemplos de Funes Multimodais (2/3)

Algoritmos Genticos

Exemplos de Funes Multimodais (3/3)

Algoritmos Genticos

Regio factvel x no factvel


O espao de busca se divide em regio factvel e no factvel. As solues da regio factvel so aquelas que satisfazem a todas as restries do problema.
Espao de busca Regio factvel

Algoritmos Genticos

Otimizao Restrita x Irrestrita


Otimizao Restrita (exemplo)
Minimizar Sujeita a

f ( x, y ) x2 + y2 = 5

Otimizao Irrestrita (exemplo)


Minimizar f ( x ) Sujeita a x

Algoritmos Genticos

Otimizao Restrita
Restrio de igualdade (exemplo)
Minimizar Sujeita a

f ( x, y ) x2 + y2 = 5

Restrio de desigualdade (exemplo)


Minimizar f ( x ) Sujeita a x 2 + 2 y 2 5

Algoritmos Genticos

Programao Linear x No-Linear


PL: a funo objetivo e as restries so funes lineares dos parmetros.
Simplex.

PNL: a funo objetivo e/ou as restries so funes no-lineares dos parmetros.


Mtodo do gradiente, mtodos quase-Newton, mtodos do gradiente conjugado.

Algoritmos Genticos

Parmetros contnuos x discretos


Parmetros contnuos:
Nmero infinito de possveis solues.

Otimizao combinatria (discreta)


Em geral, as solues so resultados de uma certa combinao de parmetros discretos. Nmero finito de possveis solues. Exemplo: deciso sobre a melhor combinao com que um conjunto de aes ou tarefas devem ser realizadas.
Algoritmos Genticos

Mtodos de Otimizao
Gerar-e-Testar Mtodos Analticos Subida/Descida da Encosta Metaheursticas
Algoritmo Genticos Recozimento Simulado Particle Swarm Optimization
Algoritmos Genticos

Gerar-e-Testar
1-Gerar uma soluo:
Aleatoriamente ou sistematicamente

2-Testar a soluo 3-Voltar ao passo 1 ou apresentar a melhor soluo encontrada. um mtodo da fora bruta. Raramente usado.
Algoritmos Genticos

Mtodos Analticos
Usam tcnicas do Clculo Diferencial para encontrar os pontos extremos de uma funo. Desvantagens
No determina se ponto mnimo local ou global. Requer funes com derivadas. Difcil de trabalhar quando h grande nmero parmetros. Impraticvel para otimizar diversos problemas do mundo real.
Algoritmos Genticos

Inteligncia Coletiva na Natureza

Bando de Pssaros

Nuvem de Insetos

Algoritmos Genticos

Particle Swarm Optimization (PSO)


Inteligncia Coletiva

populao de agentes

controle distribuido interao local comportamento emergente

Algoritmos Genticos

Histria do PSO
Desenvolvido em 1994/5 por Jim Kennedy e Russell Eberhart na Universidade de Indiana, Purdue, USA Um novo conceito inspirado em bando de pssaros ou nuvem de insetos: equilbrio em termos de individualidade e sociabilidade Ele baseado no ponto de vista da mente social, na qual indivduos querem ser individualistas, i.e. melhorar a si prprio Indivduos querem tambm aprender o sucesso de seus vizinhos (ambos localmente e globalmente), principalmente aprender suas experincias Com este conceito em mente eles desenvolveram PSO A populao chamada um swarm. Cada soluo candidato chamada partcula
Algoritmos Genticos

Ilustrao do movimento das partculas em um bando (swarm)

P1(x1,v1) Pbest1

P2(x2,v2) Pbest2

P4(x4,v4) Pbest4 Gbest P3(x3,v3) Pbest3

Algoritmos Genticos

movimento das partculas em um bando (continuao)


Pbest1 Pbest2 G best P`2(x2,v2)

P`1(x1,v1)

P`3(x3,v3) Pbest3

Pbest4 P`4(x4,v4)

Algoritmos Genticos

Clculo da velocidade e posio


Vi (t+1) = w Vi (t) +c1rand (pbest i - Xi(t)) + c2Rand (gbest - Xi(t)) C Xi(t+1) = Xi(t) + Vi(t+1) p - Nmero de partculas pbesti Melhor posio individual visitada pela partcula i at o momento; gbest - Melhor posio visitada Global de todo o grupo descoberta at ento; rand, Rand Nmeros aleatrios distribudos uniformemente entre [0,1]; c1,c2 Constantes de acelerao. A B

Algoritmos Genticos

Algoritmo-PSO(Pseudo-code)
Initializao aleatriado swarm (Posio e velocidade) Defina w, c1,c2, max num. de iteraes (gmax) Avalie posies das partculas (pbest) // (calculo da funo objetiva) begin While g<gmax for cada partcula Avalie as posies das partculas Atualize a posio da partcula (pbest) se a posio corrente melhor do que a contida na memria End Ache a partcula com a melhor posio global (gbest) for cada partcula Calcule a nova posio e velocidade End End while Algoritmos Genticos End

Vizinhana: Topologia da populao

Gbest

Lbest

(p=20)

Partculas aprendem uma com as outras. A estrutura de comunicao muito importante.


Algoritmos Genticos

Distribuio de probabilidade Unifome and Gaussiana


1 0.9 0.8 0.7 0.6

g(x) 0.5
0.4 0.3 0.2 0.1 0 0 0.5 1 1.5 2 2.5 3 3.5 4

Prob(x>1.49) = 0.067

Algoritmos Genticos

Otimizao contnua Exemplos usando PSO (1)


Funo Unimodal Funo de Rosenbrock
2 f1( x ) = 100(x1 x2 )2 + (1 x1)2

30 xi 30 , (i =1,2)

x* = (1,1)

f1( x* ) = 0

Algoritmos Genticos

Otimizao contnua Exemplos usando PSO (2)


Funo com muitos mnimos locais Funo de Rastrigin
f 4 ( x ) = xi2 10cos(2 xi ) + 10
i =1 n

5.12 xi 5.12,
f 4 ( x* ) = 0

(i =1,...,n).

x* = (0,...,0).

Algoritmos Genticos

You might also like