动态规划

动态规划

动态规划(Dynamic progamming)是解决多阶段决策问题常用的最优化理论。在最短路线,库存管理,资源分配,设备更新,排序,装载等问题上比较高效。动态规划的原理就是把多阶段决策过程转化为一些列的单阶段决策问题。
动态规划适合求解多阶段(状态转换)决策问题的最优解,也可用于含有线性或非线性递推关系的最优解问题,但是这些问题必须满足必须满足最优化原理和子问题的“无后向性”。

  • 最优化原理:最优化原理其实就是问题的最优子结构的性质,如果一个问题的最优子结构是不论过去状态和决策如何,对前面的决策所形成的状态而言,其后的决策必须构成最优策略。也就是说,不管之前决策是否是最优决策,都必须保证从现在开始的决策是之前决策基础上的最优决策,则这样的最优子结构就符合最优化原理。
  • 无后向性(无后效性):所为“无后向性”,就是当各个阶段的子问题确定以后,对于某个特定阶段的子问题来说,它之前的各个阶段的子问题的决策只影响该阶段的决策,对该阶段之后的决策不产生影响,也就是说,每个阶段的决策仅受之决策的影响,但是不影响之后个阶段的决策。

动态规划的基本思想

分治法要求子问题是相互独立的,但是动态规划的子问题不是相互独立的,子问题之间通常有包含关系,甚至两个子问题可能包含相同的子子问题,子问题A由子问题C递推得到,子问题B也由子问题C递推得到,所以只需要对C求解一次,然后将其结果保存在一张表中(备忘录)。
动态规划没有固定的实现模式,可以用带备忘录的递归方法实现,也可以根据堆叠子问题之间的递推公式用递推的方法实现。使用动态规划一般包含四个步骤:定义最优子问题,定义状态和状态转换方程以及确定边界条件。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值