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

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

Busca meta-heurística 0 1 1 0 1 1 0 0 1 0 0 1 0 1 1 0 1 1 1 1 1 0 1 0 0 1 0 0 Inteligência Artificial Docente: André C. P. L. F. de Carvalho PAE: Everlândio.

Apresentações semelhantes


Apresentação em tema: "Busca meta-heurística 0 1 1 0 1 1 0 0 1 0 0 1 0 1 1 0 1 1 1 1 1 0 1 0 0 1 0 0 Inteligência Artificial Docente: André C. P. L. F. de Carvalho PAE: Everlândio."— Transcrição da apresentação:

1 Busca meta-heurística 0 1 1 0 1 1 0 0 1 0 0 1 0 1 1 0 1 1 1 1 1 0 1 0 0 1 0 0 Inteligência Artificial Docente: André C. P. L. F. de Carvalho PAE: Everlândio Fernandes Monitor: Anderson Silva

2 André Ponce de Leon de Carvalho2 Principais tópicos Introdução Computação bioinspirada Computação evolutiva Inteligência coletiva Computação baseada em moléculas Conclusão

3 André Ponce de Leon de Carvalho3 Busca bioinspirada Computação Evolutiva Redes Neurais Artificiais Inteligência de Coletiva Computação Baseada em Moléculas Sistemas Imunes Artificiais Robótica

4 André Ponce de Leon de Carvalho4 Computação Evolutiva Técnicas computacionais para resolução de problemas baseados em: Genética Teoria da evolução natural Pesquisas começaram na década de 50 Independentemente a partir de cerca de 10 grupos em um período de 15 anos

5 André Ponce de Leon de Carvalho5 Algoritmos Evolutivos EstratégiasAlgoritmosProgramação de EvoluçãoGenéticosEvolutiva Programação Sistemas de Genética Classificação PE é parecida com PG, mas a estrutura do programa é fixa e seus parâmetros podem ser evoluídos

6 André Ponce de Leon de Carvalho6 Algoritmos Genéticos Utilizados em problemas de busca e otimização Utilizam uma população de soluções candidatas (indivíduos, cromossomos) Cada indivíduos codifica uma possível solução “Evoluem” soluções para problemas do mundo real

7 André Ponce de Leon de Carvalho7 Processo Evolutivo www.cs.bham.ac.uk/~axk

8 André Ponce de Leon de Carvalho8 Processo Evolutivo Geração 1Geração 10 Geração 20 www.cs.bham.ac.uk/~axk Melhores soluções

9 André Ponce de Leon de Carvalho9 Algoritmos Genéticos Otimização ocorre em várias gerações A cada geração Mecanismos de seleção selecionam os indivíduos mais aptos Deve haver uma forma de avaliar indivíduos Operadores de reprodução geram novos indivíduos Quanto mais apto, maior a chance de gerar descendentes

10 André Ponce de Leon de Carvalho10 Algoritmos Genéticos População atual Reprodução Avaliação Seleção População inicialPopulação final

11 André Ponce de Leon de Carvalho11 Pseudocódigo 1. Escolher população inicial de indivíduos 2. Avaliar cada indivíduo da população 3. Enquanto critério de parada não for atingido 3.1 Selecionar indivíduos mais aptos 3.2 Criar novos indivíduos aplicando operadores genéticos 3.3 Avaliar cada indivíduo da população

12 André Ponce de Leon de Carvalho12 Codificação Cada indivíduo é codificado por um conjunto de parâmetros (genes) Genes podem assumir valores: Binários Inteiros Reais Parâmetros são combinados para formar strings ou vetores (cromossomos)

13 André Ponce de Leon de Carvalho13 Codificação Genótipo Conjunto de parâmetros representado por um cromossomo Contém informação necessária para construir um organismo (fenótipo) Fenótipo codificado Fenótipo Produto da iteração de todos os genes Aptidão de um indivíduo depende do desempenho de seu fenótipo (inferido do genótipo usando função de aptidão)

