Skip to main content

Advertisement

Log in

Optimal Harvesting for a Predator-Prey Agent-Based Model using Difference Equations

  • Original Article
  • Published:
Bulletin of Mathematical Biology Aims and scope Submit manuscript

Abstract

In this paper, a method known as Pareto optimization is applied in the solution of a multi-objective optimization problem. The system in question is an agent-based model (ABM) wherein global dynamics emerge from local interactions. A system of discrete mathematical equations is formulated in order to capture the dynamics of the ABM; while the original model is built up analytically from the rules of the model, the paper shows how minor changes to the ABM rule set can have a substantial effect on model dynamics. To address this issue, we introduce parameters into the equation model that track such changes. The equation model is amenable to mathematical theory—we show how stability analysis can be performed and validated using ABM data. We then reduce the equation model to a simpler version and implement changes to allow controls from the ABM to be tested using the equations. Cohen’s weighted \(\kappa \) is proposed as a measure of similarity between the equation model and the ABM, particularly with respect to the optimization problem. The reduced equation model is used to solve a multi-objective optimization problem via a technique known as Pareto optimization, a heuristic evolutionary algorithm. Results show that the equation model is a good fit for ABM data; Pareto optimization provides a suite of solutions to the multi-objective optimization problem that can be implemented directly in the ABM.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6

Similar content being viewed by others

