Você está na página 1de 49

Introduo aos Mtodos em

Simulao Computacional
Adriana Racco

CSC - Coordenao de Sistemas e Controle


Laboratrio Nacional de Computao Cientfica

Algoritmos genticos

uma algoritmo de busca e


otimizao, baseado no processo de
seleo
natural
e
na
hereditariedade.

Seleo natural

A presso da seleo natural elimina


da populao os indivduos menos
adaptados.

Hereditariedade
Transmisso
das
informaes
armazenadas no cdigo gentico
Reproduo sexuada - ocorrncia de
troca (recombinao) de material
gentico (crossover) durante a
reproduo
Ocorrncia de novas mutaes, que
podem ser boas ou ms.
4

Comparao com a Biologia


Indivduos provvel soluo
Populao conjunto de solues
Reproduo inserir novos elementos
Gentica recombinao e mutaes
Adaptao ou aptido proximidade da
soluo
Seleo retirada de elementos
Gerao intervalo de tempo
Etc...
5

Processo
Inicializao da populao
Aleatria (usual)
Avaliao
verifica os mais adaptados ou com
maior aptido
Seleo
escolhe os mais adaptados
Reproduo
crossover e mutaes
6

Critrios de substituio
Troca de toda a populao
A cada intervalo de tempo todos os N
indivduos morrem, no seu lugar ficam
outros N contrudos atravs da
recombinao de N/2 para escolhidos
aleatriamente.
7

Critrios de substituio
Elitismo com troca total da populao
O indivduo de maior aptido
mantido e os demais substitudos.

Critrios de substituio
Elitismo com troca parcial da populao
Steady state
Substitui X indivduos menos adaptados .

X conhecido com GAP

Critrios de substituio
Eliminar os indivduos duplicados
Faz a substituio parcial da populao
com elitismo (stead state)e depois
substitui todos os indivduos que
estiverem duplicados

10

Operadores genticos
Crossover uniforme
Genitores

110000
000100

Padro

100110

Novos

010100
100000

11

Operadores genticos
Crossover
Genitores

Novos

1100 00
0001 00

110000
000100
12

Operadores genticos
Crossover de dois pontos
Genitores

1 1 0 0 0 0
0 0 0 1 0 0

Novos

0 0 0 0 0 0
1 1 0 1 0 0
13

Operadores genticos

Mutao
Ocorre com uma probabilidade muito
pequena <1%

14

Operadores genticos
Mutao simples
Escolhe um bit aleatrio
110100
110110

15

Operadores genticos
Mutao em todos os bits
Pode afetar todos os bits independentemente
e
com
a
mesma
probabilidade.
Prob.
1 1 1 1
1

0.008

0.010
0.001
0.120
0.007
16

Operadores genticos
Permutao
Troca um par aleatrio de bits
110100
100110

17

Aptido
Pode ser calculada por uma funo ou por
uma regra arbitrria.

18

Seleo
Pode ser dada por uma regra arbitrria.
Existem inmeras tcnicas de seleo.

Exemplo da seleo pela roleta

19

Seleo pela roleta


Seleciona aleatriamente os indivduos,
dando maior chance de reproduo aos
mais aptos.
1 - Faa a soma de todas as aptides
N

At Ai
i 1

20

Seleo pela roleta

2 Gerar um nmero aleatrio r no intervalo [0, At]


3 Selecione o indivduo cuja a aptido Ai somada
com as aptides dos indivduos anteriores for maior
ou igual a r.

21

Seleo pela roleta


i

Ai

17

Ai

10 27 34

r =1

selecionar i=1

r = 31

selecionar i=4

r = 11

selecionar i=3

r = 10

selecionar i=2
22

Seleo pela roleta


A probabilidade de um indivduo ser selecionado
proporcional a sua aptido.

pi

Ai
N

A
j 1

23

Parmetros
Tamanho da populao nmero de pontos no espao de
buscas. Fixo ou controlado por alguma funo.
Taxa de crossover probabilidade de um indivduo ser
recombinado com outro.
Taxa de mutao probabilidade de altarar uma das
informaes (bit).
Nmero de geraes nmero mximo de iteraes

24

Encontrar o mximo d a funo f(x)=x2, onde x[0,63]


Aptido Ai
A = 001001

92=81

B = 000100

42=16

Seleo
pi probabilidade de um indivduo ser selecionado
pi

Ai

N=nmero total de indivduos

A
j 1

25

Encontrar o mximo d a funo f(x)=x2, onde x[0,63]


Crossover
Recombinao entre o de maior aptido e um medocre
110100
110000
000100
000000

26

Encontrar o mximo d a funo f(x)=x2, onde x[0,63]


Mutao
Probabilidade baixa de ocorrer
inverter valor de um dos bits

trocar posio de dois bits

110100

110100

110110

100111

27

Modelo Penna

1995

Modelo utilizando algoritmos genticos para


estudar o comportamento da mortalidade
com a idade de uma populao.

28

Modelo Penna
Mutaes nocivas atuam em idades especficas debilitando
o organismo do indivduo
Morte devido ao acmulo de mutaes nocivas

Destino

0 0 1 0 0 1 0 1

1 ativa uma mutao nociva

0 normal

29

Modelo Penna
0 1 0 0 0 0 0 1
0 0 1 0 0 1 0 1
1

Sexuada

0 0 1 1 0 0 0 1
0 1 0 0 0 0 0 1
1

0 1 0 0 0 1 0 1

3 4

0 0 1 0 0 0 0 1
1

0 0 1 0 0 1 0 1

Assexuada

0 0 1 0 1 1 0 1

