CQF动态规划的提纯.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CQF动态规划的提纯

动态规划中的“提纯” 中山纪念中学 陈启峰 【概述】 动态规划中优化的方法有很多种,总的来说可以分为两种方法,即减少重复计算和减少冗余。这两种“提纯”方法都体现了动态规划的本质特征。减少重复计算一般从策略上着手,先找出重复计算的值,然后增添新的状态来存储该状态值;而减少冗余一般可以从状态和策略去优化,删除无用的状态和策略。 通过下面这题的分析,希望能对大家起到抛砖引玉的作用。 【关键字】 减少重复计算、减少冗余 【正文】 问题简述——求两个序列的最长公共上升子序列(LCIS): 给出两个长度分别为n,m的序列A和B。 求出一个长度最长序列C,满足: ① C C C …… C; ② C既是A的子序列又是B的子序列; 题目分析: 当看到这题的三个关键字——最长、公共、上升时,我便不禁有似曾相识的感觉。如果抛开公共或者上升的要求,就是我们都熟悉的最长公共子序列(LCS)问题,和最长上升子序列(LIS)问题了! 动态规划的首要任务是确定好状态。回顾LCS和LIS的状态表示方法,有创意地综合这两种状态表示方法的特性,便可以得到这题的一种状态表示: 设x表示A到A和B到B的LCIS的长度,其中要求A B、必须选取A和B作为一个匹配。于是得到一个状态转移方程A x max 这个动态规划的时间复杂度为O n ,显然是不尽人意的,需要进行“提纯”。 “提纯”方法1——减少重复计算 仔细分析不同状态的策略,易知意义相同的值会被计算了多遍。比如:对于任意的两个状态x和x,如果存在某个l使得B B、B并且l j1、j2,那么在两个状态的策略选取时, x|k i 里状态都被计算一次。 计算某个状态集合,其实质是计算这个集合中状态值最大的状态,因此我们只需知道这个集合中的最大状态值就足够了。而形如 x|k i 的集合被计算多次,也就是这些集合的最大状态值被重复计算了,所以可以添增一种状态表示——f表示max x|k i 。于是得出双状态的状态转移方程B: x max f max 0,f,x 这样总的时间复杂度是O n ,如果使用二叉查找树还可以使时间复杂度降到O nlogn 。显然这样的“提纯”已经除去很多杂质了,但可别忘记还有另一把锋利的刀哦~~。^_^ “提纯”方法2——减少冗余 冗余常常隐藏得很隐蔽,就像豪宅里的白蚁,不易被发现,所以要花多点时间和心思去发挖掘。 在状态转移方程序B中,着眼于所有最优策略的选取范围,通过多次试验,不难发现对于任意的一个状态x,如果其最优策略小于一个定值last max 0,w|w j并且B B ,那么x x。于是便产生一个猜想——是不是对于所有状态x,若其最优策略小于last,都有x x?下面通过证明来肯定这个猜想。 证明: 对于任意一个状态x,x是一个可行解。因为这可由x的最优方案构 造出来,只要将匹配 i,last 换成 i,j 就可以了,如下图: 所以x≥x。 接着,对于任意的f k last ,有g个匹配的f相应的方案,有g+1个匹配的x相应的方案一一对应。因为只要在前者的方案上加上匹配 i,last 。如下图: 所以x≥任意的f+1 k last 。 综上两个结论,计算f+1 k last 等效于计算x,也就是对于所有状态x,若其最优策略小于last,都有x x。 有了上面有力的证明以后,对状态转移方程B进行改进,就得到了更优的状态转移方程C x max f max 0,f,x last max 0,w|w j并且B B 这个动态规划的总时间复杂度仅是O n ,时间复杂度较之前已经降下了很多。 总结 动态规划的“提纯”并没有固定的形式,常常需要一种灵感。这种灵感并非空中楼阁,而是来源于平时的思考和积累。只要能常总结、常思考、常创新并持之以恒,就一定能学好动态规划。 【感谢】 感谢宋新波老师、郭华阳向我提很多宝贵的意见。 【参考文献】 《充分利用问题性质——例析动态规划的“个性化”优化》——项荣璟2003论文 《减少冗余与算法优化》——胡伟栋2004论文 动态规划中的“提纯” customer qualification preliminary examination of the material of the borrower for the loan person, determine whether you meet the loan conditions standard specification for details of the conditions the fifth chapter 5.1 loans and borrower conditions . 3. agree loan person decides to accept, according

文档评论(0)

sxa632 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档