- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章 动态规划
动态规划的基本概念和术语
最短路径问题
最优化原理与动态规划基本方程
动态规划典型应用案例
动态规划( dynamic programrrung)是运筹学的一个分支,是求解多阶段决策问题的最优化方法。20世纪50年代初,R.E.B ellman等人在研究多阶段决策过程(multistage decision process)的优化问题时,提出了著名的最优化原理(principle of optimality),把多阶段过程转化为系列单阶段问题,逐个求解,创立了解决这类过程优化问题的新方法一动态规划。1957年,R.E.Bellman出版了他的名著《Dynamic Programming》,这是该领域的第一本著作。
动态规划方法问世以来,在物流管理、生产调度、工程技术和最优控制等方面得到了广泛的应用。例如,最短路线、库存管理、资源分配、设备更新、排序、装载等问题,用动态规划方法求解比用其他方法求解更为方便。
虽然动态规划方法主要用于求解以时间划分阶段的动态过程的优化问题,但是一些与时间无关的静态规划(如线性规划、非线性规划).只要人为地引进时间因素,把它视为多阶段决策过程,也可以用动态规划方法方便地进行求解。
应该指出,动态规划是求解某类问题的一种方法,是考察问题的一种途径,而不是一种特殊算法(如线性规划是一种算法)。因而,它不像线性规划那样有一个标准的数学表达式和明确定义的一组规则,而必须对具体问题进行具体分析和处理。因此,在学习动态规
划时,除了要正确理解其基本概念和方法,还应以丰富的想象力去建立模型,用创造性的技巧去求解。
5.1 引例
例5.1 最短路径问题。图5.1表示是一个线路网,连线上的数字表示两点之间的距离(或费用)。试寻求一条由A到E距离最短(或费用最省)的路径。
图5.l例5.1图(一)
解:如果用穷举法,则从A到E一共有3×3×2=18条不同的路径,逐个计算每条路径的长度,总共需要进行4×18=72次加法计算;对18条路径的长度进行两两比较,找出其中最短的一条,总共要进行l8 -1=17次比较。如果从A到C之间的站点有个,则总共有
条路径,用穷举法求最短路径总共要进行次加法,进行次比较。当的值增加时,需要进行的加法和比较的次数将迅速增加。例如,当时,加法次数为433 026,比较次数为39 365。
上述这类求从A到E的最短路径问题,可以转化为三个性质完全相同,但规模较小的子问题,即分别求从到的最短路径问题。
将从到的最短路径记为,则从到的最短距离可以表示为
同样,计算又可以归结为性质完全相同、但规模更小的问题,即分别求从到的最短路径问题而求又可以归结为求和这两个子问题。从图5.1中可以看出,在这个问题中,和是已知的,它们分别是:和。
因而,可以从这两个值开始,逆向递归计算的值。计算过程如下:
即 且如果到达,则下一站应到达
即 且如果到达,则下一站应到达
即 且如果到达,则下一站应到达
由此,可以计算
即 且如果到达,则下一站应到达
即 且如果到达,则下一站应到达
即 且如果到达,则下一站应到达
由此,可以计算
最后,得到从到的最短路径为。以上过程仅用了18次加法,11次比较,计算效率远高于穷举法。
以上计算过程及结果如图5.2所示。可以看到,以上方法不仅得到了从到的最短路径,同时,也得到了从图中任一到的最短路径。
图5.2 例5.1图(二)
5.2动态规划的基本概念
由例5.1的解题过程可以看出,每个阶段中,都求出本阶段的各个初始状态到过程终点的最短路径和最短距离,当逆序倒推到过程起点时,便得到了全过程的最短路径及最短距离,同时附带得到了一组最优结果(即各阶段的各状态到终点E的最优结果)。
在上述多阶段决策问题中,各个阶段采取的决策,一般来说是与时间有关的,决策依赖于当前状态,又随即引起状态的转移,一个决策序列就是在变化的状态中产生出来的,故有“动态”的含义,这种解决多阶段决策最优化问题的方法称为动态规划方法。
5.2.1动态规划的基本名词
在学习动态规划方法之前,应先得对动态规划的有关名词有所了解。本课程在对标准名词进行解释时作了一些简化,以方便大家的理解。
1.阶段(step)
阶段是指一个问题需要做出决策的步数。
用动态规划求解多阶段决策系统问题时,要根据具体情况,将系统适当地分成若干阶段,以便分阶段进行求解;一般是根据时间或空间的自然特征去划分阶段,描述阶段的变量称为阶段变量,阶段变量一般用表示。
例如,在例5.1中,
由出发为,
由出发为,
由出发为,
从出发为,
共有个阶段。
例5.1分为4个阶段,是一个4
文档评论(0)