Recent Changes - Search:

Research

Notes

Architecture

Faults

System

Planning

Background

OS

Misc

edit SideBar

Robotics



Robot Programming

A Survey of Robot Programming Systems

  • Biggs, G., MacDonald, B.
  • An industry focused review of the common methods of programming robots such as those used in factories. Covers the different levels of languages from hardware specific, to extensions to high level languages such as C, to graphical languages targeted at non-programmers (all types of "Manual Programming"). Also examines Automatic Programming techniques which generate code through some learning process such as demonstration or training a neural network. My slides summarizing the paper: Attach:survey.pdf.
  • Attach:Biggs03SurveyRobotProgramming.pdf

@inproceedings{biggs2003survey, title={A survey of robot programming systems}, author={Biggs, Geoffrey and MacDonald, Bruce}, booktitle={Proceedings of the Australasian conference on robotics and automation}, pages={1--3}, year={2003} }

An Investigation into Reactive Planning in Complex Domains

  • Firby, R James
  • A "purely reactive planner" (reactive here refers to state: only current (no planning for the future, no reasoning about the past)). RAPs are executed by an interpreter. Each RAP encapsulates a single goal, and a task subnet, which represent actions to take (partially ordered) to achieve the goal. Well thought out and reasonable. Can now understand why this was chosen as the sequencer in so many Three Level systems.
  • Attach:Firby87RAP.pdf

@inproceedings{firby1987investigation, title={An investigation into reactive planning in complex domains.}, author={Firby, R James}, booktitle={AAAI}, volume={87}, pages={202--206}, year={1987} }


Application

A Distributed, Multi-Language Architecture for Large Unmanned Ground Vehicles

  • Cicalese, Cynthia and Weatherly, Richard and Sherrill, Joel and Bolling, Robert and Forbes, Kevin and Grabowski, Robert and Ring, Keven and Seidel, David
  • TODO: Summary
  • Attach:Cicalese08Wombat.pdf

@article{cicalese2008distributed, title={A distributed, multi-language architecture for large unmanned ground vehicles}, author={Cicalese, Cynthia and Weatherly, Richard and Sherrill, Joel and Bolling, Robert and Forbes, Kevin and Grabowski, Robert and Ring, Keven and Seidel, David}, journal={ACM SIGAda Ada Letters}, volume={28}, number={3}, pages={133--138}, year={2008}, publisher={ACM} }


Model-Based

Model-based programming of intelligent embedded systems and robotic space explorers

@article{williams2003model, title={Model-based programming of intelligent embedded systems and robotic space explorers}, author={Williams, Brian C and Ingham, Michel D and Chung, Seung H and Elliott, Paul H}, journal={Proceedings of the IEEE}, volume={91}, number={1}, pages={212--237}, year={2003}, publisher={IEEE} }

Executing Reactive, Model-based Programs through Graph-based Temporal Planning

@inproceedings{kim2001executing, title={Executing reactive, model-based programs through graph-based temporal planning}, author={Kim, Phil and Williams, Brian C and Abramson, Mark}, booktitle={IJCAI}, pages={487--493}, year={2001} }