0 1 0 0 0 1 0 1

0 1 0 0 0 1 0 1

3 4

3 4

30

Modelo Penna
Verso assexuada (partenognese) & verso sexuada

Tira 1

0 1 0 0 0 1 0 1

Tira 2

0 0 1 0 0 1 0 1

Mestra

Destino

0 1 0 1 0 0 0

0 0 1 0 0 1 0 1
1

Dominncia
1 ativa uma mutao nociva
0 normal

31

Modelo Penna
Verso tradicional
Destino

0 0 1 0 0 1 0 1
1

1 ativa uma mutao nociva


0 normal

Limite de mutaes
Idade de maturao
Fecundidade
Taxa de mutao

Fator de Verhulst:

N (t )
N max

32

Modelo Penna
Destino

0 0 1 0 0 1 0 1

1 ativa uma mutao nociva

0 normal

Adaptao nmero de mutaes ativas


Seleo feita atravs da longevidade mxima de cada
indivduo e morte aleatria por Verhulst, que
controla o tamanho mximo da populao.
Reproduo todos os indivduos que alcanarem a
idade mnima.
Crossover e mutao
33

Teoria do acmulo de mutaes


A presso da seleo natural diminui com o aumento
da idade, facilitando o acmulo de mutaes nocivas
nas idades mais avanadas.

Resposta do modelo

34

Reproduo dos afdeos


Modelar e simular a dinmica populacional dos
afdeos e a sua plasticidade morfolgica.
Verificar a importncia do clima no
comportamento reprodutivo, obtendo o tipo de
reproduo timo para cada regio.

35

Biologia

Cerca de 4400 espcies

Prejuzo nas lavouras

Alta resistncia aos inseticidas

Formas aladas e pteras

Reproduo sexuada ou assexuada

Baixa resistncia ao frio

36

Modelagem
Algoritmos Genticos
Tira com o regime reprodutivo

Spring

Summer

Autumn

Winter

Spring

Summer

Autumn

Winter

Dinmica do modelo Penna


-reproduo sexuada
-reproduo assexuada

1 sexuada
0 assexuada

37

Rigorosidade do inverno
Em todos os intervalos de tempo os indivduos tm
uma probabilidade de morrer devido a restries do
ambiente.
Durante o inverno esta probabilidade aumenta por
causa do frio, reduzindo a capacidade do ambiente
(Nmax).
Fator de Verhulst: C N (t )
N max
38

Seleo durante o inverno


Privilegia os que foram gerados por reproduo sexuada de
acordo com a rigorosidade do inverno, pois os ovos ficam
protegidos.

Seleo reprodutiva
A reproduo assexuada gera um nmero maior de
descendentes.

39

Resultados

Populao Total

80000

60000

40000

20000

0
59600

59650

59700

59750

Tempo

No grfico da populao total com o tempo, para C=10


podemos observar que a populao cresce
exponencialmente at o incio do inverno, onde ocorre
uma queda brusca, devido mortalidade por causa das
baixas temperaturas, reproduzindo o efeito de
batimento no tamanho da populao.

Populao em cada estao do ano.


C=10 inverno mais ameno
C=100 inverno rigoroso

40

Regime Reprodutivo

C =10 inolocclico
C =100 holocclico

Histograma da razo entre as fmeas com


reproduo sexuada e assexuada, para cada
estao do ano.

41

Inolocclico

Holocclico

Spring

Spring

Summer

Summer
Summer

Autumn

Autumn

Winter

Winter

42

Transio de Fases

Razo entre as fmeas com reproduo sexuada e


assexuada durante o outono pela populao no
inverno. Variando a capacidade do ambiente de C=10
at C=100, observamos uma transio de fase no
ponto populao no inverno igual a 0,0049

Populao sobrevivente no inverno, expressa pela


capacidade do ambiente reduzida pelo fator de
compresso em funo do fator de compresso C,
prxima regio de transio 0,0049. As bolas
pretas so os resultados das simulaes, sendo que a
mdia est representada por um losango

43

A mortalidade no inverno determina o regime reprodutivo da


populao, mesmo em locais frios, os afdeos que vivem em
ninhos de formigas abandonam a reproduo sexuada.
O mesmo modelo poderia ter sido utilizado com outra dinmica,
sem ser a do modelo Penna, os resultados seriam semelhantes,
modificando apenas o ponto de transio, pois deixaria de
considerar os efeitos de recombinao gentica relacionados
com a longevidade.

44

Problema do caixeiro viajante


Um caixeiro precisa visitar
percorrendo o menor trajeto.

cidades

Cada individuo ir armazenar uma sequncia


referente a ordem das cidades a serem visitadas.
A funo de aptido ser uma funo do percurso
total para o trajeto.
As estratgias de seleo e reproduo fica a seu
critrio.
Detalhe para a reproduo e mutao.
45

Problema do caixeiro viajante


Ao modificar o trajeto de cada indivduo, deve-se
sempre verificar se todas as cidades esto
presentes.
A= 9 8 4 / 5 6 7 / 1 3 2 0
B=871/230/9546

A= 9 8 4 / 2 3 0 /
B=871/567/

46

Problema do caixeiro viajante


A= 9 8 4 / 5 6 7 / 1 3 2 0
B=871/230/9546
Trocou 5 2, 6 3 e 7 0.
A= 9 8 4 / 2 3 0 / 1 6 5 7
B=801/567/9243

Operador PMX

47

Algoritmos genticos
um algoritmo de busca e otimizao.

Avaliao
Seleo
Reproduo

(modificaes)

48

Adriana - racco@lncc.br

49

Você também pode gostar