References

  • Altman D (1991) Practical statistics for medical research. Chapman and Hall, London

    Google Scholar 

  • Buckeridge DL, Jauvin C, Okhmatovskaia A, Verma AD (2011) Simulation Analysis Platform (SnAP): a tool for evaluation of public health surveillance and disease control strategies. AMIA Annu Symp Proc 2011:161–170

    Google Scholar 

  • Castiglione F, Pappalardo F, Bernaschi M, Motta S (2007) Optimization of HAART with genetic algorithms and agent-based models of HIV infection. Bioinformatics 23(24):3350–3355

    Article  Google Scholar 

  • Coello C (2013) List of references on evolutionary multiobjective optimization. http://www.lania.mx/ccoello/EMOO/EMOObib.html

  • Cohen J (1960) A coefficient of agreement for nominal scales. Educ Psychol Meas 20(1):37–46

    Article  Google Scholar 

  • Cohen J (1968) Weighted kappa: nominal scale agreement with provision for scaled disagreement or partial credit. Psychol Bull 70(4):213–220

    Article  Google Scholar 

  • Collins C, Lenhart S, Nanda S, Xiong J, Yakovlev K, Yong J (2012) Optimal control of harvesting in a stochastic metapopulation model. Optim Control Appl Methods 33(2):127–142

    Article  MathSciNet  MATH  Google Scholar 

  • Ding W, Gross LJ, Langston K, Lenhart S, Real LA (2007) Rabies in raccoons: optimal control for a discrete time model on a spatial grid. J Biol Dyn 1(4):379–393

    Article  MathSciNet  MATH  Google Scholar 

  • Edwards M, Huet S, Goreaud F, Deffuant G (2003) Comparing an individual-based model of behavior diffusion with its mean field aggregate approximation. J Artif Soc Soc Simul 6(4)

  • Eugenio BD (2000) On the usage of kappa to evaluate agreement on coding tasks. In: Proceedings of the Second International Conference on Language Resources and Evaluation, pp 441–444

  • Fleiss JL (1971) Measuring nominal scale agreement among many raters. Psychol Bull 76(5):378–382

    Article  Google Scholar 

  • Gani J, Yakowitz S (1995) Error bounds for deterministic approximations to Markov processes, with applications to epidemic models. J Appl Probab 32(4):1063–1076

    Article  MathSciNet  MATH  Google Scholar 

  • Gennert MA, Yuille A (1988) Determining the optimal weights in multiple objective function optimization. In: Computer Vision., Second International Conference on, pp 87–89

  • Goldberg D (1989) Genetic algorithms in search, optimization, and machine learning. Addison-Wesley, Reading

    MATH  Google Scholar 

  • Grimm V, Berger U, DeAngelis DL, Polhill JG, Giske J, Railsback SF (2010) The ODD protocol: a review and first update. Ecol Model 221(23):2760–2768

    Article  Google Scholar 

  • Hayek N (2011) Infinite horizon multiobjective optimal control problems in the discrete time case. Optimization 60(4):509–529

    Article  MathSciNet  MATH  Google Scholar 

  • Hinkelmann F, Murrugarra D, Jarrah A, Laubenbacher R (2011) A mathematical framework for agent based models of complex biological networks. Bull Math Biol 73(7):1583–1602

    Article  MathSciNet  MATH  Google Scholar 

  • Horn J, Nafpliotis N, Goldberg D (1994) A niched Pareto genetic algorithm for multiobjective optimization. In: Evolutionary Computation, 1994, vol. 1. IEEE World Congress on Computational Intelligence., Proceedings of the First IEEE Conference on., pp 82–87

  • Huet S, Edwards M, Deffuant G (2007) Taking into account the variations of neighbourhood sizes in the mean-field approximation of the threshold model on a random network. J Artif Soc Soc Simul 10(1)

  • Hwang CL, Fan LT (1967) A discrete version of Pontryagin’s maximum principle. Oper Res 15(1):139–146

    Article  MathSciNet  MATH  Google Scholar 

  • Jacquez JA, Simon CP (1993) The stochastic SI model with recruitment and deaths I. Comparison with the closed SIS model. Math Biosci 117(1–2):77–125

    Article  MathSciNet  MATH  Google Scholar 

  • Kasaie P, Kelton W, Vaghefi A, Naini S (2010) Toward optimal resource-allocation for control of epidemics: an agent-based-simulation approach. In: Winter Simulation Conference (WSC), Proceedings of the 2010, pp 2237–2248

  • Kim PS, Lee PP, Levy D (2008a) A PDE model for imatinib-treated chronic myelogenous leukemia. Bull Math Biol 70:1994–2016

    Article  MathSciNet  MATH  Google Scholar 

  • Kim PS, Lee PP, Levy D (2008b) Modeling imatinib-treated chronic myelogenous leukemia: reducing the complexity of agent-based models. Bull Math Biol 70:728–744

    Article  MathSciNet  MATH  Google Scholar 

  • Krippendorff K (1980) Content analysis: an introduction to its methodology. Sage Publications, Beverly Hills

    Google Scholar 

  • Laubenbacher R, Jarrah AS, Mortveit H, Ravi SS (2009) Mathematical formalism for agent-based modeling. In: Meyers R (ed) Encyclopedia of complexity and systems science. Springer, Berlin, pp 160–176

    Chapter  Google Scholar 

  • Laubenbacher R, Hinkelmann F, Oremland M (2013) Agent-based models and optimal control in biology: a discrete approach. In: Robeva R, Hodge TL (eds) Mathematical concepts and methods in modern biology. Academic Press, Boston, pp 143–178

    Chapter  Google Scholar 

  • Lenhart S, Workman J (2007) Optimal control applied to biological models. Chapman and Hall/CRC, Boca Raton

    MATH  Google Scholar 

  • Lollini PL, Motta S, Pappalardo F (2006) Discovery of cancer vaccination protocols with a genetic algorithm driving an agent based simulator. BMC Bioinform 7:352

    Article  Google Scholar 

  • Lugo CA, McKane AJ (2008) Quasicycles in a spatial predator-prey model. Phys Rev E 78(051):911

    MathSciNet  Google Scholar 

  • Mao L (2011) Agent-based simulation for weekend-extension strategies to mitigate influenza outbreaks. BMC Public Health 11:522

    Article  Google Scholar 

  • MATLAB (2014) version 8.3.0 (R2014a). The MathWorks, Inc., Natick, MA

  • Matsuda H, Ogita N, Sasaki A, Satō K (1992) Statistical mechanics of population. Prog Theor Phys 88(6):1035–1049

    Article  Google Scholar 

  • Moore H (1897) Cours d’economie politique. by vilfredo pareto, professeur l’universite de lausanne. vol. i. pp. 430. i896. vol. ii. pp. 426. i897. lausanne: F. rouge. The ANNALS of the American Academy of Political and Social Science 9(3):128–131

  • Okell LC, Drakeley CJ, Bousema T, Whitty CJ, Ghani AC (2008) Modelling the impact of artemisinin combination therapy and long-acting treatments on malaria transmission intensity. PLoS Med 5:e226 Discussion

    Article  Google Scholar 

  • Ovaskainen O, Cornell SJ (2006) Space and stochasticity in population dynamics. Proc Natl Acad Sci USA 103(34):12,781–12,786

    Article  Google Scholar 

  • Parunak H, Savit R, Riolo RL (1998) Agent-based modeling vs. equation-based modeling: A case study and users guide. In: Sichman JS, Conte R, Gilbert N (eds) Multi-agent systems and agent-based simulation, vol 1534., Lecture Notes in Computer ScienceSpringer, Berlin, pp 10–25

    Chapter  Google Scholar 

  • Patel R, Longini IM Jr, Halloran ME (2005) Finding optimal vaccination strategies for pandemic influenza using genetic algorithms. J Theor Biol 234(2):201–212

    Article  MathSciNet  Google Scholar 

  • Pennisi M, Catanuto R, Pappalardo F, Motta S (2008) Optimal vaccination schedules using simulated annealing. Bioinformatics 24:1740–1742

    Article  Google Scholar 

  • Rahmandad H, Sterman J (2008) Heterogeneity and network structure in the dynamics of diffusion: comparing agent-based and differential equation models. Manag Sci 54(5):998–1014

    Article  Google Scholar 

  • Wilensky U (2009) Netlogo. Center for connected learning and computer-based modeling, Northwestern University, Evanston, http://ccl.northwestern.edu/netlogo/

  • Wilson WG (1998) Resolving discrepancies between deterministic population models and individual-based simulations. Am Nat 151(2):116–134

    Article  Google Scholar 

  • Yang Y, Atkinson PM, Ettema D (2011) Analysis of CDC social control measures using an agent-based simulation of an influenza epidemic in a city. BMC Infect Dis 11:199

    Article  Google Scholar 

