Dynamic state charts: Composition and coordination of complex robot behavior and reuse of action plots

One of the challenges in service robotics is the integration and coordination of algorithms and abilities to make a robot perform complex tasks. Task experts of a domain should be able to compose more complex tasks (e.g. make coffee) out of basic tasks (e.g. first detect cup, grasp it,...) without the need to know about their details. State charts are adequate for robot behavior coordination in many applications but lack dynamic mechanisms to manage the complexity of real world tasks. This paper proposes Dynamic State Charts for composition and coordination of complex robot behavior. Dynamic states refine their content (sub behaviors) to execute from alternatives at runtime to manage the complexity of real world tasks. Reusable task plots are bundled with software components and are provided in a repository ("robot app store"). Domain experts can reuse these bundles off-the-shelf in a building blocks manner for their specific application. This supports the separation of' roles during the development process.

[1]  Robert James Firby,et al.  Adaptive execution in complex dynamic worlds , 1989 .

[2]  Max Risler,et al.  Behavior control for single and multiple autonomous agents based on hierarchical finite state machines , 2010 .

[3]  Herman Bruyninckx,et al.  Coordinating Robotic Tasks and Systems with rFSM Statecharts , 2012 .

[4]  Fabrice R. Noreils Integrating error recovery in a mobile robot control system , 1990, Proceedings., IEEE International Conference on Robotics and Automation.

[5]  Christian Schlegel,et al.  Dynamic State Charts: composition and coordination of complex robot behavior and reuse of action plots , 2013, 2013 IEEE Conference on Technologies for Practical Robot Applications (TePRA).

[6]  Stefan Holzer,et al.  Towards autonomous robotic butlers: Lessons learned with the PR2 , 2011, 2011 IEEE International Conference on Robotics and Automation.

[7]  Herman Bruyninckx,et al.  The BRICS component model: a model-based development paradigm for complex robotics software systems , 2013, SAC '13.

[8]  Christian Schlegel,et al.  Managing execution variants in task coordination by exploiting design-time models at run-time , 2011, 2011 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[9]  Anthony J. H. Simons On the Compositional Properties of UML Statechart Diagrams , 2000, Rigorous Object-Oriented Methods.

[10]  Morgan Quigley,et al.  ROS: an open-source Robot Operating System , 2009, ICRA 2009.

[11]  Zentrum für angewandte SmartSoft The State Management of a Component , 2011 .

[12]  R. Dillmann,et al.  Design of the planner of team AnnieWAY’s autonomous vehicle used in the DARPA Urban Challenge 2007 , 2008, 2008 IEEE Intelligent Vehicles Symposium.

[13]  Ian Graham,et al.  30 Things that Go Wrong in Object Modelling with UML 1.3 , 1999, Behavioral Specifications of Businesses and Systems.

[14]  J. G. Hurdus,et al.  Behavioral programming with hierarchy and parallelism in the DARPA urban challenge and robocup , 2008 .

[15]  Herman Bruyninckx,et al.  Open robot control software: the OROCOS project , 2001, Proceedings 2001 ICRA. IEEE International Conference on Robotics and Automation (Cat. No.01CH37164).

[16]  R. James Firby Task Networks for Controlling Continuous Processes , 1994, AIPS.

[17]  Bernhard Nebel,et al.  The FF Planning System: Fast Plan Generation Through Heuristic Search , 2011, J. Artif. Intell. Res..

[18]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[19]  Moritz Tenorth,et al.  RoboEarth - A World Wide Web for Robots , 2011, ICRA 2011.

[20]  Alexander Ferrein,et al.  A Lua-based Behavior Engine for Controlling the Humanoid Robot Nao , 2009, RoboCup.

[21]  Qing Li,et al.  Unified Modeling Language , 2009 .

[22]  Christian Schlegel,et al.  Robotic Software Systems: From Code-Driven to Model-Driven Software Development , 2012 .