How simulate correlated Poisson distributions

P
Pete sherer · Apr 14, 2022 · 1.9K views
Question
Hi Is there a way to simulate correlated RVs where each RV follows poisson distribution? I have 2 RVs X1 and X2, and both follow Poisson distribution. I would like simulate final results such that I can control correlation between X1 and X2. Either simulating straight correlated process or post-processing of 2 independent run would work.
Expert Answer
Profile picture of Kshitij Singh
Kshitij Singh PhD Expert
Answered Aug 24, 2026

One way is to apply Knuth's Poisson generation using two correlated uniform distribution.

 

 

n = 10000;

% correlation coef of uniform distribution
% NOT of the poisson, but they are monotonically related
Xcorr = 0.6;
M12 = 2 * sin(pi * Xcorr / 6);
M = [1, M12;
     M12, 1];
C = chol(M);

% expectation value(s)
lambda  = 4; % scalar or vector of 1x2
Y = zeros(n,2);
L = exp(-lambda);
C = C / sqrt(2);
for r=1:n
    k = zeros(1,2);
    p = ones(1,2);
    b = p > L;
    while any(p > L)
        k = k+double(b);
        X = (erf(randn(1,2)*C) + 1) / 2;
        p = p .* X;
        b = p > L;
    end
    Y(r,:) = k-1;
end

hist(Y,[0:12])
corrcoef(Y)
mean(Y)

 

100% Run Guarantee 3-Hour Fast-Track Delivery

Need a Custom Version or Complete Simulation for This Problem?

Our 500+ PhD engineers build, debug, and optimize working MATLAB scripts and Simulink (.slx) models tailored to your exact assignment rubrics with zero plagiarism.

Tested on MATLAB R2024b / R2026a
Turnitin 0% Plagiarism Report
Free 7-Day Revisions Guarantee
Have a different question? Ask here

Get a Free Consultation or a Sample Assignment Review!