Potsdam Institute for Climate Impact Research (PIK)
Interdisciplinary Center for Dynamics of Complex Systems (University of Potsdam)
Cardiovascular Physics Group (Humboldt-Universität zu Berlin)
PIK Logo
TOCSY - Toolboxes for Complex Systems
PIK/ Antique/ Blue
Home Home
ACE - Nonlinear Regression Analysis ACE
Adaptive Filtering Procedure Adaptive Filtering
CoinCalc - Event Coincidence Analysis CoinCalc
COPRA - Constructing Proxy Records From Age Models COPRA
Cross Recurrence Plot Toolbox CRP Toolbox
Commandline Recurrence Plots Commandline RPs
Analyse Coupling of Transient Dynamics Coupling Analysis
Identification of Coupling Direction Coupling Direction
Inner Composition Alignment IOTA
Dynamical Invariants by Recurrence Plots K2
Toolbox for the analysis of non-equidistantly sampled time series NEST
DSProlog DSProlog
Permutation Entropy PETROPY
pyunicorn ‐ UNIfied COmplex Network and Recurrence aNalysis toolbox pyunicorn
Symbolic Dynamics from Recurrence Plots RECGRAM
Recurrence Structure Analysis RSA
Wavelet and Coherence Analysis SOWAS
System Identification Tool System Identification
Time Series Graph and Momentary Information Transfer Estimation TiGraMITe

ACE - Nonlinear Regression Analysis

(MATLAB® and C programmes)


General Notes

The first application of the ACE algorithm of Breiman and Friedman (1985) in nonlinear dynamics.

This programme performs a calculation of optimal transformations from a data set.

The algorithm has been invented by Breiman and Friedman (1985) and the program follows it closely, besides two differences:

  1. The output is not normalized with respect to the mean values of the optimal transformations, so the mean values may not necessarily be zero.
  2. The data are rank ordered before the calculation of the optimal transformations. This leads to a simpler computation of conditional expectation values.

The algorithm (but not the particular subroutine of estimating the conditional expectation values) is also described in Voss and Kurths (1997), Voss et al. (1999), Voss and Kurths (1999).

A comfortable clone of this programme can be found in the CRP toolbox.


Usage

The procedure is defined as

function [psi,phi]=ace(x,ll,dim,wl,oi,ii,ocrit,icrit,shol,shil)

Therefore, the outputs are psi (the maximal correlation) and phi (the set of optimal transformations). There is another program, ace_m.m, that calls ace.m. It can also be used to understand how ace.m has to be used.

The input parameters are defined as follows:
x The data set of size (dim+1)×ll.
ll The number of data points of each of the dim+1 terms, e.g. 1000, if the regression analysis is performed on 1000 data tuples.
dim The number of terms for the rhs, can be 1,2,3, etc. The 0th term corresponds to the lhs of the regression equation, the 1st to dimth terms correspond to the rhs of the regression equation.
wl Half of the length of the boxcar window, i.e., 2*wl+1=width of filter.
oi Maximum number of iterations of outer loop, e.g. 10.
ii Maximum number of iterations of inner loop, e.g. 10.
ocrit Outer iteration stop criterion, should be a small number like 1e-12.
icrit The same for the inner loop, should be the same value or larger than ocrit.
shol, shil If 1, ace.m prints the iteration result during calculations for outer and inner loop. If set to 0, no effect.

When the program is done, two output variables are produced:

  1. psi contains the maximal correlation.
  2. phi contains the transformed x-values in the same order as the inputs. Thus, to display the result, one has to plot the input variables pointwise against the output.

Example

% Demonstration of how ACE finds logarithmic transformations
% Results in blue; red is exp(phi)

ll=500; % number of data points
dim=2;  % number of terms on right hand side
wl=5;   % width of smoothing kernel
oi=100; % maximum number of outer loop iterations
ii=10;  % maximum number of inner loop iterations
ocrit=10*eps; % numerical zeroes for convergence test
icrit=1e-4; 
shol=1; % 1-> show outer loop convergence, 0-> do not
shil=0; % same for inner loop

x1=rand(ll,1); x2=rand(ll,1);
y=x1.*x2;
x=[y x1 x2]';

% call ace.m  ---------------------------------------------

[psi,phi]=ace(x,ll,dim,wl,oi,ii,ocrit,icrit,shol,shil);

% results -------------------------------------------------

psi

figure(1)
for d=1:dim+1; 
subplot(2,2,d); 
plot(x(d,:),phi(d,:),'.'); 
hold on;
plot(x(d,:),exp(phi(d,:)),'r.');
hold off; 
axis tight; 
xlabel(['x_{',num2str(d),'}']); ylabel(['\Phi_{',num2str(d),'}'])
end;

figure(2); 
sum0=sum(phi(2:dim+1,:));
plot(phi(1,:),sum0,'.');
xlabel('\Phi_0'); ylabel('\Sigma \Phi_i'); title('Regression');
screenshot screenshot

References

  1. Breiman, L., Friedman, J. H.: Estimating Optimal Transformations for Multiple regression and Correlation, J. Am. Stat. Assoc., 80(391), 1985, 580-598.

  2. Haerdle, W.: Applied Nonparametric Regression, Cambridge Univ. Press, Cambridge, 1990.

  3. Voss, H., Kurths, J.: Reconstruction of nonlinear time delay models from data by the use of optimal transformations, Phys. Lett. A, 234, 1997, 336-344, doi:10.1016/S0375-9601(97)00598-7.

  4. Voss, H., Kolodner, P., Abel, M., Kurths, J.: Amplitude equations from spatiotemporal binary-fluid convection data. Phys. Rev. Lett., 83(17), 1999, 3422-3425, doi:10.1103/PhysRevLett.83.3422.

  5. Voss, H., Kurths, J.: Reconstruction of nonlinear time delay models from optical data. Chaos, Solitons & Fractals, 10, 1999, 805-809.


Download

extern (mirror)


Author

Henning Voss





Creative Commons License

© 2004-2021 SOME RIGHTS RESERVED
University of Potsdam, Interdisciplinary Center for Dynamics of Complex Systems, Germany
Potsdam Institute for Climate Impact Research, Transdisciplinary Concepts and Methods, Germany

This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.0 Germany License.
Imprint, Data policy, Disclaimer

Please respect the copyrights! The content is protected by the Creative Commons License. If you use the provided programmes, text or figures, you have to refer to the given publications and this web site (tocsy.pik-potsdam.de) as well.

@MEMBER OF PROJECT HONEY POT
Spam Harvester Protection Network
provided by Unspam