Está en la página 1de 20

ALGORITMOS

GENÉTICOS
Alexandre Eich, Arthur Figueiredo, Jéssica Richter,
CONCEITO

• “Um algoritmo genético (AG) é uma variante da


busca em feixe estocástica na qual os estados
sucessores são gerados pela combinação de dois
estados pais”
COMPOSIÇÃO
• População: é um conjunto de k estados gerados;

• Indivíduo: é cada estado, geralmente representados por


uma cadeia de valores 0 e 1. ;
EXEMPLO DAS OITO RAINHAS
• Como forma de entender melhor, teremos o exemplo das 8 rainhas, onde
cada uma assume uma posição em uma coluna.

• Na figura temos a população gerada de:


• [1,6,2,5,7,4,8,3]
• Sendo que cada posição equivale a 1 estado...
POPULAÇÃO INICIAL
• A população inicial é composta por valores aleatórios, para cada
coluna do tabuleiro.
• Neste exemplo temos as seguintes populações iniciais:
• [2,4,7,4,8,5,5,2]
• [3,2,7,5,2,4,1,1]
• [2,4,4,1,5,1,2,4]
• [3,2,5,4,3,2,1,3]
• Note que nos exemplos dados, não há uma preocupação com
rainhas na mesma linha...
FUNÇÃO DE ADAPTAÇÃO

• A função de adaptação é responsável por retornar valores mais altos


para estados melhores. Neste exemplo das oito rainhas, a métrica são os
pares de rainhas que não se atacam.

• Cada população tem sua “pontuação”, e de


acordo com ela, é definida uma probabilidade
dela ser escolhida para o processo de Seleção.

Nota: O objetivo é atingido ao se alcançar o valor 28.


SELEÇÃO
• Na seleção, dois pares escolhidos aleatoriamente são selecionados
para reprodução, de acordo com as probabilidades mostradas na
função de adaptação.
CRUZAMENTO(CROSSOVER)
• No cruzamento, para cada par a ser cruzado, é escolhido ao acaso um
ponto de cruzamento dentre as posições na cadeia.

• Note que no exemplo dado acontece a criação


de duas novas mutações baseadas nas populações
pais, mas em alguns algoritmos é gerada somente
uma população filha.
EXEMPLO PRÁTICO DO
CROSSOVER
MUTAÇÃO
• Nesta ultima etapa, cada posição está sujeita à mutação aleatória
com uma pequena probabilidade independente.

• Nem sempre uma população sofrerá mutação,


assim como pode ser visto no segundo exemplo.
PROCESSO GERAL
ESQUEMAS
• “Se as posições do código genético forem permutadas
inicialmente em ordem aleatória, o cruzamento não trará nenhuma
vantagem.”
• A vantagem vem da habilidade do cruzamento de combinar
grandes blocos de genes que evoluem de forma independente
para executar funções úteis, como no caso de inserir as três
primeiras rainhas nas posições 2, 4 e 6 (em que elas não atacam as
outras) constitui um bloco útil que pode ser combinado com outros
blocos para elaborar uma solução.
• Esquemas como 246*****, são válidos para criação de novos blocos
úteis. Exemplo: 24613578 (também chamado de instância do
esquema)
AGENTES DE BUSCA ONLINE
• Os agentes de busca online primeiro executam uma ação, depois
observam o ambiente em que estão e calculam a próxima ação.

J
AGENTES DE BUSCA ONLINE
• Depois de cada ação, um agente online recebe uma percepção
informando-o de qual estado ele alcançou. O mapa atual é usado
para decidir aonde ir em seguida.

• É útil em domínios não determinísticos, dinâmicos ou semi-


dinâmicos.

J
AGENTES DE BUSCA ONLINE
• São exemplos:
• robô em um prédio, onde tem que descobrir o caminho para ir
de A até B.
• métodos para escapar de labirintos.
• descoberta de um bebê de como o mundo funciona.

J
AGENTES DE BUSCA ONLINE
• É necessária para ambientes desconhecidos, onde é feita a
exploração do ambiente. Com a exploração ele aprende sobre
esses ambientes e pode fazer deliberações:

J
BUSCA LOCAL ONLINE
• Percurso aleatório
ATRA*
• Possui aprendizado em tempo real
• Possui memória em vez de realizar uma ação aleatória
• O agente avança para o nó mais promissor e atualiza o nó anterior
APRENDIZADO EM BUSCA ONLINE
• Os agentes de busca online aprendem com um mapa do
ambiente, onde o mesmo registra cada uma de suas experiências.
• Os agentes de busca local adquirem estimativas mais precisas do
valor de cada estado usando regras de atualização local, como
mostrado anteriormente no ATRA*.

También podría gustarte