- 1、本文档共38页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
算法分析及设计 第5章
2000年1月25日 北京化工学院信息基础教研室 算法设计方法 吴哲辉 崔焕庆 马炳先 吴振寰 编著 机械工业出版社 第5章 动态规划算法 第5章 动态规划算法 动态规划(Dynamic Programming)是运筹学的一个分支,是求解决策过程最优化的数学方法。20世纪50年代初美国数学家R. E. Bellman等人在研究多阶段决策过程(Multistep Decision Process)的优化问题时,提出了著名的最优化原理(Principle of Optimality),将多阶段决策过程转化为一系列的单阶段决策问题,创立了解决这类过程优化问题的新方法——动态规划。 第5章 动态规划算法 最优化原理是指一个最优化策略具有这样的性质:不论过去的状态和决策如何,余下的决策必须相对于前一决策所产生的状态构成最优决策序列,也就是说,一个最优化策略的子策略总是最优的,问题的最优解可以通过其子问题的最优解构成。一个问题若满足最优化原理又称其具有最优子结构性质。 第5章 动态规划算法 根据动态规划的思想方法设计的算法称为动态规划算法。动态规划算法常用于求解这样一类问题:问题的解可以表示成一个解向量(x1,x2,x3,…,xn),算法分为n步进行,每一步确定解向量中一个分量的取值。 第5章 动态规划算法 动态规划算法的基本思想是:每一步都列出各种可能的局部解,然后通过计算,舍去那些不满足约束条件的局部解和那些已经肯定不可能发展成为全局最优解的局部解。在此基础上,对存留的局部解考察下一步(下一个分量)的取值。 5.1 多段图问题 给定加权有向图G=(V,E,W),|V|=n,若G的顶点划分为k(k1)个不相交集合Vi(0ik+1),其中V1和Vk中分别只有一个顶点s(源点)和t(汇点),而且G中所有的边(u,v)均满足:若u∈Vi,则v ∈Vi+1,0ik,则称G是一个多段图。 从顶点s到顶点t的一条路径的成本是这条路径上所有边的权值之和,多段图问题就是求由s到t的最小成本路径(最短路径)。 为了求解方便,事先对顶点集V中的顶点按下述方式进行编号:首先将顶点s编为1,然后对V2中的顶点编号,V3的顶点接着V2中的最后一个编号继续往下编号,最后将t编为n。 5.1 多段图问题 5.1 多段图问题 1. 最优子结构性质。 设是一条由s到t的最短路径,则(ui,ui+1,…,uk-1,t)就是一条由顶点ui到t的最短路径。 2. 建立递归关系。 记md(i)为顶点i到顶点t的最短路径的成本,显然,md(n)=0。对于其它顶点,容易得到具有如下递归关系: 其中c(i,j)为边(i,j)的权值。 5.1 多段图问题 3. 计算最优值。 算法5.1 求解顶点到顶点的最短路径成本 输入:多段图的邻接矩阵c,顶点个数n; 输出:顶点i到汇点t的最短路径成本。 int MinCost(int c[][], int n) { md(n)= 0; for (i=n-1; i0; i--) { md(i)=∞; for (顶点i的所有邻接顶点j) if( md(i)c(i,j)+md(j)) md(i)=c(i,j)+md(j); } } 5.1 多段图问题 4. 构造最优解。 容易发现,在算法5.1计算最短距离的过程中已经蕴含了最短路径的结构信息,设顶点j是使取最小值的顶点i的邻接顶点,则顶点j是顶点i到t的最短路径上的前方顶点,此时只需要将顶点j的编号记录下来,最后就可以逐步构造得到s到t的最短路径。 算法5.2。 5.2 矩阵连乘问题 矩阵连乘积问题是指:给定n个矩阵A1~An,其中Ai与Ai+1是可乘的,矩阵的维数Ai为pi-1*pi,要求确定一种矩阵连乘的顺序,使得计算矩阵连乘积需要的计算量为最小。 完全加括号的矩阵连乘积可递归地定义为: (1) 单个矩阵是完全加括号的; (2) 若矩阵连乘积A是完全加括号的,则A可表示为两个完全加括号的矩阵连乘积B、C的乘积并加括号,即A=(BC)。 5.2 矩阵连乘问题 每一种完全加括号方式对应一种矩阵连乘积的计算次序,矩阵连乘积问题即对于给定的n个矩阵,确定一种完全加括号方式,使得依此次序计算矩阵连乘积所需要的数乘次数最少,称这个计算次序为最优计算次序。 5.2 矩阵连乘问题 1. 最优子结构性质。 将矩阵连乘积简记为A[i:j]。假设已经得到计算的一个最优次序(最优解),该计算次序在Ak和Ak+1之间将矩阵链断开。照此,我们要先计算A[i:k]和A[k+1:j],然后,将所得的结果矩阵相乘得到A[i:j] 。 显然,计算A[1:n]的一个最优次序中,计算A[1:k]和A[k+1:n]的次序和计
您可能关注的文档
- 简单函数及声音以及其在游戏开发和音乐合成中及应用.ppt
- 简单及三角函数恒等变换-三角函数 2012高考一轮数学精品课件.ppt
- 简单及三角恒等变换(一).ppt
- 简单及三角恒等变换1(用及).ppt
- 简单及三角恒等变换1.ppt
- 简单及三角恒等变换2.ppt
- 简单及三角恒等变换说课.ppt
- 简单及三角恒等变换:课件三(21张PPT).ppt
- 简单及排列及组合.ppt
- 简单及旋转作图演示文稿.ppt
- 2025年中国锻铁围栏市场调查研究报告.docx
- 2025年中国椭圆型市场调查研究报告.docx
- 2025年中国无蔗糖原味豆浆市场调查研究报告.docx
- 2025-2031年中国泛在电力物联网行业发展运行现状及投资潜力预测报告.docx
- 2025年中国制袋机零件市场调查研究报告.docx
- 2025年中国智能除垢型电子水处理仪市场调查研究报告.docx
- 2025-2031年中国甘肃省乡村旅游行业市场深度研究及投资策略研究报告.docx
- 2025-2031年中国干海产品行业市场发展监测及投资战略规划报告.docx
- 2025年中国全铝图解易拉盖市场调查研究报告.docx
- 2025年中国人造毛皮服装市场调查研究报告.docx
文档评论(0)