- 1
- 0
- 约3.64千字
- 约 42页
- 2019-12-27 发布于江苏
- 举报
动态规划
;[例1]:求出从顶点1点到顶点7点的最短路径;;;;;F1();fi(x)=x+max{fi+1(x1)+fi+1(x2)+……};如何编程与数据结构有关:将原始数塔写成下面的形式,用data[i][j]表示这个矩阵;下一个问题:求的d[i][j]后如何让具体最大值路径?;总结:动态规划问题的设计要素?
划分子问题
用参数表达子问题的边界,将问题求解转化为多步判断问题
确定优化目标函数
根据问题性质,以函数的极大或者极小为依据,确定是否满足最优原理
列出关于优化函数的递推方程和边界、约束条件
注意:递推方程中总会存在极大或极小运算
求解递推方程
两种求解递推方程的方法
自顶向下:递归方法
自底向上:迭代方法;;分析:根据题意,本质上是求下面的优化问题
J(x1,x2,..,xm)=max{g1(x1)+g2(x2)+…+gm(xm)}
x1+x2+…+xm=n
0≤xi≤n, 要求xi是整数;假设,将数量为x单位的资源分配前i个项目的最大利润为fi(x),可以写出下面的递归公式;将函数用数组表示,x用j表示,y用k表示,可写出下面的递归公式;定义数组a[i][j]
a[i][j]=kmax 表示前i个项目分配资源量为j的情况下,使得前i个项目利润最时,第i个项目分配的资源量为kmax。;二、动态规划问题的设计方法;三、进一步的例子;;完全加括号
原创力文档

文档评论(0)