Investigating Patterns for the Process-Oriented Modelling and Simulation of Space in Complex Systems

Complex systems modelling and simulation is becoming increasingly important to numerous disciplines. The CoSMoS project aims to produce a unified infrastructure for modelling and simulating all sorts of complex systems, making use of design patterns and the process-oriented programming model. We provide a description of CoSMoS and present a case study into the modelling of space in complex systems. We describe how two models ‐ absolute geometric space and relational network space ‐ can be captured using processoriented techniques, and how our models can be refactored to allow efficient, distributed simulation. We identify a number of design, implementation and refactoring patterns that can be applied to future complex systems modelling problems.

[1]  Robin Milner,et al.  Communicating and mobile systems - the Pi-calculus , 1999 .

[2]  Jean-Louis Giavitto,et al.  Data Structure as Topological Spaces , 2002, UMC.

[3]  Peter Ross,et al.  Studies on the Implications of Shape-Space Models for Idiotypic Networks , 2004, ICARIS.

[4]  Duncan J. Watts,et al.  Collective dynamics of ‘small-world’ networks , 1998, Nature.

[5]  Luca Cardelli,et al.  Efficient, Correct Simulation of Biological Processes in the Stochastic Pi-calculus , 2007, CMSB.

[6]  Craig W. Reynolds Flocks, herds, and schools: a distributed behavioral model , 1998 .

[7]  Jeremy M. R. Martin,et al.  A Design Strategy for Deadlock-Free Concurrent Systems , 1997 .

[8]  Davide Sangiorgi,et al.  Communicating and Mobile Systems: the π-calculus, , 2000 .

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

[10]  Martyn Amos,et al.  An ant-based algorithm for annular sorting , 2005, 2007 IEEE Congress on Evolutionary Computation.

[11]  Carl G. Ritson,et al.  A process-oriented architecture for complex system modelling , 2010, Concurr. Comput. Pract. Exp..

[12]  A. Barabasi,et al.  Scale-free characteristics of random networks: the topology of the world-wide web , 2000 .

[13]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[14]  Jörg Roth Patterns of Mobile Interaction , 2002, Personal and Ubiquitous Computing.

[15]  César A. Hidalgo,et al.  Scale-free networks , 2008, Scholarpedia.

[16]  Murray Silverstein,et al.  A Pattern Language , 1977 .

[17]  Fiona A. C. Polack,et al.  Communicating complex systems , 2006 .

[18]  D. Garber Leibniz: Physics and philosophy , 1994 .

[19]  Janet Wiles,et al.  There's more to a model than code: understanding and formalizing in silico modeling experience , 2005, GECCO '05.

[20]  Adam T. Sampson,et al.  Barrier Synchronisation for occam-pi , 2005, PDPTA.

[21]  G. Oster,et al.  Theoretical studies of clonal selection: minimal antibody repertoire size and reliability of self-non-self discrimination. , 1979, Journal of theoretical biology.

[22]  Martin Fowler,et al.  Analysis patterns - reusable object models , 1996, Addison-Wesley series in object-oriented software engineering.

[23]  Przemyslaw Prusinkiewicz,et al.  The Algorithmic Beauty of Plants , 1990, The Virtual Laboratory.

[24]  Thomas J. Mowbray,et al.  AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis , 1998 .

[25]  Mario Schweigler,et al.  A unified model for inter- and intra-processor concurrency , 2006 .

[26]  Adam T. Sampson,et al.  Lazy Cellular Automata with Communicating Processes , 2005, CPA.

[27]  Kent L. Beck Smalltalk best practice patterns , 1996 .