The System Dynamics Route to Modelling Economic Complexity
Chapter 9 from my forthcoming book Rebuilding Economics from the Top Down
Thus far in this book, I have created economic models by deriving systems of differential equations from macroeconomic definitions. This approach emphasises the fundamental validity of these models, but it becomes cumbersome, both to design and to interpret such a system, when a large number of variables and relationships are involved.
This is Chapter 9 from my forthcoming book Rebuilding Economics from the Top Down, which will be published by the Budapest Centre for Long-Term Sustainability and the Pallas Athéné Domus Meriti Foundation. I am serialising the book chapters here. A watermarked PDF of the manuscript is available to supporters.
System dynamics, which was invented by Jay Forrester in the 1950s (Forrester 1995), is a more intuitive way to do the same thing. System dynamics programs use flowcharts to show the causal relationships between variables in a model, and generate a system of differential equations from the flowcharts.
Applying system dynamics to economics is not new: the very first system dynamics models were on economic issues (P and Forrester 1962; Forrester 1959). The problem is that it is all too rare: there are only a handful of active practitioners of system dynamics in economics—Trond Andresen at the Norwegian University of Technology, Mike Radzicki and colleagues at Worcester Polytechnic, and Dave Wheat at Bergen University being the most prominent (Andresen 2018; Wheat 2017; Radzicki, Tauheed, and Hayden 2009; Wheat 2007). There should be many, many more system dynamicists in economics.
Part of the reason for the lack of popularity of system dynamics in economics is the more advanced mathematical modelling that it requires. As explained in Chapter 6, system dynamics models are customarily built using continuous time, while economists of all persuasions today still habitually build discrete-time models, which are singularly inappropriate for aggregate macroeconomic modelling.
Another problem is the somewhat antiquated interfaces for the major programs—such as Stella and Vensim, to mention the most prominent ones. Mike Radzicki attributes this to "lock in": because system dynamics is undertaken by relatively few people, it isn't profitable to for program developers to make them more up to date. Instead, the developers of these programs make their living by using them in consulting.
Engineering-oriented programs, such as Simulink, are far more profitable, given their widespread use in engineering, but they are fundamentally tailored to the needs of industrial designers. Also, high-level training in applied mathematics is needed in order to use Simulink and comparable programs fluently, and economists generally do not learn this level or type of mathematics.
We added Minsky to the menagerie partly to provide a more modern and "user-friendly" interface—though it will still be very foreign to victims of a conventional education in economics. Minsky's interface is visual and explicitly mathematical. Whereas most system dynamics programs put their equations behind text boxes, and show you the results of a simulation only after it is completed, Minsky's flowcharts put mathematical operators on a design canvas, and simulations are dynamic, with embedded plots and parameters that can be altered during a simulation.
But the main reason for developing Minsky was that it makes it easy to do something that is very difficult in existing system dynamics programs: to model financial flows. This is a breeze to do in Minsky because of its unique feature, the "Godley Table". You'll be seeing a lot of Godley Tables in the remainder of this book.
My main aim in writing this book is to encourage progressive economists—primarily those who identify as either Post-Keynesian or Modern-Monetary-Theorists—to abandon static or discrete-time modelling, and to adopt system dynamics instead.
Building an insightful system dynamics model isn't easy, but it is far easier than the laborious methods that Neoclassical economists use to purportedly derive macroeconomic models from (invalid) microeconomic concepts. When Blanchard noted that the fool's errand of deriving a macroeconomic model from microeconomic concepts implied "a long slog from the competitive model to a reasonably plausible description of the economy" (Blanchard 2016a, p. 3), he wasn't joking. I remember discussing modelling some detail of the monetary system with Michael Kumhof of the Bank of England—who is the only published Neoclassical economist who understands that banks create money (Kumhof and Jakab 2015), and Michael remarked it would take of the order of months to add it to his DSGE model. I replied that it would take me of the order of hours to do the same thing in Minsky, the system dynamics program that Dr Russell Standish and I have designed and built to enable easier modelling of economic systems.
The core concepts in a system dynamics program (stocks, flows, and feedbacks), and their links with ordinary differential equations, can be illustrated using a simple model of population growth.
An Ordinary Differential Equation (ODE) is the statement that the rate of change of a variable is a function of its value. A fish population with an effectively unlimited food supply can be modelled as having a constant annual rate of growth per year:
As explained in the previous chapters, this is converted into an ODE by multiplying both sides by F:
This is the point at which the practice of system dynamics diverges from strict mathematical formalism. System dynamics programs express models in integral equation form, rather than the differential equation form of Equation , because the numerical approximation of integration is a much more stable process than the numerical approximation of differentiation: the slope of a function can vary dramatically, but the area beneath the curve that a function traces out varies much more slowly. So, the first step in moving from ODEs to system dynamics is to convert a differential equation into an integral equation. Integrating both sides of Equation yields:
In Minsky, with (or 10% per year), this generates the characteristic outcome of exponential growth shown in Figure 24.
Figure 24: A simple population growth model
Differential equations are frankly easier to work with than system dynamics diagrams with such a simple model, but system dynamics comes into its own with more complicated systems. It also enables a gradual approach to building a model, rather than the "all or nothing" approach of creating reduced form sets of equations that I've used to date in this book.
For example, the Goodwin model shown in Figure 9 can be built from aggregate variables—Output (Y), Employment (L) and so on, rather than ratios ( for the employment rate, for wages share of output)—as shown in Figure 25. You can start building this model at any point in its causal loop, as shown by Figure 25, which I've started from Output (Y). This takes this model from Output to Employment to the employment rate (), even though the causal factor behind output (the capital stock K and the capital to output ratio KYr) haven't yet been defined.
Figure 25: The first components in the Goodwin model shown in Figure 26
The flowchart structure makes it reasonably obvious as to what the next step in building a model should be. For example, Figure 25 finishes with the employment rate . The next step, fairly obviously, is to use as the input to a wage change function. With the wage defined, the wage bill W is obviously the wage rate w times employment L, and so on.
The final model replicates the characteristics of the original reduced form model shown in Figure 9—see Figure 26.
Figure 26: The completed model, with the same characteristics as Figure 9
The integrated nature of a system dynamics model also makes it possible to edit a simple model to generate a more complex one—whereas with the reduced form approach I used earlier, it is advisable to build a new model from scratch, in case there are dependencies that affect other equations that aren't immediately apparent. For example, the model in Figure 26 has capitalists investing all their profits, and lacks a financial sector. An investment function can be added to the canvas: see Figure 27, where total profits are divided by Capital (K) to generate the rate of profit, and an investment function with the same characteristic as the wage change function then determines Gross Investment (IG).
Figure 27: An investment function to be added to the model in Figure 26
With this added to the model in Figure 28, the qualitative characteristics of the model are unchanged. But the groundwork is laid for introducing debt-financed investment.
Figure 28: The Goodwin model with an investment function replacing the assumption that all profits are invested
It is now possible to add Debt as a means to finance investment in excess of profits. This could be done by introducing a new Integral block for Debt, but I will instead use Minsky's unique feature, a Godley Table. I explain what Godley Tables are and how they work in detail in coming chapters: here I simply illustrate that these two modelling methods—flowcharts and Godley Tables—can be combined in the one model.
Figure 29: From Goodwin's simple model to Minsky's Financial Instability Hypothesis
For More Information: The Minsky Manual
There is much more to using Minsky to do system dynamics modelling than I have space to cover here. If you want to get into Minsky, then please download the free manual How To Minsky from my ProfSteveKeen website: https://www.profstevekeen.com/minsky/. As you might expect, it's more than just a manual, with lots of observations on economics as well in its 260+ pages.
I also highly recommend following the work of Tyrone Keynes (no, he's not related) on Minsky, via his website (https://www.tykeynes.com/), and YouTube Channel (https://www.youtube.com/@TyKeynes). Ty is the premier Minsky modeller today: Figure 30 shows one of his moderately complex models (rearranged to make its text somewhat more readable at the scale it appears in this book).
Figure 30: An elaborate Minsky model built by Tyrone Keynes