processo de planejamento andrew diniz da costa. © les/puc-rio agenda processo de planejamento...

24
Processo de Planejamento Andrew Diniz da Costa

Upload: internet

Post on 17-Apr-2015

103 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

Processo de Planejamento

Andrew Diniz da Costa

Page 2: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

© LES/PUC-Rio

Agenda

• Processo de planejamento

• Exemplo “The Blocks World”

• Reconhecimento de planos

• Considerações finais

Page 3: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

© LES/PUC-Rio

Processo de planejamento

• O processo de planejamento refere-se quando um certo problema é solucionado a partir de um conjunto de sub-partes (passos).

• A detecção dos passos é realizada durante o processo de “resolução do problema”.

• Primeiro a verificação para depois a execução.

Page 4: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

© LES/PUC-Rio

Processo de planejamento

• No entanto, nem sempre é possível prever corretamente o plano (predicado) adequado para solucionar um certo problema.

• Dividir um problema em subproblemas permite definir de forma mais clara onde o plano falhou de forma especifica.

• Associar o passo com a razão da sua execução

• Através da técnica de dependência de planos com bactracking é possível determinar qual o conjunto de passos que devem ser trocados.

Page 5: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

© LES/PUC-Rio

Processo de planejamento

• A geração de um plano é “backward”, ou seja, deve ser definido a partir de um estado objetivo, torna-se fácil aplicar as dependências.

• Já aplicar dependências usando o procedimento “foward”, pode ser mais complicado.

• Geração de planos

– Achar a solução de um problema a partir de um estado inicial.

– O planejador tenta encontrar um conjunto de ações possíveis que obterá algum objetivo do plano.

Page 6: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

© LES/PUC-Rio

Exemplo - The Blocks World*

• Ações

– UNSTACK(a,b)

• Coletar bloco “a” que está em cima do bloco “b”. Bloco “a” não pode ter ninguém acima dele.

– STACK(a,b)

• Colocar bloco “a” em cima do bloco “b”

– PICKUP(a)

• Coletar bloco “a”. O braço robô fica segurando o bloco “a”

– PUTDOWN(a)

• Colocar bloco a. O braço robô estava segurando o bloco “a”.

ba

b

* Artificial Intelligence - International Student Edition, Elaine Rich, The University of Texas at Austin

Page 7: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

© LES/PUC-Rio

The Blocks World

• Para especificar as condições em que uma operação pode ser executada e os resultados, deve ser definido predicados

– ON(a,b): Bloco “a” em cima do “b”

– ONTABLE(a): Bloco “a” está na tabela

– CLEAR(a): Não já nenhum bloco em cima de “a”

– HOLDING(a): O braço robô está segurando o bloco “a”.

– ARMEMPTY: O braço robô não está segurando nenhum bloco.

• Possíveis diversas lógicas

– x HOLDING(x) -> ~ARMEMPTY

– x ONTABLE(x) -> ~ x ON(x,y)

– etc

E

A E

Page 8: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

© LES/PUC-Rio

The Blocks World

B

A ON(A, B, S0) ONTABLE(B,S0)CLEAR(A,S0)

VV

STACK(A,B)P: CLEAR(B) HOLDING(A)D: CLEAR(B) HOLDING(A)A: ARMEMPTY ON(A,B)

VV

V

Page 9: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

© LES/PUC-Rio

The Blocks World

• Estado inicial

• Estado objetivo

• Conjunto de passos que levam o estado inicial ao estado objetivo

Page 10: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

© LES/PUC-Rio

The Blocks World

A DC

B

A D

C B

Goal: ON(C,A)ON(B,D)ONTABLE(A)ONTABLE(D)

VV

V

Start: ON(B,A)ONTABLE(A)ONTABLE(C)ONTABLE(D)ARMEMPTY

V

VVV

STACK(C,A)ON(B,D)ONTABLE(A)ONTABLE(D)

Page 11: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

© LES/PUC-Rio

The Blocks World

STACK(C,A)ON(B,D)ONTABLE(A)ONTABLE(D)

CLEAR(A)HOLDING(C)CLEAR(A) HOLDING(C)STACK(C,A)ON(B,D)ONTABLE(A)ONTABLE(D)

V

ON(B,A)CLEAR(B)ARMEMPTYON(B,A) CLEAR(B) ARMEMPTYUNSTACK(B,A)HOLDING(C)CLEAR(A) HOLDING(C)STACK(C,A)ON(B,D)ONTABLE(A)ONTABLE(D)

HOLDING(C)CLEAR(A) HOLDING(C)STACK(C,A)ON(B,D)ONTABLE(A)ONTABLE(D)

V V

V

V

Page 12: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

© LES/PUC-Rio

The Blocks World

HOLDING(C)CLEAR(A) HOLDING(C)STACK(C,A)ON(B,D)ONTABLE(A)ONTABLE(D)

V ONTABLE(C) CLEAR(C) ARMEMPTYPICKUP(C)CLEAR(A) HOLDING(C)STACK(C,A)ON(B,D)ONTABLE(A)ONTABLE(D)

STACK(B,D)ONTABLE(C) CLEAR(C) ARMEMPTYPICKUP(C)CLEAR(A) HOLDING(C)STACK(C,A)ON(B,D)ONTABLE(A)ONTABLE(D)

