局域随机搜索.ppt

  1. 1、本文档共74页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
局域随机搜索

局域搜索与随机搜索 概要 爬山法 随机搜索 模拟退火法 局域射线搜索 遗传算法 搜索问题 已知: 一个状态(或构形)集:S={X1,…,XM}, 一个评估每个状态的函数:Eval(X). 求解: 寻找全域极值:寻找X*使得Eval(X*)比所有其它Eval(Xi)都更大,Xi是所有可能的值。 实例 超大规模集成电路(VLSI)布局图: X=组件放置+连接路由 Eval=组件间距离+没用的组件%+路由长度 实例 调度:已知m个机器,n个任务 X=给机器的任务安排 Eval=这n个任务完成时间的极小化 其它:车辆路由、设计、处理排序、…… 挑战性 感兴趣的问题: 构形集太大,不能显式列举。 计算Eval(.)可能很昂贵。 没有用来寻找Eval(.)极大值的有效算法。 对于要解决的问题,Eval(.)值相似的解被认为是等同的。 不关心怎样得到X*,仅关心对X*构形的描述。这是与以前介绍的搜索问题的一个关键不同。 实例:旅行推销商问题(TSP) 寻找一个经过每个结点一次,且长度最小的旅行路线。 实例:旅行推销商问题(TSP) 构形X=经过结点{1,…,N}的旅行 Eval=由{1,…,N}的一个排列来定义的路径长度 寻找X*来实现Eval(X)的极小。 搜索空间尺寸=(N-1)!/2量级。 注意:N为几十万时,搜索空间是巨大的。 实例:可满足性问题(SAT) 命题逻辑(布尔代数): A??B?C ?A?C?D B?D??E ?C??D??E ?A??C?E …… 实例:可满足性问题(SAT) A??B?C ?A?C?D B?D??E ?C??D??E ?A??C?E …… 实例:N个皇后 寻找一个构形,使得没有一个皇后能攻击其她任何一个皇后。 实例:N个皇后 构形X=在N列中N个皇后的位置。 Eval(X)=能两两相互攻击的皇后偶对的数目。 寻找X*来实现极小:Eval(X)=0。 搜索空间尺寸:NN量级。 注意:N10时,搜索空间是巨大的。 局域搜索 假设对每个构形X,定义一个邻域(或移动集)Neighbors(X),它是从X出发在一步内能到达的构形集。 X0 ? 初始态 重复直到满意当前构形为止: 评估Neighbors(Xi)中的一些近邻 选择其中一个近邻,Xi+1 移到Xi+1 局域搜索 议题: 一般情况下,不能直接、清楚、唯一地定义邻域,然而搜索算法的性能依赖于邻域的定义。 选择策略:怎样决定接受哪个近邻? 满意条件,即停止条件? 最简单的实例 S={1,…,100} Neighbors(X)={X-1,X+1} 最简单的实例 虽然对全域极值有兴趣,但可能只得到一个局域极值。 事实上,每次迭代只能得到局域极值。 挑战性:通过一系列的局域移动来试图达到全域极值。 最基本的算法:爬山法(Hill Climbing)(局域贪婪搜索(GLS)) X ? 初始构形 迭代: E ? Eval(X) N ? Neighbors(X) 对在N中的每个Xi Ei ? Eval(Xi) if 所有的Ei 都比E低 Return X else i*=argmaxi(Ei) X?Xi* E?Ei* 更有趣的实例 怎样来定义Neighbors(X)? 议题 议题 空间开销恒定。 所能期望的,就是找到最接近初始构形的局域极值。还能做到比这更好吗? 山脊与平台将困扰所有的局域算法。 邻域的设计是与算法的设计一样的关键。 对邻域尺寸要权衡: 较大的邻域=找到一个好极值的机会较大,但可能需要评估巨大的移动数。 较小的邻域=较小的评估量,但可能会被困在局域极值处。 贪婪爬山vs.随机爬山 随机搜索:随机爬山法 X ? 初始构形 迭代: E ? Eval(X) X’ ? 在Neighbors(X)中随机选择一个构形 E’ ? Eval(X’) if E’ E X ? X’ E ? E’ 议题: 迭代停止条件? 不再选择在整个邻域中的最佳移动,但又是什么的其它移动呢? TSP移动 爬山法:TSP示例 k边优化=采用k边变化邻域的爬山法 结果: 3边优化比2边优化好。 在给定计算时间增量下,4边优化没有明显更好。 采用随机重算以提高成功的几率。 更好的度量:离开极小代价估值的百分数。 爬山法:N个皇后 基本爬山法不是很有效。 由于许多构形有相同的代价,所有出现平台问题。 多次随机重算是提高性能的标准方法。 爬山法:SAT A??B?C ?A?C?D B?D??E ?C??D??E ?A??C?E …… WALKSAT算法: 状态X=N个布尔变量的赋值。 随机初始化变量(x1,…, xN)为真或伪。 迭代直到所有句子被满足或是到达迭代极限: 选择一个不满足的句子 以p的概率,随机选择一个变量xi 以1-p的概

文档评论(0)

wnqwwy20 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:7014141164000003

1亿VIP精品文档

相关文档