School of Computing

The impact of programming paradigms on the efficiency of an individual-based simulation model

David J. Barnes and Tim R. Hopkins

Technical Report 17-01, University of Kent, Computing Laboratory, UKC, Canterbury, Kent, UK., December 2001.

Abstract

Individual-based models are a popular technique for simulating a wide range of ecological systems. However, to be successful, they must not only deliver an accurate representation of the system they are seeking to model, but must do so using viable amounts of computing resource. Models involving very large numbers of individuals will tend to have large memory requirements, while the need to vary parameter settings over multiple runs means that processor requirements must be kept within reasonable bounds. In order to address the issue of resource requirements, we assess the impact of using different programming paradigms for the implementation of an individual-based models. We do this by looking in detail at a number of implementations of a simulation of the spread of Barley Yellow Dwarf Virus. The model considers explicitly each individual plant and aphid, therefore it requires special care to reduce the amount of storage used whilst still producing a computationally efficient code. We present implementations of the model in both imperative and object-oriented programming languages, particularly noting aspects relating to ease of implementation and run-time performance. Finally, we attempt to quantify the cost of some of the decisions made in terms of their memory and processor time requirements.

Download publication 255 kbytes (PostScript)

Bibtex Record

@techreport{1316,
author = {David J. Barnes and Tim R. Hopkins},
title = {The Impact of Programming Paradigms on the Efficiency of an Individual-based Simulation Model},
month = {December},
year = {2001},
pages = {182-196},
keywords = {determinacy analysis, Craig interpolants},
note = {},
doi = {},
url = {http://www.cs.kent.ac.uk/pubs/2001/1316},
    publication_type = {techreport},
    submission_id = {10805_1008334320},
    address = {UKC, Canterbury, Kent, UK.},
    number = {17-01},
    institution = {University of Kent, Computing Laboratory},
}

School of Computing, University of Kent, Canterbury, Kent, CT2 7NF

Enquiries: +44 (0)1227 824180 or contact us.

Last Updated: 21/03/2014