CSCI 599 - Mobile Robots and Multi-Robot Systems

CSCI 599
Mobile Robots and Multi-Robot Systems

Instructor
Course description
Syllabus
Course Format
Project
Grading
Related Web sites
Presentation Schedule


Taught: Spring 1998 and 1999


If you are enrolled in this class, please check this page regularly to find new or updated information.

Instructor

Prof. Maja J Mataric

Office : SAL 228
Phone  : (213) 740-4520
Email  : mataric@cs.usc.edu
WWW    : http://robotics.usc.edu/~maja
Office
Hours  : by appointment, send email or talk w/ prof. after class

Time and place

Tuesdays and Thursdays, 2:00 - 3:20 PM, in GFS 105.


Course description

This course is a seminar-style hands-on survey of mobile robotics and multi-robot and multi-agent systems. (For photos of the available robots, see the Project section below.)

We will cover the development of the field and overview the different approaches to mobile robot control, including planner-based control, reactive-control, behavior-based control, and hybrid control. We will focus on the issues of resolving the well-known conflict between thinking and acting, i.e., high-level deliberation and low-level real-time control. We will cover different approaches and robot control architectures for addressing this issue. We will also study issues in real-time and active sensing as well as robot learning, both of which are integral to mobile robot control.

In the second part of the course we will discuss scaling up mobile robot control to multi-robot systems and swarms of robots. We will relate this problem to multi-agent control and to Distributed AI, and discuss scaling up of centralized, hierarchical, and decentralized architectures for control. Finally, we will address learning in multi-agent and multi-robot systems, and deal with the issues of interference and credit assignment.


Syllabus and Reading List

