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

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

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

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