A Role-Based Language for Collaborative Robot Applications

  • Sebastian Götz
  • Max Leuthäuser
  • Jan Reimann
  • Julia Schroeter
  • Christian Wende
  • Claas Wilke
  • Uwe Aßmann
Part of the Communications in Computer and Information Science book series (CCIS, volume 336)


The recent progress in robotic hard- and software motivates novel, collaborative robot applications, where multiple robots jointly accomplish complex tasks like surveillance or rescue scenarios. Such applications impose two basic challenges: (1) the complexity of specifying collaborative behavior and (2) the need for a flexible and lightweight communication infrastructure for mobile robot teams. To address these challenges, we introduce NaoText, a role-based domain-specific language for specifying collaborative robot applications. It contributes dedicated abstractions to conveniently structure and implement collaborative behavior and thus, addresses the complexity challenge. To evaluate NaoText specifications, we introduce an interpreter architecture that is based on (REST) as a lightweight and flexible infrastructure for communication among robot teams. We exemplify the application of NaoText using an illustrative example of robots collaborating in a soccer game and discuss benefits and challenges for our approach compared to state-of-the-art in robot programming.


Humanoid Robot Simple Object Access Protocol Common Object Request Broker Architecture Robot Platform Robot Team 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Arumugam, R., Enti, V., Bingbing, L., Xiaojun, W., Baskaran, K., Kong, F.F., Kumar, A., Meng, K.D., Kit, G.W.: DAvinCi: A cloud computing framework for service robots. In: IEEE International Conference on Robotics and Automation (ICRA 2010), pp. 3084–3089 (2010)Google Scholar
  2. 2.
    Bachman, C., Daya, M.: The role concept in data models. In: Proceedings of the 3rd Conference on Very Large Data Bases (VLDB), pp. 464–476 (1977)Google Scholar
  3. 3.
    Baer, P.A., Reichle, R.: Communication and Collaboration in Heterogeneous Teams of Soccer Robots, ch.1, pp. 1–28. Tech Education and Publishing, Vienna (2007)Google Scholar
  4. 4.
    Baer, P.A., Reichle, R., Geihs, K.: The Spica Development Framework - Model-Driven Software Development for Autonomous Mobile Robots. In: Proceedings of International Conference on Intelligent Autonomous Systems (IAS 2010), pp. 211–220. IAS Society (2008)Google Scholar
  5. 5.
    Balzer, S., Gross, T.R., Eugster, P.T.: A Relational Model of Object Collaborations and Its Use in Reasoning About Relationships. In: Bateni, M. (ed.) ECOOP 2007. LNCS, vol. 4609, pp. 323–346. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  6. 6.
    Cardozo, E., Guimaraes, E.G., Rocha, L.A., Souza, R.S., Paolieri Neto, F., Pinho, F.: A platform for networked robotics. In: Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2010), Taiwan, pp. 1000–1005 (2010)Google Scholar
  7. 7.
    Chaimowicz, L., Campos, M., Kumar, V.: Dynamic role assignment for cooperative robots. In: Proceedings of the IEEE International Conference on Robotics and Automation (ICRA 2002), pp. 293–298. IEEE (2002)Google Scholar
  8. 8.
    Chen, Y., Bai, X.: On Robotics Applications in Service-Oriented Architecture. In: 28th International Conference on Distributed Computing Systems Workshops (ICDCS 2008), pp. 551–556 (2008)Google Scholar
  9. 9.
    Chen, Y., Du, Z., Garcia-Acosta, M.: Robot as a Service in Cloud Computing. In: IEEE International Workshop on Service-Oriented System Engineering, pp. 151–158 (2010)Google Scholar
  10. 10.
    Dvinge, N., Schultz, U., Christensen, D.: Roles and Self-Reconfigurable Robots. In: Roles 2007, pp. 17–26 (2007)Google Scholar
  11. 11.
    Edwards, R., Parker, L.E., Resseguie, D.R.: Robopedia: Leveraging Sensorpedia for Web-Enabled Robot Control. In: Proceedings of 8th IEEE International Conference on Pervasive Computing and Communications Workshops (PERCOM 2010), pp. 183–188 (2010)Google Scholar
  12. 12.
    Erl, T.: Service-oriented architecture: Concepts, Technology, and Design. Prentice Hall PTR (2005)Google Scholar
  13. 13.
    Ernst, M., Kaplan, C., Chambers, C.: Predicate Dispatching: A Unified Theory of Dispatch. In: Jul, E. (ed.) ECOOP 1998. LNCS, vol. 1445, pp. 186–211. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  14. 14.
    Flückiger, L., To, V., Utz, H.: Service-Oriented Robotic Architecture Supporting a Lunar Analog Test. In: International Symposium on Artificial Intelligence, Robotics, and Automation in Space, iSAIRAS (2008)Google Scholar
  15. 15.
    Guarino, N., Welty, C.A.: A Formal Ontology of Properties. In: Dieng, R., Corby, O. (eds.) EKAW 2000. LNCS (LNAI), vol. 1937, pp. 97–112. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  16. 16.
    Ha, Y.-G., Sohn, J.-C., Cho, Y.-J.: Service-Oriented Integration of Networked Robots with Ubiquitous Sensors and Devices using the Semantic Web Services Technology. In: IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2005), pp. 3947–3952 (2005)Google Scholar
  17. 17.
    Herrmann, S.: A Precise Model for Contextual Roles: The Programming Language ObjectTeams/Java. Applied Ontology 2(2), 181–207 (2007)Google Scholar
  18. 18.
    Quigley, M., Conley, K., Gerkey, B.P., Faust, J., Foote, T., Leibs, J., Wheeler, R., Ng, A.Y.: ROS: an open-source Robot Operating System. In: ICRA Workshop on Open Source Software (2009)Google Scholar
  19. 19.
    Reenskaug, T., Wold, P., Lehne, O.: Working with objects - The OOram Software Engineering Method. In: TASKON (1995)Google Scholar
  20. 20.
    Remy, S.L., Blake, M.B.: Distributed Service-Oriented Robotics. IEEE Internet Computing 15, 70–74 (2011)CrossRefGoogle Scholar
  21. 21.
    Riehle, D., Gross, T.: Role model based framework design and integration. In: Proceedings of the 13th ACM SIGPLAN Conference on Object-oriented Programming, Systems, Languages, and Applications (OOPSLA 1998), pp. 117–133. ACM, New York (1998)CrossRefGoogle Scholar
  22. 22.
    Schultz, U.P., Christensen, D.J., Stoy, K.: A domain-specific language for programming self-reconfigurable robots. In: Workshop on Automatic Program Generation for Embedded Systems (APGES), pp. 28–36 (October 2007)Google Scholar
  23. 23.
    Steimann, F.: On the representation of roles in object-oriented and conceptual modelling. IEEE Transactions on Data and Knowledge Engineering 35(1), 83–106 (2000)CrossRefzbMATHGoogle Scholar
  24. 24.
    Trifa, V.M., Cianci, C.M., Guinard, D.: Dynamic Control of a Robotic Swarm using a Service-Oriented Architecture. In: 13th International Symposium on Artificial Life and Robotics, AROB 2008 (2008)Google Scholar
  25. 25.
    Wu, B., Zhou, B.-H., Xi, L.-F.: Remote multi-robot monitoring and control system based on MMS and web services. Industrial Robot: An International Journal 34, 225–239 (2007)CrossRefGoogle Scholar
  26. 26.
    Yokota, K., Ozaki, K., Watanabe, N., Matsumoto, A., Koyama, D., Ishikawa, T., Kawabata, K., Kaetsu, H., Asama, H.: UTTORI United: Cooperative Team Play Based on Communication. In: Asada, M., Kitano, H. (eds.) RoboCup 1998. LNCS (LNAI), vol. 1604, pp. 479–484. Springer, Heidelberg (1999)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Sebastian Götz
    • 1
  • Max Leuthäuser
    • 1
  • Jan Reimann
    • 1
  • Julia Schroeter
    • 1
  • Christian Wende
    • 1
  • Claas Wilke
    • 1
  • Uwe Aßmann
    • 1
  1. 1.Institut für Software- und MultimediatechnikTechnische Universität DresdenDresdenGermany

Personalised recommendations