算法设计与分析ch10on-line算法.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《算法设计与分析ch10on-line算法.ppt》由会员分享,可在线阅读,更多相关《算法设计与分析ch10on-line算法.ppt(29页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第十章第十章 On-line Algorithms10.1 Introduction to On-line Introduction to On-line AlgorithmsAlgorithms 前九章介绍的算法设计的条件前九章介绍的算法设计的条件在算法执行之前整个输入数据的细节都很清楚在算法执行之前整个输入数据的细节都很清楚问题是在完全了解输入数据信息条件下解决的问题是在完全了解输入数据信息条件下解决的实际应用存在不满足上述条件的情况实际应用存在不满足上述条件的情况磁盘调度问题磁盘调度问题操作系统的页面调度问题操作系统的页面调度问题 Data streamsOn-line算法算法在算法设计
2、阶段或执行之前无完全信息可用在算法设计阶段或执行之前无完全信息可用,输入数据往往是实时到达的输入数据往往是实时到达的.算法时而正确时而错误算法时而正确时而错误.实时算法难以给出正确解实时算法难以给出正确解,一般是近似算法一般是近似算法.实时最小生成树问题实时最小生成树问题难以给出优化解难以给出优化解,“最小最小”需要放弃或改为需要放弃或改为“小小”.On-line算法可能如下工作算法可能如下工作:当每次一个数据到达时当每次一个数据到达时当每次一个数据到达时当每次一个数据到达时,将其连接到最近的邻居节点将其连接到最近的邻居节点将其连接到最近的邻居节点将其连接到最近的邻居节点.下边是一个六个实时到
3、达节点的例子下边是一个六个实时到达节点的例子下边是一个六个实时到达节点的例子下边是一个六个实时到达节点的例子.1 13 35 52 26 64 4算法工作过程算法工作过程优化解优化解1 13 35 52 26 64 4On-line算法的性能算法的性能令令Con表示表示On-line算法解的代价算法解的代价令令Coff表示表示Off-line算法解的代价算法解的代价若若Con f(n)Coff+c,c是是常常数数,则则称称On-line算算法法的的近近似比为似比为 f(n).这个算法称为这个算法称为f(n)-competitive10.2 On-line Euclidean Spanning
4、On-line Euclidean Spanning Tree ProblemTree Probleml问题的定义问题的定义l实时算法设计实时算法设计l算法性能分析算法性能分析问题的定义问题的定义 输入输入:S=v1,v2,vn是平面上的是平面上的n个点的集合个点的集合 这这n个点并非一次给定个点并非一次给定,是逐个出现的是逐个出现的l l 输出输出l l 一个一个”最小最小”生成树生成树求解最小生成树问题的求解最小生成树问题的On-line算法算法只能是近似算法只能是近似算法Greedy-On-line-ST(S)1.n=|S|;2.T=0;3.While n 0 Do4.Input(v);
5、5.把把v与与V(T)之间最短边加入之间最短边加入T;/*/*V(T)V(T)是是是是T T节点集合节点集合节点集合节点集合*/6.Endwhile6.EndwhileOn-Line算法算法算法的时间复杂性算法的时间复杂性3-6步需要的比较次数步需要的比较次数=1+2+(n-1)T(n)=O(n2)解的精确度解的精确度Greedy-On-line-ST算法的近似比是算法的近似比是O(logn)设设Tonl是算法产生的生成树是算法产生的生成树,l是优化生成树的代价或长度是优化生成树的代价或长度,下边我们来证明这个结论下边我们来证明这个结论算法的性能分析算法的性能分析引理引理1.Tonl中第中第k
6、最长边的长度最多为最长边的长度最多为2l/k,1 k n-1.证证.令令令令S Sk k=v v|v v加入加入加入加入T Tonlonl后后后后,T Tonlonl中出现长度大于中出现长度大于中出现长度大于中出现长度大于2l/k2l/k的边的边的边的边.如果如果如果如果|S|Sk k|k|k,则则则则Tonl中至多中至多k-1条边的长度大于条边的长度大于2l/k,即即Tonl中第中第k最长边的长度最多为最长边的长度最多为2l/k.往证往证|S|Sk k|k.|k.由算法的由算法的由算法的由算法的GreedyGreedy方法可知方法可知方法可知方法可知,S Sk k中每个点对之间的距离必中每个
7、点对之间的距离必中每个点对之间的距离必中每个点对之间的距离必大于大于大于大于2l/k2l/k.若不然若不然若不然若不然,设设设设u u和和和和v v之间距离小于之间距离小于之间距离小于之间距离小于2l/k2l/k,则加入则加入则加入则加入u u(或或或或v v)以后以后以后以后,再加再加再加再加入入入入v v(或或或或u u)时时时时,不会产生大于不会产生大于不会产生大于不会产生大于2l/k2l/k的边的边的边的边.于是于是于是于是,S Sk k上上上上TSPTSP的优化解的长度大于的优化解的长度大于的优化解的长度大于的优化解的长度大于|S Sk k|2l/k 2l/k.由于任意点集上的由于任
8、意点集上的由于任意点集上的由于任意点集上的TSPTSP优化解的长度是其最小生成树长度优化解的长度是其最小生成树长度优化解的长度是其最小生成树长度优化解的长度是其最小生成树长度的的的的2 2倍倍倍倍,S Sk k的最小生成树的长度大于的最小生成树的长度大于的最小生成树的长度大于的最小生成树的长度大于|S Sk k|l/k l/k.因为因为因为因为S Sk k上最小生成树长度上最小生成树长度上最小生成树长度上最小生成树长度l l不小于不小于不小于不小于S S上最小生成树长度上最小生成树长度上最小生成树长度上最小生成树长度,我们我们我们我们有有有有,|S Sk k|l/k l/k l l l l,即
9、即即即|S Sk k|l/k l/k l,l,或或或或|S Sk k|k k.于是于是于是于是,Tonl中第中第k最长边的长度最多为最长边的长度最多为2l/k.定理定理1.Greedy-On-line-ST算法的近似比是算法的近似比是O(logn).证证.由引理由引理由引理由引理1,1,T Tonlonl的长度的长度的长度的长度L L 1 1 k k n-1n-12l/k2l/k =2l =2l 1 1 k k n-1n-11/k 1/k =2l =2l H(n-1)H(n-1)=O(O(loglogn).n).于是于是于是于是,算法的近似比为算法的近似比为算法的近似比为算法的近似比为L/lL
10、/l O(O(loglogn).n).10.3 On-line Algorithm for Convex On-line Algorithm for Convex hull problemshull problemsl 问题的定义问题的定义l On-line算法的基本思想算法的基本思想l On-line算法算法l算法的性能分析算法的性能分析 问题定义问题定义输入输入平面上的平面上的n个点的集合个点的集合Q n个点逐个到达个点逐个到达,并非同时出现并非同时出现输出输出CH(Q):Q的的convex hull Q的的convex hull是一个凸多边形是一个凸多边形P,Q的点或者在的点或者在P上或
11、者在上或者在P内内凸多边形凸多边形P是具有如下性质多边形是具有如下性质多边形:连接连接P内任意两点的边都在内任意两点的边都在P内内基本思想基本思想当当k个节点已经到达后个节点已经到达后,我们得到一个部分我们得到一个部分CHOn-line算法的思想算法的思想当第当第k+1个节点个节点v到达时到达时如果如果如果如果v v落在落在落在落在CHCH内部内部内部内部,不需做任何事不需做任何事不需做任何事不需做任何事如果如果如果如果v v落在落在落在落在CHCH外部外部外部外部,需要调整需要调整需要调整需要调整CHCH的边界的边界的边界的边界关键是关键是关键是关键是:记住和调整部分记住和调整部分记住和调整
12、部分记住和调整部分CHCH边界边界边界边界 平行线近似法平行线近似法 用一组并行线记录、调整、近似用一组并行线记录、调整、近似CH需要平行移动这需要平行移动这需要平行移动这需要平行移动这条线条线条线条线,不改变其不改变其不改变其不改变其斜率斜率斜率斜率近似解近似解近似解近似解平行线的一般形式平行线的一般形式取取m对平行线对平行线,其斜率分别为其斜率分别为:0,tan(/m),tan(2/m),tan(m-1)/m).这这m对平行线必须满足对平行线必须满足:每个输入节点必须在所有平行线对内每个输入节点必须在所有平行线对内每个输入节点必须在所有平行线对内每个输入节点必须在所有平行线对内;每对平行线
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 算法 设计 分析 ch10on line
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内