- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
华东师大ACM算法课件第十四、十五讲_概率算法教学讲义.ppt
ECNU Yinping Liu 概率算法 柳银萍 在第一、二讲的学习中,我们知道算法有一个属性为确定性。算法对所有可能的输入,都必须能够得到正确的答案。然而,有很多确定性的算法,其性能很坏。特别是有很多具有很好的平均运行时间的算法,在最坏情况下,却具有很坏的性能。因此,就出现了采用随机选择的方法来改善算法的性能。包含随机选择的算法就称为概率算法。 ECNU Yinping Liu ECNU Yinping Liu 随机算法的基本思路 随机算法是指在算法中执行某些步骤时,所进行的选择是随机的。在随机算法中,除接收算法的输入外,还接收一个随机的位流,以便在算法的运行过程中,进行随机选择。通常把问题P的随机算法定义为: 设I是问题P的一个实例,在用算法解I的某些时刻,随机地选择某个输入b?I,由b来决定算法的下一步动作。 随机算法把随机性注入算法之中,改善了算法设计与分析的灵活性,提高了算法的解题能力。 ECNU Yinping Liu 随机算法的两大优点: 1. 随机算法所需要的执行时间和空间,经常小于同一 问题的已知最好的确定性算法; 2. 随机算法的实现比较简单,也比较容易理解。 随机算法的类型 随机算法主要有四种类型:数值概率算法、拉斯维加斯(Las Vegas) 算法、蒙特卡罗(Monte Carlo)算法和舍伍德(Sherwood)算法。 ECNU Yinping Liu 随机数 随机数在概率算法设计中扮演着十分重要的角色。在现实计算机上无法产生真正的随机数,因此在概率算法中使用的随机数都是一定程度上随机的,即伪随机数。 线性同余法是产生伪随机数的最常用的方法。由线性同余法产生的随机序列a0,a1,…,an满足 其中b?0,c?0,d?m。d称为该随机序列的种子。如何选取b、c和m直接关系到所产生的随机序列的随机性能。这是随机性理论研究的内容,已超出本课程的范围。从直观上,m应取得充分大,可取m为机器大数。另外有gcd(m, b)=1,可取b为一素数。 ECNU Yinping Liu 例2. 计算定积分 设f(x)是[0,1]上的连续函数,且0?f(x)?1。需要计算的积分为 , 积分I等于图中的面积G。 在图所示单位正方形内均匀地作投点试验,则随机点落在曲线 下面的概率为 假设向单位正方形内随机地投入n个点(xi,yi)。如果有m个点落 ECNU Yinping Liu 入G内,则随机点落入G内的概率 例3. 解非线性方程组 求解下面的非线性方程组 其中,x1,x2,…,xn是实变量,fi是未知量x1,x2,…,xn的非线性实函数。要求确定上述方程组在指定求根范围内的一组解. ECNU Yinping Liu 在指定求根区域D内,选定一个随机点x0作为随机搜索的出发点。在算法的搜索过程中,假设第j步随机搜索得到的随机搜索点为xj。在第j+1步,计算出下一步的随机搜索增量?xj。从当前点xj依?xj得到第j+1步的随机搜索点。当f?时,取为所求非线性方程组的近似解。否则进行下一步新的随机搜索过程。 ECNU Yinping Liu 舍伍德(Sherwood)算法 令A是一个确定性算法,它对输入实例x 的运行时间记为TA(x).假定Xn是算法A的输入规模为n的所有输入实例的全体,则算法A的平均运行时间为 显然,这不排除存在着个别实例x?Xn, 使得 实际上,很多算法对不同的输入数据,显示出很不同的运行性能。例如,当输入数据是均匀分布时,快速排序算法的运行时间是?(nlogn). 而当输入数据已几乎按递增或递减顺序排列时,算法的运行时间变坏就是这种情况。 ECNU Yinping Liu 如果存在一种随机算法B,使得对规模为n的每一个实例x?Xn,都有: 偶然会有一个具体实例x?Xn, 算法B运行这个实例所花费的时间,可能比上式所表示的运行时间更长一些,但这是由于算法的随机选择所引起的,与算法的输入实例无关。这就可消除不同输入实例对算法性能的影响。 特别当s(n) 与 相比很小而可以忽略时,舍伍德类型的随机算法显示出很好的性能。 ECNU Yinping Liu 例1. 随机快速排序算法 我们知道,在快速排序算法(quick_sort)中,采用数组的第一个元素作为枢点元素进行排序,则平均运行时间为?(nlogn). 但在最坏情况下,数组中的元素已按递增或递减顺序排列时,运行时间是?(n2). 这种最坏情况时有发生。例如,有一个很大的排过序的文件,附加一个关键字很小的元素之后,再重新对它进行排序,这时它的运行时间就接近于?(n2). 如果随机地选取一个元素作为枢
您可能关注的文档
最近下载
- 配电自动化完整PPT课件.pptx VIP
- Unit 4 Helping in the community Part A 第1课时课件2025-2026学年度人教PEP英语四年级上册.pptx VIP
- 2023年西藏交通发展集团有限公司人员招聘考试参考题库及答案解析.docx VIP
- 五年级上册口算题(打印版) ..doc VIP
- 卫生部手术分级目录(2025年1月份修订).doc VIP
- 高中文言文阅读训练及答案.pdf VIP
- 《客户服务标准》团体标准.pdf VIP
- 2018年10kV及以下业扩受电工程技术导则.docx VIP
- (新)八年级上册语文背诵古诗、文言文附翻译.pdf VIP
- 马克思主义哲学框架体系——最全.pdf VIP
文档评论(0)