Lorenz Model

The state transition and observation functions of multivariate Lorenz model are given by:

State transition function:
x1(t) = (Sigma * x2(t-1) * dt + x1(t-1) * (1 - Sigma * dt))   + sqrt(q1) * randn;
x2(t) = (x1(t-1) * (Rho - y1(t-1))) * dt + x2(t-1) * (1 - dt) + sqrt(q2) * randn;
Observation function:
y1(t) = (x1(t-1) * x2(t-1) * dt) + y1(t-1) * (1 - Beta * dt)  + sqrt(r1) * randn;
y2(t) = Alpha0 * x1(t-1) .^ 2                                 + sqrt(r2) * randn;
y3(t) = Alpha0 * x2(t-1) .^ 2                                 + sqrt(r3) * randn;

where Sigma, Rho, Beta, Alpha0 are the model static parameters. The parameters q1, q2, r1, r2, and r3 control the magnitude of state transition/observation noise.

Parameter setting for Lorenz model

Parameter name
Description
Value
T length of data sequence
1,000
Sigma model parameter 10
Rho model parameter 28
Beta model parameter 8/3
Alpha0 model parameter 1
(q1, q2) magnitude of noise added to state transition function (1e-1, 1e-1)
(r1, r2, r3) magnitude of noise added to observation function (1e-1, 1e-1, 1e-1)
dt time interval
1e-2

Model estimation experiment:

Source code: samples/LorenzModelPMCMC2Estimation.m

Commands:

addpath('samples');
LorenzModelPMCMC2Estimation;

Experimental conditions
Description
Value
Number of dimensions in state space
2
Range of grid points in state space
From -30 to 30 for each dimension; Interval of grid points is 2.0
Initial values of mean function of state transition (anchor model)
@(x) (Sigma .* x(2,:) .* dt + x(1,:) .* (1 - Sigma .* dt)),  ...
@(x) (x(1,:) .* (Rho - x(3,:)) .* dt + x(2,:) .* (1 - dt))   ...
Covariance function of state transition
RBF kernel for 1st dimension of state space; 2nd dimension is independent of kernel build
Initial values of mean function of observation (anchor model)
@(x) ((x(1,:) .* x(2,:) .* dt) + x(3,:) .* (1 - Beta * dt)), ...
@(x) (Alpha0 * x(1,:) .^ 2),                                 ...
@(x) (Alpha0 * x(2,:) .^ 2)                                  ...
Covariance function of observation function
RBF kernel for 1st dimension of state space; 2nd dimension is independent of kernel build
Number of particles 500
Number of MCMC iterations 2,000

Experimental results:

PMCMC marginal likelihood estimation of incremental marginal likelihood sequence for each dimension of the observation vectors for Lorenz model versus true incremental marginal likelihood.

The average of mean functions from the estimated model at each MCMC iteration  (y1, y2, y3 in turn)

The above figures could be obtained by using the following function of this toolbox,

Graphs.YEMean(PathForOutput, PathForMatFile);
where PathForOutput is the filename path for these figures to be saved and PathForMatFile is the matlab filename which contains the estimated parameters.

The log-likelihood estimated at each MCMC iteration

The above figure could be obtained by using the following function of this toolbox,

Graphs.Loglik(PathForOutput);
where PathForOutput is the filename path for this figure to be saved.


Description
Value
CPU Intel Xeon X5680 @ 3.33GHz
Memory 48GB
Real time for each MCMC iteration 302.979 seconds