Online Companion For:

 A Taxonomy of Model Structures for Economic Evaluation of Health Technologies*

 

by

Alan Brennan (Director of Health Economics and Decision Science, http://www.shef.ac.uk/scharr/sections/heds)

Stephen E. Chick (Associate Professor of Technology Management, INSEAD, http://faculty.insead.edu/chick/)

Ruth Davies (Professor of Operational Research and Systems, Warwick Business School, http://users.wbs.warwick.ac.uk/group/ors/people/academic/daviesr/contact).

 

* This Online Companion is to accompany Brennan, Chick and Davies, 2006, A Taxonomy of Model Structures for Economic Evaluation of Health Technologies, Health Economics, in press. http://www3.interscience.wiley.com/cgi-bin/abstract/112772310/ABSTRACT

 

Appendix: Implementation Issues

 

Health care model analysis can be implemented with a variety of tools.  Options include (a) using special purpose software, such as decision tree, system dynamics, or discrete event simulation software, (b) using general mathematical or statistical tools, or (c) coding the model using high-level programming languages.  The third option might be required for research purposes or for particularly sophisticated models (e.g., Elveback et al. 1976, Plaisier et al. 1990, Chick et al. 2000, Halloran et al. 2002), this section will focus on the first options at greatest length, and spreadsheeting as an example of the second.  These are the most accessible tools in the sense of graphical interfaces and easy of development.  More advanced modelling tools may be needed for more sophisticated applications.

 

The role of this appendix is not to recommend any particular software package.  We point to some available tools, as well as information that is intended to help model developers select software for model development and implementation.  As each application may be different, different tools may be better or less-well suited for a specific modelling task.  Simulation software also changes through time, and it is difficult to be aware of all packages.  Finally, there are some reviews of simulation software on the WWW and journals that are more exhaustive that we can be here.  The naming of a specific simulation software tool does not necessarily imply endorsement, and non-inclusion does not imply non-endorsement.

 

Table 1: Taxonomy of Model Structures

 

 

 

A

B

C

D

 

 

 

Cohort/Aggregate Level/Counts

Individual Level

 

 

 

Expected value, Continuous state,

Deterministic

Markovian, Discrete State, Stochastic

Markovian, Discrete State, Individuals

Non-Markovian, Discrete-State, Individuals

 

1

No Interaction Allowed

Untimed

 

Decision Tree Rollback

 

Simulated Decision Tree (SDT)

 

Individual Sampling Model (ISM):

Simulated Patient-Level Decision Tree (SPLDT)

 

2

Timed

 

Markov Model (Evaluated Deterministically)

 

Simulated Markov Model (SMM)

 

Individual Sampling Model (ISM):

Simulated Patient-Level Markov Model (SPLMM)

 (variations as in quadrant below for

patient level models with interaction)

 

3

Interaction Allowed

Discrete Time

 

System Dynamics (Finite Difference Equations, FDE)

 

Discrete Time Markov Chain Model (DTMC)

 

Discrete-Time Individual Event History Model

(DT, IEH)

 

Discrete Individual Simulation

(DT, DES)

 

4

Continuous Time

 

System Dynamics (Ordinary Differential Equations, ODE)

 

Continuous Time Markov Chain Model (CTMC)

 

Continuous Time Individual Event History Model

(CT, IEH)

 

Discrete Event Simulation (CT, DES)

 

A.1. Special purpose software

 

We make comments about decision-tree analysis tools, Markov model tools, and simulation tools. 

 

Many decision tree models and deterministic Markov models use spreadsheet software, particularly Excel.  Using the sampling facilities within Excel, some researchers also use Excel for individual level modelling.  The models can be speeded up and made more efficient by the use spreadsheet add-ons such as @Risk (http://www.palisade-europe.com/html/risk.html) and Crystal Ball (http://www.decisioneering.com/crystal_ball/).  Models of this type are included in the Health Economics evaluation database (www.york.ac.uk/inst/crd). Those developed for screening for diabetic retinopathy are reviewed in Davies and Brailsford (2005).

 

The use of commercial decision tree software, such as Treeage (http://www.treeage.com/) can help researchers to structure valid models, to perform rollback to calculate cost-utility ratios, to perform sensitivity analysis and even to develop individual simulation models.   Some researchers have developed their own bespoke simulation software, PROPHET, Prospective Population Health Event Tabulation  (Javitt and Aiello 1996).

 

Modgen (http://www.statcan.ca/english/spsd/Modgen.htm) is a simulation package which is designed to model the progress of individuals in simulations.  In Modgen terminology an individual level simulation is a microsimulation.  Modgen is designed as an Individual Event History Model (IEH) but it also caters for groups of individuals who are linked together, such as family groups who move forward in time together, interacting as necessary until they die or until the simulation time ends and then it deals with the next group of individuals, and so on. Individual people may be linked to other objects with characteristics such as houses or hospitals.  Pohem is an implementation of Modgen that is designed for health simulations (http://www.statcan.ca/english/spsd/Pohem.htm).

 

For system dynamics and discrete event simulation tools, a number of choices are available either commercially or freely on the WWW.  Several commercial discrete-event simulation software packages that have been historically used for individual-level modelling (Discrete Individual Simulation and DES in Table 1) now also support some level of dynamical systems models (FD and ODE in Table 1) or mixed models.  The converse is also true.  DES models can also imitate IEH models (by having only Markovian distributions) or Markov Chain models (by ignoring the identify of individuals, and focusing on only counts).  This has the benefit of reducing the number of tools one might need to be familiar with, at the cost of the computational structures associated with event scheduling for individuals.  Some tools therefore can implement multiple categories in Table 1.  A pure classification of tools by specific type of model is therefore not possible. 

 

Software that implements system dynamics models includes (in alphabetical order) packages called: AnyLogic, Berkeley Madonna, IThink, ModelMaker, Powersim, Simile, Stella, and Vensim.  DES software that also implements some level of system dynamics include (in alphabetical order): AnyLogic, Arena, Extend Suite, GoldSim, ProModel, Simul8, Taylor II, and Witness.  A trend for system dynamics packages is the inclusion of easy to use graphical interfaces to help users develop and run simulations.  The focus is on defining flows between compartments visually, rather than requiring users how to write algebra to describe differential equations.  Available software typically provides facilities for scenario analysis and flexible output analyses.  Similar comments can be made for discrete-event simulation packages.

 

Simulation News Europe published a series of simple case studies that provide solutions based upon two or more simulation products.  The products that are assessed include both differential equation and discrete event simulations, as well as custom-coded implementations with tools like Matlab.  The testbed includes a discrete-event patient level emergency department simulation and a simple renal clearance system dynamics model.  A number of nonhealth related examples provide further assessments on the basic building blocks for modelling.  The studies are available on the Web site (www.argesim.org/comparisons/index.html).

 

Swain (2003) provides a review of 48 systems simulation tools and related products as part of a biennial survey of simulation software vendors.  The focus is primarily on discrete-event simulation, but several packages that implement system dynamics models or mixed models are also described.  The results are also available on the Lionheart Publishing Web site (http://www.lionhrtpub.com/orms/orms-8-03/frsurvey.html).  The Web site includes vendors that missed the publishing deadline.  The survey includes information on vendors, typical applications, primary markets, and computer system requirements.  One table is devoted to model building issues, including the availability of graphical interfaces, the ability to program to customize, and runtime debugging support.  The survey also discusses the graphical interface during runtime, the integration of input distribution modelling tools, output analysis tools, features that allow batch runs or custom experimental design tools, and whether system optimization tools are included.  Comments and contact information from vendors and pricing information are available.  OR/MS Today also reviewed several of those products (http://www.lionhrtpub.com/orms/swrindex.html).

 

Schriber and Brunner (1996, 2004) provide descriptions of the internals of generic discrete-event simulation concepts, then describe how six specific commercial packages implement those concepts (AutoMod, SLX, Extend, Siman/Arena, ProModel and GPSS/H).  They indicate that different commercial packages model some similar concepts differently, and provide insights as to how to develop discrete-event simulation models. 

 

One implementation issue for DES that is important in the context of health applications is the potential need to reschedule or cancel previously scheduled events through time due to the way one event may affect risk factors for other events. 

For example, the activity which is terminated by a heart attack may be delayed or prevented altogether by an intervention.  Whilst this is not difficult to model from first principles, it can be difficult to incorporate in software designed for industrial use.  Davies et al. (1993) have provided a set of units in Delphi, called POST (patient oriented simulation technique) for use in patient modelling.  It is not, however, readily available or “user-friendly”. Whilst there is a considerable amount of commercial software available, there is little that is directly applicable to disease modelling, so special care for these situations is warranted.  Interactions due to resource constraints are typically easy to model in commercial DES software.

 

A.2. General mathematical or statistical tools

 

Several general mathematical or statistical tools are readily amenable for implementing health economics models.  These include (but are not limited to) Maple, Mathematica, Matlab, Maple, R/Splus, and spreadsheets. 

 

Spreadsheet tools can be used for both deterministic and stochastic models.  Seila (2004) provides an introduction to spreadsheet-based stochastic simulations with inventory and queueing examples.  This discussion includes a number of comments from that paper, and broadens the discussion.  Advantages of spreadsheets include their wide availability and familiarity (e.g. Lotus 1-2-3™, Microsoft Excel™ and Quattro Pro™), the large number of mathematical and logical functions built into the tool, including random number generation, the intuitive appeal of the table format, and tools for charting and graphing.  Scripting languages can also increase the power of spreadsheets.

 

One way to implement cohort models with interactions allowed (the lower left quadrant of Table 1) in a spreadsheet is to have each row represent the state of a system at a given time.  A constant time increment from one row to the next determines the dynamics of the state transition from one state to the next.  Both stochastic and deterministic models are allowed, the difference being the use of random variables or not.  The nature of the discrete time step means that discrete-time rather than continuous time models are implemented.  Cohort models without interactions allowed (the upper left of Table 1) are a special case of cohort models with interactions allowed, and they can be implemented similarly.  Sensitivity of the model conclusions to the time step is warranted (cf. section 2.1.2).

 

One way to implement individual-level models without interaction (the upper right of Table 1) in a spreadsheet is to represent each individual as a row in the spreadsheet, with an initial set of columns to represent personal data or risk factors, and second set of columns to represent how an individual passes through the edges of a decision tree (untimed) or advances through a Markov model.

 

Simulations of individuals with interactions from queueing effects or epidemic models (lower right) are more challenging within a spreadsheet model, as they require more data to identify state transitions.  Very simple queueing models, such as a single server model, can be implemented by having one row per customer, and having columns for the arrival times and service initiation and completion times.  The arrival time of one customer is depends on a random interarrival time plus the arrival time of the previous customer.  Time typically increases from one row to the next, but unlike the spreadsheet-based system dynamics models the time step from one row to the next may vary due to system randomness.  Service initiation and completion times can also be computed recursively.  Ingolfsson and Grossman (2002) show how to extend this idea from basic queues to queues with balking and/or reneging, and to multiple servers.  Their spreadsheet templates are available online at http://www.bus.ualberta.ca/aingolfsson/simulation/.  Interactions due to epidemic forces might be implemented by putting individuals in each row, and putting time-steps in columns, although for complicated population structures and combinations of risk factors, this can lead to a computationally difficult spreadsheet model that is challenging to assemble.

 

Spreadsheeting has limitations.  Seila (2004) notes that spreadsheeting tends not to work well for problems requiring complex data structures (like event lists for discrete-event simulations, or multidimensional arrays, or complicated interactions), problems needing very precise answers or have long simulation runs, and problems that do not fit well into the data table format with a fixed table size (like iterative calculations where the number of iterations may vary from individual to individual).  The random number function, which is called “RAND()” in most spreadsheets, produces a pseudo random sample from a uniform distribution between 0 and 1.  Random variables of other distributions are typically generated with RAND() either implicitly or explicitly.  Many spreadsheet publishers do not document the algorithm used in RAND().  Some algorithms for generating random numbers have better statistical properties than others (L’Ecuyer 1998).  Using the built-in RAND() function carries some risk that the random numbers will not behave as truly independent, random numbers.  Add-in packages for Excel can simplify the development and analysis of spreadsheet-based models.  Crystal Ball™ and @RISK™ are commercial packages.  PopTools http://www.cse.csiro.au/poptools/ is a free Excel™add-in.  PopTools includes a random number generator (Mersenne Twister by Masumoto and Nishimura 1998) that has passed a number of statistical tests of adequacy tests and has mathematical functions for matrix calculations, system dynamics, and other random variable generation features.

 

Other general mathematical and statistical packages, such as Maple, Mathematica, Matlab, Maple, R/Splus, provide powerful modelling and data analysis tools, and are very useful in many applications.  They can provide advanced output graphics and data analysis capability, and are organized more along the lines of a command-line and programming language orientation rather than a table-layout format.  The programming dimension may require more computer modelling expertise than the visually oriented tools, but because of that they may provide more flexibility for modelling.

 

Additional References for Appendix.

 

Adams, A.L., Barth-Jones, D.C., Chick S.E., Koopman, J.S. Simulations to Evaluate HIV Vaccine Trial Methods, Simulation 1998; 71(4): 228-241.

 

Chick, S.E., Adams, A., Koopman, J.S., Analysis and Simulation of a Stochastic, Discrete-Individual Model of STD Transmission with Partnership Concurrency, Mathematical Biosciences 2000; 166(1):45-68.

 

Davies, R., Brailsford, S. Screening for diabetic retinopathy – an evaluation of policies using discrete event simulation.  In Operations Research and Health Care: Handbook of Methods and Applications. Brandeau, M.L., Sainfort, F., and W.P. Pierskalla, Eds.,  Kluwer Academic Publishers, 2004.

 

Davies R, O'Keefe RM, Davies HTO. Simplifying the modeling of multiple activities, multiple queueing, and interruptions, a new low level data structure. ACM Transactions on Modeling and Computer Simulation. 1993; 3(2): 332-46.

 

Elveback LR, Fox JP, Ackerman E, et al. An influenza simulation model for immunization studies. Am J Epidemiol 1976;103(2):152–65.

 

Halloran ME, Longini Jr IM, Cowart DM, Nizam A. Community trials of vaccination and the epidemic prevention potential. Vaccine 2002;20:3254–62.

 

Ingolfsson A., Grossman T.A. Graphical spreadsheet simulation of queues.  INFORMS Transactions on Education.  2002; 2(2).  Online at http://ite.pubs.informs.org/Vol2No2/IngolfssonGrossman/ [Accessed 3 January 2005].

 

L’Ecuyer, P. Random number generation. In Handbook of Simulation: Principles, Methodology, Advances, Applications, and Practice, ed. J. Banks. New York: John Wiley, 1998.

 

Javitt J.C and Aiello L.P Cost-effectiveness and detecting and treating diabetes. Annals of Internal Medicine, 1996, 124, 164-169.

 

M. Matsumoto and T. Nishimura, Mersenne Twister: A 623-dimensionally equidistributed uniform pseudorandom number generator, ACM Trans. on Modeling and Computer Simulation 1998; 8(1): 3-30.

 

Plaisier AP, van Oortmarssen GJ, Habbema JD, Remme J and Alley ES. ONCHOSIM: a model and computer simulation program for the transmission and control of onchocerciasis Computer Methods Programs Biomed 1990, 31(1):43-56.

 

Pritsker, A.A.B., Life and Death Decisions: Organ Transplantation Allocation Policy Analysis, OR/MS Today, 1998; 25(4): 22-28.

 

Schriber T.J., Brunner D.T. Inside discrete event simulation: How it works and why it matters.  Proceedings of the 1996 Winter Simulation Conference, eds. J. Charnes, D. Morrice, D. Brunner, and J. Swain, pp. 23-30, Piscataway, N.J. Institute of Electrical and Electronics Engineers. 1996.

 

Schriber T.J., Brunner D.T. Inside discrete event simulation: How it works and why it matters.  Proceedings of the 2004 Winter Simulation Conference, eds. R .G. Ingalls, M. D. Rossetti, J. S. Smith, and B. A. Peters, pp. 142-152, Piscataway, N.J. Institute of Electrical and Electronics Engineers. 2004.

 

Seila, A. Spreadsheet simulation. Proceedings of the 2004 Winter Simulation Conference, eds. R .G. Ingalls, M. D. Rossetti, J. S. Smith, and B. A. Peters, pp. 142-152, Piscataway, N.J. Institute of Electrical and Electronics Engineers. 2004.

 

Swain J., Simulation reloaded.  OR/MS Today.  2003; 30(4):46-57. Available at: http://www.lionhrtpub.com/orms/orms-8-03/frsurvey.html [Accessed 3 January 2005].