第十一章动态程序设计方法.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文档。上传文档
查看更多
第十一章动态程序设计方法.doc

第十一章 动态程序设计方法 在现实生活中,有一类活动的过程,由于它的特殊性,可将过程分成若干个互相联系的阶段,在它的每一阶段都需要作出决策,从而使整个过程达到最好的活动效果。当然,各个阶段决策的选取不是任何确定的,它依赖于当前面临的状态,又影响以后的发展,当各个阶段决策确定后,就组成一个决策序列,因而也就确定了整个过程的一条活动路线(图11.1.1)。这种把一个问题看作是一个前后关联具有链状结构的多阶段过程就称为多阶段决策过程,这种问题就称为多阶段决策问题。 图11.1.1   在多阶段决策问题中,各个阶段采取的决策,一般来说是与时间有关的,决策依赖于当前状态,又随即引起状态的转移,一个决策序列就是在变化的状态中产生出来的,故有“动态”的含义,我们称这种解决多阶段决策最优化的过程为动态程序设计方法。 应当指出,动态程序设计方法是考察求解多阶段决策问题的一种途径、一种方法,而不是一种特殊算法。不象前面所述的那些解析法或搜索法那样,具有一个标准的数学表达式和明确定义的一组规划。因此读者在学习时,除了要对基本概念和方法正确理解外,必须具体问题具体分析处理,以丰富的想象力去建立模型,用创造性的技巧去求解。 §11.1 基本概念 我们先引入动态程序设计的一些概念、术语和符号: 1. 阶段k 一个实际问题可能要有多次决策。为此对整个问题,可按其特点划分成需要作出选择的若干轮次。这些轮次即称为阶段。阶段是前后关联的。我们从第1个阶段开始,按照阶段的先后顺序进行决策。 2. 状态uk 某一阶段的出发位置称为状态,通常一个阶段包含若干状态,因此uk是一个状态集。我们将始点至k阶段的uk’(uk’∈uk)状态所获得的最小费用设为I[uk’]。设初始状态为u0’。显然初始时,对所有状态u来说 3. 决策xk 在对问题的处理中作出的每种选择性的行动就是决策,即从该阶段的每一个状态出发,通过一次选择性的行动转移至下一阶段的相应状态。一般来说,可供选择的决策不止一个,组成一个决策集xk。每作出一种决策需要花费代价。我们设k阶段的uk’状态选择决策xk’(xk’∈xk)的直接费用为l[uk’,xk’]。 4. 按照最优解的结构递归定义状态转移方程 前一阶段的终点就是后一阶段的起点,对前一阶段的状态作出某决策产生后一阶段的状态,这种关系描述了由k阶段到k+1阶段状态的演变规律,称为状态转移方程。按照最优解的结构,状态转移方程的一般形式为 I[uk’]={I[uk-1’]+L[uk-1’,xk-1’]|k-1阶段的状态uk-1’通过xk-1’决策可达k阶段的uk’} 5. 适用动态程序设计方法求解的问题特征 适用动态程序设计方法求解的问题一般具有下述特征:: ①满足最优子结构的性质。 从上式中可以看出,要使得I[uk’]最小,则I[uk-1’]必须最小。为什么?如果初始状态至uk-1’有一个费用更小的方案,那么将其替换至上式中,就会使得I[uk’]更小,出现矛盾。因此该问题具备了最优子结构的性质。 采用动态程序设计方法求解的第一个前提是问题必须具备最优子结构的性质。有些问题的求解过程可以划分阶段,但不具备最优子结构。例如“§10.2回溯法”的【例五】。如果不允许重复挖地雷的话,问题则呈现出阶段性。设 阶段j:步数(1≤j≤n); 状态k:第j步经过地窖k(1≤k≤n); 决策a:第j-1步经过地窖a可使得第j步经过地窖k所能挖到的地雷数最多(1≤a≤n); f[i,k]—第i步经过地窖k所能挖到的最多地雷数; w[i,k]—第i步经过地窖k的最佳路径; (1≤i,k≤n) best—所能挖到的最多地雷数; 状态转移方程如下: f[i,k]=。 若满足条件,则通过 w[i,k]=w[i-1,a]+{k} 记下路径。初始时 f[1,i]=i地窖的地雷数;w[1,i]={i} 然后按照阶段的顺序递推。挖第i步时依据下式计算所能挖到的最多地雷数 best= 若满足条件,则w[i,k]=w[i-1,a]+{k}。经过n个阶段后得出的best即为解。从表面上看,该问题具备了最优子结构的性质,其实不然。例如图11.1.1为地窖间的相连情况。○左方的数字为地窖序号,○内的数字为地雷数: 图11.1.1 按照状态转移方程可以得出表11.1.1(f数组)和表11.1.2(w数组): 状态j 阶段I 1 2 3 4 1 4 4 4 4 2 8 8 8 8 3 12 0 12 12 4 0 0 0 0 表11.1.1 状态j 阶段I 1 2 3 4 1 {1} {2} {3} {4} 2 {2,1} {4,2} {2,3} {2,4} 3 {4

文档评论(0)

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

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

版权声明书
用户编号:5212202040000002

1亿VIP精品文档

相关文档