37
Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Embed Size (px)

Citation preview

Page 1: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Metaheurísticas

Prof. Aurora Pozo

Departamento de Informática

Universidade Federal do Paraná

Page 2: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Solução de Problemas por Busca

Busca em Espaço de Estados

Page 3: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Métodos de Busca

Enxergam o problema a ser resolvido como um conjunto de informações a partir das quais algo deverá ser extraído ou inferido;

O processo de solução corresponde a uma seqüência de ações que levam a um desempenho desejado ou melhoram o desempenho relativo de soluções candidatas;

Page 4: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Resolução de Problemas A maioria dos problemas interessantes do ponto

de vista da IA, não dispõe de soluções algorítmicas, ou quando tem são complexas de serem implementadas (exemplo: jogos).

As características deste tipo de problemas são: São resolvidos pôr seres humanos. A complexidade é variável ( simples como o jogo da

velha, e complexo como xadrez). São problemas de conhecimento total, tudo o que é

necessário saber para solucioná-los é conhecido. A solução é uma seqüência de situações.

Page 5: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Frente a falta de solução algorítmica viável, o único método de solução possível é a busca.

Definição busca, como uma seqüência de movimentos que levam de um estado inicial a um estado final.

A definição do problema como uma busca no espaço de estados forma a base de muitos métodos usados na solução de problemas em IA, ( isto é chamado de Resolução de Problemas através da Busca).

Resolução de Problemas

Page 6: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Exemplo: Romania

Em ferias na Romania; atualmente em Arad. Os vôos saem desde Bucharest Formular objetivo:

Estar em Bucharest Formular o problema:

estados: varias cidades ações: dirigir até Bucharest

Encontrar uma solução: Seqüências de cidades, exemplo, Arad, Sibiu,

Fagaras, Bucharest

Page 7: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Exemplo: Romania

Page 8: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Formulação de problemas de estados

O problema é definido por 4 items:

1. Estado inicial , “em Arad"2. ações ou função sucessor S(x) = conjunto de pares de ação–

estado S(Arad) = {<Arad Zerind, Zerind>, … }

3. Teste de objetvo, pode ser explicito, x = “em Bucharest" implicito, Checkmate(x)

4. Custo do caminho (aditivo) soma das distâncias, numero de ações executadas, etc. c(x,a,y) é o custo do passo, assume ≥ 0

A solução é uma seqüência de ações que levam do estado inicial ao estado objetivo

Page 9: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Busca sem Informação

Para determinar a estratégia de busca, são avaliados 4 critérios: Algoritmo Completo: a estratégia garante encontra

a solução se a mesma existe ? Algoritmo Admissível (otimização): a estratégia

encontra a solução ótima, em caso de existir várias soluções ?

Complexidade Espacial: quanta memória (número de nós gerados) é necessária para efetuar a busca ?

Complexidade Temporal: quanto tempo (número de nós gerados) é necessário para encontrar a solução ?

Page 10: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Algoritmos de Busca em Arvores

Idéia Básica: offline, exploração de um espaço de estados

gerando sucessores (expandir estados)

Page 11: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Exemplo de Busca em Arvore

Page 12: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Exemplo de Busca em Arvore

Page 13: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Exemplo de Busca em Arvore

Page 14: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Estrategias de Busca

Uma estratégia de busca define a ordem de expansão dos nodos

As estratégias são avaliadas nas seguintes dimensões: completitude: ela encontra a solução se ela existe?? Complexidade tempo: numero de nodos gerados Complexidade Espaço: numero maximo de nodos em memória Otimalidade: ela encontra a solução de menor custo??

Complexidade de Tempo são medidas em termos de b: fator de ramificação da arvore de busca d: profundidade da solução de menor custo m: profundidade máxima do espaço de estado (pode ser ∞)

Page 15: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Estratégias de Busca Cegas

Estratégias de Busca Cegas usam somente a informação disponíveis na definição do problema

Breadth-first (largura, amplitude) Uniform-cost (cuto uniforme) Depth-first search (profundidade) Depth-limited search (profundidade

limitada) Iterative deepening (profundidade iterativa)

Page 16: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Breadth-first

Expansão por níveis

Page 17: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Breadth-first

Page 18: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Breadth-first

Page 19: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Breadth-first

Page 20: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Propriedades breadth-first

Completa? Sim (se b é finito) Tempo? 1+b+b2+b3+… +bd + b(bd-1) =

O(bd+1) Espaço? O(bd+1) (mantém cada nodo em

memória) Ótimo? Sim (Se custo = 1 por operador)

Espaço é o problema maior (mais que tempo)

Page 21: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Busca de Custo Uniforme

Expande o nodo de menor custo Equivalente a breadth-first se o custo dos

operadores forem iguais Completo? Sim, se o custo do operador ≥ ε Tempo? # de nodos com g ≤ custo da

solução ótima, O(bceiling(C*/ ε)) onde C* é o custo da solução ótima

Espaço? # de nodos com g ≤ custo da solução ótima, O(bceiling(C*/ ε))

Ótima? Sim – nodos expandidos em ordem crescente de g(n)

Page 22: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Depth-first

Expande o nodo mais profundo

Page 23: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Depth-first

Page 24: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Depth-first

Page 25: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Depth-first

Page 26: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Depth-first

Page 27: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Depth-first

Page 28: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Depth-first

Page 29: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Depth-first

Page 30: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Depth-first

Page 31: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Depth-first

Page 32: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Depth-first

Page 33: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Depth-first

Page 34: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Propriedades de depth-first

Completa? Não: Em espaço infinitos falha

Tempo? O(bm): terrível se m is é maior que d Mais se existem varias soluções pode ser

mais rápida que breadth-first Espaço? O(bm), espaço linear! Ótima? Não

Page 35: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

Problema do Caixeiro Viajante

Dado um conjunto de cidades e uma matriz de distâncias entre elas

PCV consiste em encontrar uma rota para um Caixeiro Viajante tal que este:

parta de uma cidade origem passe por todas as demais cidades uma única vez retorne à cidade origem ao final do percurso percorra a menor distância possível

Rota conhecida como ciclo hamiltoniano

Page 36: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

PCV

Dados de entrada: Cidades: Conjunto de cidades dij = distância entre as cidades i e j

Variáveis de decisão: xij = 1 se a aresta (i,j) será usada; 0, caso contrário

fij = quantidade de fluxo de i para j

Função objetivo:

min ∑i∈Cidades

∑j∈Cidades

d ij xij

Page 37: Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná

PCV

Cid. 1 2 3 4 5 6

1 0 2 1 4 9 1

2 2 0 5 9 7 2

3 1 5 0 3 8 6

4 4 9 3 0 2 6

5 9 7 8 2 0 2

6 1 2 6 6 2 0