Elsevier Science Home
Computer Physics Communications Program Library
Full text online from Science Direct
Programs in Physics & Physical Chemistry
CPC Home

[Licence| Download | New Version Template] adoa_v1_0.tar.gz(6 Kbytes)
Manuscript Title: DARWIN: an evolutionary program for nonlinear modeling of chaotic time series.
Authors: A. Alvarez, A. Orfila, J. Tintore
Program title: DARWIN
Catalogue identifier: ADOA_v1_0
Distribution format: tar.gz
Journal reference: Comput. Phys. Commun. 136(2001)334
Programming language: Fortran.
Computer: PC-Pentium 333 MHz, Alpha XP-1000.
Operating system: Unix, MS-DOS, Windows98.
RAM: 500K words
Word size: 32
Keywords: General purpose, Fitting, Other numerical methods, Extracting dynamical models from data, Chaotic time series forecasting, Evolutionary programming.
Classification: 4.9, 4.12.

Nature of problem:
To estimate the dynamical model that creates an observed deterministic time series. To achieve short-term forecasts of chaotic systems.

Solution method:
An evolutionary code is programmed to approximate the equation, in symbolic form, that best describes the behaviour of the time series. An initial population of randomly generated equations:
x(t) = P(x(t-tau) ... x(t-mtau)),
being {x(ti)}, ti = 1 ... N the elements of the time series, m and tau parameters and P(.) a nonlinear function, is firstly considered. An evolution process is carried out by selecting from the initial population those equations (individuals) that best fit the data. Then the strongest strings, those with best fitting, choose a mate for reproduction while the weaker strings disappear. The new population is then subjected to mutation processes. The evolutionary steps are repeated with the new generation. The process ends when a fixed number of generations is carried out. The code can also model multivariate time series.

Nonlinear solutions P(.) are built considering an operator set constituted by the four arithmetic operators, addition, subtraction, multiplication, or division. The final symbolic form is not simplified.

Unusual features:
DARWIN is an efficient evolutionary algorithm to model chaotic time series entirely programmed in Fortran 77. The algorithm provides a symbolic expression of the form x(t) = P(x(t-tau) ... x(t-mtau)) of the estimated dynamical model. The program is highly portable across different computer systems.

Running time:
1000 generations in 10 seconds (Alpha XP-1000)

[1] A. Alvarez et al., Forecasting the SST space-time variability of the Alboran Sea with genetic algorithms. Geophys. Res. Lett., 27 (2000) 2709-2712.
[2] C. Bamford, P. Curran, Data structures, Files and Databases, MacMillan Education, London, 1991.
[3] J.R. Koza, Genetic programming, MIT Press, Cambridge, 1992.
[4] C. Lopez, A. Alvarez, E. Hernandez-Garcia, Forecasting confined spatiotemporal chaos with genetic algorithms. Phys. Rev. Lett., 85 (2000) 2300-2303.
[5] G.G. Szpiro, Forecasting chaotic time series with genetic algorithms, Phys. Rev. E 55 (1997) 2557-2568.