Problem with generating random numbers when performing a Monte carlo simulation in Matlab ?

3 次查看(过去 30 天)
Hi there,
I am performing a Monte carlo simulation and this is the code for it.
clc; clear all;
num_simulations = 1000 ;
P_init = repmat(5,10,1)
numAC = length(P_init) ;
sumReduction = zeros(num_simulations,1);
for i = 1 : num_simulations
DRM_levels = [0.25, 0.5, 0.75, 1.0]';
DRM_prob = [.25, .25, .25, .25];
s = RandStream('mlfg6331_64');
ReductionLevelsVector = randsample(s, DRM_levels , numAC, true, DRM_prob);
ActualReduction = P_init .* ReductionLevelsVector ;
sumReduction(i) = sum(ActualReduction) ;
end
However after performing num_simulations iterations I find that I am ended up getting the same result for sumReduction in each iteration. Is there something wrong with the Random number generator I am using, so it continues to generate the same random number at each iteration.
Can anyone please help me with this ?
Thanks.
  3 个评论
Pradeep Jangid
Pradeep Jangid 2021-4-1
When I run your code after writing randstrem before loop. But when I made plot of xcorr(sumReduction), It's almost trinangle. It means there is no chnge in correltion. Please help If I'm wrong.

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Whos 的更多信息

产品


版本

R2019a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by