国科大中科院算法讲义 局部搜索要点.ppt

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
局部搜索算法的设计 因局部搜索算法只保留当前信息,会重复访问已访问过的候选解,循环不可避免。 Shaowei Cai 提出了格局检测(Configuration Checking) 技术:当一个点被移除出当前候选解后,若其邻居的状态都未改变,则它不被允许再被移入当前候选解。 启发式算法 一、局部搜索算法 启发式算法的定义 英文名: Heuristic Algorithm 一个基于直观或经验构造的算法,在可接受的花费(计算时间、占用空间)下给出待解决问题实例的一个可行解,该可行解与最优解的偏离程度不一定事先可以预计。 启发式算法是一种技术。这种技术使得在可接受的计算费用内去寻找最好的解,但不一定保证所得解的可行性和最优性,甚至在多数情况下,无法阐述所得到的解同最优解的近似程度。 启发式算法的历史 20世纪40年代提出 Polya G. How to Solve It? 1948. 20世纪60~70年代,“quick and dirty” 数学模型与最优化算法受到重视 20世纪80年代以后 得到迅速发展 算法复杂性理论逐步完善,不再强调最 优解,注重满足要求。 启发式算法的优点 对于某些目前还没有最优算法的问题可采用启发式算法 因为数据采集的不准确性,参数估计的不确定性等,启发式算法可能比某些最优算法效果更好 一些启发式算法可以嵌入到最优化算法,如,在分枝限界算法中引用贪心算法。 简单易行,速度快 启发式算法的缺点 不能保证求到最优解 表现不稳定 算法的好坏依赖于实际问题、经验和设计者的技术水平 局部搜索(Local Search) 给定优化问题,局部搜索从解空间的一个点出发,根据局部信息,每一步从当前候选解移动到邻居候选解,去寻找最优解。包括以下要素: 1. 搜索空间S,包含所有候选解的有限集合 2. 可行解集合S’ 3. 候选解的邻域关系R 4. 初始化函数 5. 转移函数 邻域 在函数优化问题中: 邻域通常定义为在给定距离空间内,以一点为中心的一个球体 在组合优化问题中:可定义一个领域映射 N(x)称为x的邻域, 称为x的一个邻居。 邻域的构造依赖于决策变量的表示 邻域的结构在优化算法中起重要的作用 领域的例子 定义邻域移动为:位值加1或减1 判断对于[ 2 2 3 5 3],下面哪一个属于它的领域: [2 3 3 5 3] [2 3 2 5 3] [2 2 3 5 5] [2 2 3 4 3] [2 2 2 5 3] [2 2 3 4 4] 简单局部搜索算法 迭代改进(Iterative Improvement):即爬山法,每次从当前候选解的邻居中选择一个最优解进行转移,直至达到局部最优点。 随机游走(Random Walk):每次从当前候选解的邻居中随机选一个进行转移。 随机迭代改进( Random Iterative Improvement ): 每步首先产生一个随机数0≦ r ≦ 1,以r的概率随机游走,以1-r的概率迭代改进。 禁忌搜索(Tabu Search): 从没被禁忌的邻居中选择一个最优的候选解进行转移。 爬山法 步骤: STEP 1 选定一个初始可行解x0,记录当前最优解xbest:=x0, T=N(xbest); STEP 2 当T\{xbest}=Φ时,或满足其他停止运算准则时,输出计算结果,停止运算;否则,从T中选一集合S,得到S中的最好解xnow;若f (xnow)f(xbest),则xbest := xnow ,T=N(xbest);否则T:=T\S;重复STEP 2。 爬山法示例 五个城市的对称TSP 问题 初始解为xbest=(ABCDE),f(xbest)=45,定义邻域映射为对换两个城市位置的2-opt,选定A城市为起点。 爬山法示例 全邻域搜索 第1步 初始解为xbest=(ABCDE),f(xbest)=45. N(xbest)={(ABCDE),(ACBDE),(ADCBE),(AECDB),(ABDCE),(ABEDC),(ABCED)}, 对应目标函数为f(x)={45, 43, 45, 60, 60, 59, 44} xbest:=xnow=(ACBDE) 第2步 N(xbest)={(ACBDE),(ABCDE),(ADBCE),(AEBDC),(ACDBE),(ACEDB),(ACBED)}, 对应目标函数为f(x)={43, 45, 44, 59, 59, 58, 43} xbest:=xnow=(ACBDE) 爬山法示例 一步随机搜索 第1

文档评论(0)

此项为空 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档