You are on page 1of 25

INTELIGNCIA ARTIFICIAL

ALGORITMOS GENTICOS Aula 05

Rui Carlos Botelho Almeida da Silva

Inteligncia Artificial

Contexto da aula

Objetivos: apresentar conceitos e tipos .

Inteligncia Artificial

Roteiro da aula

Histrico Conceitos Tipos

Inteligncia Artificial

Consideraes Iniciais

Teoria da evoluo das espcies

Evoluo de gerao a gerao de acordo com princpios de seleo natural e sobrevivncia dos mais fortes (Darwin -1859).

A combinao de boas caractersticas de ancestrais pode produzir superindivduos mais adaptados que seus ancestrais.
Logo, as espcies evoluem e logram caractersticas mais adaptadas ao ambiente que vivem.

1865 - Gregor Mendel (Pai da gentica) apresenta experimentos do cruzamento gentico de ervilhas.

Inteligncia Artificial

Consideraes Iniciais (continuao)

A Teoria da Evoluo comeou a partir da conceituao integrada da seleo natural com a Gentica. Os Algoritmos Genticos (AGs) usam uma analogia direta ao comportamento natural. Desenvolvido por John Holland (Universidade de Michigan). (1975) e seus alunos

Popularizado por David Goldberg (1989).

Inteligncia Artificial

Conceitos

Para que servem? Busca e Otimizao

Amplamente utilizados, com sucesso, em problemas de difcil manipulao pelas tcnicas tradicionais Eficincia X Flexibilidade

Vantagens Possibilidade de escapar de mximos (ou mnimos) locais; Maior robustez que os mtodos mais tradicionais.

Inteligncia Artificial

Conceitos (continuao)

