Relatório de Robótica - STRIPS
Professor Roberto Pinheiro
Ana Carolina Castro
16 de Outubro de 2013
Introdução
STRIPS (Stanford Research Institute Problem Solver) é um algoritmo desenvolvido por Richard Fikes e Nils Nilsson em 1971. Um problema para o STRIPS resolver é composto por um estado inicial (inicial state), especificação do estado a ser alcançado (goal state) e o conjunto de ações que podem ser tomadas, compostas por pré-condições (preconditions) e pós-condições (postconditions). As pré-condições são os estados atuais necessários para que a ação possa ocorrer. E as pós-condições são os estados definidos após a execução da ação.
Objetivo Utilizar o algoritmo do STRIPS (General Problem Solver) para modelar um percurso onde o robô está na SALA A e precisa encostar no BLOCO B1 que está na SALA B, porém há uma PORTA P da SALA A para a SALA B.
Modelando o Problema
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
//O robô está na SALA A e precisa encostar no bloco B1 que está na SALA B, porém há uma porta P da SALA A para a SALA B.
Initial state: Em(A), PortaFechada(P), BlocoEm(B)
Goal state: Encostou(B1)
// Operadores = Actions
// Preconditions
// Adicionadores = Poscondictions
Actions: //chegar a porta P ChegarNaPorta(P) Preconditions: Em(A) Postconditions: EstarNaPorta(P)
//abrir porta AbrirPorta(P) Preconditions: EstarNaPorta(P), PortaFechada(P) Postconditions: PortaAberta(P)
//entrar na sala B Vai(A,B) Preconditions: Em(A), EstarNaPorta(P), PortaAberta(P) Postconditions: Em(B)
//aproximar ao bloco B1 Aproximar(B1) Preconditions: Em(B), BlocoEm(B) Postconditions: Proximo(B1)
//encostar no bloco B1