The BRICS Component Model: a Model-Based Development Paradigm for Complex Robotics Software Systems

  • Bruyninckx, Herman and Klotzb{\"u}cher, Markus and Hochgeschwender, Nico and Kraetzschmar, Gerhard and Gherardi, Luca and Brugali, Davide
  • Proposes the BRICS Component Model, which attempts to bring component based robotic middle-wares into the fold of Model-Based engineering. The ultimate goal would be for designers to model the system at various levels, and then automatically generate code which implements the model. Potential benefits are great, as the model could potentially be verified to maintain certain constraints. Words like "meta-meta-modeling" are used. A case study presents a simple navigation model example, but no real-world examples or experiments. Can not yet convert an arbitrary ROS (or other middle-ware) graph into a BCM, but this is partly due to almost all robotic middle-wares lacking any formal models.
  • Attach:Bruyninckx13BRICS.pdf

@inproceedings{bruyninckx2013brics, title={The BRICS component model: a model-based development paradigm for complex robotics software systems}, author={Bruyninckx, Herman and Klotzb{\"u}cher, Markus and Hochgeschwender, Nico and Kraetzschmar, Gerhard and Gherardi, Luca and Brugali, Davide}, booktitle={Proceedings of the 28th Annual ACM Symposium on Applied Computing}, pages={1758--1764}, year={2013}, organization={ACM} }


Subsumption

Elephants Don't Play Chess

  • Rodney A. Brooks
  • The Subsumption manifesto. Well written. Takes a critical look at both classical and "nouvelle" AI, with apt descriptions and criticisms of both. Describes the subsumption architecture and how it was used to control several robots of differing scale. This is from 1990, so the robots are primitive, but the promise of subsumption is clear. Finally, the paper tackles common questions about the validity of the subsumption architecture (thus the elephants, a reminder that classic AI is taking on puzzles, not real world situations). A convincing paper; where is Subsumption today?
  • Attach:Brooks90Elephants.pdf

@article{brooks1990elephants, title={Elephants don't play chess}, author={Brooks, Rodney A}, journal={Robotics and autonomous systems}, volume={6}, number={1}, pages={3--15}, year={1990}, publisher={Elsevier} }


Three Level Derivatives

Experiences with an Architecture for Intelligent, Reactive Agents

  • Peter Bonasso, R and James Firby, R and Gat, Erann and Kortenkamp, David and Miller, David P and Slack, Mark G
  • Lays out not only the 3T system, but gives an excellent description of the Three Layer Architecture and a slew of robotic frameworks from that period. 3T itself used a generic planner for the deliberative layer (Adversarial Planner (AP)), a sequencer which activates and deactivates skills to form a network which will accomplish the specified task (Reactive Action Packages (RAPs)), and the reactive layer executes a changing set of said skills.
  • Attach:Bonasso97Experiences3T.pdf

@article{peter1997experiences, title={Experiences with an architecture for intelligent, reactive agents}, author={Peter Bonasso, R and James Firby, R and Gat, Erann and Kortenkamp, David and Miller, David P and Slack, Mark G}, journal={Journal of Experimental \& Theoretical Artificial Intelligence}, volume={9}, number={2-3}, pages={237--256}, year={1997}, publisher={Taylor \& Francis} }

Integrating Planning and Reacting in a Heterogeneous Asynchronous Architecture for Controlling Real-World Mobile Robots

  • Gat, Erann
  • Describes ATLANTIS (A Three-Layer Architecture for Navigating Through Intricate Situations). The reactive level is based on a continuous action model, instead of the more common discrete action model (which is simpler, as the actions can just be edges in a state machine). A controller maintains these primitive activities, and is programmed in ALFA, a purpose built language that supports modules and channels. The sequencer is based on RAP, but modified to deal with activities. Finally, the deliberator performs general planning, but only advises the lower levels. (Todo: research plans-as-communications)
  • Attach:Gat92Integrating.pdf

@inproceedings{gat1992integrating, title={Integrating planning and reacting in a heterogeneous asynchronous architecture for controlling real-world mobile robots}, author={Gat, Erann}, booktitle={AAAi}, volume={1992}, pages={809--815}, year={1992} }


In Space

Spacecraft Autonomy Flight Experience: The DS1 Remote Agent Experiment

@inproceedings{bernard1999spacecraft, title={Spacecraft autonomy flight experience: The DS1 Remote Agent experiment}, author={Bernard, Douglas and Dorais, Gregory and Gamble, Edward and Kanefsky, Bob and Kurien, James and Man, G and Millar, William and Muscettola, Nicola and Nayak, Pandurang and Rajan, Kanna and others}, booktitle={Proceedings of the AIAA 1999, Albuquerque, NM}, year={1999} }

Model-Based Autonomy for the Next Generation of Robotic Spacecraft

@inproceedings{fesq2002model, title={Model-based autonomy for the next generation of robotic spacecraft}, author={Fesq, L and Ingham, M and Pekala, M and Van Eepoel, J and Watson, D and Williams, B}, booktitle={Proc. 53rd Int. Astronautical Cong. Int. Astronautical Federation (IAC-02)}, year={2002} }

CLARAty: A Collaborative Software for Advancing Robotic Technologies

@inproceedings{nesnas2007claraty, title={Claraty: A collaborative software for advancing robotic technologies}, author={Nesnas, IA}, booktitle={Proc. of NASA Science and Technology Conference}, year={2007} }

The CLARAty Architecture for Robotic Autonomy

  • Volpe, Richard and Nesnas, Issa and Estlin, Tara and Mutz, Darren and Petras, Richard and Das, Hari
  • TODO: Summary
  • Attach:Volpe01CLARAty.pdf

@inproceedings{volpe2001claraty, title={The CLARAty architecture for robotic autonomy}, author={Volpe, Richard and Nesnas, Issa and Estlin, Tara and Mutz, Darren and Petras, Richard and Das, Hari}, booktitle={Aerospace Conference, 2001, IEEE Proceedings.}, volume={1}, pages={1--121}, year={2001}, organization={IEEE} }



Contemporary Robotic Middle-wares

Verifying Architectural Design Rules of the Flight Software Product Line

  • Ganesan, Dharmalingam and Lindvall, Mikael and Ackermann, Chris and McComas, David and Bartholomew, Maureen
  • Explains how NASA's cFE was evaluated with a variety of tools to ensure that it conformed to its design specification as much as reasonable possible. Despite manual code reviews, a number of violations where revealed. These feel into a few categories: dependency, redundancy (code duplication), decomposition, visibility of secrets, variation-point interference (pre-processor directives such as #if), and interface naming conventions. The tools used are listed and false positive rates given (best quote: "It is easy to upset the development team with wrong clone data.").
  • Attach:Ganesan11VerifyingcFE.pdf

@inproceedings{ganesan2009verifying, title={Verifying architectural design rules of the flight software product line}, author={Ganesan, Dharmalingam and Lindvall, Mikael and Ackermann, Chris and McComas, David and Bartholomew, Maureen}, booktitle={Proceedings of the 13th International Software Product Line Conference}, pages={161--170}, year={2009}, organization={Carnegie Mellon University} }

Perspectives on Standardization in Mobile Robot Programming: The Carnegie Mellon Navigation (CARMEN) Toolkit

  • Montemerlo, Michael and Roy, Nicholas and Thrun, Sebastian
  • Seems to bridge the gap between Three Level Architectures and the current breed of robotic middlewares. The paper states that the basis of Carmen is modeled off of 3T, with its lowest level providing a set of low level interfaces. The middle layer, however, it dominated by navigation. The top level is reserved for user-level tasks, and a framework is provided to support user modules (which is what lands CARMEN here instead of the TLA spot).
  • Attach:Montemerlo03CARMEN.pdf

@inproceedings{montemerlo2003perspectives, title={Perspectives on standardization in mobile robot programming: The Carnegie Mellon navigation (CARMEN) toolkit}, author={Montemerlo, Michael and Roy, Nicholas and Thrun, Sebastian}, booktitle={Intelligent Robots and Systems, 2003.(IROS 2003). Proceedings. 2003 IEEE/RSJ International Conference on}, volume={3}, pages={2436--2441}, year={2003}, organization={IEEE} }

The Player/Stage Project: Tools for Multi-Robot and Distributed Sensor Systems

@inproceedings{gerkey2003player, title={The player/stage project: Tools for multi-robot and distributed sensor systems}, author={Gerkey, Brian and Vaughan, Richard T and Howard, Andrew}, booktitle={Proceedings of the 11th international conference on advanced robotics}, volume={1}, pages={317--323}, year={2003} }

Player 2.0: Toward a Practical Robot Programming Framework

  • Collett, Toby HJ and MacDonald, Bruce A and Gerkey, Brian P
  • Gives the basic architecture of the revised Player system. It explains the changes made as well as the motivations behind them. No surprises here. The system is more flexible, but remains focused on the client/server model. However, multiple servers are now allowed. We can see the genesis of many ideas incorporated into ROS.
  • Attach:Collett05Player.pdf

@inproceedings{collett2005player, title={Player 2.0: Toward a practical robot programming framework}, author={Collett, Toby HJ and MacDonald, Bruce A and Gerkey, Brian P}, booktitle={Proceedings of the Australasian Conference on Robotics and Automation (ACRA 2005)}, year={2005} }

Realtime Hybrid Task-Based Control for Robots and Machine Tools

@inproceedings{Soetens05Orocos, author={Soetens, Peter and Bruyninckx, Herman}, title={Realtime Hybrid Task-Based Control for Robots and Machine Tools}, booktitle={IEEE International Conference on Robotics and Automation}, pages={260--265}, year= 2005} }

ROS: an Open-Source Robot Operating System

  • Quigley, Morgan and Conley, Ken and Gerkey, Brian and Faust, Josh and Foote, Tully and Leibs, Jeremy and Wheeler, Rob and Ng, Andrew Y
  • TODO: Summary
  • Attach:quigley09ROS.pdf

@inproceedings{quigley2009ros, title={ROS: an open-source Robot Operating System}, author={Quigley, Morgan and Conley, Ken and Gerkey, Brian and Faust, Josh and Foote, Tully and Leibs, Jeremy and Wheeler, Rob and Ng, Andrew Y}, booktitle={ICRA workshop on open source software}, volume={3}, number={3.2}, pages={5}, year={2009} }

YARP: Yet Another Robot Platform

  • Metta, Giorgio and Fitzpatrick, Paul and Natale, Lorenzo
  • A white paper for YARP, just describes the system. A library that is linked at the user level and provides an observer model for communication over "Ports." Significantly, data buffering, serialization and sharing is handled.
  • Attach:Metta06YARP.pdf

@article{metta2006yarp, title={YARP: yet another robot platform}, author={Metta, Giorgio and Fitzpatrick, Paul and Natale, Lorenzo}, journal={International Journal on Advanced Robotics Systems}, volume={3}, number={1}, pages={43--48}, year={2006} }


Simulation

Making Time Make Sense in Robotic Simulation

  • Taylor, James R and Drumwright, Evan M and Parmer, Gabriel
  • Gives a bit of background on how robotics simulators may be written, such as the callback model (don't know any that use this) verses a component model such as Player / Stage. His own simulator (TCS?) uses a coordinator thread run at highest priority to schedule all of threads by manipulating priorities and tracking time with rdtsc.
  • Attach:Taylor14Sense.pdf

@incollection{taylor2014making, title={Making Time Make Sense in Robotic Simulation}, author={Taylor, James R and Drumwright, Evan M and Parmer, Gabriel}, booktitle={Simulation, Modeling, and Programming for Autonomous Robots}, pages={1--12}, year={2014}, publisher={Springer} }

Edit - History - Print - Recent Changes - Search
Page last modified on October 27, 2015, at 10:14 AM