Towards Specifying Swarm-Based Systems using Categorical Modeling Language: A Case Study

One of the solutions to the software complexity crisis of this era is the proposition of self-managing systems like autonomous and autonomic systems. The idea has gained wide acceptance in the IT industry but it has also introduced the challenge of specification and development of such systems. Swarm intelligence is finding its applications in research and design of self-managing systems because of the coincidental resemblance between the two domains. However, specification of a swarm-based self-managing system is faced with the difficulty of specifying the complex evolving behavior. This thesis presents an adaptation of a mathematical technique known as Category Theory to serve as a ‘reasoning and modeling’ paradigm for specifying high-level behavioral patterns of a swarm-based self-managing systems. The crux of this paradigm is the formal categorical modeling language (CML). CML syntax and semantics have been defined using an EBNF-based context-free grammar. The language helps to generate a formal specification of different scenarios/behavioral patterns of a swarm-based system. Moreover, a prototype tool has been implemented as part of this research work to serve as a modeling tool based on CML. In this thesis, NASA’s ANTS-based Prospecting Asteroid Mission (PAM) serves as a case study to analyze the applicability and usability of CML as a formal method of choice.

[1]  Panos J. Antsaklis,et al.  Towards intelligent autonomous control systems: Architecture and fundamental issues , 1989, J. Intell. Robotic Syst..

[2]  Pamela Elizabeth Clark,et al.  ANTS for Human Exploration and Development of Space , 2003, 2003 IEEE Aerospace Conference Proceedings (Cat. No.03TH8652).

[3]  Radovan Cervenka,et al.  The AML Approach to Modeling Autonomic Systems , 2006, International Conference on Autonomic and Autonomous Systems (ICAS'06).

[4]  Huaglory Tianfield,et al.  A concise introduction to autonomic computing , 2005, Adv. Eng. Informatics.

[5]  Walter Truszkowski,et al.  Verification of emergent behaviors in swarm-based systems , 2004, Proceedings. 11th IEEE International Conference and Workshop on the Engineering of Computer-Based Systems, 2004..

[6]  Joey Paquet,et al.  ASSL - Autonomic System Specification Language , 2007, 31st IEEE Software Engineering Workshop (SEW 2007).

[7]  Calin Belta,et al.  Temporal Logic Planning and Control of Robotic Swarms by Hierarchical Abstractions , 2007, IEEE Transactions on Robotics.

[8]  Salim Hariri,et al.  Autonomic Computing: An Overview , 2004, UPP.

[9]  D J Sumpter,et al.  Ants and agents: A process algebra approach to modelling ant colony behaviour , 2001, Bulletin of mathematical biology.

[10]  Marco Dorigo,et al.  Swarm intelligence: from natural to artificial systems , 1999 .

[11]  S. Maclane,et al.  General theory of natural equivalences , 1945 .

[12]  Pamela Elizabeth Clark,et al.  USE OF SWARM INTELLIGENCE IN SPACECRAFT CONSTELLATIONS FOR THE RESOURCE EXPLORATION OF THE ASTEROID BELT , 2003 .

[13]  W. Marsden I and J , 2012 .

[14]  Walter Truszkowski,et al.  Asteroid exploration with autonomic systems , 2004, Proceedings. 11th IEEE International Conference and Workshop on the Engineering of Computer-Based Systems, 2004..

[15]  Clare Dixon,et al.  On Formal Specification of Emergent Behaviours in Swarm Robotic Systems , 2005 .

[16]  J. L. Rash,et al.  Requirements of an integrated formal method for intelligent swarms , 2005, FMICS '05.

[17]  M.G. Hinchey,et al.  Autonomous and autonomic systems: a paradigm for future space exploration missions , 2006, IEEE Transactions on Systems, Man, and Cybernetics, Part C (Applications and Reviews).

[18]  Vangalur S. Alagar,et al.  Specification of Software Systems , 1998, Graduate Texts in Computer Science.

[19]  Roy Sterritt,et al.  Autonomous and Autonomic Swarms , 2005, Software Engineering Research and Practice.

[20]  Horst Herrlich,et al.  Category theory , 1979 .

[21]  Thomas A. Corbi,et al.  The dawning of the autonomic computing era , 2003, IBM Syst. J..

[22]  Samuel Eilenberg,et al.  Automata, languages, and machines. A , 1974, Pure and applied mathematics.

[23]  Jacek Malec,et al.  From process transition networks to behavior automata , 1991, Proceedings of the 1991 IEEE International Symposium on Intelligent Control.

[24]  Nicholas R. Jennings,et al.  Negotiation decision functions for autonomous agents , 1998, Robotics Auton. Syst..

[25]  Joseph R. Kiniry,et al.  The Specification of Dynamic Distributed Component Systems , 1998 .

[26]  P. E. Clark,et al.  SMART Power Systems for ANTS Missions , 2005 .

[27]  Benjamin C. Pierce,et al.  Basic category theory for computer scientists , 1991, Foundations of computing.

[28]  Mike Holcombe X-machines as a basis for dynamic system specification , 1988, Softw. Eng. J..

[29]  Jeannette M. Wing A specifier's introduction to formal methods , 1990, Computer.

[30]  T Fukuda,et al.  CONCEPT OF CELLULAR ROBOTICS , 1994 .

[31]  Petr Jan Horn,et al.  Autonomic Computing: IBM's Perspective on the State of Information Technology , 2001 .

[32]  Michael G. Hinchey,et al.  Towards an ASSL specification model for NASA swarm-based exploration missions , 2008, SAC '08.

[33]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[34]  Jeffrey O. Kephart,et al.  The Vision of Autonomic Computing , 2003, Computer.

[35]  Michael Barr,et al.  Category theory for computing science , 1995, Prentice Hall International Series in Computer Science.

[36]  Walter Truszkowski,et al.  Formal Methods for Autonomic and Swarm-based Systems , 2004, ISoLA.

[37]  Roy Sterritt,et al.  Autonomic Computing - a means of achieving dependability? , 2003, 10th IEEE International Conference and Workshop on the Engineering of Computer-Based Systems, 2003. Proceedings..

[38]  Walter F. Truszkowski,et al.  PAM: BIOLOGICALLY INSPIRED ENGINEERING AND EXPLORATION MISSION CONCEPT, COMPONENTS, AND REQUIREMENTS FOR ASTEROID POPULATION SURVEY , 2004 .

[39]  Scott A. Whitmire,et al.  Object-Oriented Design Measurement , 1997 .

[40]  Mauro Birattari,et al.  Swarm Intelligence , 2012, Lecture Notes in Computer Science.

[41]  Walter Truszkowski,et al.  NASA's Swarm Missions: The Challenge of Building Autonomous Software , 2004, IT Prof..

[42]  José Luiz Fiadeiro Categories for software engineering , 2005 .

[43]  Walter Truszkowski,et al.  Formal approaches to intelligent swarms , 2003, 28th Annual NASA Goddard Software Engineering Workshop, 2003. Proceedings..

[44]  Olga Ormandjieva,et al.  Towards a Tool Support for Specifying Complex Software Systems by Categorical Modeling Language , 2010, SERA.

[45]  Walter Truszkowski,et al.  Properties of a formal method for prediction of emergent behaviors in swarm-based systems , 2004, Proceedings of the Second International Conference on Software Engineering and Formal Methods, 2004. SEFM 2004..