Upload
humberto-akey
View
218
Download
1
Tags:
Embed Size (px)
Citation preview
AI planning approaches to robotics
Jeremy Wyatt
School of Computer Science
University of Birmingham
Early models of intelligence
• Perceive-think-act model of intelligence(Kenneth Craik, 1943)
• This model was very influential in early AI
Perceive Think Act
Perceive Think Act for robotics
• By the 1960’s we had– Simple vision systems– Simple theorem provers (using resolution)– Simple path planning methods
• Idea: put them all together in a robotSHAKEY Project
Shakey the robot
• 1970-Shakey the robot reasons about its blocksBuilt at Stanford Research Institute, Shakey was remote controlled by a large computer. It hosted a clever reasoning program fed very selective spatial data, derived from weak edge-based processing of camera and laser range measurements. On a very good day it could formulate and execute, over a period of hours, plans involving moving from place to place and pushing blocks to achieve a goal.
– From Hans Moravec
Shakey outline
Planex
Strips
ILAs
LLAs
Hardware
World
Model
• central representation
• logic based
• error recovery at several levels
• communication through model
Shakey: key ingredients
• Geometric planning within ILAs to avoid obstacles, eg. goto(d4)
• ILAs did simple error recovery (reactive controllers)e.g. push(box1, (14.1 22.3))
• Major error recovery done by updating the world modele.g. if the robot is uncertain about its position it takes a camera fix and updates the world model.
• World model based on First Order Predicate Logic (FOPL)
Shakey: key ingredients
• World model used logical representationstype(r1,room)
in(shakey,r1)
in(o1,r2)
type(d1 door)
type(o1 object)
type(f3 face)
type(shakey)
at(o1 15.1 21.0)
joinsfaces(d2 f3 f4)
joinsrooms(d2 r3 r2)
…
shakey
30
20
10
0
0 10 20
r3
f4 f3
d2
d1
f2
f1
r1
r2
o1
Shakey: key ingredients
• Planner used specialised representations to be faster, e.g. actions represented using STRIPS operatorsblock_door(D,Y)
preconditions: in(shakey,X) & in(Y,X)
& clear(D) & door(D)
& object(Y)
delete list: clear(D)
add list: blocked(D,Y)
Planning• Shakey used a form of planning called goal regression
• Idea: find an action that directly achieves your goal, and then actions to achieve the first action’s preconditions, etc…
• e.g. Blocked(d1,X)
block_door(D,Y)preconditions: in(shakey,X) & in(Y,X)
& clear(D) & door(D)& object(Y)
delete list: clear(D)add list: blocked(D,Y)
shakey
30
20
10
0
0 10 20
r3
f4 f3
d2
d1
f2
f1
r1
r2
o1
Planning
• Shakey could learn to chunk useful sequences of actions into single large actions called macrops
• But STRIPS was slow and weak
• Sussman anomaly
After Shakey
• Shakey looked promising
• But it worked in a very
restricted environment
• Could it be extended to
natural worlds?
Stanford Cart, 1970s
After Shakey
• After twenty years the approach still didn’t extend– Visual modelling too hard and slow– Non-linear planning intractable (NP-complete)– Feedback through world model cumbersome
• People began to wonder if the ideas were right
Reading
Russell and Norvig, Chapter 11 (Planning)
Shakey the Robot, Technical report (in school library)