多阶段决策问题
- 最短路问题
- 资源分配问题
- 生产库存问题
最短路问题的动态规划模型
minV1,5(s1,p1,5)=∑k=15(dk,uk)s.t.sk+1=Tk(sk,uk),1≤k≤5sk∈Sk,uk(sk)∈Uk(sk),k=1,2,...,5
给定sk,系统以后的状态完全有k及其以后的各阶段的决策所决定和系统由什么路径到达sk 无关,即和s1,s2,...,sk的取值无关。
该特点称为马尔科夫性或者无后效性,用动态规划求解的多阶段模型必须具有无后效性。
最优化原理
最优策略:对于先前决策所形成的状态而言,其以后的所有决策应能构成最优策略。
该原理适用于所有满足马尔科夫性的序贯决策问题。
使用动态规划解决多阶段决策问题的一般步骤
- 明确问题,找出阶段数。
- 明确变量,找出状态变量和决策变量。
- 找出状态转移方程。
- 写出递推关系式。
求解递推关系式。
不定期问题
值迭代法
做初始函数f1(i),i=1,2,...,N
{f1(i)=ciN,i=1,2,..,N−1f1(N)=0
然后用下列递推关系求解{fk(i)}
{fk(i)=min{cij+fk−1(j)},i=1,2,...,N−1fk(N)=0
策略空间迭代法
一个策略{s(i)}就是给定点pi时,选定下一步的位置是s(i)
给定初始策略{s0(i)},{s0(i)}是一个无回路的策略,在此策略下做方程组
{f0(i)=cis0(i)+f0(s0(i)),i=1,2,...,N−1f0(N)=0
改方程有唯一解。接触f0(i)以后,求 minj{cij+f0(j)},i=1,2,...,N−1
设minj{cij+f0(j)}=cii1+f0(i−1)则令
s1(i)=i1,i=1,2,...,N−1
由此得到一个新的策略,用这个策略重复上边做法,知道对所有的i都有sk(i)=sk−1(i),那么sk(i)就是最优解。