我对如何在Matlab仿真中确保随机变量的独立性有一些疑问。请考虑以下示例:
T=400;
x=randi(3,T,1); %Tx1
w=randn(T,1); %Tx1
我们知道,对于t=1,...,T
,x(t)
是来自Unif([1,3])
的抽奖。
我们可以将x(t)
视为X_t~Unif([1,3])
的随机变量t=1,...,T
的实现
(X_1,..., X_T)
相互独立。
我们知道,对于t=1,...,T
,w(t)
是来自N(0,1)
的抽奖。
我们可以将w(t)
视为W_t~N(0,1)
随机变量t=1,...,T
的实现,(W_1,..., W_T)
相互独立。
问题:假设我想确保,对于每个t=1,...,T
,W_t
独立于X_t
:执行上述步骤会自动确保和{如果没有,我应该介绍哪些修改?
答案 0 :(得分:4)
是的,你可以尽可能地使用伪随机数。但抛开pseduo部分,所有数字都来自与文档中提到的here相同的数字生成器
"每次调用rand,randi或randn时,他们都会从共享的随机数生成器中绘制一个新值,并且可以将连续值视为统计独立的。 "
因此,如果您说值(X_1,..., X_T)
是相互独立的,那么值(X_1,..., X_2T)
也是相互独立的。在您的示例中,(X_1,..., X_T)
用于x
,而(X_T+1,..., X_2T)
用于w
。