Filter löschen
Filter löschen

How to repeat a random number generation and simulation for 1000 times

1 Ansicht (letzte 30 Tage)
Hanson Zhou
Hanson Zhou am 14 Okt. 2015
Beantwortet: Guillaume am 14 Okt. 2015
Hi all, I have a code for random number generation and simulation for queuing experiment. The code is as below
code:
time=6;
lambda=5;
mean_arr=1/lambda;
num_arr=time*lambda*5;
interval=exprnd(mean_arr,1,num_arr);
intv(1,:)=interval;
arr_time(1,:)=cumsum(intv(1,:));
num_vaild=sum(arr_time(1,:)<=time);
data(1,:)=arr_time(1:num_vaild);
mean_treat=1/4;
std_treat=1/6;
data(2,:)=normrnd(mean_treat,std_treat,1,num_vaild);
for j=1:num_vaild
if data(2,j)<0
data(2,j)=0;
end
end
data(3,1)=0;
data(4,1)=data(1,1)+data(2,1);
patient=[1];
for i=2:num_vaild
queue=sum(data(4,patient)>data(1,i));
if queue==0;
data(3,i)=0;
data(4,i)=data(1,i)+data(2,i);
patient=[patient,i];
else num_patient=length(patient);
data(3,i)=data(4,num_patient)-data(1,i);
data(4,i)=data(4,num_patient)+data(2,i);
patient=[patient,i];
end
end
doctor_leavingtime = data(4,num_vaild);
I need to repeat this entire script for 1000 times and record the doctor's leaving time in data(4,end) every time, and create a vector for them.
any idea about how to repeat?

Antworten (1)

Guillaume
Guillaume am 14 Okt. 2015
doctor_leavingtime = zeros(1, 1000);
for repeat = 1:1000
%your code to repeat
%...
doctor_leavingtime(repeat) = data(4, num_valid);
end
Unless I misunderstood your question that's all you have to do: wrap your original code in a loop.

Kategorien

Mehr zu Optimization Toolbox finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by