Metropolis 算法又叫 Metropolis 抽样,是模拟退火算法的基础,在早期的科学计算中蒙特卡洛方法(Monte Carlo)是对大量原子在给定温度下的平衡态的随机模拟,当蒙特卡洛算法计算量偏大。
1953 年,Metropolis 提出重要性采样,即以概率来接受新状态,而不是使用完全确定的规则,称为 Metropolis 准则,可以显著减小计算量。
假设前一状态为
当状态转移之后,如果能量减小了,那么这种转移就被接受了(以概率 1 发生)。如果能量增大了,就说明系统偏离全局最优位置(能量最低点,模拟退火算法所要寻找的就是密度最高能量最低的位置)更远了,此时算法不会立即将其抛弃,而是进行概率判断:首先在区间
这正是 Metropolis 算法,其核心思想是当能量增加时以一定概率接收,而不是一味的拒绝;