A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Algoritmos Genéticos Adriano Joaquim de O Cruz ©2003 NCE/UFRJ

Apresentações semelhantes


Apresentação em tema: "Algoritmos Genéticos Adriano Joaquim de O Cruz ©2003 NCE/UFRJ"— Transcrição da apresentação:

1 Algoritmos Genéticos Adriano Joaquim de O Cruz ©2003 NCE/UFRJ

2 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 2 Sumário n Introdução n Aplicações n Operadores n Exemplos

3 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 3 Algoritmos Genéticos n Nas minhas investigações debaixo do sol, vi ainda que a corrida não é para os ágeis, nem a batalha para os bravos, nem o pão para os prudentes, nem a riqueza para os inteligentes, nem o favor para os sábios: todos estão à mercê das circunstâncias e da sorte. Eclesiastes 9,12

4 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 4 O Problema? n Existem problemas para os quais algoritmos rápidos de solução não são conhecidos. n Encontrar a solução é buscar em um espaço onde vivem potenciais soluções a que melhor resolve o nosso problema. n Quando este espaço é muito grande encontrar a melhor solução pode levar tempo demais n É possível obter soluções aproximadamente ótimas usando algoritmos probabilísticos.

5 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 5 Algoritmos Genéticos n Técnica prática e robusta de busca e otimização n Baseados nos conceitos da seleção natural É um método estocástico de busca

6 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 6 Exemplos de problemas n Encontrar o máximo (mínimo) de uma função. n Encontrar um bom conjunto de regras para um sistema nebuloso. n Encontrar o melhor agente para atuar como jogador digital.

7 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 7 A Metáfora n A metáfora que está por trás dos AGs é a da seleção natural. n Na natureza, o problema de cada espécie é o de encontrar as melhores adaptações que a façam sobreviver em um ambiente complicado, muitas vezes hostil e que está sempre mudando.

8 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 8 Evolução? n Há na natureza evolução no sentido de melhoria? n Evolução pressupõe caminhar em direção a um indivíduo ideal.

9 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 9 Adaptação? n Não seria mais apropriado falar em melhor adaptação ao ambiente n Na natureza sobrevivem não os mais evoluídos e sim os mais adaptados a um determinado ambiente.

10 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 10 Adaptação n O conjunto de características de um indivíduo, que o distingue dos demais, determina sua capacidade de sobrevivência. n Estas características são determinadas pelo seu material genético.

11 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 11 Mecanismos n Na natureza a competição por recursos escassos faz com que os mais aptos sobrevivam e consigam se reproduzir. n Através da reprodução com parceiros os genes destes indivíduos são então transmitidos aos seus descendentes. n Este processo contínuo de seleção e reprodução dos mais aptos pode conduzir a indivíduos cada vez mais adaptados.

12 Termos e Definições

13 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 13 Cromossomo n Usualmente, cada possível solução é codificada como uma cadeia de bits, o cromossomo ou genótipo. n Cada parametro codificado na solução é chamado de um gene. n F(x,y,z) Gene x Gene y Gene z

14 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 14 População n AGs mantém um conjunto de indivíduos formando populações de soluções. n Indivíduos devem ser avaliados segundo uma função de aptidão. n Indivíduos mais aptos terão mais chances de propagar sua informação genética.

15 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 15 Gerações n A cada geração o AG cria uma nova população. n Esta criação de indivíduos é baseada em operadores genéticos. n A evolução de uma geração para outra é feita em três fases: avaliação da aptidão, seleção dos mais aptos e reprodução.

16 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 16 Fluxo do AG Início Gera População Inicial Avalia Seleciona Pais Geração Atual Gera Filhos Mutação Cruzamento Próxima Geração OK? Não Aleatoriamente

17 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 17 Codificação de Soluções n A codificação transforma pontos no espaço de soluções em cadeias de bits. n Codificações são maneiras de traduzir o conhecimento sobre o problema para o ambiente dos AGs. f(x,y,z)x=3y=1z=0 n Considere f(x,y,z) e que x=3, y=1, z= n O cromossomo de 12 bits com genes de 4 bits seria

18 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 18 Codificação de Soluções 1 n A codificação determina a resolução da solução. 16 n Considere uma variável codificada em 16 bits. n Considere que esta variável pode assumir valores entre 0 e 2 inclusive n A codificação divide o intervalo [0,2] em pedaços.

