Wednesday, March 04, 2009

Numerical Methods

Numerical Methods. .

. . . a Sorcerer's Apprentice View

Mankind knows exactly one workable means for the precise rendering of dynamic phenomena. Leibnitz's approach to simulating time-dependent mechanisms by recursive numerical integration is not only singular, it is likely to be the most productive abstraction since the golden rule. But, despite economics' emphatically dynamic context and the prominence of 'dynamic' in economic discourse, the singularly effective techniques of numerical integration are almost never brought to bear on political arithmetic. Indeed, numerical simulation methods are all but absent from the economics curriculum.

Familiarity with an Esoteric Discipline

Students' general lack of instruction in the formal methods for emulating dynamic processes is a terrible waste of the critical experience students develop in the long hours spent with their video games. They instinctively know that mankind has mastered the sciences of kinetics and optical projection because they can see these disciplines at work in the game programs with which they interact. This equips them with important criteria for other disciplines they encounter, e.g.: useful models of exterior reality must, at minimum, be expressible in stable, dynamic simulations embodied in physical devices, such as their video game players, capable of operating in the same objective realm as the phenomena being modeled.

Many students arrive in class so saturated with Leibnitz that they can be taught elementary numerical methods as the mere by-product of some other course of study. Their prior exposure is easily given shape and organization by one of the many online courses supported by the System Dynamics fraternity. A considerable degree of proficiency with numerical simulation techniques arrives with an ability to visualize time as if it were a spatial dimension. Mastery of this conceptual skill might be assessed in ones comfort with the brief synopsis to follow.

| top |

Progress from One State to the Next

Dynamic systems control state variables in the dimension of time. The notion of a state variable can be represented by any economic stock - say the amount capital held by the Widgets Sector. In the illustration below, the level of this stock is S0 tons at time = t.

Simulation techniques rely on a scientific discipline's ability to compute the rates at which a system's stocks are changing based on current levels of those stocks. In economics, these references would be to current levels of all the inputs to all the economic sectors.

Input levels would interact with the shapes of production and utility tradeoffs to determine supply, demand, prices and so fourth. Ultimately, these calculations must specify the rate R tons/year at which the Widgets Sector replenishes its capital, and the rate E tons/year at which its capital is expended.

The difference between R and E is the net rate of change of the Widget Sector's capital stock. This rate translates to a slope in the dimensions of tons of capital versus time; and the slope defines a radiant along which the capital stock departs from its current value S0.

Since R and E were computed based on the stocks at time = t, we must not allow them to govern the time-radiant beyond a small time interval d. Thus time's flow must be interrupted at t+d to re-compute all the stocks and refresh the rates of change.

Re-computing stocks simply applies the equation for straight lines in their slope-intercept form. As illustrated at the left:

(R - E) = (S1 - S0) / (t+d - t).

This quickly yields a value for S1, the next state:

S1 = S0 + d*(R - E).

| top |

Concatenation of States to Approximate Time's Continuum

When all such input levels have been computed for time = t+d, we can re-iterate our procedure to bring us up to a time that is advanced by one more d. We simply substitute the value of S1 for S0 in the above cycle of calculations, re-compute whatever R and E this might imply, and compute a new value of S1 that is the system's state at t+d+d.

Embedding a view of economics in the numerical simulation technique reveals that a model's operation is effected by continuous cycle of:

1. Using the current levels of state variables (viz., the amounts of each economic good possessed by each economic actor) to compute the rates at which those variables are changing at the current moment;

2. Updating the state variables by allowing their rates of change to persist for a brief interval, thus simulating the passage of one differential element of time; and

3. Re-computing the rates of change based on the updated state, advancing time one more interval by simulating the brief persistence of these new rates, etc., etc., etc.

Note that this rendition of economic dynamics only relies on economic principles to compute the system's rates of change from its state variables. The manner in which the state variables are updated by the rates would be the same if our subject were aeronautics, or thermodynamics, or open channel flow, or any other time-dependent phenomenon.

Note also the conflict between numerical integration and the notion of successive statics that now animates so much economic theory. Your visualization of the progress from one state to the nest showed a state variable having its value adjusted as time flowed. Successive statics would have, by contrast, displayed that variable's movement as as a flat line parallel to the time dimension; and would somehow portray change as occurring in the durationless boundaries between the differential time elements. To the practitioner of ordinary engineering dynamics, economics seems to have gotten comfortable with change as occurring in some (astral?) dimension other than time.

And, as noted in the introduction to Model 0, SFEcon's circuit of economic cause and effect closes within a single differential element of time, and without the least necessity of having arrived at any sort of ultimate, equilibrium, or optimal state. This completes Model Zero's definition as a finite-state machine: its operation depends only upon knowledge of its current (not necessarily ultimate) state, and a (correct) set of rules for computing its next state.