introdução à resolução de problemas por meio de busca...

34
Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !! Introdução à Resolução de Problemas por meio de Busca Inteligência Artificial Huei Diana Lee [email protected] 2006 HDL Inteligência Artificial

Upload: phamkiet

Post on 09-Feb-2019

219 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

Introdução à Resolução de Problemaspor meio de Busca

Inteligência Artificial

Huei Diana Lee

[email protected]

2006

HDL Inteligência Artificial

Page 2: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

Conteúdo

Introdução

Exemplos

Descrição formal

Os Vasilhames com Água

Estratégias de Controle

Problemas

Exercício !!

HDL Inteligência Artificial

Page 3: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

Muitos problemas podem ser vistos como“alcançar um estado final (meta) a partir de umponto inicial”:

I em muitos casos existe um espaço deestados que define o problema e suaspossíveis soluções de uma maneira formal;

I o espaço pode ser percorrido aplicandooperadores para mudar de um estado para opróximo.

HDL Inteligência Artificial

Page 4: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

Um problema em IA é definido em termos de...1. um espaço de estados possíveis, incluindo

um estado inicial e um estado final(objetivo):

I dirigir de Foz do Iguaçu a Cascavel;I jogo de 8-números.

4 5 81 6

7 32

1 2 35 6

7 84

HDL Inteligência Artificial

Page 5: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

2. um conjunto de ações (ou operadores) quepermitem passar de um estado a outro:

I dirigir de uma cidade a outra;I mover uma peça do jogo de n-números (n-puzzle).

HDL Inteligência Artificial

Page 6: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

I Indo de casa para a universidade:I estado inicial: casa;I objetivo: Unioeste;I operadores: dar um passo, virar (para quem mora bem

perto).

I Carregando um caminhão de mudança:I estado inicial: apartamento cheio de móveis e outros

objetos;I objetivo: apartamento vazio, caixas e mobília dentro do

caminhão;I operadores: selecionar item, levar até o caminhão, carregar

no caminhão.

HDL Inteligência Artificial

Page 7: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

Blocos

Problema: encontrar um plano para rearranjaros blocos.

CC

AA

BB

AA

BB

CC

??

HDL Inteligência Artificial

Page 8: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

BlocosCondições:

I Um bloco pode ser movido apenas se seutopo está vazio;

I Apenas um bloco pode ser movido de cadavez;

I Um bloco pode ser colocado sobre a mesaou sobre outro bloco;

Para encontrar um plano, devemos encontrarum seqüência de movimentos que nos levem aoobjetivo.

HDL Inteligência Artificial

Page 9: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

BlocosCondições:

I Um bloco pode ser movido apenas se seutopo está vazio;

I Apenas um bloco pode ser movido de cadavez;

I Um bloco pode ser colocado sobre a mesaou sobre outro bloco;

Para encontrar um plano, devemos encontrarum seqüência de movimentos que nos levem aoobjetivo.

HDL Inteligência Artificial

Page 10: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

Explorar entre as diversas Explorar entre as diversas possíveis alternativas.possíveis alternativas.

HDL Inteligência Artificial

Page 11: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

Blocos

Como esse exemplo ilustra, existem dois tiposde conceitos envolvidos nesse problema:

I Situações do problema;

I Movimentos ou ações permitidos, os quaistransformam as situações de problema emoutras situações.

HDL Inteligência Artificial

Page 12: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

ABC

AB C

AB C

CAB

BAC

ACB

CA B

ABC

BA C

BA C

CBA

BCA

CA B

Estado Estado inicialinicial

HDL Inteligência Artificial

Page 13: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

ABC

AB C

AB C

CAB

BAC

ACB

CA B

ABC

BA C

BA C

CBA

BCA

CA B

Estado Estado inicialinicial

Estado finalEstado final

HDL Inteligência Artificial

Page 14: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

Descrição formal de um problema

I Definir o espaço de estados;

I Especificar estado(s) inicial(ais) e final(ais);I Especificar o conjunto de operadores e a

estratégia de controle:I Que suposições não declaradas estão presentes na

descrição informal?I Qual a generalidade a ser considerada?I Quanto do trabalho exigido para resolver o problema deve

ser pré-calculado e representado nas regras?

HDL Inteligência Artificial

Page 15: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

I Espaço de estados: conjunto de todos osestados alcançáveis a partir do estado inicialpor qualquer seqüência de ações;

I Definição do objetivo:I Propriedade abstrata: condição de xeque-mate no Xadrez;I Conjunto de estados finais do mundo: estar em na

cidade-destino.

