注意:本帖只为自己学习记忆,无过多参考价值

动态规划区别与线性规划与非线性规划。动态规划即将总事件划分为若干个子阶段,并且每个子阶段都取到最优的结果。

求解时从边界条件开始,逆序过程行进,逐段递推寻优。每段的最优决策选取是从全局考虑的,与该段的最优选择一般是不同的。

基本步骤有以下几步:(一)划分阶段

(二)选择状态 确定决策并写出状态转移方程

(三)写出规划方程  需要递归或递推计算最优值

matlab工具箱dynprog函数

[p_opt,fval]=DYNPROG(s,'DecisFun','ObjFun','TransFun');

DecisFun(k,s,u)决策函数,由阶段k的状态变量x求出相应的允许决策变量

TransFun(k,s,u)状态转移函数,其中x是阶段k的某状态变量,u是相应的决策变量

ObjFun(k,s,u)阶段指标函数

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