Reusable Robot Software and the Player/Stage Project

The authors of several well-known robot software systems met at the ICRA 2005 workshop on the Principle and Practice of Software Development in Robotics. The meeting was held to examine the role of software engineering concepts and methods in experimental robotics applications. Everyone at the workshop agreed that extensive reuse of robot software should help to make robot development faster, easier and more efficient, and that this was highly desirable. There exist many robot programming tools and frameworks designed to promote this idea, some of which have been actively developed for several years using very fine software engineering techniques. However, very few supposedly reusable systems are extensively used outside their home institution or their immediate collaborators. Many well-engineered systems are never used at all. This suggests that there is more to getting code widely reused than nice code design, however principled.

[1]  Henrik I. Christensen,et al.  Tracking for following and passing persons , 2005, 2005 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[2]  Sebastian Thrun,et al.  Perspectives on standardization in mobile robot programming: the Carnegie Mellon Navigation (CARMEN) Toolkit , 2003, Proceedings 2003 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2003) (Cat. No.03CH37453).

[3]  A. Watson,et al.  OMG (Object Management Group) architecture and CORBA (common object request broker architecture) specification , 2002 .

[4]  Yinan Zhang,et al.  Ganging up: team-based aggression expands the population/performance envelope in a multi-robot system , 2006, Proceedings 2006 IEEE International Conference on Robotics and Automation, 2006. ICRA 2006..

[5]  Ken Thompson,et al.  The UNIX time-sharing system , 1974, CACM.

[6]  Richard T. Vaughan,et al.  The Player/Stage Project: Tools for Multi-Robot and Distributed Sensor Systems , 2003 .

[7]  Douglas C. Schmidt,et al.  The design of the TAO real-time object request broker , 1998, Comput. Commun..

[8]  Srinivasan Keshav,et al.  Quality of service in distributed systems , 1998, Comput. Commun..

[9]  Abraham Silberschatz,et al.  Operating System Concepts , 1983 .

[10]  Jannik Fritsch,et al.  A multi-modal object attention system for a mobile robot , 2005, 2005 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[11]  Stewart W. Wilson Knowledge Growth in an Artificial Animal , 1985, ICGA.

[12]  Chenyang Lu,et al.  Spatiotemporal query strategies for navigation in dynamic sensor network environments , 2005, 2005 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[13]  Nick Jakobi,et al.  Evolutionary Robotics and the Radical Envelope-of-Noise Hypothesis , 1997, Adapt. Behav..

[14]  Richard J. Feiertag,et al.  The Multics input/output system , 1971, OPSR.

[15]  Iwan Ulrich,et al.  VFH+: reliable obstacle avoidance for fast mobile robots , 1998, Proceedings. 1998 IEEE International Conference on Robotics and Automation (Cat. No.98CH36146).

[16]  Wolfram Burgard,et al.  Robust Monte Carlo localization for mobile robots , 2001, Artif. Intell..

[17]  Guangming Xie,et al.  A tracking controller for motion coordination of multiple mobile robots , 2005, 2005 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[18]  Jim Waldo,et al.  The Jini architecture for network-centric computing , 1999, CACM.

[19]  David M. Beazley,et al.  SWIG: An Easy to Use Tool for Integrating Scripting Languages with C and C++ , 1996, Tcl/Tk Workshop.

[20]  Kurt Konolige,et al.  Centibots: Very Large Scale Distributed Robotic Teams , 2004, AAAI.

[21]  Reid Simmons,et al.  Visualization Tools for Validating Software of Autonomous Spacecraft , 1999 .

[22]  Gaurav S. Sukhatme,et al.  Most valuable player: a robot device server for distributed control , 2001, Proceedings 2001 IEEE/RSJ International Conference on Intelligent Robots and Systems. Expanding the Societal Role of Robotics in the the Next Millennium (Cat. No.01CH37180).