130 likes | 160 Views
Explore the early AI planning approaches in robotics through the influential Perceive-Think-Act model. Learn how Shakey the robot utilized logical representations and specialized planning to reason and navigate its environment. Understand the challenges faced and the legacy of this groundbreaking project.
E N D
AI planning approaches to robotics Jeremy Wyatt School of Computer Science University of Birmingham
Perceive Think Act Early models of intelligence • Perceive-think-act model of intelligence (Kenneth Craik, 1943) • This model was very influential in early AI
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 robot SHAKEY 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
Planex Strips ILAs LLAs Hardware World Model Shakey outline • error recovery at several levels • communication through model • central representation • logic based
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 model e.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)
30 20 10 0 r2 f4 f3 o1 d2 r3 f2 f1 d1 shakey r1 0 10 20 Shakey: key ingredients • World model used logical representations type(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: key ingredients • Planner used specialised representations to be faster, e.g. actions represented using STRIPS operators 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)
30 20 10 0 r2 f4 f3 o1 d2 r3 f2 f1 d1 shakey r1 0 10 20 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)
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)