Improving Performance of Simulation Software Using Haskell’s Concurrency & Parallelism
Summary
Computer simulation has been widely applied in many areas, ranging from
physics to biology and from economics to transportation. This tremendous appli-
cability has the effect that, in most of the cases, simulations are constructed by
scientists with non-computer expertise. These scientists are striving for ease of
development and fast execution speed. We construct two frameworks, an agent-
modelling framework and a pure parallel discrete-event simulation framework,
both written in the Haskell programming language. Haskell language offers fast
and expressive parallel and concurrency mechanisms, that we take advantage of.
We benchmark our implementations against well-established competing frame-
works and present the output results. The end-goal of this project is to satisfy
the simulation user’s criteria of usability and speed.