- 1、本文档共52页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
9.贪心法与动态规划
贪心法和动态规划
七月算法 邹博
2015年5月5日
认识论
认识事物的方法:概念、判断、推理
推理中,又分为归纳、演绎。
重点考察归纳推理的具体方法。
形式化表述:
已知:问题规模为n 的前提A
求解/ 求证:未知解B/ 结论B
记号:用A 表示“ 问题规模为n 的已知条件”
n
4月算法在线班 2/52
对归纳推理的理解
若将问题规模降低到0 ,即已知A ,很容易计算或
0
证明B ,则有:A →B
0
同时,考察从A 增加一个元素,得到A1 的变化过
0
程。即:A →A ;
0 1
进一步考察A →A ,A →A ……A →A
1 2 2 3 i i+1
这种方法是(严格的) 归纳推理,常常被称作数学归纳法。
此时,由于上述推导往往不是等价推导(Ai和Ai+1 不是互
为充要条件) ,导致随着i 的增加,有价值的前提信息越来
越少;为避免这一问题,采取如下方案:
{A }→A ,{A A }→A …… {A A …A }→A
1 2 1 2 3 1 2 i i+1
相对应的,修正后的方法依然是(严格的) 归纳推理,有时
被称作第二数学归纳法。
4月算法在线班 3/52
对归纳推理的理解
基本归纳法:对于A ,只需考察前一个状态A 即可完成整个推
i+1 i
理过程,它的特点是只要状态A 确定,则计算A 时不需要考察
i i+1
更前序的状态A …A ,在图论中,常常称之为马尔科夫模型;
1 i-1
高阶归纳法:相应的,对于A ,需考察前i个状态集{A …A
i+1 1 i-
A }才可完成整个推理过程,往往称之为高阶马尔科夫模型;
1 i
在计算机算法中,高阶马尔科夫模型的推理,叫做“ 动态规
划” ,马尔科夫模型的推理,对应“ 贪心法” 。
4月算法在线班 4/52
说明
无论动态规划还是贪心法,都是根据A[0 …i]计算
A[i+1] 的过程
—— 计算A[i+1]不需要A[i+2] 、A[i+3] ……,
—— 一旦计算完成A[i+1] ,再后面计算A[i+2] 、
A[i+3] ……时,不会更改A[i+1] 的值。
这即无后效性。
鉴于无后效性的原因,可以这
文档评论(0)