Aplicaes Otimizao de funes numricas. Otimizao de exploses combinatrias. TSP(Problema do Caixeiro Viajante (determinstico e no determinstico) Mochila Schedulling Aprendizado de Mquina

Inteligncia Artificial

Conceitos (continuao)

AG manipula uma populao de indivduos. Individuos so possveis solues do problema. Os indivduos so combinados (crossover) uns com os outros, produzindo filhos que podem sofrer ou no mutao. As populaes evoluem atravs de sucessivas geraes at encontrar a soluo tima. Uma funo de aptido(fitness) testa os indivduos como a natureza testa a todos nesta vida Utilizam uma codificao do conjunto de parmetros (indivduos) e no com os prprios parmetros (estados);
Inteligncia Artificial

Conceitos (continuao)

Vasculham vrias regies do espao de busca de cada vez; Utilizam informaes diretas de qualidade, em contraste com as derivadas utilizadas nos mtodos tradicionais de otimizao; Utilizam regras de transio probabilsticas e no regras determinsticas. Algoritmos Genticos podem ser considerados como mtodos que trabalham com Buscas Paralelas Randmicas Direcionadas

Inteligncia Artificial

Funcionamento

AG manipula uma populao de indivduos. Individuos so possveis solues do problema. Os indivduos so combinados (crossover) uns com os outros, produzindo filhos que podem sofrer ou no mutao. As populaes evoluem atravs de sucessivas geraes at encontrar a soluo tima. Uma funo de aptido (fitness) testa os indivduos como a natureza testa a todos nesta vida.

10

Inteligncia Artificial

Funcionamento (continuao)

1. Gerar a populao inicial. 2. Avaliar cada indivduo da populao. 3. Enquanto critrio de parada no for satisfeito faa 3.1 Selecionar os indivduos mais aptos. 3.2 Criar novos indivduos aplicando os operadores crossover e mutao. 3.3 Armazenar os novos indivduos em uma nova populao. 3.4 Avaliar cada cromossomo da nova populao.

11

Inteligncia Artificial

Funcionamento (continuao)

Cromossomos Na Natureza

Todo organismo vivo consiste de clulas. Em cada clula, existe o mesmo conjunto de cromossomos Cromossomos consistem de genes seqncias de DNA que servem para determinar as caractersticas de um indivduo

Algoritmo Gentico

Estrutura de dados que representa uma possvel soluo para o problema. Os parmetros do problema de otimizao so mapeados em uma estrura de dados adequada, cada qual com suas vantagens e seus problemas.
Inteligncia Artificial

12

Funcionamento (continuao)

Exemplos:

Vetores de inteiros, reais, (2.345, 4.3454, 5.1, 3.4)


Cadeias de bits, (111011011) string. rvore (Programao gentica cdigo Lisp) Mquinas de estado finito.

13

Inteligncia Artificial

Funcionamento (continuao)

Reproduo

Na Natureza Durante o processo de reproduo ocorre-se a recombinao (ou crossover (cruzamento)). Genes dos pais se combinam para formar novos cromossomos. Os descendentes criados podem sofrer mutaes, ou seja, os elementos do DNA podem ser trocados A adaptao de um organismo pode ser medida pelo sucesso do mesmo em sua vida

14

Inteligncia Artificial

Funcionamento (continuao)

Reproduo

Algoritmos Genticos Possibilita encontros ntimos na mating pool Imitao da seleo natural. Os melhores indivduos (maior aptido) so selecionados para gerar filhos atravs de crossover e mutao. Dirige o AG para as melhores regies do espao de busca. Tipos mais comuns de seleo Proporcional a aptido. Torneio: escolhe-se 2 indivduos aleatoriamente, o melhor selecionado.
Inteligncia Artificial

15

Funcionamento (continuao)

Funo de aptido

Aptido

Nota associada ao indviduo que avalia quo boa a soluo por ele representada. A Funo de aptido pode ser facilmente encontrada em alguns casos, mas pode ser de difcil definio quando existem fatores de restries e penalidades internos, ou uma combinao de diferentes objetivos na mesma funo.

16

Inteligncia Artificial

Funcionamento (continuao)

Operadores de Crossover e de Mutao

Combinam pais selecionados para produo de filhos.


Principais mecanismos de busca do AG. Permite explorar reas desconhecidas do espao de busca.

17

Inteligncia Artificial

Funcionamento (continuao)

Crossover

Tambm chamado de reproduo ou crossover


Combina as informaes genticas de dois indivduos (pais) para gerar novos indivduos (filhos) Verses mais comuns criam sempre dois filhos para cada operao Operador gentico principal Responsvel por gerar novos indivduos diferentes (sejam melhores ou piores) a partir de indivduos j promissores Aplicado a cada par de indivduos com alta probabilidade (normalmente entre 0,6 e 0,99)
Inteligncia Artificial

18

Funcionamento (continuao)

Alguns Tipos de Crossover

1 ponto
Multipontos Uniforme

19

Inteligncia Artificial

Funcionamento (continuao)

Crossover de 1 ponto

20

Inteligncia Artificial

Funcionamento (continuao)

Crossover Multiponto

21

Inteligncia Artificial

Funcionamento (continuao)

Crossover Uniforme

22

Inteligncia Artificial

Funcionamento (continuao)

Mutao

Operador randmico de manipulao


Introduz e mantm a variedade gentica da populao Garante a possibilidade de se alcanar qualquer ponto do espao de busca Contorna mnimos locais um operador gentico secundrio Uso exagerado reduz a evoluo a uma busca totalmente aleatria Logo um indivduo sofre mutaes com probabilidade baixa (normalmente entre 0,001 e 0,1)
Inteligncia Artificial

23

Funcionamento (continuao)

Parmetros Genticos

Tamanho da populao
Taxa de cruzamento Taxa de mutao Intervalo de gerao Critrio de parada

Nmero de geraes. Encontrou a soluo (quando esta conhecida). Perda de diversidade. Convergncia ( nas ltimas k geraes no houve melhora da na aptido) => Mdia ou Mxima
Inteligncia Artificial

24

Exerccio

Cdigo em Java

Duas equipes

1 Vai implementar o mesmo cdigo alterando o tipo de crossover de 1 para multiponto (pelo menos 2) 2 Vai implementar o mesmo cdigo alterando a funo de seleo

1)

1 semana

25

Inteligncia Artificial

You might also like