Courses: Introduction to GoldSim:

Unit 8 - Representing Complex Dynamics: Feedback Loops

Lesson 1 - Unit 8 Overview

"The global climate is a complex interactive system, with all kinds of nonlinear feedback loops."

- Alex Shoumatoff

You should recall that we noted in a previous Lesson (Unit 6, Lesson 5) that by far the most important and interesting way to make a model vary with time is by using elements that implicitly compute their outputs as a function of time. This generates endogenous dynamic behavior. Endogenous behavior is something that comes from “inside” the model and is explained by the relationships within the model. That is, if a system evolves endogenously, it means that the model structure itself is inherently causing the model variables to change with time. 

We pointed out that in order to generate endogenous dynamic behavior, an element must have “memory” or “inertia” with regard to the past.  That is, the current value of the element’s output(s) must be a function of inputs to the element at previous timesteps. If the current value of the element’s output(s) are only a function of the inputs to the element at the current timestep, the element cannot generate endogenous dynamics.

The most commonly used elements that generate such behavior are the “stock elements” (i.e., Pools, Reservoirs, and Integrators). These elements solve time integrals, so by definition, they are inherently a function of time (and their current value is a function of their inputs at previous timesteps).  We’ve discussed the Reservoir and Pool elements in detail in the previous Unit (and the Integrator is just a simplified version of the Reservoir).

Although these elements can generate simple dynamics by themselves (as we saw in the previous Unit), much more interesting (and in many cases, non-intuitive) dynamics can be generated when these elements are used to represent feedback loops.

Feedback loops are present in one form or another in most real-world systems. Feedback loops represent a looping chain of cause and effect. A simple example of a feedback loop is as follows: the more chickens we have, the more eggs that are produced; the more eggs that are produced, the more chickens we have. Note that the terms “feedback” and “cause and effect” intentionally imply that the relationship between the variables is dynamic and the system changes over time (although as we shall see, systems with feedback loops can also reach a dynamic equilibrium).

Feedback loops  generate much of the complex dynamics we see in the real world.  In this Unit, we will build upon the knowledge we gained in the previous Unit (modeling material flows) and learn how to represent complex dynamics involving feedback loops. Along the way, we will also introduce two important new elements: the Lookup Table and the Controller.

In particular, in this Unit we will discuss the following:

  • Understanding feedback loops;
  • Understanding how GoldSim handles feedback loops;
  • Representing response surfaces using Lookup Table elements;
  • Simulating active feedback control systems using Controller elements; and
  • Complex dynamics arising from interacting feedback loops.

This Unit has a total of 13 Lessons (including this overview and a summary at the end). Because this Unit deals with a number of important and complex topics in some detail, and includes multiple Examples and Exercises, it will likely take you more time than previous Units.