I Solução: caminho (seqüência de ações ouoperadores) que leva do estado inicial a umestado final (objetivo).

HDL Inteligência Artificial

Page 16: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

I Um grafo pode ser usado para representarum espaço de estados onde:

I Os nós correspondem a situações de um problema;I As arestas correspondem a movimentos permitidos ou

ações ou passos da solução;I Um dado problema é solucionado encontrando-se um

caminho no grafo.

I Um problema é definido por um espaço deestados (um grafo):

I Um estado (nó) inicial;I Uma condição de término ou critério de parada; estados

(nós) terminais são aqueles que satisfazem a condição detérmino.

HDL Inteligência Artificial

Page 17: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

Solucionando o ProblemaI Formulação do problema e do objetivo:

quais são os estados e as ações aconsiderar? qual é (e como representar) oobjetivo?

I Busca (solução do problema): processoque gera/analisa seqüências de ações paraalcançar um objetivo solução = caminhoentre estado inicial e estado final;

I Execução: Executar (passo a passo) asolução completa encontrada.

HDL Inteligência Artificial

Page 18: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

7Agentes Solucionadores de Problemasformulação, busca e execução

função AgenteAgente--SimplesSimples--SPSP(p) retorna uma açãoentrada: p, um dado perceptivo

estado ← AtualizaAtualiza--EstadoEstado (estado, p)se s (seqüência de ações) está vaziaentão

o (objetivo) ← FormulaFormula--ObjetivoObjetivo (estado)problema ← FormulaFormula--ProblemaProblema (estado, o)s ← BuscaBusca (problema)

ação ← PrimeiraPrimeira (s, estado)s ← RestoResto (s, estado)retorna ação

HDL Inteligência Artificial

Page 19: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

I Se não houver custos, há interesse emsoluções de caminho mínimo;

I No caso em que custos são adicionados aosmovimentos, normalmente há interesse emsoluções de custo mínimo −→ o custo deuma solução é o custo das arestas ao longodo caminho da solução.

HDL Inteligência Artificial

Page 20: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

VasilhamesProblema: Os vasilhames não possuemqualquer marcação de medida. Há uma bombaque pode ser utilizada para encher osvasilhames de água. Como colocar exatamente2 litros de água no vasilhame de 4 litros?

4L 3L 3L 3L

HDL Inteligência Artificial

Page 21: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

Vasilhames

I Espaço de estados pode ser descrito comoo conjunto de pares ordenados de inteiros(x,y), tal que

x=0,1,2,3,4 e y=0,1,2,3

onde x representa o vasilhame de 4 L e y ovasilhame de 3 L;

I Estado inicial: (0,0);

I Estado final: (2,n).

HDL Inteligência Artificial

Page 22: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

VasilhamesRegras:1. (x,y / x<4) −→ (4,y): Encher2. (x,y / y<3) −→ (x,3): Encher3. (x,y / x>0) −→ (x-d,y): Esvaziar parcialmente4. (x,y / y>0) −→ (x,y-d): Esvaziar parcialmente5. (x,y / x>0) −→ (0,y): Esvaziar6. (x,y / y>0) −→ (x,0): Esvaziar7. (x,y / x+y>=4 e y>0) −→ (4,y-(4-x)): Despejar8. (x,y / x+y>=3 e x>0) −→ (x-(3-y),3): Despejar9. (x,y / x+y>=4 e y>0) −→ (x+y,0): Despejar tudo

10. (x,y / x+y>=3 e x>0) −→ (0,x+y): Despejar tudo

HDL Inteligência Artificial

Page 23: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

Vasilhames

Para resolver o problema, deve-se:

I Escolher a regra cujo lado esquerdo sejaigual ao estado atual;

I A mudança adequada ao estado sejarealizada conforme descrito pelo lado direitocorrespondente;

I Verificar se o estado resultante correspondeao estado meta (final); cc repetir até que oestado meta seja alcançado.

HDL Inteligência Artificial

Page 24: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

VasilhamesRegras:1. (x,y / x<4) −→ (4,y): Encher2. (x,y / y<3) −→ (x,3): Encher3. (x,y / x>0) −→ (x-d,y): Esvaziar parcialmente4. (x,y / y>0) −→ (x,y-d): Esvaziar parcialmente5. (x,y / x>0) −→ (0,y): Esvaziar6. (x,y / y>0) −→ (x,0): Esvaziar7. (x,y / x+y>=4 e y>0) −→ (4,y-(4-x)): Despejar8. (x,y / x+y>=3 e x>0) −→ (x-(3-y),3): Despejar9. (x,y / x+y>=4 e y>0) −→ (x+y,0): Despejar tudo

