introdução à resolução de problemas por meio de busca...
TRANSCRIPT
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
2006
HDL Inteligência Artificial
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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