浅谈随机化思想在几何问题中的应用汇编.docx

浅谈随机化思想在几何问题中的应用汇编.docx

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

感受随机的美——浅谈随机化思想在几何问题中的应用摘要近几年来,可以使用随机化来解决的几何题目越来越多。本文将着重介绍两种在信息学竞赛中常见的随机几何算法:随机增量法与模拟退火法,以及和传统方法的比较,说明了随机化思想的优势。关键字随机化随机增量算法模拟退火算法调整目录摘要1关键字1目录1正文21 随机算法简介21.1 数值概率算法21.2 拉斯维加斯(Las Vegas)算法21.3 蒙特卡罗(Monte Carlo)算法21.4 舍伍德(Sherwood)算法22 随机增量算法22.1 增量算法22.2 随机增量算法的一个例子22.2.1 张角法22.2.2 改进算法22.3 随机增量算法的应用22.3.1 蛮力算法22.3.2 切割线段算法22.3.3 随机增量算法23 模拟退火(Simulated Annealing)算法23.1 模拟退火算法介绍23.1.1 模拟退火算法的原理23.1.2 模拟退火算法的模型23.2 例一:Run Away23.3 例二:Empire strikes back23.4 例三:激光坦克23.5 小结24 总结2感谢2参考文献2附录2附录1 蒙特卡罗抽样的步骤2附录2 2.2.2定理的证明2附录3 论文原题2附录3 参考程序2联系方式2正文1 随机算法简介随机算法是这样的一类算法:它在接受输入的同时,在算法中引入随机因素,即通过随机数选择算法的下一步。也就是说,一个随机算法在不同的运行中对于相同的输入可能有不同的结果,或执行时间有可能不同。随机算法的特点:简单、快速、灵活和易于并行化,这些特点都会在本文中得到体现。随机算法可以理解为在时间、空间和精度上的一种的平衡。常见的随机算法有四种:数值概率算法,蒙特卡罗(Monte Carlo)算法,拉斯维加斯(Las Vegas)算法和舍伍德(Sherwood)算法。1.1 数值概率算法数值概率算法常用于数值问题的求解。这类算法所得到的往往是近似解。而且近似解的精度随计算时间的增加不断提高。在许多情况下,要计算出问题的精确解是不可能或没有必要的,因此用数值概率算法可得到满意的解。举个例子:计算?的近似值时,我们可以在单位圆的外接正方形内随机撒n个点,设有k个点落在单位圆内,可以得到。数值概率算法不是本文的重点,这里仅作简单介绍。有兴趣的同学可自行研究。1.2 拉斯维加斯(Las Vegas)算法拉斯维加斯算法不会得到不正确的解,也就是说,一旦用拉斯维加斯算法找到一个解,那么这个解肯定是正确的。但是有时候用拉斯维加斯算法可能找不到解。算法所用的时间越多,得到解的概率就越高。1.3 蒙特卡罗(Monte Carlo)算法又是一个以赌城命名的算法。通常所说的蒙特卡罗算法分为两类。1.蒙特卡罗判定:蒙特卡罗算法总是能给出问题的解,但是偶尔也可能会产生非正确的解。求得正确解的概率依赖于算法所用的时间。蒙特卡罗判定的错误必须是“单边”的,即实际答案是YES(NO),算法给出的答案可能是NO(YES),但是实际答案是NO(YES),则算法给出的答案一定是NO(YES)。因此蒙特卡罗算法得到正确解的概率随着计算次数的增加而提高,即在时间和精度上的一种平衡。最常见的蒙特卡罗判定是众所周知的Miller-Rabin素数测试字符串匹配的Rabin-Karp算法。2.蒙特卡罗抽样:它的基本思想是,对于所求的问题,通过试验的方法,通过大样本来模拟,得到这个随机变量的期望值,并用它作为问题的解。它是以一个概率模型为基础,按照这个模型所描绘的过程,通过模拟实验的结果,作为问题的近似解的过程。蒙特卡罗抽样的主要步骤可参考附录1。本文第三章的模拟退火算法就使用了蒙特卡罗抽样的思想。1.4 舍伍德(Sherwood)算法舍伍德算法总能求得问题的一个解,且所求得的解总是正确的。当一个确定性算法在最坏情况下的计算复杂性与其在平均情况下的计算复杂性有较大差别时,可以在这个确定算法中引入随机性将它改造成一个舍伍德算法,消除或减少问题的好坏实例之间的这种差别。舍伍德算法精髓不是避免算法的最坏情况的发生,而是设法消除这种最坏行为与特定实例之间的关联性。舍伍德算法最广泛的一个应用就是快速排序的随机化实现。本文第二章的随机增量算法就是舍伍德算法的一种应用。除了随机算法,国家集训队2006年论文:唐文斌《浅谈“调整”思想在信息学竞赛中的应用》中很多带有随机化的调整思想也可以用在几何问题中。比如Ural1578的Mammoth Hunt:给出平面上的n个点,找一条n-1段的折线将点连接起来,并且相邻两段折线的夹角是锐角。我们可以先任意生成一条折线,并且按一定规则进行调整,直到满足要求。2 随机增量算法2.1 增量算法增量法(Incremental Algorithm)的思想与第一数学归

文档评论(0)

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

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

1亿VIP精品文档

相关文档