14 André Ponce de Leon de Carvalho14 Função de aptidão Mede o grau de aptidão de um indivíduo Retorna um valor (índice) de aptidão numérico Proporcional a utilidade ou qualidade da solução Cada aplicação tem sua própria função de aptidão É aplicada ao fenótipo do indivíduo Genótipo precisa ser decodificado, recuperando o fenótipo associado

15 André Ponce de Leon de Carvalho15 Seleção Escolhe preferencialmente indivíduos com maiores notas de aptidão Embora não exclusivamente Procura de manter a diversidade da população Indivíduos mais aptos têm mais oportunidades de gerar descendentes Que serão cada vez mais aptos

16 André Ponce de Leon de Carvalho16 Seleção Seleciona uma população intermediária Onde serão aplicados os operadores de reprodução Existem vários método de seleção Por roleta Por torneio Amostragem Universal Estocástica

17 André Ponce de Leon de Carvalho17 Seleção pela roleta Indivíduo Aptidão Aptidão (S i ) f(S i )Relativa S 1 101102.230.14 S 2 110007.270.47 S 3 111101.050.07 S 3 010013.350.21 S 5 001101.690.11 S1S1 S2S2 S3S3 S4S4 S5S5 Método da Roleta baseado em Aptidão Relativa

18 André Ponce de Leon de Carvalho18 Seleção por torneio Escolhe n indivíduos da população aleatoriamente, com a mesma probabilidade Geralmente n = 3 Cromossomo com maior aptidão dentre estes n cromossomos é selecionado para a população intermediária Processo se repete até que a população intermediária seja preenchida

19 André Ponce de Leon de Carvalho19 Seleção por torneio Método da Torneio baseado em Aptidão Relativa Indivíduo S i S 3 11110 S 4 01001 S 5 00110 S 1 10110 S 2 11000 Aptidão f(S i ) 1.05 3.35 1.69 2.23 7.27 Aptidão Relativa 0.14 0.47 0.07 0.21 0.11 Supondo n = 3 S 1, S 2, S 5  S 2 S 2, S 4, S 5  S 2 S 5, S 1, S 3  S 1 S 4, S 5, S 3  S 4 S 3, S 1, S 5  S 1 Candidatos  vencedor

20 André Ponce de Leon de Carvalho20 Seleção por torneio Possui parâmetro que permite definir pressão seletiva durante a evolução Tamanho do torneio Quanto maior o número de indivíduos que participam do torneio, maior a pressão seletiva Indivíduo tem que ser melhor que mais competidores Pressão muito baixa: taxa de convergência lenta Pressão muito elevada: convergência prematura

21 André Ponce de Leon de Carvalho21 Operadores genéticos Permitem obtenção de novos indivíduos A cada geração, geralmente mais aptos Principais operadores genéticos Crossover (cruzamento ou recombinação) Mutação Elitismo

22 André Ponce de Leon de Carvalho22 Crossover É o operador genético predominante A taxa de crossover deve ser maior que a taxa de mutação Taxa de crossover: 0.6 < P c < 1.0 Caso crossover não seja aplicado, descendentes são iguais aos pais É a operação mais importante para exploração rápida do espaço de busca

23 André Ponce de Leon de Carvalho23 Crossover Diversas variações Um ponto Mais comum Dois pontos Multi-pontos Uniforme

24 André Ponce de Leon de Carvalho24 Crossover 1 ponto 10000110100011 10000110100011 Pai 1Pai 2 Filho AFilho B Ponto de crossover

25 André Ponce de Leon de Carvalho25 Crossover de 2 pontos 10000110100011 10000100101011 Pai 1Pai 2 Filho AFilho B

26 André Ponce de Leon de Carvalho26 Crossover uniforme 10000110100011 10100110000011 Pai 1Pai 2 Filho AFilho B Mascara: 0 1 0 1 0 0 0

27 André Ponce de Leon de Carvalho27 Mutação Permite introdução e manutenção da diversidade genética Aplicado a cada indivíduo após crossover Probabilidade de atingir qualquer ponto do espaço de busca nunca será zero Reduz chance de parada em Mínimos Locais Taxa de mutação pequena P m  0.001

