1 动态规划模型的建立
建立动态规划的模型,就是分析问题并建立问题的动态规划基本方程。
通过识别问题的“多阶段特征”,将问题分解成为可用递推关系式联系起来的若干子问题。而正确建立基本递推关系方程的关键又在于正确选择状态变量,保证各阶段的状态变量具有递推的状态转移关系。
一般地,建立动态规划模型的要点如下:
- 分析题意,识别问题的多阶段特性,按照时间或空间的先后顺序适当地划分为满足递推关系的若干阶段,对非时序的静态问题要人为地赋予“时段”概念。
- 正确地选择状态变量,使其具备两个必要特征:
(1)可知性:即过程演变的各阶段状态变量的取值,能直接或间接地确定。
(2)能够确切地描述过程的演变且满足无后效性。 - 根据状态变量与决策变量的含义,正确写出状态转移方程。
- 根据题意明确指标函数,最优指标函数以及阶段指标。
2 逆序解法与顺序解法
动态规划的求解有两种基本方法:逆序解法(后向动态规划方法)、顺序解法(前向动态规划方法)
寻优方向与多阶段决策过程的实际行进方向相反,从最后一段开始计算逐段前推,求得全过程的最优策略,称为逆序解法;
寻优方向与过程的行进方向相同,计算时从第一段开始逐段向后递推,计算后一阶段要用到前一阶段的求优结果,最后一段计算的结果就是全过程的最优结果,称为顺序解法。
这两种解法本质上并无区别,一般来说,当初始状态给定时可用逆序解法,当终止状态给定时可用顺序解法。
3 基本方程分段求解时的几种常用算法
动态规划模型建立后,对基本方程分段求解,不像线性规划或非线性规划那样有固定的解法,必须根据具体问题的特点,结合数学技巧灵活求解,大体有以下几种方法。
3.1 离散变量的分段穷举算法
状态变量与决策变量被限定只能取离散值,可采用分段穷举法。
用分段穷举法求最优指标函数值时,最重要的是正确确定每段状态变量取值范围和允许决策集合的范围。
3.2 连续变量的解法
当状态变量与决策变量为连续变量,就要根据方程的具体情况灵活选取求解方法,如经典解析方法、线性规划方法、非线性规划方法或其他数值计算方法等。