UNSTACK(B,A)STACK(B,D)PICKUP(C)STACK(C,A)

Page 13: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

© LES/PUC-Rio

The Blocks World

A DC

B

A D

C B

UNSTACK(B,A)STACK(B,D)PICKUP(C)STACK(C,A)

Goal: ON(C,A)ON(B,D)ONTABLE(A)ONTABLE(D)

VV

V

Start: ON(B,A)ONTABLE(A)ONTABLE(C)ONTABLE(D)ARMEMPTY

V

VVV

Page 14: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

© LES/PUC-Rio

The Blocks World

ON(A,B)

ON(B,C)

CLEAR(B)

HOLDING(A)

ON(B,C)

CLEAR(C)

HOLDING(B)

ON(A,B)

ON(x,B)

CLEAR(X)

ARMEMPTY

ARMEMPTY

CLEAR(A)

ONTABLE(A)

CLEAR(B)HOLDING(A)

ON(A,x)

CLEAR(A)

ARMEMPTY

CLEAR(B)

CLEAR(C)

HOLDING(B)

CLEAR(B)

HOLGIN(A)ON(B,C) ON(B,C) ON(B,C)

STACK(A,B) STACK(B,C)

UNSTACK(A,x)

PICKUP(A)

UNSTACK(x, B)

STACK(B,C)

...

Page 15: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

© LES/PUC-Rio

Reconhecimento de Planos

Uma pessoa vai ao aeroporto com suas malas de viagem e pergunta no guiche de compras: -Qual o próximo vôo

disponível para Belém?

Com isso, podemos deduzir que a pessoa provavelmente deseja comprar uma passagem para Belém em um horário

próximo.

Page 16: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

© LES/PUC-Rio

Reconhecimento de Planos

• De maneira geral, consiste em encontrar uma explicação das ações observadas, em termos das ocorrências delas em um ou mais planos.

• Complexidade do problema surge ao tentar inferir planos plausíveis de ações não observadas explicitamente, isto é, ações que se encontram de forma implicita no conhecimento do agente.

• Reconhecimento pretendido (intended recognition)

• Este processo não é puramente dedutivo

– Modelo de representação do conhecimento

– Boas heurísticas

– Biblioteca de planos típicos

Page 17: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

© LES/PUC-Rio

Reconhecimento de Planos

• Aplicação em sistemas

– Tradução

– Sistemas de help do Unix

– Resolvendo problemas colaborativos

– Etc

• Propostas de modelos de planos

Page 18: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

© LES/PUC-Rio

Modeling the User’s Plans and Goals

• “Context Model” representa como uma ação pode contribuir para um objetivo.

Carberry, S.:1988, ‘Modeling the User’s Plans and Goals’. Computational Linguistics 14(3), 23-37

A1

A3 A4A2

Gb Gc

A5 A6

Gx

Ga

Gw Gy Gz

Page 19: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

© LES/PUC-Rio

A Formal Theory of Plan Recognition and its Implementation

• Planos e ações são definidos como eventos

• O conhecimento do reconhecedor é representado por:

– Conjunto de axiomas

– Conjunto de predicados da lógica de primeira-ordem (Hierarquia de Eventos)

• São tratados somente as instâncias dos planos nos quais os tipos de eventos aparecem na hierarquia de eventos, pois o conhecimento representado na hierarquia é completo.

Kautz H.A. "A Formal Theory of Plan Recognition", Morgan Kaufman,1987.

Page 20: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

© LES/PUC-Rio

A Formal Theory of Plan Recognition and its Implementation

Page 21: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

© LES/PUC-Rio

Generation and selection of likely interpretations during plan recognition in taskoriented consultation systems

• Sistema usa heurísticas para distribuir probabilidades para os possíveis planos.

• Estimativa realizada a partir da experiência adquirida.

• Uso da regras de Bayes.

Raskutti B and I Zukerman “Generation and selection of likely interpretations during plan recognition in taskoriented consultation systems” User Modeling and UserAdapted Interaction 1(4), 323-353.

Page 22: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

© LES/PUC-Rio

Considerações finais

• Processo de planejamento

– Geração de planos

– Reconhecimento de planos

• Sistemas em diversas áreas.

• Indução é um ponto complexo.

Page 23: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

© LES/PUC-Rio

Referências

• Raskutti B and I Zukerman “Generation and selection of likely interpretations during plan recognition in taskoriented consultation systems” User Modeling and UserAdapted Interaction 1(4), 323-353.

• Kautz H.A. "A Formal Theory of Plan Recognition", Morgan Kaufman,1987.

• Carberry, S.:1988, ‘Modeling the User’s Plans and Goals’. Computational Linguistics 14(3), 23-37.

• Artificial Intelligence - International Student Edition, Elaine Rich, The University of Texas at Austin.

• Carberry, Sandra; Techniques for Plan Recognition, Department of Computer Science.

• Nogueira, José H. M.;Alcazar, josé J. P.;Furtado, Antônio L.; Análise e Implementação da Teoria Formal de Reconhecimento de Planos, Departamento de Informática Pontifícia Universidade Católica do Rio de Janeiro, Julho 2004.

Page 24: Processo de Planejamento Andrew Diniz da Costa. © LES/PUC-Rio Agenda Processo de planejamento Exemplo The Blocks World Reconhecimento de planos Considerações

Fim