28 André Ponce de Leon de Carvalho28 Mutação 1000011 1011001 Antes da mutação Após a mutação

29 André Ponce de Leon de Carvalho29 Elitismo Indivíduo de maior desempenho é automaticamente selecionado Evita modificações deste indivíduo pelos operadores genéticos Utilizado para que os melhores indivíduos não desapareçam da população

30 André Ponce de Leon de Carvalho30 Critérios de parada Atingiu um dado número de gerações ou avaliações Encontrou a solução (quando esta é conhecida) Convergência Não ocorre melhora significativa na solução durante um dado número de gerações Média das últimas gerações

31 André Ponce de Leon de Carvalho31 Exemplo Problema: encontrar valor de x (inteiro) que minimiza f(x) = x 2, x  [-7, +7] Representação  cada inteiro como um cromossomo de 4 bits Exemplos: 3 = (0,0,1,1), -4 = (1,1,0,0) População inicial  gerada aleatoriamente População de tamanho 4 Função de aptidão  f(x)

32 Exemplo População inicial gerada: Escolher 2 indivíduos com maior aptidão pela roleta (pais) Gerar 2 filhos, que substituirão os pais André Ponce de Leon de Carvalho32 xf(x) A 1  1 1 0 1 -5 25 A 2  1 1 1 1 -7 49 A 3  0 0 1 0 2 4 A 4  0 0 1 1 3 9 Pai 1 Pai 2

33 André Ponce de Leon de Carvalho33 Exemplo xf(x) Pai 1 = A 1  1 1 0 1 -525 Pai 2 = A 3  0 0 1 0 2 4 Filho 1  1 1 1 0 mutação 1  1 1 0 0 -416 Filho 2  0 0 0 1 1 1 xf(x) A 1  1 1 0 0-416 A 2  1 1 1 1-749 A 3  0 0 0 1 1 1 A 4  0 0 1 1 3 9

34 André Ponce de Leon de Carvalho34 Exercício Encontrar de x para o qual a função f(x) = x 2 - 4x + 4 assume o valor mínimo Assumir que x  [-15, +15] Codificar X como vetor binário Usar 5 bits, primeiro bit é o sinal (1-positivo, 0- negativo) Criar uma população inicial com 4 indivíduos Utilizando crossover de um ponto e mutação em apenas um gene da população Definir o valor mínimo após no máximo 10 gerações

35 André Ponce de Leon de Carvalho35 Inteligência Coletiva Inteligência de Enxames Swarm Intelligence Estuda o comportamento coletivo e descentralizado de sistemas Compostos por uma população de agentes simples Interagem localmente um com o outro e com seu ambiente

36 André Ponce de Leon de Carvalho36 Inteligência Coletiva Exemplos destes sistemas podem ser encontrados na natureza Bandos de pássaros (PSO) Colônias de formigas (ACO) Rebanhos de animais Enxames de abelhas Cardumes de peixes Colônias de bactérias

37 PSO Particle Swarm Optimization Inspiração: Comportamento de várias espécies de pássaros e de peixes Baseado na procura de abrigo (alimento) por bandos de pássaros Pássaros seguem aquele mais próximo do abrigo Busca por abrigo pode ser visto como encontrar a melhor solução para um problema André Ponce de Leon de Carvalho37

38 André Ponce de Leon de Carvalho38 Bando de Pássaros

39 André Ponce de Leon de Carvalho39 Algoritmo PSO Inicializar partículas Repetir Para cada partícula Calcular sua aptidão Escolher partícula com maior aptidão Para cada partícula Atualizar sua velocidade Atualizar sua posição Até critério de parada ser atingido

40 ACO Ant Colony Optimization Inspiração: Forma como colônias de formigas lidam com tarefas complexas Baseados no comportamento observado em formigas reais Colônias de formigas podem lidar com tarefas que não podem ser resolvidas individualmente André Ponce de Leon de Carvalho40

41 André Ponce de Leon de Carvalho41 Busca pelo Menor Caminho Formiga 2 Formiga 1 Ponto de escolha 1 Ponto de escolha 2 Instante de tempo i Ponte B Ponte A

