The Azimuth Project
Blog - El Niño project (part 3) (Rev #1)

This is a blog article in progress, written by John Baez. To see discussions of the article as it is being written, visit the Azimuth Forum.

If you want to write your own article, please read the directions on How to blog.

This paper tries to predict the next El Niño using a climate network:

• Josef Ludescher, Avi Gozolchiani, Mikhail I. Bogachev, Armin Bunde, Shlomo Havlin, and Hans Joachim Schellnhuber, Very early warning of next El Niño, Proceedings of the National Academy of Sciences, February 2014. (Click title for free version, journal name for official version.)

Since it claims there’s a 3/4 chance that the next El Niño will arrive by the end of 2014, and it was published in a reputable journal, it created a big stir. Folks at the Azimuth Project want to replicate and then criticize or improve this paper. So, I want to start by summarizing what it says.

What I’ll write is heavily based on the work of David Tanzer, a software developer who works for financial firms in New York, and Graham Jones, a self-employed programmer who also works on genomics and Bayesian statistics. These guys have really brought new life to the Azimuth Code Project in the last few weeks, and it’s exciting!

We’re also relying a lot on this earlier paper:

• Josef Ludescher, Avi Gozolchiani, Mikhail I. Bogachev, Armin Bunde, Shlomo Havlin, and Hans Joachim Schellnhuber, Improved El Niño forecasting by cooperativity detection, Proceedings of the National Academy of Sciences, 30 May 2013.

The basic idea

The basic idea is to use a climate network. A climate network is a undirected graph whose nodes represent points in a spatial grid, and where the link strength between nodes ii and jj is calculated from the historical weather record at those two points. There are lots of ways we could do this. For example, we could compute the cross-correlation of temperature histories at these points ii and jj, and some function of this could be our link strength.

In a weighted graph approach, we attach a number, the link strength, to the edge connecting ii and jj. In unweighted graph formulations, we use some binary decision rule to specify whether ii and jj are connected by an edge or not.

These papers try to predict El Niños by studying correlations between daily temperature data for “14 grid points in the El Niño basin and 193 grid points outside this domain”, as shown here:

The red dots are the points in the El Niño basin.

Starting from this temperature data, they do a calculation which I will explain later: that’s the heart of their paper. They then use the result to predict the Nino3.4 index, which is the area-averaged sea surface temperature in the yellow region here:

Here is what they get:

The details

For any f(t)f(t), denote the moving average over the past year by:

f(t)=1365 d=0 364f(td)\langle f(t) \rangle = \frac{1}{365} \sum_{d = 0}^{364} f(t - d)

Let ii be a node in the El Niño basin, and jj be a node outside of it.

Let tt range over every tenth day in the time span from 1950 to 2011.

Let T k(t)T_k(t) be the daily atmospheric temperature anomalies (actual temperature value minus climatological average for each calendar day).

Define the time-delayed cross-covariance function by:

C i,j t(τ)=T i(t)T j(tτ)T i(t)T j(tτ) C_{i,j}^{t}(-\tau) = \langle T_i(t) T_j(t - \tau) \rangle - \langle T_i(t) \rangle \langle T_j(t - \tau) \rangle
C i,j t(τ)=T i(tτ)T j(t)T i(tτ)T j(t) C_{i,j}^{t}(\tau) = \langle T_i(t - \tau) T_j(t) \rangle - \langle T_i(t - \tau) \rangle \langle T_j(t) \rangle

They consider time lags τ\tau between 0 and 200 d, where “a reliable estime of the backround noise level can be guaranteed.”

Divide the cross-covariances by the standard deviations of T iT_i and T jT_j to obtain the cross-correlations.

Only temperature data from the past are considered when estimating the cross-correlation function at day tt.

Next, for nodes ii and jj, and for each time point tt, the maximum, the mean and the standard deviation around the mean are determined for C i,j tC_{i,j}^t, as τ\tau varies across its range.

Define the link strength S ij(t)S_{i j}(t) as the difference between the maximum and the mean value, divided by the standard deviation.

They say:

Accordingly, S ij(t)S_{i j}(t) describes the link strength at day t relative to the underlying background and thus quantifies the dynamical teleconnections between nodes ii and jj.

Niño 3.4

Niño 3.4 is the area-averaged sea surface temperature in the region 5°S-5°N and 170°-120°W. You can get Niño3.4 data here:

Niño 3.4 is just one of several official regions in the Pacific:

  • Niño 1: 80°W-90°W and 5°S-10°S.
  • Niño 2: 80°W-90°W and 0°S-5°S
  • Niño 3: 90°W-150°W and 5°S-5°N.
  • Niño 3.4: 120°W-170°W and 5°S-5°N.
  • Niño 4: 160°E-150°W and 5°S-5°N.

category: blog, climate