噪声方差不为 1 时的 Milstein 算法
Milstein algorithm when variance of the noise is different from 1
我想为噪声是加性的随机方程实现 Milshtein 算法。该等式具有下一种形式。
dx(t)/dt= q(x(t)) + noise(t)
噪声是零均值方差5的高斯变量。
这个表达式我在书上找到的milsthein算法的表达式如下
x(t)=x(t) + h q(x(t)) + sqrt(h) u
其中"h"是算法的步长,"sqrt"表示"square root","u"是均值为0方差为1的高斯随机变量。
但是,如果我想要方差为 5 的噪声,我应该只 "u" 方差为 5 的高斯变量还是应该更改其他内容?
你是对的。鉴于您修改后的随机微分方程,
dx(t)/dt = q(x(t)) + √5 noise(t),
我们可以仅使用微分的线性度和方差为 1 噪声的公式来推导出正确的公式。让 p(z) = q(√5 z)/√5
和 y(t) = x(t)/√5
.
dx(t)/dt = q(x(t)) + √5 noise(t)
= √5 [q(√5 x(t)/√5)/√5 + noise(t)]
= √5 [p(x(t)/√5) + noise(t)] change q -> p where z = x(t)/√5
(dx(t)/dt)/√5 = p(x(t)/√5) + noise(t)
d(x(t)/√5)/dt = p(x(t)/√5) + noise(t) linearity of differentiation
dy(t)/dt = p(y(t)) + noise(t) change x -> y
y
的更新公式由 Milstein 给出:
y(t) -> y(t) + h p(y(t)) + √h u.
我们可以推导出x
的更新公式。
x(t)/√5 -> x(t)/√5 + h p(x(t)/√5) + √h u
x(t) -> x(t) + √5 h q(x(t))/√5 + √5 √h u
-> x(t) + h q(x(t)) + √h (√5 u)
我想为噪声是加性的随机方程实现 Milshtein 算法。该等式具有下一种形式。
dx(t)/dt= q(x(t)) + noise(t)
噪声是零均值方差5的高斯变量。 这个表达式我在书上找到的milsthein算法的表达式如下
x(t)=x(t) + h q(x(t)) + sqrt(h) u
其中"h"是算法的步长,"sqrt"表示"square root","u"是均值为0方差为1的高斯随机变量。
但是,如果我想要方差为 5 的噪声,我应该只 "u" 方差为 5 的高斯变量还是应该更改其他内容?
你是对的。鉴于您修改后的随机微分方程,
dx(t)/dt = q(x(t)) + √5 noise(t),
我们可以仅使用微分的线性度和方差为 1 噪声的公式来推导出正确的公式。让 p(z) = q(√5 z)/√5
和 y(t) = x(t)/√5
.
dx(t)/dt = q(x(t)) + √5 noise(t)
= √5 [q(√5 x(t)/√5)/√5 + noise(t)]
= √5 [p(x(t)/√5) + noise(t)] change q -> p where z = x(t)/√5
(dx(t)/dt)/√5 = p(x(t)/√5) + noise(t)
d(x(t)/√5)/dt = p(x(t)/√5) + noise(t) linearity of differentiation
dy(t)/dt = p(y(t)) + noise(t) change x -> y
y
的更新公式由 Milstein 给出:
y(t) -> y(t) + h p(y(t)) + √h u.
我们可以推导出x
的更新公式。
x(t)/√5 -> x(t)/√5 + h p(x(t)/√5) + √h u
x(t) -> x(t) + √5 h q(x(t))/√5 + √5 √h u
-> x(t) + h q(x(t)) + √h (√5 u)