Introduction

In this discussion we explore the microsimulation model development package Modgen and the Modgen application RiskPaths from the model developer's point of view. We first introduce the Modgen programming environment, and then discuss basic Modgen language concepts and the RiskPaths code. Modgen requires only moderate programming skills; thus, after some training, it enables social scientists to create their own models without the need for professional programmers. This is possible because Modgen hides underlying mechanisms like event queuing and automatically creates a stand-alone model with a complete visual interface, including scenario management and model documentation (as introduced in the previous chapter). Model developers can therefore concentrate on model specific code: the declaration of parameters, the states defining the simulated actors, and the events changing the states. High efficiency coding extends also to model output. Modgen includes a powerful language to handle continuous time tabulation. These tabulations are created on-the-fly when simulations are run and the programming to generate them usually requires only a few lines of code per table. Modgen also has a built-in mechanism for estimating the Monte Carlo variation for any cell of any table, without requiring any programming by the model developer.

Being a simple model, RiskPaths does not make use of the full range of available Modgen language concepts and capabilities. The discussion in this chapter does not intend to replace existing Modgen documentation, such as the Modgen Developer's Guide, either. But by introducing the main concepts of Modgen programming, we aim to help you get started in Modgen model development and to engage in further exploration.