更改

跳到导航 跳到搜索
删除50字节 、 2020年5月19日 (二) 16:26
第19行: 第19行:       −
=== 基本迭代The basic iteration ===
+
=== 基本迭代 ===
 
在每个步骤中,模拟退火这种启发式算法都会考虑当前状态<math>s</math>的某个相邻状态<math>s*</math>,并概率性地决定系统的下一个状态是移至状态<math>s*</math>还是保持状态<math>s</math>。这些概率最终会使系统进入能量较低的状态。通常来说需要重复执行迭代步骤,直到系统达到足以满足应用程序的能量状态或耗尽了给定的计算预算。
 
在每个步骤中,模拟退火这种启发式算法都会考虑当前状态<math>s</math>的某个相邻状态<math>s*</math>,并概率性地决定系统的下一个状态是移至状态<math>s*</math>还是保持状态<math>s</math>。这些概率最终会使系统进入能量较低的状态。通常来说需要重复执行迭代步骤,直到系统达到足以满足应用程序的能量状态或耗尽了给定的计算预算。
      −
=== 城市的邻居 The neighbours of a state ===
+
=== 城市的邻居===
 
解决方案的优化包括评估问题状态的邻居,这些邻居是通过保守改变给定状态而产生的新状态。例如在[[旅行商问题]]中,每个地点通常被定义为要访问的城市的排列,通过反转任意两个邻近城市顺序产生邻居的排列集合,不同的移动方式将产生不同的近邻城市集。这种明确界定的改变各地以产生邻近城市集合的方式被称为“移动”。这些移动最后通常会让状态的更改迭代量降到最低,尝试通过迭代改善解决方案的组成部分(例如旅行商问题中的城市联系)来逐步改善解决方案。
 
解决方案的优化包括评估问题状态的邻居,这些邻居是通过保守改变给定状态而产生的新状态。例如在[[旅行商问题]]中,每个地点通常被定义为要访问的城市的排列,通过反转任意两个邻近城市顺序产生邻居的排列集合,不同的移动方式将产生不同的近邻城市集。这种明确界定的改变各地以产生邻近城市集合的方式被称为“移动”。这些移动最后通常会让状态的更改迭代量降到最低,尝试通过迭代改善解决方案的组成部分(例如旅行商问题中的城市联系)来逐步改善解决方案。
       
像爬山这样的简单启发式方法通过逐步寻找更好的邻居移动,在没有更好邻居处停止,这种方法结果很容易得到局部最优解,而实际最优解可能是有所不同的全局最优解。元启发法为避免陷入局部最优,通过改变选择邻居的方法(即尽管他们更喜欢更好的邻居,但他们也接受更坏的邻居)把解的邻居用作探索解空间。如果运行足够长的时间,这种方法可以找到全局最优值。
 
像爬山这样的简单启发式方法通过逐步寻找更好的邻居移动,在没有更好邻居处停止,这种方法结果很容易得到局部最优解,而实际最优解可能是有所不同的全局最优解。元启发法为避免陷入局部最优,通过改变选择邻居的方法(即尽管他们更喜欢更好的邻居,但他们也接受更坏的邻居)把解的邻居用作探索解空间。如果运行足够长的时间,这种方法可以找到全局最优值。
        第41行: 第40行:       −
The <math>P</math>函数的选择通常是为了降低接受移动的概率。
+
The <math>P</math>函数的选择通常是为了降低接受移动的概率。<math>e'-e</math>增加意味着小的上坡动作比大的动作更有可能发生。如果符合上述要求,这一要求并非绝对必要。
 
  −
 
  −
<math>e'-e</math>增加意味着小的上坡动作比大的动作更有可能发生。如果符合上述要求,这一要求并非绝对必要。
       
763

个编辑

导航菜单