Intelligent Systems Branch Johnson Space Center Engineering Directorate Automation, Robotics and Simulation Division Hierarchical Architectures for Controlling.

Slides:



Advertisements
Similar presentations
Technical and design issues in implementation Dr. Mohamed Ally Director and Professor Centre for Distance Education Athabasca University Canada New Zealand.
Advertisements

A Complex Event Recognition Architecture Will Fitzgerald Kalamazoo College R. James Firby I/NET, Inc.
Chapter 11 user support. Issues –different types of support at different times –implementation and presentation both important –all need careful design.
Lecture 8: Three-Level Architectures CS 344R: Robotics Benjamin Kuipers.
January 8, 2008Spark Robotics RISE08 DIOS – A Distributed Intelligent Operating Schema Dr. Reuven Granot and Chad Trytten Spark Robotics Inc.
I-Room : Integrating Intelligent Agents and Virtual Worlds.
© Sara Fleury & Félix Ingrand, LAAS/RIA, 2000 Architecture for Autonomy Sara Fleury & Félix Ingrand LAAS-CNRS (
AuRA: Principles and Practice in Review
Lecture 6: Hybrid Robot Control Gal A. Kaminka Introduction to Robots and Multi-Robot Systems Agents in Physical and Virtual Environments.
Modelling Feature Interaction Patterns in Nokia Mobile Phones using Coloured Petri Nets and Design/CPN Louise Lorentsen University of Aarhus Antti-Pekka.
Agent Mediated Grid Services in e-Learning Chun Yan, Miao School of Computer Engineering Nanyang Technological University (NTU) Singapore April,
RFID Shelving ADD Presentation: 19 Mar 2007 Guy Shtub Idit Gershoni.
Ambient Computational Environments Sprint Research Symposium March 8-9, 2000 Professor Gary J. Minden The University of Kansas Electrical Engineering and.
Experiences with an Architecture for Intelligent Reactive Agents By R. Peter Bonasso, R. James Firby, Erann Gat, David Kortenkamp, David P Miller, Marc.
Intelligence without Reason
Motor Schema Based Navigation for a Mobile Robot: An Approach to Programming by Behavior Ronald C. Arkin Reviewed By: Chris Miles.
Robotics for Intelligent Environments
An Environmental Multiagent Architecture for Health Management Francesco Amigoni Nicola Gatti.
University of Kansas The Intelligent Systems & Information Management Laboratory Costas Tsatsoulis, Director.
Inventing Hybrid Control The basic idea is simple: we want the best of both worlds (if possible). The goal is to combine closed-loop and open-loop execution.
Chapter 10: Architectural Design
What is it? A mobile robotics system controls a manned or partially manned vehicle-car, submarine, space vehicle | Website for Students.
What is Software Architecture?
Intelligent Systems Branch Johnson Space Center Engineering Directorate Automation, Robotics and Simulation Division Commentary on: A Mathematical Programming.
Introduction to Jadex programming Reza Saeedi
Chapter 10 Architectural Design
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
Mobile Robot Control Architectures “A Robust Layered Control System for a Mobile Robot” -- Brooks 1986 “On Three-Layer Architectures” -- Gat 1998? Presented.
1 CMPT 275 High Level Design Phase Architecture. Janice Regan, Objectives of Design  The design phase takes the results of the requirements analysis.
September1 Managing robot Development using Agent based Technologies Dr. Reuven Granot Former Scientific Deputy Research & Technology Unit Directorate.
COMP 410 & Sky.NET May 2 nd, What is COMP 410? Forming an independent company The customer The planning Learning teamwork.
 Applied Architectures and Styles Chapter 11, Part 2 Service-Oriented Architectures and Web Services Architectures from Specific Domains Robotics Wireless.
7 Introduction to AI Robotics (MIT Press), copyright Robin Murphy 2000 Chapter 7: Hybrid Deliberative/Reactive Paradigm1 Part 1: Overview & Managerial.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 07. Review Architectural Representation – Using UML – Using ADL.
Artificial Intelligence Chapter 25 Agent Architectures Biointelligence Lab School of Computer Sci. & Eng. Seoul National University.
Copyright © Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy. All rights reserved. Architectural Styles Part I Software Architecture Lecture 5.
7 Introduction to AI Robotics (MIT Press), copyright Robin Murphy 2000 Chapter 7: Hybrid Deliberative/Reactive Paradigm1 Part 1: Overview & Managerial.
Task Achieving Agents on the World Wide Web An Introduction Sharif Univ. of Tech. Computer Eng. Dep. Semantic Web Course Mohsen Lesani 13 Ord 1374.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 11: Artificial Intelligence Computer Science: An Overview Tenth Edition.
Architecture for Autonomous Assembly 1 Reid Simmons Robotics Institute Carnegie Mellon University.
A Language for Task-Level Executives Reid Simmons David Apfelbaum Carnegie Mellon University.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
Illustrations and Answers for TDT4252 exam, June
Artificial Intelligence 2005/06 Partially Ordered Plans - or: "How Do You Put Your Shoes On?"
University of Windsor School of Computer Science Topics in Artificial Intelligence Fall 2008 Sept 11, 2008.
Director: Prof. Maja J Matarić Associate Director: Prof. Gaurav S. Sukhatme Founder: Prof. George A. Bekey G OALS Automate the process of robot controller.
Structured Control for Autonomous Robots Reid G. Simmons Carnegie Mellon University Uday Rajanna.
1 CMPT 275 High Level Design Phase Modularization.
An Architecture to Support Context-Aware Applications
What Shape is Your Real-Time System? Lonnie R. Welch Intelligent, Real-Time, Secure Systems Lab. School of EECS Ohio University Michael.
___________________________________________________ Intelligent Planning and Collaborative Systems for Emergency Response
Introduction to Artificial Intelligence CS 438 Spring 2008 Today –AIMA, Ch. 25 –Robotics Thursday –Robotics continued Home Work due next Tuesday –Ch. 13:
1 Object Oriented Logic Programming as an Agent Building Infrastructure Oct 12, 2002 Copyright © 2002, Paul Tarau Paul Tarau University of North Texas.
Multiagent System Katia P. Sycara 일반대학원 GE 랩 성연식.
Autonomy for General Assembly Reid Simmons Research Professor Robotics Institute Carnegie Mellon University.
DESIGN OF SOFTWARE ARCHITECTURE
Chapter 5 Introduction To Form Builder. Lesson A Objectives  Display Forms Builder forms in a Web browser  Use a data block form to view, insert, update,
Microsoft ® Official Course Module 6 Managing Software Distribution and Deployment by Using Packages and Programs.
EEL 5937 Multi Agent Systems -an introduction-. EEL 5937 Content What is an agent? Communication Ontologies Mobility Mutability Applications.
EEL 5937 Multi Agent Systems -an introduction-. EEL 5937 Content What is an agent? Communication Ontologies Mobility Mutability Applications.
Matt Loper / Brown University Presented for CS296-3 February 14th, 2007 On Three Layer Architectures (Erann Gat) On Three Layer Architectures (Erann Gat)
Learning Fast and Slow John E. Laird
Chapter 11: Artificial Intelligence
Automation as the Subject of Mechanical Engineer’s interest
CHAPTER 2 CREATING AN ARCHITECTURAL DESIGN.
Chapter 7: Hybrid Deliberative/Reactive Paradigm
Artificial Intelligence Chapter 25. Agent Architectures
Presenter : Seokjun Lee Kyonggi University
Social Abstractions for Information agents
Tools for the Automation of large distributed control systems
Presentation transcript:

Intelligent Systems Branch Johnson Space Center Engineering Directorate Automation, Robotics and Simulation Division Hierarchical Architectures for Controlling Real-World Agents David Kortenkamp Pete Bonasso NASA Johnson Space Center Metrica Inc./TRACLabs

Intelligent Systems Branch Johnson Space Center Engineering Directorate Automation, Robotics and Simulation Division Robot Architectures Sense  Plan  Act: Shakey 1969 Subsumption: Brooks 1986 Want power of deliberation and speed of reactivity Hybrid architectures [Erann Gat “Three Layer Architectures” in Artificial Intelligence and Mobile Robots 1998]

Intelligent Systems Branch Johnson Space Center Engineering Directorate Automation, Robotics and Simulation Division 3T World 1/10 sec. limited state limited projection memory interpreter task1 subtask task2 task3 1 sec. memory of immediate actions no projection 10s sec. persistent state and choices projection

Intelligent Systems Branch Johnson Space Center Engineering Directorate Automation, Robotics and Simulation Division Multi-agent path planner simulation IVHM scheduler Planner

Intelligent Systems Branch Johnson Space Center Engineering Directorate Automation, Robotics and Simulation Division 3T at JSC Particular instantiation of hybrid architecture –Skill manager –RAPS –Adversarial Planner Robotic and non- robotic applications User interaction

Intelligent Systems Branch Johnson Space Center Engineering Directorate Automation, Robotics and Simulation Division Skills Small pieces of C code that do something Data passed from one skill to another Actions and events Skill manager –Handles scheduling of skills –Handles data transfer between skills –Handles comms with second tier sensor actuator to RAPS

Intelligent Systems Branch Johnson Space Center Engineering Directorate Automation, Robotics and Simulation Division RAPS Jim Firby’s Reactive Action Packages [Firby 1989] Library of tasks Conceptual memory Run-time decomposition of tasks via context Tasks bottom-out in activation of skills Agenda task sub-task primitive wait-for RAP Memory RAP Library RAP Interpreter to/from skills

Intelligent Systems Branch Johnson Space Center Engineering Directorate Automation, Robotics and Simulation Division Example RAP (define-rap (bioreactor-startup ?configuration) (language-mappings (applicability (and (isa ?object i-bwp-system) (or (isa ?state i-stand-alone-drain-state) (isa ?state i-on) (isa ?state i-stand-alone-reject-state) (isa ?state i-integrated-state) (isa ?state i-innoc-no-feed-state)))) (method integrated-or-stand-alone (context (and (not (= ?configuration innoc-no-feed)) (manual-valve-position pbbwpskm bio_innoc ?value ?error) (= ?value open) (default-timeout ?to) (nominal-pump-speed pbbwpskm recycle ?nmrc))) (task-net (sequence (t0 (stop-watchdog pbbwpskm)) (t0-1 (kill-monitors monitor-bioreactor)) (t1 (configure-bwp-valves ?configuration)) (t2 (set-pump-speeds start) (update-bwp-text ?configuration)) (t2-2 (start-watchdog pbbwpskm)) (t3 (install-goal (quote (monitor-bioreactor ?configuration)) 3 => ?mgoal)))))

Intelligent Systems Branch Johnson Space Center Engineering Directorate Automation, Robotics and Simulation Division Language in RAPS

Intelligent Systems Branch Johnson Space Center Engineering Directorate Automation, Robotics and Simulation Division Adversarial Planner (AP) Non-linear, hierarchical task net (HTN) planner developed at MITRE Multi-agent Some scheduling Leaves of plan are matched to top-level RAPS in RAP library –RAPS provides abstraction from low-level for planner Execution monitoring

Intelligent Systems Branch Johnson Space Center Engineering Directorate Automation, Robotics and Simulation Division AP Example (Operator replace-crystals :purpose (state crystals replaced) :agents (?robot ?human) :constraints ((instance-of ?robot ‘robot) (instance-of ?human ‘human)) :preconditions ((state bay opened)) :plot (sequential (covers (monitor-crystals ?robot in-monitor) (display ?human monitored)) (crystals ?robot are-replaced)) :effects ((state crystals replaced)))

Intelligent Systems Branch Johnson Space Center Engineering Directorate Automation, Robotics and Simulation Division Integrated Application Four skill managers RAPS (100s of RAPS > 50,000 lines of Lisp code) Scheduler 24/7 autonomous operation 18 months of operation AI Magazine next issue

Intelligent Systems Branch Johnson Space Center Engineering Directorate Automation, Robotics and Simulation Division Skills Skills -- for the RO agent Name RO Type device Params interval Outs none Function: A device skill that gets all the sensor values and provides them to the other skills. Also sends commands to the pumps and valves. Also every interval seconds, this skill broadcasts a data message with the values of all the channels listed above to the IPC server so that clients (e.g., a logging facility) can access them (see the IPC structure at the end of this document). Name valve_position Type query Params valve (process/pps_select) Outs value (for process:primary/secondary/purge/off/unknown; for pps_select:pps/tank/reject/off/unknown), and result (okay or Err) Function: Checks V02 or V03. One of lines V02_i1 through V02_i3 or V03_i1 through V03_i3 will be hi, and the rest will be low. If all are low, the result is off. Any other pattern is unknown. Name valve_at Type event Params valve (process/pps_select), value (for process:primary/secondary/purge/off; for pps_select:pps/tank/reject/off) Outs result (okay/ERR) Function: Waits for V02_i1 through V02_i3 or V03_i1 through V03_i3 to indicate value (see the valve_position skill). When the condition is achieved the event returns result. Name turn_valve Type block Params valve (process/pps_select), value (for process:primary/secondary/purge/off; for pps_select:pps/tank/reject/off) Outs none Function: Sets one of V02_o1 through V02_03 to hi the rest to low, except for off when all lines will be set lo.

Intelligent Systems Branch Johnson Space Center Engineering Directorate Automation, Robotics and Simulation Division RAPs (define-primitive-event (valve-at ?agent ?valve ?open-closed ?error) (event-definition (:valve_at (:valve. ?valve) (:value. ?open-closed))) (event-values :bound :bound :bound :unbound)) (define-rap (turn-valve-p ?agent ?valve ?open-closed ?timeout) (succeed (and (valve-position ?agent ?valve ?value ?error) (= ?value ?open-closed))) (timeout ?timeout) (method (primitive (enable (:turn_valve (:valve. ?valve) (:value. ?open-closed)) (wait-for (valve-at ?agent ?valve ?open-closed ?result) :succeed (?result)) (disable :above) )) ) (define-rap (processing-start ?stage ?adjust-time)... (method purge (context (and (= ?stage purge) (valve-position roskm pps_select ?old-pos ?error) (= ?old-pos pps) (nominal-pump-speed roskm feed ?wwsp) (default-timeout ?dto))) (task-net (sequence (t1 (syringe-pump-p roskm start feed ?wwsp 30)) (t2 (water-flowing-p roskm stop recirc 0 ?dto)) (t3 (turn-valve-p roskm pps_select reject ?dto)) (t4 (turn-valve-p roskm process purge ?dto)) (t5 (turn-valve-p roskm pps_select tank ?dto)))))

Intelligent Systems Branch Johnson Space Center Engineering Directorate Automation, Robotics and Simulation Division Scheduler

Intelligent Systems Branch Johnson Space Center Engineering Directorate Automation, Robotics and Simulation Division Learning in 3T Intra-tier learning Inter-tier learning –Planning  RAPS –RAPS  behaviors Automatic activation of behaviors –Behaviors  RAPS –RAPS  Planning

Intelligent Systems Branch Johnson Space Center Engineering Directorate Automation, Robotics and Simulation Division Motivation in 3T Goals and motivations come from outside or are pre-built for the specific application –Ideally motivations would come into the top layer and then “trickle down” to the other layers –However, often useful to manually place goals on the RAPS agenda via GUI or NL –Less useful to enable/disable skills except for testing Resource allocation mostly at top-level, some mechanisms in RAPS to handle contention for limited resources

Intelligent Systems Branch Johnson Space Center Engineering Directorate Automation, Robotics and Simulation Division Adjustable Autonomy Allows system to operate with dynamically varying levels of independence, intelligence and control Some levels of control –Completely in control –Shared control –Supervising manual control System still updates state, world model, etc. through its sensors

Intelligent Systems Branch Johnson Space Center Engineering Directorate Automation, Robotics and Simulation Division sensors perceptual memory local, short-term, dynamic robot-centric: where, identity, role object ontology global, long-term, static allo-centric: relationships, roles, recognition, etc. DAML/OIL task-level control how to do things, procedures, monitors, etc. control multi-agent, distributed, real-time closed-loop actuators Representation Reasoning about world Reasoning about task spatial reasoning learning task planning object recognition context objectspriming color, neural networks stereo vision, etc. World Generating task sequences, monitoring resources temporal reasoning contextual reasoning goals set points