Overview: Building models

Once you've spelled out the goals and boundary of your model and have developed an initial map of the model (as described in The model building process), you need to add the information that will transform the model in your head into a working simulation. This process is called building the model, and it requires you to place the key entities in your model on the diagram, and then assign equations and numerical values to those entities.

The following procedure is a high-level guide to the steps involved in building a model. Use the links in each step for more information about the step.

Steps for building a model

  1. Place the stocks and flows for the "main chains" in your model on the Map layer.

    When you were first planning your model, you identified the stocks and flows that were central to the system or process you're trying to convey. Now, you want to lay those out on the diagram and connect them to each other to see how they connect and may interact.

    Note: Be aware of unit consistency (each flow into or out of a stock must use the same units of measure as the stock itself, except for "per time"; all stocks in a main chain must use the same units of measure) and conservation laws.

  2. Add connectors.

    Connectors function as conjunctions. Use them to join stocks and flows together, and flows together with other flows, to transmit information and actions from one entity to another.

  3. Add converters.

    Converters have two main roles: they function as adverbs by modifying flows (for example, indicating how quickly or slowly a flow is moving); converters also convert units of measure from one entity so that they are compatible with another, connected entity.

  4. Define graphical functions.

    Graphical functions are graphs that show the relationships between entities in a model. When one model entity changes, the other will change depending on the assumptions or perception of what happens in reality.

  5. Define entities by adding equations and values.

    If you haven't already done so, specify the equations and/or initial values for the stocks, flows, and converters in the model. When defining constants, use simple numbers for testing before you introduce more realistic numbers.

  6. Assign and check units.

    If you did not assign units to the stocks and converters in your model already, go back and do so. Then, check the model's units to ensure that the left- and right-hand sides of equations have consistent units, and that conserved flow chains have consistent units.

  7. Identify and highlight feedback loops in your model.

    Make the model's feedback loops clear by assigning polarity to connectors and flows in your model. Assigning positive ("+/s") or negative ("-/o") polarity lets you visually indicate the cause-and-effect relationship between model entities. You can also mark loops as either balancing ("-" or "B") or reinforcing ("+" or "R") by placing a text box in the loop and then using the Format for CLD button in the Text Box dialog box.

  8. Add objects to fill out detail.

    On the Model layer, add buttons, graphs, tables, text, images, or other objects to help you use your model and easily understand its output. Note that this differs from using objects to create an interface for you model because these objects are directly on the Model layer and are accessible only to those who are looking at the model on the Model layer.

When you have finished building a first draft of your model, test it by running the model and looking for errors, implausible results, and other problems.

Concept Link IconSee Also