我的名字是Rik,我是一个6-sigma绿带,我创建了一个飞机发动机维修设施的Monte-Carlo模拟。我目前正在使用Excel VBA进行6-sigma项目。
我在开发程序时只是缩放了一个随机数,但是现在它已经开发了我想使用逆对数正态CDF http://engineer.jpl.nasa.gov/practices/at2.pdf来创建随机修复时间,但我找不到在线功能。
我确实在http://www.anthony-vba.kefra.com/vba/vba12.htm上找到了以下代码,但它是针对正态分布的,我不确定它的准确性。我找不到逆对数正态CDF的等式。我想要反向对数正态CDF函数的类似代码。
非常感谢任何帮助。
'****************************************************************************
'* Return random numbers from Standard Normal Distribution *
'****************************************************************************
Function gauss()
Dim fac As Double, r As Double, V1 As Double, V2 As Double
10 V1 = 2 * Rnd - 1
V2 = 2 * Rnd - 1
r = V1 ^ 2 + V2 ^ 2
If (r >= 1) Then GoTo 10
fac = Sqr(-2 * Log(r) / r)
gauss = V2 * fac
End Function
答案 0 :(得分:1)
如果您使用的是Excel VBA,则Excel函数Loginv以及0到1之间的随机数可用于生成随机日志正态分布数。