10. (x,y / x+y>=3 e x>0) −→ (0,x+y): Despejar tudo

UMA SOLUÇÃO ??

HDL Inteligência Artificial

Page 25: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

Vasilhames

Uma possível solução:

Litros Litros Regraem V 4L em V 3L aplicada

0 0 2 (x,y / x<4) −→ (4,y): Encher0 3 9 (x,y / x+y>=4 e y>0) −→ (x+y,0): Despejar tudo3 0 2 (x,y / x<4) −→ (4,y): Encher3 3 7 (x,y / x+y>=4 e y>0) −→ (4,y-(4-x)): Despejar4 2 5 (x,y / x>0) −→ (0,y): Esvaziar0 2 9 (x,y / x+y>=4 e y>0) −→ (x+y,0): Despejar tudo2 0

HDL Inteligência Artificial

Page 26: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

Vasilhames

I Observar regras 3 e 4:

I Prática x “característica inteligente”;I Poucas regras (generalidade) x muitas regras

(especificidade);

I Como projetar um programa que convertadescrições informais de problemas emrepresentações de espaço de estados?

HDL Inteligência Artificial

Page 27: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

Estratégias de ControleI Importante pois, algumas vezes, mais de

uma regra pode ter seu lado esquerdo igualao estado atual;

I A decisão sobre que regras aplicar tem umimpacto direto sobre o tempo e possibilidadede resolução do problema;

I Exigências para uma estratégia de controle:I Causar movimento, cc é possível que uma solução nunca

seja encontrada;I ser sistemática, cc seqüências de estados inúteis podem

ser exploradas antes que uma solução seja encontrada.Exemplo: árvore contendo os estados possíveis.

HDL Inteligência Artificial

Page 28: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

Estratégias de Busca I

1. Estratégias Básicas de Busca (Uniforme,Exaustiva ou Cega): não utiliza informaçõessobre o problema para guiar a busca.Estratégia de busca exaustiva aplicada atéuma solução ser encontrada (ou falhar)

I Profundidade (Depth-first);I Profundidade limitada (Depth-first Limited);I Profundidade iterativa (Iterative Deepening);I Largura (Breadth-first);I Bidirecional.

HDL Inteligência Artificial

Page 29: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

Estratégias de Busca II

2. Estratégias Heurísticas de Busca (BuscaInformada): utiliza informações específicasdo domínio para ajudar na decisão

I Hill-Climbing;I Best-First;I A*;I IDA* (Iterative Deepening A*);I RBFS (Recursive Best-First Search);

HDL Inteligência Artificial

Page 30: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

Problemas Clássicos

1. Canibais e Missionários;2. Torre de Hanoi;3. Caminho num Grafo;4. Caminho do Cavalo no Tabuleiro de Xadrez;5. Problema das Oito Rainhas.

HDL Inteligência Artificial

Page 31: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

Mais Problemas I

1. Cálculo de rotas (pathfinding):I rotas em redes de computadores;I sistemas de planejamento de viagens;I planejamento de rotas de aviões.

2. Caixeiro viajante;

3. Jogos de computadores (rotas dospersonagens);

4. Alocação (scheduling):I Salas de aula;I Máquinas industriais (job shop).

HDL Inteligência Artificial

Page 32: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

Mais Problemas II

5. Navegação de robôs:I generalização do problema da navegação;I robôs movem-se em espaços contínuos, com um conjunto

(infinito) de possíveis ações e estados: controlar osmovimentos do robô no chão, e de seus braços e pernasrequer espaço multi-dimensional;

6. Montagem de objetos complexos por robôs:ordenar a montagem das diversas partes doobjeto.

HDL Inteligência Artificial

Page 33: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

• Representação dos Estados?

• Estado Inicial?• Estado Final?• Operadores?• Custo do caminho?

HDL Inteligência Artificial

Page 34: Introdução à Resolução de Problemas por meio de Busca ...fabro/ensino/Sistemas_Inteligentes_1/IA... · Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias

Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício !!

UCDB, D. (2005).Material Didático Prof. Marco A. Alvarez.Universidade Católica Dom Bosco.

UFRN, D. (2005).Material Didático Prof. Marcílio Souto.Universidade Federal do Rio Grande do Norte.

Unioeste, D. (2002).Material Didático Prof. Huei Diana Lee.Universidade Estadual do Oeste do Paraná.

USP, D. (2005).Material Didático Prof. José Augusto Baranauskas.Universidade de São Paulo.

HDL Inteligência Artificial