- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
算法前传
1、算法的有效性
穷举法:
时间复杂性
问题分类
P问题:是所有可在多项式时间内用确定算法求解的判定问题的集合。NP问题:就是Non-deterministic Polynomial的问题,也即是多项式复杂程度的非确定性问题。可以在多项式时间内验证一个解是否正确的问题称为NP问题48770428433377171的一个真因子。223092827。)
NPC 问题如果一个NPC 问题存在多项式时间的算法,则所有的NP问题都可以在多项式时间内求解,即P=NP成立现在可能已经有3000多个NPC 问题greedy algorithms,也叫贪心算法、登山法)
例 找硬币 假设有四种硬币,它们的面值分别为二角五分、一角、五分和一分。现在要找给某顾客六角三分钱。这时,我们会不假思索地拿出2个二角五分的硬币,1个一角的硬币和3个一分的硬币交给顾客。这种找硬币方法与其他的找法相比,所拿出的硬币个数是最少的。
这里,我们下意识地使用了这样的找硬币算法:首先选出一个面值不超过六角三分的最大硬币,即二角五分;然后从六角三分中减去二角五分,剩下三角八分;再选出一个面值不超过三角八分的最大硬币,即又一个二角五分,如此一直做下去。总共用六枚硬币,事实说明这是最好的结果。这个找硬币的方法实际上就是贪婪算法。
顾名思义,贪婪算法总是以当前情况为基础,而不考虑全部各种可能的情况,作出在当前状态看来是最好的选择。也就是说贪婪算法并不从整体最优上加以考虑,它所作出的选择只是在某种意义上的局部最优选择。当然,我们希望贪婪算法得到的最终结果也是整体最优的。上面所说的找硬币算法得到的结果就是一个整体最优解。虽然贪婪算法不是对所有问题都能得到整体最优解,但对范围相当广的许多问题它能产生整体最优解。如图的单源最短路径问题,最小生成树问题等。
例 砝码称物 如果现在问题是:砝码的种类分别为11克、5克和1克,待称的物体是15克。用贪婪算法应先选一个11克的,然后选四个1克的,共用五个砝码。但这不是最优结果,实际只要用三个5克的砝码就够了。
在一些情况下,即使贪婪算法不能得到整体最优解,然而,却是一种具有直觉的倾向且一般情况下其最终结果却是最优解的很好的近似解。它利用的规则就是在实际环境中人工所采用的规则。作出贪婪决策的依据称为贪婪准则(greedy criterion) 。
很多同学总认为贪婪法是一种不追求最优解,只能得到较为满意解的方法,所以它不算好,故而总想找其它能得到最优解的方法。但其实因为贪婪法一般可以快速得到满意的解,它省去了为找最优解要穷尽所有可能而必须耗费的大量时间。对于NP完全类问题,这种方法是经常采用的。这种算法也被称为启发式方法( h e u r i s t i c s )。
4、经典NP问题
例 装箱问题 装箱问题可简述如下:设有编号为1、…、n的n种物品,体积分别为v1、v2、…、vn。将这n种物品装到容量都为V的若干箱子里(更一般的装箱问题还可以要求容量不是相同的)。约定这n种物品的体积均不超过V,即对于1≤i≤ n,有0<vi≤V。不同的装箱方案所需要的箱子数目可能不同。装箱问题要求使装尽这n种物品的箱子数要少。
模型建立
i:箱子,j:物品
s.t. ,
一个物品只能放在一个箱子里
是否使用第I个箱子;
第j个物品是否放入第I个箱子
求解分析
若考察将n种物品的集合分划成n个或小于n个物品的所有子集,最优解就可以找到。但所有可能划分的总数太大。对适当大的n,找出所有可能的划分要花费的时间是无法承受的。为此,对装箱问题采用非常简单的近似算法,即贪婪法。该算法依次将物品放到它第一个能放进去的箱子中,该算法虽不能保证找到最优解,但还是能找到非常好的解。
NF(Next ? Fit-下次适应)算法:按照物体给定的顺序装箱:把物品wi放到它第一个能放进去的箱子中。Bj是具有最大下标的使用过的箱子,若wi的长度不大于Bj的剩余长度,则把wi放入Bj,否则把wi放入一个新的箱子Bj+1,且Bj在以后的装箱中不再使用。最后循环。(对每个箱子扫描物体直至装满)
FF(First ? Fit-首次适应 )算法:按照物体给定的顺序装箱:把物品wi放到第一个箱子中。 B1 B2 …Bj是当前已经使用过的箱子,在这些箱子中找一个长度不小于wi且下标最小的箱子,将放入wi,如果不存在这样的箱子,则另开一个新箱子Bj+1 , 将wi放入Bj+1中 。(对每个物体扫描箱子至能够放入)
在线算法:如果一个近似装箱算法在执行过程中,每当一个物品到达时,就立刻决定
您可能关注的文档
- 人行计算机类笔试.doc
- 人行计算机训练.doc
- 认识Excel,以及电子表格的基本操作。.doc
- 认识Excel数据表案例.doc
- 认识键盘教学设计.doc
- 认识实习报告优秀范文(框架).doc
- 认识实习的总结.doc
- 认识实习论文.doc
- 认识数据库.doc
- 任务导向法在计算机教学中的应用探讨.doc
- 《汽车制造质量管理与控制》教案 3-4-2 涂装质量控制要点 教案(2H).doc
- 《汽车制造质量管理与控制》教案 -1-1-1 质量和质量管理 教案(2H).doc
- 《汽车制造质量管理与控制》教案 -2-1-2 零部件开发量产阶段质量管理 教案(2H).doc
- 《汽车制造质量管理与控制》教案 1-1-4 品控七工具 教案(4H).doc
- 《汽车制造质量管理与控制》教案 -6-1 PDCA质量改进 教案(2H).doc
- Bootstrap基础教程(第3版)(微课版)课件 第1--4章 Bootstrap概述 ---工具类.pptx
- 人工智能通识-- 课件全套 第1--9章 揭开智能科技神秘面纱 --- 面向未来 AGI.pptx
- 《会计基础(微课版 第3版)》 课件 模块一:企业财税基础(1.2税制解读).pptx
- 《汽车制造质量管理与控制》教案 4-1 整车装配及质量控制要点 教案(2H).doc
- 《汽车制造质量管理与控制》教案 3-2-2 冲压质量问题分析及质量控制要点 教案(2H).doc
文档评论(0)