REPLY First order oscillation (SD6460)

SDMAIL John Sterman jsterman at MIT.EDU
Sat Jun 2 05:20:20 CDT 2007


Posted by  John Sterman <jsterman at MIT.EDU>

A continuous time first-order system of the form

1.   dx/dt = f(x)

cannot oscillate, whether it is linear or nonlinear.  The system has  
only one eigenvalue, so can never oscillate (even if it is  
nonlinear).  To get oscillation in continuous time requires at least  
2 state variables.  To get chaos in continuous time requires at least  
three states and particular nonlinearities.

A discrete-time first-order system (mapping) of the form

2.   x(t+1) = F(x(t))

can oscillate and, if it is nonlinear in a particular way, can  
generate period doublings, chaos, and other interesting dynamics.

One way to think about this is to reformulate the discrete-time map  
in continuous time.  The difference-equation formulation implies that  
there is a time delay of 1 "period" in the feedback loop from x to  
its rate of change.  Further, that delay is a "pipeline" delay:   
output(t) = intput(t-L), where L is the length of the delay, in this  
case, one  "period".  The pipeline delay is the limit of the Erlang  
delay family as the order of the Erlang delay goes to infinity (it is  
thus also called an infinite-order delay).  Consequently, the  
continuous time equivalent of the discrete-time mapping eq. 2. is  
actually an infinite-order system.  Such a system can oscillate of  
course and can generate chaos etc.

Difference equations became popular (in economics, at least) because  
economic data are typically published at regular intervals such as  
quarterly or annually, and it was convenient for econometric  
estimation to model economic dynamics as proceeding in discrete  
steps.  However, while difference equations are often useful, one  
must be careful because there is an irreducible time delay of at  
least 1 period in every feedback loop.  If the length of this period  
is long relative to the time constants for the real-world processes  
being modeled, the result can be the introduction of spurious  
dynamics (e.g., oscillations caused by the time step).  Further, any  
more complex delays must be integer multiples of the "period" between  
time steps in the difference equations.  This is often inappropriate  
and inconsistent with the data.

It's generally better practice to model the dynamics of a system  
continuously, explicitly representing relevant time delays as the  
data suggest, including their mean and distribution, rather than  
assuming a pipeline delay of 1 period in the updating of every state  
variable.

John Sterman 
Posted by  John Sterman <jsterman at MIT.EDU>
posting date  Fri, 1 Jun 2007 07:39:50 -0400


More information about the SDMail mailing list