19 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 19 População Inicial n A população inicial é gerada aleatoriamente. n Em algumas soluções várias populações são criadas. n Estas populações podem evoluir paralelamente de forma cooperativa ou não.

20 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 20 Avaliação da Aptidão n O primeiro passo após gerar uma população de soluções e calcular a aptidão de cada solução. n Em um problema de maximização de funções esta avaliação significa calcular o valor da função para cada indivíduo.

21 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 21 Seleção n Após a avaliação deve-se gerar uma nova população a partir da atual. n A seleção escolhe que indivíduos participarão deste processo. n A probabilidade de um indivíduo ser selecionado é proporcional a sua aptidão (método da roleta).

22 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 22 Cruzamento n Cruzamento e o operador genético aplicado a pares selecionados de pais. n Deste cruzamento espera-se que as boas características de prévias gerações sejam passadas as próximas.

23 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 23 Cruzamento 1 n Cruzamentos em um ponto é o modo mais comum. n Cruzamentos ocorrem com uma probabilidade.

24 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 24 Cruzamento 2 n Considere os dois indivíduos abaixo, cada um com 8 bits (7 até 0). n Considere um ponto de corte no bit Pais x Filhos x

25 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 25 Cruzamento 3 ultrapassar seus pais n Filhos podem ultrapassar seus pais caso herdem as melhores características de cada pai. n E se os indivíduos atuais não contém os genes da solução? n Será que temos os genes para telepatia?

26 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 26 Mutação n Mutação é capaz de gerar novos cromossomos espontaneamente. n A maneira mais comum é trocar o valor de um bit com uma probabilidade, geralmente, igual a um valor baixo (taxa de mutação). n Evita que a população entre em estagnação. n Moradores de uma ilha no meio do oceano.

27 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 27 Exemplo n Considere o problema de achar o máximo da função y = sen(10*x)*sen(x) n Parâmetros: n População = 20 n Gerações = 30 n Probabilidade de cruzamento=1.0 n Probabilidade de mutação = 0.01 n Bits para codificação = 8

28 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 28 Função e o máximo

29 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 29 Evolução OK

30 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 30 Função e máximo não OK

31 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 31 Evolução

32 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 32 Aprendendo Estratégia n O dilema dos prisioneiros. n Dois prisioneiros em celas diferentes. n Impossível se comunicarem. n Cada um deles pode acusar o outro (A) ou ficar calado/cooperar (C).

33 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 33 Punições x Prêmios

34 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 34 O Dilema n Cada um dos prisioneiros deve decidir se deve cooperar com o outro prisioneiro ou trair e procurar uma pena menor.

35 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 35 Como jogar? n Jogo entre dois jogadores. n Em cada jogada os jogadores decidem o que fazer. n Pontos são atribuídos de acordo com a tabela. n Após um certo número de jogadas, o jogador com mais pontos vence.

36 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 36 Representando as estratégias n Considerar estratégias determinísticas. n Considerar os resultados das três últimas jogadas para decidir o que fazer. n Desde que há 4 possibilidades temos 4x4x4=64 histórias diferentes.

37 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 37 Representando as estratégias 1 n 64 bits indicam o que fazer para cada uma história possível (acusar ou cooperar) n Podemos usar seis bits para representar as três jogadas iniciais (imaginárias) para a primeira jogada. n Total de 70 bits.

38 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 38 Representando as estratégias 2 n Possível cromossomo: AACCA...ACC n Considerando o bit mais à direita como a estratégia 1 (=C cooperar) e o mais à esquerda como estratégia 70 (=A acusar). n A estratégia 3 tem como próxima jogada A=acusar n Esta estratégia pode estar representando a história: CC; AC; CA

39 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 39 Algoritmo n Escolha uma população inicial. Cada jogador recebe uma cadeia aleatória de bits (As e Cs), representando uma estratégia. n Teste cada jogador para testar sua eficácia. O resultado de cada jogador é a média de todos os jogos. n Selecione os jogadores que irão reproduzir

40 @2002 Adriano Cruz NCE e IM - UFRJAlgoritmos Genéticos 40 Algoritmo 1 n Um jogador mediano recebe um parceiro; um jogador acima de um desvio padrão acima da média recebe dois; um ruim nada. n Os jogadores são casados e usa-se mutação. n Assim temos uma nova geração.


Carregar ppt "Algoritmos Genéticos Adriano Joaquim de O Cruz ©2003 NCE/UFRJ"

Apresentações semelhantes


Anúncios Google