- 1、本文档共60页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
动态规划法选编
第6章 动态规划法;学习要点:
理解动态规划的思想
掌握动态规划算法的基本要素
掌握设计动态规划算法的步骤
通过应用范例学习动态规划算法设计策略;动态规划是运筹学的一个分支,它是解决多阶段决策过程最优化问题的一种方法。1951年,美国数学家贝尔曼(R.Bellman)提出了解决这类问题的“最优化原则”,1957年发表了他的名著《动态规划》,该书是动态规划方面的第一本著作。
多阶段决策问题:
可以分为若干个相互联系的阶段,每个阶段都要做出一个决策,这个决策即决定了本阶段的效益,也决定了下一阶段的初始状态。
当每一个阶段的决策确定后,就得到一个决策序列,称为策略。;动态规划主要用于求解以时间划分阶段的动态过程的优化问题,但是一些与时间无关的静态规划(如线性规划、非线性规划),可以人为地引进时间因素,把它视为多阶段决策过程,也可以用动态规划方法方便地求解。
动态规划是考察问题的一种途径,或是求解某类问题的一种方法。
动态规划问世以来,在经济管理、生产调度、工程技术和最优控制等方面得到了广泛的应用。例如最短路线、库存管理、资源分配、设备更新、排序、装载等问题,用动态规划方法比其它方法求解更为方便。;6.1.1 多阶段决策过程;例如:在0/1背包问题中,物品i或者被装入背包,或者不被装入背包,设xi表示物品i装入背包的情况,则
xi=0时,表示物品i没有被装入背包,
xi=1时,表示物品i被装入背包。
根据问题的要求,有如下约束条件和目标函数:
;6.1.2 最优化问题;如果用向量X=( x1, x2, …, xn)表示S中所选取的货币,则
(式6.2)
则,POS机支付的现金必须满足
(式6.3)
并且
(式6.4);6.1.3 最优性原理;具有n个输入的最优化问题,其求解过程划分为若干个阶段,每一阶段的决策仅依赖于前一阶段的状态,由决策所采取的动作使状态发生转移,成为下一阶段决策的依据。
一个决策序列在不断变化的状态中产生,这个决策序列产生的过程称为多阶段决策过程。;最优性原理:无论决策过程的初始状态和初始决策如何,其余的决策都必须相对于初始决策所产生的当前状态,构成一个最优决策序列。;6.1.4 算法总体思想
与分治法类似,动态规划算法的基本思想也是将待求解问题分解成若干个子问题,但是经分解得到的子问题往往不是互相独立的。
保存已解决的子问题的答案,需要时再找出已求得的答案,就可以避免大量重复计算,从而得到多项式时间算法。;动态规划算法适用于解最优化问题。步骤:
找出最优解的性质,并刻划其结构特征。(划分子问题)
最优子结构性质:问题的最优解包含其子问题的最优解。
递归地定义最优值。(确定动态规划函数)
以自底向上的方式计算出最优值。
根据计算最优值时得到的信息,构造最优解。;例6-1:数塔问题。
【问题描述】从数塔的顶层出发,在每一个结点可以选择向左走或向右走,一直走到最底层,要求找出一条路径,使得路径上的数值和最大。;分析:;求解初始子问题:底层的每个数字可以看作1层数塔,则最大数值和就是其自身;
再求解下一阶段的子问题:第4层的决策是在底层决策的基础上进行求解,可以看作4个2层数塔,对每个数塔进行求解;
再求解下一阶段的子问题:第3层的决策是在第4层决策的基础上进行求解,可以看作3个2层的数塔,对每个数塔进行求解;
以此类推,直到最后一个阶段:第1层的决策结果就是数塔问题的整体最优解。;算法描述:
输入:二维数组d[n][n]
输出:数塔的最大数值和及其路径
1. 初始化数组maxAdd的最后一行为数塔的底层数据:
for (j = 0; j n; j++)
maxAdd[n-1][j] = d[n-1][j];
2. 从第n-1层开始直到第 1 层对下三角元素maxAdd[i][j]执行下述操作:
2.1 maxAdd[i][j] = d[i][j] + max{maxAdd[i+1][j], maxAdd[i+1][j+1]};
2.2 如果选择下标j的元素,则path[i][j] = j;否则path[i][j] = j+1;
3. 输出最大数值和maxAdd[0][0];
4. 根据path数组确定每一层决策的列下标, 输出路径信息;;6.1.5 矩阵连乘问题
问题描述:
给定n个矩阵 ,其中 与 是可乘的,
您可能关注的文档
- 加油站生产安全事故案例分析选编.doc
- 加油站经营活动分析(模版)选编.pptx
- 7.第七章金融风险概述及风险管理原则讲义.ppt
- 加油站计量员题库选编.doc
- 加油站记账员管理办法培训资料选编.ppt
- 加油站课程设计计算书选编.doc
- 7.背影讲义.ppt
- 加油站施工内业第二册-内容选编.doc
- 加法连续进位选编.pptx
- 加热炉基础知识及开工烘炉选编.ppt
- 浙江省临海市白云高级中学2025届高三历史3月月考试题.doc
- 云南拾谷县第一中学2024_2025学年高二物理上学期10月月考试题.doc
- 2025版高考生物总复习第13讲基因的分离定律教案苏教版.doc
- 湖北省黄石实验高中2024_2025学年高一历史下学期期末考试模拟卷.doc
- 通史版2025版高考历史大一轮复习专题七近代化的曲折发展__中日甲午战争至五四运动前4第4讲从维新思想到新文化运动课后达标检测含解析新人教版.doc
- 2024年高考数学考试大纲解读专题04导数及其应用含解析文.doc
- 河南省许汝平九校联盟2024_2025学年高一语文上学期期末考试试题扫描版无答案.doc
- 江西省吉安市吉水县第二中学2024_2025学年高一历史上学期第二次月考试题.doc
- 北京市平谷区2025届高三政治一模考试试题含解析.doc
- 2025届中考物理第四讲物态变化专项复习测试无答案新人教版.docx
文档评论(0)