38016_SOURCE01_2_A.pdf (4.64 MB)
Agent simulations on graphics hardware
thesis
posted on 2023-01-18, 18:23 authored by Timothy William JohnsonSubmission note: A thesis submitted in total fulfilment of the requirements for the degree of Doctor of Philosophy to the School of Computer Science and Computer Engineering, Faculty of Science, Technology and Engineering, La Trobe University, Bundoora.
Agents have long been an area of interest for researchers in the realm of computing. Recently, due to their ability to exhibit complex and intricate behaviour at a microscopic level, agent-based simulations have begun to supplant traditional techniques of modelling in fields such as anthropology, ecology and biology. However, not only can these systems be difficult and time consuming to implement, they can also be constrained in their scope due to issues arising from a shortage of available processing power. Over the last few years graphics cards have emerged as powerful and affordable computing hardware. GPUs today significantly outstrip CPUs in terms of raw performance and the gap is continuing to widen. With GPGPU a programmer can use a graphics card for tasks other than image rendering. In the past GPGPU research has focused on processing mathematical formulae and physical models, but now, researchers seek to extend it to other areas of computing. The goal of our work is to unify agent-based simulation techniques with graphics hardware, allowing the simulations of tomorrow to perform at a higher level of quality with more agents than previously possible. Our solution allows a user to create their own abstract representation of an agent simulation without requiring the user to perform any programming. Our system then automatically converts this user defined simulation into code capable of running on a GPU. However, there are challenges that must be overcome to bring this vision to life. The core of this thesis will present these challenges and provide solutions to each of them. Finally, we’ll show that it is possible for an increase in performance to be achieved when performing an agent-based simulation with a GPU rather than a CPU, with tests conducted involving up to 100,000 autonomous agents.
Agents have long been an area of interest for researchers in the realm of computing. Recently, due to their ability to exhibit complex and intricate behaviour at a microscopic level, agent-based simulations have begun to supplant traditional techniques of modelling in fields such as anthropology, ecology and biology. However, not only can these systems be difficult and time consuming to implement, they can also be constrained in their scope due to issues arising from a shortage of available processing power. Over the last few years graphics cards have emerged as powerful and affordable computing hardware. GPUs today significantly outstrip CPUs in terms of raw performance and the gap is continuing to widen. With GPGPU a programmer can use a graphics card for tasks other than image rendering. In the past GPGPU research has focused on processing mathematical formulae and physical models, but now, researchers seek to extend it to other areas of computing. The goal of our work is to unify agent-based simulation techniques with graphics hardware, allowing the simulations of tomorrow to perform at a higher level of quality with more agents than previously possible. Our solution allows a user to create their own abstract representation of an agent simulation without requiring the user to perform any programming. Our system then automatically converts this user defined simulation into code capable of running on a GPU. However, there are challenges that must be overcome to bring this vision to life. The core of this thesis will present these challenges and provide solutions to each of them. Finally, we’ll show that it is possible for an increase in performance to be achieved when performing an agent-based simulation with a GPU rather than a CPU, with tests conducted involving up to 100,000 autonomous agents.
History
Center or Department
Faculty of Science, Technology and Engineering. School of Computer Science and Computer Engineering.Thesis type
- Ph. D.