Download references

Acknowledgments

The authors thank the members of the Optimal Control for Agent-Based Models working group at the National Institute for Mathematical and Biological Synthesis (NIMBioS) at the University of Tennessee. We also thank Andrew Matteson for help with formatting of references.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Matthew Oremland.

Additional information

This work was funded by the US Army Research Office grant W911NF-09-1-0538.

Appendices

Appendix 1: Overview, Design concepts, and Details (ODD) Protocol for Rabbits and Grass

The model upon which this version is based is included in the sample library of NetLogo Wilensky (2009), a popular agent-based modeling platform. The description here is warranted as it includes the mechanics of an optimization problem, the details of which are not available elsewhere (including the NetLogo version). The following description follows the ODD protocol for describing agent-based models as proposed in Grimm et al. (2010).

1.1 Purpose

The purpose of this model is to examine population dynamics of a simple environmental system. In particular, it is a model of rabbits eating grass in a field. On each day of the simulation, poison can be placed on the field in order to kill the rabbits. The poison kills the rabbits with a certain efficacy but has no effect on the grass. The poison costs money, so there is some interest in minimizing the number of days on which poison is used. From this scenario, a natural multi-objective optimization problem arises: What poison schedule should be used in order to minimize the total number of rabbits alive during the course of a simulation while also minimizing the amount of poison? This version of the model is an attempt to answer this question.

