Data-parallel structural optimisation in agent-based modelling : a thesis presented in partial fulfilment of the requirements for the degree of Doctor of Philosophy in Computer Science at Massey University, Albany, New Zealand

Thumbnail Image
Open Access Location
Journal Title
Journal ISSN
Volume Title
Massey University
The Author
AGENT-BASED MODELLING (ABM) IS PARTICULARLY SUITABLE for aiding analysis and producing insight in a range of domains where systems have constituent entities which are autonomous, interactive and situated. Decentralised control and irregular communication patterns among these make such models difficult to simulate and even more so to understand. However, the value in this methodology lies in its ability to formulate systems naturally, not only generating the desired macroscopic phenomena, but doing so in an elegant manner. With these advantages, ABM has been enjoying widespread and sustained increasing use. It is then reasonable to seek advances in the field of ABM which would improve productivity, comparability, and ease of implementation. Much work has been done towards these, notably in terms of design methodology, reporting, languages and optimisation. Three issues which remain despite these efforts concern the efficient construction, performance and calibration of agent-based models. Constructing a model involves selecting agents, their attributes, behaviours, interaction rules, and environment, but it also demands a certain level of programming ability. This learning curve stymies research effort from disciplines unrelated to computer science. It is also not clear that one methodology and software package is suitable for all circumstances. Domain-specific languages (DSLs) make development much simpler for their application area. Agent-based model simulation sometimes suffer tremendously from performance issues. Models of situations such as algal cultivation, international markets and pedestrians in dense urban areas invariably suffer from poor scaling. This puts large system sizes and temporally distant states out of reach. The advent of scientific programming on graphical processing units (GPUs) now provides inexpensive high performance, giving hope in this area. It is also important to calibrate such models. More interestingly, the problem of calibrating model structure is given particular emphasis. This ambitious task is difficult for a number of reasons, and is investigated with considerable thought in this work. In summary, the research shows that appropriate use of data-parallelism by multi-stage programming in a simple domain-specific language affords high performance, extensibility and ease of use which is capable of effective automatic model structure optimisation.
Agent-based modelling, Domain-specific languages, Optimisation (Computer science)