42 André Ponce de Leon de Carvalho42 Busca pelo Menor Caminho Formiga 2 Formiga 1 Ponto de escolha 1 Ponto de escolha 2 Instante de tempo i + k

43 André Ponce de Leon de Carvalho43 Algoritmo ACO Iniciar valores para os parâmetros Inicializar quantidade de feromônio nos caminhos Enquanto critério de parada não for atingido Caminhar até destino alvo Atualizar quantidades de feromônio no caminho percorrido

44 André Ponce de Leon de Carvalho44 Computação baseada em moléculas Computação biomolecular Inspiração Estruturas moleculares e manipulações das estruturas por processos bioquímicos Moléculas mais utilizadas Sequências de DNA Mais conhecida Proteínas

45 André Ponce de Leon de Carvalho45 Computação baseada em DNA Estrutura de dados: Arranjo de moléculas em uma cadeia de DNA Operações sobre estas moléculas: Movimentação Cópia Corte Modificação Operações implementadas por meio de reações bioquímicas realizadas com o uso de enzimas

46 André Ponce de Leon de Carvalho46 Computação baseada em DNA Características Codifica informação em fitas de DNA Realiza computação sobre várias fitas em paralelo Realiza operações lógicas utilizando manipulações bioquímicas Primeiro experimento foi realizado por L. Adleman Problema do caminho Hamiltoniano

47 André Ponce de Leon de Carvalho47 Problema do Caminho Hamiltoniano Dado um grafo direcionado, com um nó inicial e um nó final Existe um caminho do nó inicial ao nó final, visitando cada nó uma única vez Proposto no século 19 pelo astrônomo irlandês William Hamilton Decidir se existe um caminho Hamiltoniano em um grafo é um problema NP-completo Instância do TSP

48 André Ponce de Leon de Carvalho48 Problema do Caminho Hamiltoniano Problema investigado por Adleman Dados Um conjunto de 7 cidades com 14 voos diretos entre algumas delas Uma cidade inicial (origem) e uma cidade final (destino) Escolher sequência de voos diretos que passa em cada cidade uma única vez

49 André Ponce de Leon de Carvalho49 Exemplo Belo Horizonte Curitiba Rio de Janeiro São Paulo Destino Origem Existe um caminho Hamiltoniano

50 André Ponce de Leon de Carvalho50 Exemplo Belo Horizonte Curitiba Rio de Janeiro São Paulo Origem Destino Não existe um caminho Hamiltoniano

51 André Ponce de Leon de Carvalho51 Problema do Caminho Hamiltoniano Não existe um algoritmo eficiente para resolver este problema Melhores algoritmos podem levar centenas de anos para resolver grafos com 100 nós Modelo baseado em DNA foi implementado com um algoritmo simples Algoritmo Geração e Teste

52 André Ponce de Leon de Carvalho52 Algoritmo Geração e Teste 1.Gerar caminhos aleatórios no grafo 2.Manter apenas aqueles caminhos que começam na cidade origem e terminam na cidade destino 3.Manter apenas os caminhos de tamanho N (#cidades) 4.Manter apenas aqueles caminhos que percorrem todas as N cidades 5. Caminhos que restam são caminhos Hamiltonianos

53 André Ponce de Leon de Carvalho53 Conclusão Biologia inspira métodos de busca Computação bioinspirada Computação evolutiva Inteligência coletiva Computação baseada em moléculas Conclusão

54 André Ponce de Leon de Carvalho54 Perguntas

55 Prática TSP Escrever programa para problema anterior que encontra caminho com menor custo para 17 cidades Utilizar Algoritmos Genéticos Qualquer linguagem de programação André Ponce de Leon de Carvalho55


Carregar ppt "Busca meta-heurística 0 1 1 0 1 1 0 0 1 0 0 1 0 1 1 0 1 1 1 1 1 0 1 0 0 1 0 0 Inteligência Artificial Docente: André C. P. L. F. de Carvalho PAE: Everlândio."

Apresentações semelhantes


Anúncios Google