Syllabus format:
Date of class session: Topics being discussed
  • Assigned readings being presented and discussed.

    Jan 8 : Introduction and overview of the course; intro to the available robot testbeds

    Jan 9 : A lab introduction to the R1 and Geo robots, presented by Gaurav Sukhatme
    and Barry Werger;
    1pm, SAL 103.

    Jan 13 : Survey of basic control methods

  • Ch 2 and Ch 25 (773-781, 786-790 only) from "AI, a Modern Approach" by Russell & Norvig
  • a review of "Intelligence Without Reason" by R. Brooks (1991)

    Jan 15 : Survey of sensors and effectors; sensor fusion and fault tolerance
    Guest lecturer: Gaurav Sukhatme

  • Ch 24 (724-756 only) from "AI, a Modern Approach" by Russell & Norvig
  • parts of "Survey of Collision Avoidance and Ranging Sensors for Mobile Robots" by R. Everett (1988)
  • "Biological and Cognitive Foundations of Intelligent Sensor Fusion" by R. Murphy (1996)

    Jan 20 : Reactive systems

  • "What are Plans For" by P. Agre and D. Chapman (1990)
  • "Elephants Don't Play Chess" by R. Brooks (1990)
  • "A Robust Layered Control System for a Mobile Robot" by R. Brooks (1986)

    Jan 22 : Reactive systems

  • "Universal Plans for Reactive Robots in Unpredictable Environments" by M. Schoppers (1987)
  • "Action and Planning in Embedded Agents" by L. Kaelbling & S. Rosenschein (1990)

    Jan 27 : Hybrid systems

  • "SSS: A Hybrid Architecture Applied to Robot Navigation" by J. Connell (1992)
  • "On Three-Layer Architectures" by E. Gat (1998)

    Jan 29 : Hybrid systems

  • "Symbol Grounding via a Hybrid Architecture in an Autonomous Assembly System" by
    C. Malcolm and T. Smithers (1990)
  • "AuRA: Principles and Practice in Review" by R. Arkin and T. Balch (1997)

    Feb 3 : Behavior-based systems

  • "Internalized Plans: A Representation for Action Resources" by D. Payton (1990)
  • "Behavior-Based Control: Examples from Navigation, Learning, and Group Behavior" by M. Mataric (1997)

    Feb 5 : Behavior-based systems

  • "Motor Schema Based Navigation for a Mobile Robot: An Approach to Programming by Behavior" by R. Arkin (1987)
  • "Situated Agents Can Have Goals" by P. Maes (1990)

    Feb 10 : Reinforcement Learning (RL) in Robotics

  • "Learning to Coordinate Behaviors" by P. Maes and R. Brooks (1990)
  • "Automatic Programming of Behavior-Based Robots Using Reinforcement Learning" by J. Connell and S. Mahadevan (1990)

    Feb 12 : Supervised Learning in Robotics

  • "ALVINN: An Autonomous Land Vehicle in A Neural Network" by D. Pomerleau (1992)
  • "Rapidly Adapting Artificial Neural Networks for Autonomous Navigation" by D. Pomerleau (1992)
  • "Model-based Learning for Mobile Robot Navigation from the Dynamical Systems Perspective" by J. Tani (1996)

    Feb 17 : Reinforcement Learning in Robots/Agents

  • "Learning to use selective attention and short-term memory in sequential tasks" by A. McCallum (1996)
  • parts of "Hidden State and reinforcement learning with instance-based state identification" by McCallum et al (1996)
  • "Rapid, Safe, and Incremental Learning of Navigation Strategies" by J. Millan (1996)

    Feb 19 : Genetic/Evolutionary Approaches to Robot Learning

  • "Evolving 3D Morphology and Behavior by Competition" by K. Sims (1994)
  • "Evolving Electronic Robot Controllers that Exploit Hardware Resources" by A. Thompson (1995)

    Feb 24 : Genetic/Evolutionary Approaches to Robot Learning

  • "RoboShepherd: Learning a Complex Behavior" by A. Schultz et al (1996)
  • "Evolution of Subsumption Using Genetic Programming" by J. Koza (1992)

    Feb 26 : Multi-agent control (graphical agents)

  • "Flocks, Herds, and Schools: A Distributed Behavioral Model" by C. Reynolds (1987)
  • "Artificial Fishes with Autonomous Locomotion, Perception, Behavior and Learning in a Simulated Physical World" by D. Terzopoulos et al (1994)

    Mar 3 : Summary of control and learning; Quiz

    Mar 5 : Multi-robot control

  • "From Local Actions to Global Tasks: Stigmergy and Collective Robotics" by R. Beckers et al (1984)
  • "Swarm-Made Architectures" by J. L. Deneubourg et al (1991)
  • "The Dynamics of Collective Sorting: Robot-like Ants and Ant-like Robots" by J. L. Deneubourg et al (1990)

    Mar 10 : No class: Spring Break

    Mar 12 : No class: Spring Break

    Mar 17 : Multi-agent/robot control

  • "Principles of Minimal Control for Comprehensive Team Behavior" by B. Werger (1998)
  • "Task Modeling in Collective Robotics" by C. Kube and H. Zhang (1997)

    Mar 19 : Multi-agent control

  • "Group Behaviors for Systems with Significant Dynamics" by D. Brogan and J. Hodgins (1997)
  • "Decentralized Motion Planning for Multiple Mobile Robots: The Cocktail Party Model" by V. Lumelsky and K. Harinarayan (1997)

    Mar 24 : Guest Speaker and Videos

    Mar 26 : Biologically-Inspired Models

  • "A Biological Perspective on Autonomous Agent Design" by R. Beer (1990)
  • "Robotic Experiments in Cricket Phonotaxis" by B. Webb (1994)

    Mar 31 : Multi-agent/robot learning

  • "Multiagent Systems: A Survey from a Machine Learning Perspective" by P. Stone and M. Veloso (1997)
  • "Reinforcement Learning in the Multi-Robot Domain" by M. Mataric (1997)

    Apr 2 : Multi-agent/robot learning

  • "Phylogenetic and Ontogenetic Learning in a Colony of Interacting Robots" by A. Agah and G. Bekey (1997)
  • "Agents That Learn from Other Competitive Agents" by M. Asada et al (1995)
  • "Evolving Behavioral Strategies in Predators and Prey" by T. Haynes and S. Sen (1996)

    Apr 7 : Philosophical Overviews

  • "Noise and the Reality Gap: The Use of Simulation in Evolutionary Robotics" by N. Jakobi et al (1997)
  • "Modeling Adaptive Autonomous Agents" by P. Maes (1994)

    Apr 9 : Philosophical Overviews

  • "The Artificial Life Roots of Artificial Intelligence" by L. Steels (1994)
  • "Why Better Robots Make it Harder" by T. Smithers (1994)

    Apr 14 : Overview of the material

  • "Intelligence Without Reason" by R. Brooks (1991)

    Apr 16 : No class, project preparation

    Apr 21 : Project presentations and discussion
    2-3:30pm, location: SAL 322

    Apr 24 : Project presentations and discussion
    4-6pm, location: SAL 322

    Apr 28 : Project presentations and discussion
    2-4pm, location: EEB 349


    Class format

    This course consists of reading, presenting, critiquing, and discussing papers, and implementing and presenting a hands-on project employing the ideas covered in the class. No textbook is used; instead, we will read original papers from the field, and discuss and critique them in class. Students will take turns presenting and debating the readings.

    Helpful information on how to present the readings in class can be found here.


    Course Project

    The students will apply the principles learned in class on (one or more) physical mobile robot(s) or on a sophisticated simulation:

    1) Information on robot kits that you can purchase is listed below, under Related Web Sites.

    2) We are making Geo II, a high-degree-of-freedm legged robot, available for your project use; it is shown below on the left. For more information, look here.

    3) We are also providing access to some R1 research robots in exchange for help with hardware development. These robots are shown on the right; for more information, look here. However, the robots are currently undergoing redesign and will require work before being useful.

    4) Information on some simulation testbeds is also listed below, under Related Web Sites.

    Project topics and platforms must be approved by Prof. Mataric.

    A detailed final paper is a required part of the final project; it will be due on the last day of presentations, and it will be made available to any interested students in the class.

    Helful information for preparing your project presentation can be found here.

    Helful information for preparing your final paper can be found here.


    Grading

    Performance in the class will be based on participation in class discussions, presentations of the readings, a quiz reviewing the basic concepts covered in the class, and a final project (with an associated paper and demonstration). Regular attendance and participation is expected; if you need to miss a class, please speak to Prof. Mataric ahead of time.

    Specifically, final course grades will consist of:

    15%   quiz
    20%   in-class discussion participation
    30%   in-class paper presentations 
    35%   final project implementation and final paper
    

    Related Web Sites and Readings

  • Robot Kits:

    The Mondo-tronics Robot Store. Go to "Robot Store Web Order Catalog" then go to "Programmable Robots"; the others may be cool but cannot be programmed and cannot have sensors added to them. Also check out "Wheeled Platforms".

    Johuco Ltd. Four different cheap, versatile, and programmable robot kits by Jonathan Connell.

    Information on implementing a neural controller for a mobile robot by using a robot kit, by Jonathan Connell (Johuco, Ltd.)

    Information on designing behavior-based robots , tied into a robot kit, by Jonathan Connell (Johuco, Ltd.).

    Information on Lynxmotion , a series of inexpensive mobile robot, manipulator and sensor kits .

    Information on the Rug Warrior , the robot kit that comes with a book: "Mobile Robots, Inspiration to Implementation" by J. L. Jones and A. M. Flynn, published by A. K. Peters, MA. Rug warrior technical information is also available, including schematics, etc. Rug Warrior kits are quite popular so you can find people who have used them to implement interesting robots. For example see Franz, implemented by Francois Michaud.

    For information on obtaining the MIT kits (previously used in the USC CSCI499 course), email fredm@media.mit.edu

    Information on KIPR, the KISS Institute for Practical Robotics.

    All Electronics, a source of affordable sensors and other components. LA store: (213) 380-8000.

    Diversified Enterprises Web page with educational and robot kit information.

    The IEEE Computer Society Web page with links to "Stiquito: advanced experiments with a simple and inexpensie robot" textbook and kit by J. Conrad and J. Mills.

  • Simulation Testbeds:

    Public domain software package of a mobile robot Khepera simulator written by Olivier Michel. You can program the simulated robot in C or C++, then test it in a simulated environment using the X11 graphical interface on a Unix system.

    Public domain software for the official RoboCup robot soccer simulator. The page is full of useful information. People who definitely do not want to use physical robots can use this simulation to explore issues of multi-agent coordination, cooperation, and learning for the course project.

    Public domain software for a Java-based soccer simulation called JavaSoccer, written by Tucker Balch.

    A public domain Lisp-based simulation of Valentino Braitenberg's Vehicles.

  • Tips for Preparing Presentations:

    Look here for info on how to prepare presentations of the readings.

    Look here for info on how to prepare your final project presentation.

  • Paper authors' Web pages:

    Arvin Agah, Phil Agre, Ron Arkin
    Tucker Balch, Randy Beer
    George Bekey, David Brogan, Rod Brooks
    Jon Connell
    Erann Gat
    Thomas Haynes, Jessica Hodgins
    Nick Jakobi
    Leslie Kaelbling, John Koza, Ron Kube
    Vladimir Lumelsky
    Pattie Maes, Sridhar Mahadevan, Maja Mataric, Andrew McCallum
    Dean Pomerleau
    Craig Reynolds, Stan Rosenschein
    Alan Schultz, Sandip Sen, Karl Sims, Luc Steels, Gaurav Sukhatme
    Jun Tani, Demetri Terzopoulos
    Adrian Thompson
    Barbara Webb, Barry Werger

  • A few relevant books:

    Artificial Intelligece, A Modern Approach Russel & Norvig, Prentice Hall.
    Mobile Robots, Inspiration to Implementation, Jones & Flynn, A. K. Peters.
    Behavior-Based Robotics, Arkin, MIT Press, 1998.
    Neural Networks and Fuzzy Systems, Kosko, Prentice Hall.
    Perceptrons (expanded edition), Minsky and Papert, MIT Press.
    Introduction to the Theory of Neural Computing, Hertz, Krogh & Palmer, Addison Wesley.
    Genetic Algorithms in Search, Optimisation, and Machine Learning, Goldberg, Addison Wesley.
    Artificial Life, Langton, Addison Wesley.

  • Links to other mobile and multi-robot pages:

    USC Robotics Lab Mobile and Multiple Robotics Links Page
    USC Robotics Lab Multi-Agent Systems and DAI Links Page
    Honda's walking robot.

  • (Selected) Relevant Conferences and Journals:

    Robotics:
    Autonomous Robots
    IEEE Transactions on Robotics and Automation
    International Journal of Robotics Research
    Robotics and Autonomous Systems
    IEEE Transactions on Man, Systems, and Cybernetics
    International Conference on Robotics and Automation (ICRA)
    IEEE/RSJ International Conference on Intelligent Robotic Systems (IROS)

    Adaptive Biological and Artificial Behavior:
    Adaptive Behavior Journal
    Simulation of Adaptive Behavior Conference (SAB)
    Cognitive Science Journal
    Cognitive Science Conference

    Learning:
    Machine Learning Journal
    International Conference on Machine Learning (ICML)

    Artificial Intelligence:
    Artificial Intelligence Journal
    Journal of Artificial Intelligence Research
    Journal of Experimental and Theoretical AI
    American Association for Artificial Intelligence Conference (AAAI)
    International Joint Conference on AI (IJCAI)

    Autonomous Agents:
    Autonomous Agents Journal
    Autonomous Agents Conference (Agents)

    Artificial Life:
    Artificial Life Journal
    Artificial Life Conference (Alife)
    European Artificial Life Conference (ECAL)

    Computational Neural Network Approaches:
    Neural Computation
    Neural Information Processing Systems Conference (NIPS)


    Presentation Schedule

    Date presenter presenter presenter
    1/8 Maja
    Mataric
    Barry
    Werger
    Gaurav
    Sukhatme
    1/13 --- Maja
    Mataric
    ---
    1/15 --- Gaurav
    Sukhatme
    ---
    1/20 Ilia
    Ovsiannikov
    Wilko
    Hein
    Aswath
    Mohan
    1/22 Richard
    Kolodji
    Les
    Williams
    ---
    1/27 Brian
    Ellenberger
    Göksel
    Dedeoglu
    ---
    1/29 Tony
    Mactutis
    Srinivasan
    Lakshmanan
    ---
    2/3 Pavlin
    Radoslavov
    Juan
    Francisco Lopez
    ---
    2/5 Brian
    Ellenberger
    Les
    Williams
    ---
    2/10 Tony
    Mactutis
    Richard
    Kolodji
    ---
    2/12 Aswath
    Mohan
    Aswath
    Mohan
    Göksel
    Dedeoglu
    2/17 Göksel
    Dedeoglu
    Göksel
    Dedeoglu
    Srinivasan
    Lakshmanan
    2/19 Wilko
    Hein
    Wilko
    Hein
    ---
    2/24 Pavlin
    Radoslavov
    Sean
    Morrow
    ---
    2/26 Sean
    Morrow
    Tony
    Mactutis
    ---
    3/3 Review Quiz ---
    3/5 Pavlin
    Radoslavov
    Juan
    Francisco Lopez
    Srinivasan
    Lakshmanan
    3/17 Pavlin
    Radoslavov
    Aswath
    Mohan
    ---
    3/19 Les
    Williams
    Wilko
    Hein
    ---
    3/24 Guest speaker Videos
    3/26 Brian
    Ellenberger
    Juan
    Francisco Lopez
    ---
    3/31 Aswath
    Mohan
    Sean
    Morrow
    ---
    4/2 Juan
    Francisco Lopez
    Tony
    Mactutis
    Les
    Williams
    4/7 Richard
    Kolodji
    Sean
    Morrow
    ---
    4/9 Brian
    Ellenberger
    Srinivasan
    Lakshmanan
    ---
    4/14 Richard
    Kolodji
    course review
    4/21 course
    Brian
    Ellenberger
    project
    Pavlin
    Radoslavov
    presentations
    Aswath
    Mohan
    4/24 course
    Göksel Dedeoglu
    project
    Richard
    Kolodji
    presentations
    Tony Mactutis
    Les Williams
    4/28 course
    Wilko
    Hein
    project
    Juan Francisco
    Lopez
    presentations
    Srinivasan
    Lakshmanan


    Pre-requisite

    Undergraduate AI (e.g., CSCI 460) or permission of instructor.


    U.S.C. Computer Science Department
    U.S.C.
    Back to top