Adaptive agent abstractions to speed up spatial agent-based simulations
Introduction
Agent Based Models (ABM) provide a natural means to describe complex systems, as agents and their properties have a convenient mapping from the entities in real world systems. The interaction of agents in ABM gives rise to an interesting concept in the study of complex systems: emergent phenomena, higher-level properties or behaviours that are not easily traceable in the lower-level entities [1]. Moreover, ABM capture discontinuity in individual behaviours, which is difficult when modelling with an alternative like differential equations [2].
The flexibility of ABM comes at a computational cost. As the granularity of a model increases, so do the computational resources needed to simulate all of the interactions among the agents, which directly translates into longer simulation times. Some researchers have restricted agent interactions to be only among neighbouring agents in a two or three-dimensional lattice [3], [4]. However, changing the interaction topography among agents is a necessary feature in some models, e.g. developmental processes [5]. Others have utilised parallel computing to meet the computational demands of ABM [6], [7]. Finally, many researchers have proposed super-individuals [8]: agents that encompass other agents, e.g. a single super red blood cell agent that subsumes and represents thousands of individual red blood cell agents.
In this paper, we extend our previous work by proposing another type of abstraction that aims to build adaptive hierarchies of spatial agents during the course of the simulations. To this end, observer agents are immersed in the simulation to monitor groups of agents. The observers try to detect a cluster of agents that have adhered to one another for a sufficiently long duration of time. Once an observer finds such a cluster, it abstracts the agents into a single meta-agent that subsumes both the behaviour and the structure of the individual agents in that cluster. As the dynamics of the simulation change, groups of agents may no longer stick together and therefore the observer needs to break down those meta-agents into their constituent individual agents. An unsupervised validation mechanism ensures the validity of meta-agents by periodically monitoring whether they should continue to subsume their agents. Since meta-agents have the same basic definition as the individual agents, the same abstraction process is applied on them, thus making adaptive abstraction hierarchies during the course of the simulation.
The remainder of this paper is organised as follows. Section 2 reviews related works both in solving the problem of scalability and in dealing with higher-order patterns in agent-based simulations. Section 3 gives a formal definition, along with a computational timing analysis of our component-based agent framework – LINDSAY Composer. Section 4 presents our abstraction framework with a detailed description of the involved steps and algorithms. We conclude this section with a computational timing analysis of our abstraction. In order to demonstrate the effectiveness of this approach, we apply it to an agent-based blood coagulation simulation and report the results in Section 5. Finally, Section 6 provides a comparison between this work and our previous work, and presents the concluding remarks.
Section snippets
Related work
Agent based models operate at the individual level and describe potentially numerous behaviours for all of their constituent units. Simulating all of the individual behaviours is therefore considered to be extremely computationally intensive [2], [9], [10], [11], [12]. It has been suggested that abstracting higher-order patterns could reduce the computational complexity of ABM without introducing much overhead [13], [12], [14]. In this section, we briefly describe the attempts made to address
Agent formalism
In this section, we formally describe our concept of agents. A formal definition of agents helps us clarify our component-based agent architecture, e.g. how we define an agent with regards to its constituent components, the interdependency among components, etc. It further provides a basis to analyse the computational complexity of our simulations. The timing analysis is used in the next section to study the benefit of the abstraction mechanism in improving the run-time of a simulation.
We use a
Adaptive abstraction of spatial agents
The goal of the proposed abstraction is to adaptively reduce the number of agents – N in Eq. (12) – during the course of the simulation. We immerse observer agents, or observers, in the simulation to monitor the agents and learn their adhesion patterns. Observers are defined the same way any other agent in the system is defined, i.e. through Eq. (3) with only one behaviour component. The behaviour engine executes the rules in the observers at each time step during the course of the simulation.
Experiments
The proposed self-organised learning and abstraction method can be employed in any agent-based simulation in which individual agents form groups of agents by sticking together spatially. Biological simulations are particularly suitable applications as biological entities are formed from the aggregation of smaller entities. Our agent-based framework, LINDSAY Composer is a part of LINDSAY Virtual Human [36] – a 3-dimensional model of human anatomy and physiology. Blood coagulation is one of the
Discussion and conclusion
We introduced the concept of abstraction to boost the speed of agent-based simulations by means of a light-weight observer agent that monitors the simulation space and abstracts groups of individual agents to higher-order meta-agents which in turn are subject to further abstractions. While the notion of observers, along with the steps to do an abstraction are shared between this work and our previous work [14], there are substantial differences between them:
- 1.
The agent framework is explicitly
Acknowledgement
This work has been partially supported by the Natural Sciences and Engineering Research Council of Canada.
References (36)
- et al.
Adaptive algorithms for the dynamic distribution and parallel execution of agent-based models
Journal of Parallel and Distributed Computing
(2006) - et al.
Super-individuals a simple solution for modelling large populations on an individual basis
Ecological Modelling
(1995) - et al.
Key challenges in agent-based modelling for geo-spatial simulation
Computers, Environment and Urban Systems
(2008) - et al.
An aggregation algorithm for increasing the efficiency of population models
Ecological Modelling
(1993) Blood coagulation
Lancet
(2000)The Music of Life
(2006)Agent-based modeling: methods and techniques for simulating human systems
Proceedings of the National Academy of Sciences of the United States of America
(2002)- et al.
Cross-scale, cross-pathway evaluation using an agent-based non-small cell lung cancer model
Bioinformatics (Oxford, England)
(2009) - et al.
Multi-agent modeling of the immune system: the situated cellular agents approach
Multiagent and Grid Systems – An International Journal
(2007) Tooth morphogenesis in vivo, in vitro, and in silico
Current Topics in Developmental Biology
(2008)
A framework for megascale agent based model simulations on graphics processing units
Journal of Artificial Societies and Social Simulation
Scalability in distributed simulations of agent-based models
Optimization of swarm-based simulations
ISRN Artificial Intelligence
Abstraction of agent interaction processes: towards large-scale multi-agent models
Simulation: Transactions of the Society for Modeling and Simulation International
GPGPU: general-purpose computation on graphics hardware
Principal component analysis
Wiley Interdisciplinary Reviews: Computational Statistics
Cited by (22)
Terrain visualization information integration in agent-based military industrial logistics simulation
2022, Journal of Industrial Information IntegrationCitation Excerpt :These innovative studies reflect the significant progress in the fields. In the field of agent-based simulation, related technologies developed by do Nascimento et al. [31], Gao et al. [3,26,55], Moya et al. [38], Shirazi et al. [39], and Sokolov et al. [36] have been proven to be useful and effective in describing social system behavior. Agent-based simulation has been successfully used to analyze supply chain [56] and knowledge management for industrial information integration [57], and to simulate the customer behavior and evolution strategy [58].
Optimal decisions for operations management of BDAR: A military industrial logistics data analytics perspective
2019, Computers and Industrial EngineeringLifeBrush: Painting, simulating, and visualizing dense biomolecular environments
2019, Computers and Graphics (Pergamon)Agent action diagram: Toward a model for emergency management system
2019, Simulation Modelling Practice and TheoryCitation Excerpt :The ABM methodology relies on a population of autonomous entities called agents which behave according to rules and by interacting with other agents [57]. Agent-based models provide a natural means to describe complex systems, as agents and their properties have a convenient mapping from the entities in the real world systems [58]. The internal members of EMS run with autonomy and interaction.
A synthetic computational environment: To control the spread of respiratory infections in a virtual university
2018, Physica A: Statistical Mechanics and its ApplicationsModel-independent comparison of simulation output
2017, Simulation Modelling Practice and TheoryCitation Excerpt :Of these, ABM provides an instinctive approach for describing many complex systems, as agents are regularly a suitable match to the individual and heterogeneous objects composing these systems. The local interactions of these objects, as well as their individual and adaptive behavior, are often critical for understanding global system response [4,5]. ABMs are commonly implemented as a stochastic process, and thus require multiple runs (observations) with distinct pseudo-random number generator (PRNG) seeds in order to have appropriate sample sizes for testing hypotheses and differentiating multiple scenarios under distinct parameterizations [6].