1.2 Entities, State Variables, and Scales

This section contains a description of the grid cells, spatial and temporal scales, and the rabbits. It also contains a description of the format of a poison strategy, the investigation of which is the key feature of the model.

Grid cells, spatial scale, and temporal scale The world is a square grid of discrete cells, representing a field. The grid is toroidal, meaning that edges wrap around both in the horizontal and vertical directions. The distance from the center of a cell to a neighboring horizontal or vertical cell is 1 U (thus the distance between two diagonal cells is \(\sqrt{2}\)). Units are abstract spatial measurements. Time steps are also abstract discrete units. A simulation consists of a finite number of time steps. The only state variable for each cell indicates whether or not the cell currently contains grass. When grass is eaten on a grid cell, there is a certain probability that it will grow back at each time step. This growth happens spontaneously (Table 4).

Table 4 Grid cell state variables
Table 5 Rabbit state variables
Table 6 Poison schedule details

Rabbits Each time step, rabbits move, eat grass (or not), and reproduce (or not). Reproduction is asexual and based on energy level, which is raised when a rabbit eats. Rabbits lose energy both by moving and by spawning new rabbits. If a rabbit’s energy level drops to 0 or lower, the rabbit dies (Table 5).

Poison schedule A poison schedule \(u\) is a vector of length \(total\_sim\_time\), with each entry either 0 or 1. Each entry corresponds to one time step in the simulation; 0 means that poison is not used and 1 means that poison is used. Thus, there are a total of \(2^{total\_sim\_time}\) possible poison schedules. The poison has a maximum strength which degrades over time with repeated use. If the poison is not used, the strength increases again, up to the maximum. Poison is not spatially dependent; hence the probability of a rabbit being poisoned does not depend upon the rabbit’s location in the grid (Table 6).

Poison strength \(s\) is determined by the equation

$$\begin{aligned} s_(t\!+\!1)=(1\!-\!p_{deg}) \cdot u(t) \cdot s(t) \!+\! (1-u(t)) \cdot (s(t)+p_{deg}(p_{max} - s(t))), \qquad s(0) = p_{max}.\nonumber \\ \end{aligned}$$
(10)

1.3 Process Overview and Scheduling

In order to minimize ambiguity, the model process is presented here as pseudocode.

figure b

1.4 Design Concepts

Basic principles In essence, this model is a predator-prey system, wherein the rabbits are predators and the grass is prey. Introduction of poison into the model, and having that poison modeled as a direct external influence on population levels, creates a natural setting for an optimization problem. One can study the effect of various poison strategies on population levels—in terms of minimizing the rabbit population, it can be thought of as a harvesting problem, but in terms of minimizing poison, it can be thought of as resource allocation.

Emergence Rabbit population and grass levels tend to oscillate as the simulation progresses. The frequency and amplitude of these oscillations can be affected by parameter settings and initial values and hence may be described as emergent model dynamics.

Interaction Agent interaction is indirect: Since rabbit movement is executed serially, it is possible that other rabbits deplete all of the grass in a particular rabbit’s potential field of movement, thereby reducing or eliminating the chance for that rabbit to gain energy.

Stochasticity Rabbit movement is totally random in that they cannot sense whether neighboring grid cells contain grass or not. Whether grass grows back on an empty grid cell is also random and a grid cell that has been empty for several time steps is no more likely to grow grass than a cell which has only just become empty. Rabbit death due to poison is a stochastic process dependent on the strength of the poison for that day.

Observation Rabbit population and grass counts are recorded at each time step. The total number of rabbits alive during the course of a simulation serves as a measure of fitness of the poison schedule.

1.5 Initialization

At initialization, \(20\,\%\) of the grid cells contain grass; these are chosen at random. There are 120 rabbits placed at random locations throughout the grid; each begins with a random amount of energy between 1 and 8 inclusive. Total simulation time is 100 time steps, and each simulation contains a poison schedule \(u\), described in “Entities, State Variables, and Scales” of Appendix 1.

