Experiences with an Architecture for Intelligent Reactive Agents By R. Peter Bonasso, R. James Firby, Erann Gat, David Kortenkamp, David P Miller, Marc G Slack Presented By Tony Morelli 9/16/2004
Abstract ● 3T Robot Architecture ● 3 Levels of abstraction – Variety of software tools have been created to implement this on multiple real robots – Has been implemented on several different robot systems with different processors, operating systems, effectors, and sensors.
Introduction ● Three interacting layers – Dynamically reprogrammable set of reactive skills cooridnated by a skill manager – Sequencer that controls skills to accomplis a specific task. Use the Reactive Action Packages (RAP) – Deliberative planner that reasons in depth about goals, resources and timing constraints. Use the Adversarial Planner (AP)
Software Tools for Arcitechture Implementation ● A number of tools were developed for integrating the three tiers together and providing the user with a paradigm for developing robotic applications
Skills ● Input and Out Specification – Each skill must provide a description of the inputs it expects and the outputs it generates ● Computational Transform – The actual work ● Initialization Routine – What to do on power up ● An Enable Function ● A Disable Function
Sequencing ● Accomplish routinely performed tasks ● Task is dependent upon the robot's knowledge of the situation. ● Replies are through skills called events. – Events take inputs from other skills – Events notify the sequencer when a desired state has been detected. ● Lacks the foresite to achieve global behavior
Planning ● Operates at the highest level of abstraction to make its problem space as small as possible ● Using the AP planner – Multiagent control (robots usually have interaction with either people or other robots) – Robots need to be able to work together – CounterPlanning --- Need to do change plans when something an uncontrolled agent enters the picture.
Applications of the Architecture ● Discuss the robot. ● Describe the task, the skills, the RAPs, and the plans ● Give results and lessons learned of the architecture
A Mobile Robot that Recognizes People ● Search for a particular color shirt ● Crop the face and identify the person ● Skills – Searching and tracking colors, cropping the face, recognizing the face, and obstacle avoidance. ● 20 RAPs to disable/enable skill sets and recover from errors. ● Did not use the planning tier of the architecture
A Mobile Robot that Recognizes People - Skill Network
A Trash Collecting Mobile Robot ● Named Chip ● Skills – Moving while avoiding obstacles, face a particular direction, finding an object visually, tracking an object, and reaching towards an object. ● Middle tier combined low level RAPs to make higher level RAPs ● No upper tier ● Successful in their experiments
A Mobile Robot that Navigates Office Buildings ● Use sonar data for obstacle avoidance and laser scanner with bar coded tages for landmark recognition. ● Skills – Watching for landmarks, moving to landmarks, and moving through doorways. ● RAPs for moving to a landmark or moving through a set of connecting spaces. ● Planner can plan a new path if the hallway is blocked.
A Mobile Robot that Navigates Office Buildings
Space Station Robots ● Plans are made by humans and sent to the planner ● The planner creates a series of RAPs. ● Simple failures are handled at the RAP level ● Drastic failures will could cause the planner to abandon all plans ● Implemented on a simulator prior to real life. ● Differences were in the interfaces and the level of autonomy. The planner and the RAPs were basically unchanged.
Allocating Knowledge Across the Architecture ● Time – Skill level has time in milliseconds, sequencer in tenths of a second, and the planning level in seconds. ● Bandwidth – Skills are high bandwidth (image transferring). Between skill system and the RAP is small (enable/disable). ● Task Requirements – A RAP should be broken down into skills. If a RAP starts doing look ahead, it should be considered an AP.
Allocating Knowledge Across the Architecture (2) ● Modifiability – Skills are compiled into runtime events. RAP and planner are based on interpreters and their behavior can be changed by changing RAP descriptions and planning operators.
Comparison With Other Work ● 2 Categories of autonomous agents – Control physically embedded agents – Explore issues in general intelligence ● 3T an example of the first
Robot Architectures Subsumption ● Subsumption – Decomposes robot control by task, rather than function. ● No architectural support for abstraction, planning or resource management.
Robot Architectures SSS ● Three layer architecture ● Subsumption is the middle layer ● Only been demonstrated on tasks involving pure navigation
Robot Architectures Task Control Architecture ● No tiers ● Cumbersome to have a general planner ● All failures are lumped together – 3T handles failures at all three levels
Non-robotic Agent Architectures ● Guardian – Similar to 3T but with sequencing and deliberation performed by the same mechanism – Decision making can be faster ● Cypress – Their version of RAPs were difficult to integrate as they were not designed to allow integration with conventional AI planners
Future Work and Conclusions ● Division of labor permits the generalization of knowledge across multiple projects. ● 3T can ease the development of software control code. ● 3T use in non-robotic control systems – WWW Robot (retrieves maps to fight fires) – Closed Ecological Life Support Systems ● Determine the planting cycles of various crops
Questions?