Abstract
The paper presents a robotic system design methodology based on the concept of an embodied agent decomposed into communicating subsystems, whose activities are specified in terms of FSMs invoking behaviours parameterised by transition functions and terminal conditions. In the implementation phase, this specification is transformed into a system composed of a whiteboard providing communication means and logically labelled FSMs (LLFSMs) defining the system behaviour. These concepts are used to generate the code of the robot controller. The inclusion of inter-subsystem communication model completes the resulting system design with respect to our previous work that did not account for this model. Thus communication plays a central role in this presentation. The design methodology is exemplified with a rudimentary table tennis ball-collecting robot. The presented methodology and the implementation tools are suitable and beneficial for application to the design of other robotic systems.
Article PDF
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.Avoid common mistakes on your manuscript.
References
Alami, R., Chatila, R., Fleury, S., Ghallab, M., Ingrand, F.: An architecture for autonomy. Int. J. Robot. Res. 17(4), 315–337 (1998)
Arbib, M.: Handbook of Physiology – The Nervous System II. Motor Control, chap. Perceptual structures and distributed motor control, pp. 1449–1480. Wiley Online Library (1981)
Arkin, R.C.: Motor schema-based mobile robot navigation. Int. J. Robot. Res. 8, 92–112 (1989)
Arkin, R.C.: Cooperation without communication: Multiagent schema-based robot navigation. J. Robot. Syst. 9(3), 351–364 (1992)
Arkin, R.C.: Behavior-Based Robotics. MIT press, Cambdrige (1998)
Armbrust, C., Kiekbusch, L., Ropertz, T., Berns, K.: Soft Robot Control with a Behaviour-Based Architecture. In: Soft Robotics, pp 81–91. Springer (2015)
Asama, H., Ozaki, K., Matsumoto, A., Endo, I.: Development of task assignment system using communication for multiple autonomous robots. J. Robot. Mechatron. 4(2), 122–127 (1992)
Balch, T., Arkin, R.C.: Communication in reactive multiagent robotic systems. Auton. Robot. 1(1), 27–52 (1994)
Beetz, M., Mösenlechner, L., Tenorth, M.: CRAM – a Cognitive Robot Abstract Machine for Everyday Manipulation in Human Environments. In: IEEE/RSJ International Conference on Intelligent Robots and Systems, IROS, October 18–22, 2010, Taipei, Taiwan, pp. 1012–1017. IEEE (2010)
Bensalem, S., de Silva, L., Ingrand, F.R.Y.: A verifiable and correct-by-construction controller for robot functional levels. J. Softw. Eng. Robot. 2(1), 1–19 (2011)
Birman, K., Schiper, A., Stephenson, P.: Lightweight causal and atomic group multicast. ACM Trans. Comput. Syst. 9(3), 272–314 (1991)
Bonabeau, E., Dorigo, M., Theraulaz, G.: Swarm intelligence: From natural to artificial systems. Oxford university press, New York (1999)
Brooks, R.A.: A robust layered control system for a mobile robot. IEEE J. Robot. Autom. 2(1), 14–23 (1986)
Brooks, R.A.: Intelligence without reason. Artif. Intell. Crit. Concepts 3, 107–163 (1991)
Brooks, R.A.: Intelligence without representation. Artif. Intell. 47(1-3), 139–159 (1991)
Brugali, D. Software Engineering for Experimental Robotics. In: Brugali, D. (ed.) : Stable Analysis Patterns for Robot Mobility. Software Engineering for Experimental Robotics, pp 9–30. Springer Berlin Heidelberg, Berlin (2007). https://doi.org/10.1007/978-3-540-68951-5_2
Brugali, D., Agah, A., MacDonald, B., Nesnas, I.A.D., Smart, W.D. Software Engineering for Experimental Robotics. In: Brugali, D. (ed.) : Trends in robot software domain engineering. Software Engineering for Experimental Robotics, pp 3–8. Springer Berlin Heidelberg, Berlin (2007). https://doi.org/10.1007/978-3-540-68951-5_1
Cabrera-Gámez, J., Domínguez-Brito, A. C., Hernández-Sosa, D.: Sensor based intelligent robots. chap. CoolBOT: A Component-Oriented Programming Framework for Robotics, pp. 282–304. Springer Berlin / Heidelberg (2002)
Chen, D., Hexel, R., Raja, F.: Engineering Real-Time Communication through Time-Triggered Subsumption: Towards Flexibility with Incus and Llfsms. In: Maciaszek, L., Filipe, J. (eds.) 11th International Conference on Evaluation of Novel Software Approaches to Software Engineering. https://doi.org/10.5220/0005915602720281, pp 272 – 281, Rome (2016)
Chen, J., Gauci, M., Li, W., Kolling, A., Groß, R.: Occlusion-based cooperative transport with a swarm of miniature mobile robots. IEEE Trans. Robot. 31(2), 307–321 (2015). https://doi.org/10.1109/TRO.2015.2400731
Cheriton, D.R., Skeen, D.: Understanding the limitations of causally and totally ordered communication. SIGOPS Oper. Syst. Rev. 27(5), 44–57 (1993). https://doi.org/10.1145/173668.168623
Corkill, D.: Blackboard systems. AI Expert. 6(9), 40–47 (1991)
Coste-Maniere, E., Simmons, R.: Architecture, the Backbone of Robotic Systems. In: 2000. Proceedings. ICRA ’00. IEEE International Conference On Robotics and Automation, vol. 1, pp 67–72 (2000). https://doi.org/10.1109/ROBOT.2000.844041
Dudek, G., Jenkin, M., Milios, E., Wilkes, D.: A taxonomy for swarm robots. In: IROS ’93. Proceedings of the 1993 IEEE/RSJ International Conference on Intelligent Robots and Systems ’93. https://doi.org/10.1109/IROS.1993.583135 , vol. 1, pp 441–447 (1993)
Dudek, G., Jenkin, M., Milios, E., Wilkes, D.: Experiments in Sensing and Communication for Robot Convoy Navigation. In: Proceedings. 1995 IEEE/RSJ International Conference On Intelligent Robots and Systems 95. ’Human Robot Interaction and Cooperative Robots. https://doi.org/10.1109/IROS.1995.526171, vol. 2, pp 268–273 (1995)
Dudek, G., Jenkin, M.R.M., Milios, E., Wilkes, D.: A taxonomy for multi-agent robotics. Auton. Robot. 3(4), 375–397 (1996). https://doi.org/10.1007/BF00240651
Einhorn, E., Langner, T., Stricker, R., Martin, C., Gross, H.M.: MIRA - Middleware for robotic applications. In: 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems, Vilamoura. https://doi.org/10.1109/IROS.2012.6385959. http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6385959&isnumber=6385431, pp 2591–2598 (2012)
Estivill-Castro, V., Hexel, R.: Arrangements of finite-state machines - semantics, simulation, and model checking. In: Proceedings of the 1st International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD, pp. 182–189 (2013). https://doi.org/10.5220/0004317101820189
Estivill-Castro, V., Hexel, R.: Correctness by Construction with Logic-Labeled Finite-State Machines – Comparison with Event-B. In: Zhu, L., Steel, J. (eds.) Proceedings of 23Rd Australasian Software Engineering Conference (ASWEC), pp 38–47. IEEE Computer Society Conference Publishing Services (CPS), Milsons Point (2014)
Estivill-Castro, V., Hexel, R.: Simple, Not Simplistic — the Middleware of Behaviour Models. In: Filipe, J., Maciaszek, L. A. (eds.) ENASE 10 International Conference on Evaluation of Novel Approaches to Software Engineering, pp 189–196. INSTCC, SciTePress, Av. Dom Manuel i, 2910-592, Setúbal (2015)
Estivill-Castro, V., Hexel, R., Lusty, C.: High Performance Relaying of C++ 11 Objects across Processes and Logic-Labeled Finite-State Machines. In: Brugali, D., Broenink, J.F., Kroeger, T., MacDonald, B.A. (eds.) Simulation, Modeling, and Programming for Autonomous Robots - 4th International Conference, SIMPAR 2014, Lecture Notes in Computer Science, vol. 8810, pp 182–194. Springer (2014)
Estivill-Castro, V., Hexel, R., Rosenblueth, D.A. Wang, P. (ed.): Efficient Model Checking and FMEA Analysis with Deterministic Scheduling of Transition-Labeled Finite-State Machines. IEEE Computer Society Conference Publishing Services (CPS), Wuhan (2012)
Estivill-Castro, V., Hexel, R., Rosenblueth, D.A.: Efficient Modelling of Embedded Software Systems and Their Formal Verification. In: Leung, K. R., Muenchaisri, P. (eds.) The 19Th Asia-Pacific Software Engineering Conference (APSEC 2012), pp 428–433. IEEE Computer Society, Conference Publishing Services, Hong Kong (2012)
Farinelli, A., Iocchi, L., Nardi, D.: Multirobot systems: a classification focused on coordination. IEEE Trans. Syst. Man Cybern. Part B (Cybern.) 34(5), 2015–2028 (2004). https://doi.org/10.1109/TSMCB.2004.832155
Figat, M., Zieliński, C., Hexel, R.: Fsm Based Specification of Robot Control System Activities. In: 2017 11Th International Workshop on Robot Motion and Control (Romoco), pp. 193–198. https://doi.org/10.1109/RoMoCo.2017.8003912 (2017)
Fleury, S., Herrb, M., Chatila, R.: Genom: A tool for the specification and the implementation of operating modules in a distributed robot architecture. Proc. 1997 IEEE/RSJ Int. Conf. Intell. Robot. Syst. (IROS’97) 2, 842–849 (1997). https://doi.org/10.1109/IROS.1997.655108
Fox, C., Evans, M., Pearson, M., Prescott, T.: Towards hierarchical blackboard mapping on a whiskered robot. Robot. Auton. Syst. 60(11), 1356–1366 (2012). https://doi.org/10.1016/j.robot.2012.03.005. Towards Autonomous Robotic Systems 2011
Gat, E.: On Three-Layer Architectures. In: Kortenkamp, D., Bonnasso, R. P., Murphy, R. (eds.) Artificial Intelligence and Mobile Robots, pp 195–210. AAAI Press, Cambridge (1998)
Giffin, S.d.: A taxonomy of Internet applications for project management communication. Proj. Manag. J. 33 (4), 39–47 (2002)
Group, O.M.: Data distribution service (dds). https://www.omg.org/spec/DDS/1.4
Hayes-Roth, B.: A blackboard architecture for control. Artif. Intell. 26(3), 251–321 (1985)
Hayes-Roth, B.: A blackboard architecture for control. In: Bond, A.H., Gasser, L. (eds.) Distributed Artificial Intelligence, pp 505–540. Morgan Kaufmann Publishers Inc., San Francisco (1988). http://dl.acm.org/citation.cfm?id=60204.60241
Hayes-Roth, B., Hayes-Roth, F.: A cognitive model of planning. Cogn. Sci. 3(4), 275–310 (1979)
Haykin, S.: Communication Systems, 5th edn. Wiley Publishing, Hoboken (2009)
Huntsberger, T.L., Trebi-Ollennu, A., Aghazarian, H., Schenker, P.S., Pirjanian, P., Nayar, H.D.: Distributed control of multi-robot systems engaged in tightly coupled tasks. Auton. Robot. 17 (1), 79–92 (2004). https://doi.org/10.1023/B:AURO.0000032939.08597.62
Jennings, N.R., Sycara, K., Wooldridge, M.: A roadmap of agent research and development. Auton. Agents Multi-Agent Syst. 1(1), 7–38 (1998). https://doi.org/10.1023/A:1010090405266
Joukoff, D., Estivill-Castro, V., Hexel, R., Lusty, C.: Fast MAV Control by Control/Status OO-Messages on Shared-Memory Middleware. In: Robot Intelligence Technology and Applications 4 - Results from the 4Th International Conference on Robot Intelligence Technology and Applications, RiTA 2015, Advances in Intelligent Systems and Computing, Vol. 345, pp. 195–211. Springer (2015)
Jung, D., Zelinsky, A.: Grounded symbolic communication between heterogeneous cooperating robots. Auton. Robot. 8(3), 269–292 (2000). https://doi.org/10.1023/A:1008929609573
Kiekbusch, L., Armbrust, C., Berns, K.: Formal verification of behaviour networks including sensor failures. Robot. Auton. Syst. 74, 331–339 (2015)
Kiekbusch, L., Armbrust, C., Berns, K.: Formal Verification of Behaviour Networks including Hardware Failures. In: Intelligent Autonomous Systems 13, pp. 1571–1582. Springer (2016)
Kopetz, H.: Should responsive systems be event-triggered or time-triggered? IEICE Trans. Inf. Syst. 76(11), 1325 (1993)
Kopetz, H.: Real-Time Systems - Design Principles for Distributed Embedded Applications, 2nd edn. Real-Time Systems Series. Springer, Berlin (2011)
Kopetz, H., Bauer, G.: The time-triggered architecture. Proc. IEEE 91(1), 112–126 (2003)
Kornuta, T., Zieliński, C.: Robot control system design exemplified by multi-camera visual servoing. J. Intell. Robotic Syst. 77(3–4), 499–524 (2013). https://doi.org/10.1007/s10846-013-9883-x
Kortenkamp, D., Simmons, R.: Robotic Systems Architectures and Programming. In: Khatib, O., Siciliano, B. (eds.) Springer Handbook of Robotics, pp 187–206. Springer (2008)
Kortenkamp, D., Simmons, R., Brugali, D.: Robotic Systems Architectures and Programming. In: Siciliano, B., Khatib, O. (eds.) Springer Handbook of Robotics. 2nd edn., pp 283–306. Springer (2016)
Lamport, L.: Using time instead of timeout for fault-tolerant distributed systems. ACM Trans. Progr. Lang. Syst. 6, 254–280 (1984)
Lee, C., Hwang, J., Lee, J., Ahn, C., Suh, B., Shin, D.H., Nah, Y., Kim, D.H.: Self-Describing and Data Propagation Model for Data Distribution Service. In: Brinkschulte, U., Givargis, T., Russo, S. (eds.) Software Technologies for Embedded and Ubiquitous Systems, pp 102–113. Springer, Berlin (2008)
Lumelsky, V.J., Stepanov, A.A.: Path-planning strategies for a point mobile automaton moving amidst obstacles of arbitrary shape. Algorithmica 2, 403–430 (1987)
Lumia, R., Fiala, J., Wavering, A.: The nasrem robot control system standard. Robot. Comput.-Integr. Manuf. 6(4), 303 – 308 (1989). https://doi.org/10.1016/0736-5845(89)90120-8. Special Issue Robots in Manufacturing
Lusty, C.: Cooperative Time-Triggered Wireless Communication in Mobile Robotics. Honours thesis, Griffith University (2012)
Lyons, D.M.: Prerational intelligence, Studies in cognitive systems, vol. 2: Adaptive behavior and intelligent systems without symbols and logic, chap. A Schema-Theory Approach to Specifying and Analysing the Behavior of Robotic Systems, pp. 51–70 Kluwer Academic (2001)
Lyons, D.M., Arbib, M.A.: A formal model of computation for sensory-based robotics. IEEE Trans. Robot. Autom. 5(3), 280–293 (1989). https://doi.org/10.1109/70.34764
Majcher, P.: Autonomous Mobile Robot for Collecting Table Tenis Balls (Polish). Master’s thesis, Warsaw University of Technology (2012)
Matarić, M.J.: Issues and approaches in the design of collective autonomous agents. Robot. Auton. Syst. 16 (2), 321 – 331 (1995). https://doi.org/10.1016/0921-8890(95)00053-4
Matarić, M., Nilsson, M., Simsarian, K.: Cooperative Multi-Robot Box-Pushing. In: Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 556–561 (1995)
MiPal: Downloads (checked: 23 March 2018). http://mipal.net.au/downloads.php
Nesnas, I.A.D. Software Engineering for Experimental Robotics. In: Brugali, D (ed.) : The CLARAty project: Coping with hardware and software heterogeneity, pp 31–70. Springer Berlin Heidelberg, Berlin (2007). https://doi.org/10.1007/978-3-540-68951-5_3
Newell, A.: Some Problems of Basic Organization in Problem-Solving Programs. In: Yovitz, M., Jacobi, G., Goldstein, G. (eds.) Self-Organizing Systems, pp 393–423. Spartan, Washington (1962)
Nii, H.P.: Blackboard systems, part two: Blackboard application systems, blackboard systems from a knowledge engineering perspective. AI Mag. 7, 82–106 (1986)
Nilsson, N.: Shakey the robot, technical note 323. Technical report, AI Center, SRI International, 333 Ravenswood Ave., Menlo Park, CA, pp. 94025 (1984)
Occello, M., Chaouiya, C., Thomas, M.C.: A Parallel Blackboard Model for Mobile Robotics control, pp 439–447. Springer Netherlands, Dordrecht (1992). https://doi.org/10.1007/978-94-011-2526-0_51
Pang, G.K., Shen, H.C.: Intelligent control of an autonomous mobile robot in a hazardous material spill accident — a blackboard structure approach. Robot. Auton. Syst. 6(4), 351–365 (1990)
Parker, L.: ALLIANCE: An architecture for fault tolerant multirobot cooperation. IEEE Trans. Robot. Autom. 14(2), 220–240 (1998)
Parker, L., Rus, D., Sukhatme, S.G.: Multiple Mobile Robot Systems. In: Khatib, O., Siciliano, B. (eds.) Springer Handbook of Robotics, pp 1335–1384. Springer (2016)
Parker, L.E.: Alliance: an architecture for fault tolerant, cooperative control of heterogeneous mobile robots. In: IROS ’94. Proceedings of the IEEE/RSJ/GI International Conference on Intelligent Robots and Systems ’94. Advanced Robotic Systems and the Real World, vol. 2, pp. 776–783 (1994)
Postel, J.: Transmission Control Protocol, RFC 793. Technical report, University of Southern California, Information Sciences Institute. https://tools.ietf.org/html/rfc793 (1981)
Quigley, M., Gerkey, B., Conley, K., Faust, J., Foote, T., Leibs, J., Berger, E., Wheeler, R., Ng, A.: ROS: an open-source Robot Operating System. In: Proceedings of the Open-Source Software workshop at the International Conference on Robotics and Automation (ICRA) (2009)
ROS: Parameter Server. http://wiki.ros.org/ParameterServer
ROS: Technical Overview. http://wiki.ros.org/ROS/TechnicalOverview
Rubenstein, M., Cornejo, A., Nagpal, R.: Programmable self-assembly in a thousand-robot swarm. Science 345(6198), 795–799 (2014). https://doi.org/10.1126/science.1254295
Schwartz, D.G.: Cooperating heterogeneous systems. Springer Science & Business Media, NO (1995)
Shannon, C.E., Weaver, W.: A Mathematical Theory of Communication. University of Illinois Press, Baltimore (1963)
Sommerville, I.: Software Engineering, 9th edn. Addison-Wesley Publishing Company, USA (2010)
Song, D., Goldberg, K., Chong, N.Y.: Networked Robots. In: Khatib, O., Siciliano, B. (eds.) Springer Handbook of Robotics, pp 1109–1131. Springer (2016)
Tanenbaum, A.S., Woodhull, A.S.: Operating Systems Design and Implementation, 3rd edn. Prentice-Hall, Inc., Upper Saddle River (2005)
Trianni, V., Nolfi, S., Dorigo, M.: Cooperative hole avoidance in a swarm-bot. Robot. Auton. Syst. 54 (2), 97–103 (2006). Intelligent Autonomous Systems 8th Conference on Intelligent Autonomous Systems (IAS-8)
Ueyama, T., Fukuda, T., Arai, F.: Configuration of communication structure for distributed intelligent robotic system. Proc. - IEEE Int. Conf. Robot. Autom. 1, 807–812 (1992)
Yamada, S., Saito, J.: Adaptive action selection without explicit communication for multirobot box-pushing. IEEE Trans. Syst. Man Cybern. Part C 31(3), 398–404 (2001)
Zieliński, C.: Description of semantics of robot programming languages. Mechatronics 2(2), 171–198 (1992)
Zieliński, C.: A Quasi-Formal Approach to Structuring Multi-Robot System Controllers. In: Second International Workshop on Robot Motion and Control, Romoco’01, pp. 121–128 (2001)
Zieliński, C., Figat, M.: Robot System Design Procedure Based on a Formal Specification. In: Recent Advances in Automation, Robotics and Measuring Techniques, Advances in Intelligent Systems and Computing (AISC), vol. 440, pp. 511–522. Springer (2016). https://doi.org/10.1007/978-3-319-29357-8_45
Zieliński, C., Kornuta, T.: Diagnostic requirements in multi-robot systems. In: Intelligent Systems in Technical and Medical Diagnostics, vol. 230, pp. 345–356. Springer (2014). https://doi.org/10.1007/978-3-642-39881-0_29
Zieliński, C., Kornuta, T., Winiarski, T.: A Systematic Method of Designing Control Systems for Service and Field Robots. In: 19-Th IEEE International Conference on Methods and Models in Automation and Robotics, MMAR, pp. 1–14. IEEE (2014). https://doi.org/10.1109/MMAR.2014.6957317
Zieliński, C., Trojanek, P.: Stigmergic cooperation of autonomous robots. J. Mech. Mach. Theory 44, 656–670 (2009)
Zieliński, C., Winiarski, T.: General specification of multi-robot control system structures. Bullet. Pol. Acad. Sci. – Techn. Sci. 58(1), 15–28 (2010). https://doi.org/10.2478/v10175-010-0002-x
Zieliński, C., Winiarski, T.: Motion generation in the MRROC++ robot programming framework. Int. J. Robot. Res. 29(4), 386–413 (2010). https://doi.org/10.1177/0278364909348761
Zieliński, C., Winiarski, T., Kornuta, T.: Agent-based structures of robot systems. In: K. J., et al. (eds.) Trends in Advanced Intelligent Control, Optimization and Automation, Advances in Intelligent Systems and Computing, vol. 577, pp 493–502 (2017). https://doi.org/10.1007/978-3-319-60699-6_48
Acknowledgments
This work was supported by the Erasmus Mundus Action 2 PANTHER (Pacific Atlantic Network for Technical Higher Education and Research) grant and by the National Science Centre, Poland (grant number 2017/25/N/ST7/00900).
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher’s Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.
About this article
Cite this article
Zieliński, C., Figat, M. & Hexel, R. Communication Within Multi-FSM Based Robotic Systems. J Intell Robot Syst 93, 787–805 (2019). https://doi.org/10.1007/s10846-018-0869-6
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10846-018-0869-6