15分钟入门蒙特卡洛 Monte Carlo
【摘要】 那么,问题来了,怎么对任意分布 采样?这里介绍Metropolis MC算法,也叫Metropolis-Hastings算法,它类似于随机瞎走(Random walk)的方式产生一列数,这些数的总体分布服从 。这里,我们以平衡态统计力学中的最常见的Boltzmann分布为例说明。玻尔兹曼分布说对于构型 ,它的概率应该是 ,这里 是这个构型的能量。我们想要产生服从玻尔兹曼分布的一系列 ,可以设...
-
从起始构型 ,计算能量 ; -
随机移动一些构型坐标得到一个trial构型 ,并计算该构型的能量 ; -
决定是否接受这个移动:
(1)如果 ,那么100%接受这个移动,正式的下一步构型就是 了;
(2)如果 ,那么产生一个0到1之间的随机数R, 并跟转移概率 比较,如果 , 那就接受这个移动 ,否则就拒绝这个移动 ; -
回到第二步,直到累积N个构型。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)