1.6 Input Data

The poison schedule may be considered input data to the model; however, there is no external input data.

1.7 Submodels

There are three types of rabbit movement investigated in this study. In the first, referred to as random jump, rabbits jump to a grid cell selected at random from the entire space. The second type of movement is wiggle, wherein rabbits execute the following commands: face left by a random amount up to \(45^\circ \), face right by a random amount up to \(45^\circ \), move forward 1 U. The latter is similar to rabbits selecting a direction from a uniformly random distribution centered at their current heading and thus is meant to represent a more realistic movement scheme. The final movement scheme is referred to as neighbor 8 movement: Under this rule, rabbits move to the center of one of the eight neighboring grid cells. In all movement schemes, the energy lost by moving is the same regardless of the distance moved. The body of the text makes clear which movement scheme is being considered at any given time. Under all movement schemes, a movement costs \(move\_cost\) regardless of the distance moved. Each rabbit moves exactly once per time step.

1.8 Optimization

Since the multi-objective optimization problem is the key feature of the model as presented here, several clarifying details are in order. The objectives of the optimization problem are to determine, for the parameter values provided, a set of Pareto optimal poison schedules which minimize the number of rabbits while also minimizing the amount of poison used. The number of rabbits refers to the total number of rabbits alive during the course of a simulation, not just those alive at the end of the final time step. Since a poison schedule is a binary vector of length \(total\_sim\_time\), the amount of poison used is represented by the sum of the entries of that vector.

Appendix 2: Difference Equation Models

Figures 7 and 8 contain the full equation models discussed in the body of the text, including initial conditions. See Table 1 for a description of the terms used in the equations and the section “Entities, State Variables, and Scales” of Appendix 1 for state variable values.

Fig. 7
figure 7

The discrete model (using random jump movement), tracking rabbits at different energy levels

Fig. 8
figure 8

The updated model with movement parameters \(m_0, \ldots , m_8\)

Fig. 9
figure 9

Comparison of ABM data (averaged over 100 simulations) with DE data after parameter estimation for four randomly chosen training schedules

Appendix 3: Parameter Estimation with respect to Control

Parameter estimation was performed in Matlab using the lsqcurvefit routine for minimizing the sum-of-squares error (SSE). Since the equations are to be used to solve a multi-objective optimization problem, it is necessary that the parameters are chosen such that the system responds to controls in the same way the ABM responds to those same controls. The parameters were fit to the following data: Twenty values were chosen at random between 1 and 50; these represent the frequency values—for each frequency value \(n\), five control schedules were generated randomly containing \(n\) 1’s and \(100 - n\) 0’s; this provides a stratified random sample of poison schedules. These 100 poison schedules were implemented in the ABM and subsequently used as training data for the difference equation parameters: The routine was set up to minimize the SSE over all of the training data. Figure 9 shows plots of the ABM versus DE data for four randomly chosen schedules from the training data.

Appendix 4: Optimal Poison Schedules

Figure 10 contains four schedules from the final generation of the Pareto optimization algorithm. Under each poison schedule is the number of poison days and the average number of rabbits alive when that schedule is applied. Note that in general, periods of poisoning are punctuated by periods where poison is not applied. This is likely in order for the poison efficacy to return to full (or near-full) effectiveness.

Fig. 10
figure 10

Several Pareto optimal poison schedules (to be read from left to right a 10 poison days; result: 31.15 rabbits b 20 poison days; result: 20.19 rabbits c 30 poison days; result 14.27 rabbits d 49 poison days; results 11.30 rabbits

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Oremland, M., Laubenbacher, R. Optimal Harvesting for a Predator-Prey Agent-Based Model using Difference Equations. Bull Math Biol 77, 434–459 (2015). https://doi.org/10.1007/s11538-014-0060-6

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11538-014-0060-6

Keywords

Navigation