动态规划问题详解(三)

原创 2013年12月04日 14:58:42

   在动态规划问题详解1,2中,我们只是拿了2个例子说明了一下什么是动态规划,及解题的思路。并没有形成一套完整的理论。这篇文章,我们将讨论如何用数学模型给动态规划问题建模。




                                                                                                               图一

    如图一所示,找出从A--->E 点的最短路径。

 阶段变量

   我们把整个过程分成4个阶段,A->B1(B2) , B1(B2)-->C1(C2,C3) , C1(C2,C3)->D1(D2), D1(D2)->E.整个问题,可以看成是4个阶段的决策问题,描述阶段次序的变量,称为阶段变量。用k来表示。

状态

 一个阶段在开始时所面临的状况,称为状态,一个状态,既是起点,又是终点。每个阶段的所有的状态,构成了状态集合。如第一阶段的状态的集合为{A},第三阶段的状态的集合为{C1,C2,C3,C4}.描述过程状态的变量,称为状态变量。一般用x_k来表示第k个阶段的某个状态.

决策

  一个阶段的状态给定以后,从一个状态到另一个状态的选择,我们称之为决策。用来描述这种选择的变量称为决策变量,一般用u_k(x_k)表示第k个阶段,状态为x_k的决策变量。决策变量,允许选择的变量,称为允许决策变量用U_k表示。如果用X_3表示第三个阶段的状态的集合,则X_3={C1,C2,C3} .如果从C2出发,则U_2(c2)={D1,D2}如果我们选择了D2,那么u_3(c2)=D2


策略

由各个阶段的决策,u_k(x_k)  k={1,2,3,....n}组成的决策序列,称为一个策略,一般用P表示一个策略。P_n={u_1(x_1),u_2(x_2)....u_n(x_n)}

在实际的问题中,可供选择的策略是有限的,如{A,B2,C3,D2,E}.  是一种策略。图1中所示的,允许策略集合一共包含2*2*2*1=8个策略。允许策略集合中达到最优效果和策略称为最优策略。

状态转移方程

所谓状态转移就是过程由于一个状态转变到另一个状态的变化。显然,它既与前一状态有关,又与所选择的决策有关。显然,第k段的状态x_k和决策u_k(x_k)一经确定后,第k+1段的状态x_k+1,也就随之确定。那么这个对应关系可记作:

x_k+1=T_k(x_k,u_k(x_k))称为由状态x_k到x_k+1状态转移方程。在图1中,当x2=B1,时,u_2(x2)=C2,则有下一个状态 c2= T(B1,C2)

指标函数

为了衡量策略的优劣,我们引入了指标函数,用V_kn表示。最优指标函数胜f_k_n表示。图1 中,f_k_n表示从点xk到终点的最短路径。

基本思想

 

我们仍然以图1为例。我们假设在A-E的最短路径中,存在一点p,则P->E是最短的路径。有了以上的思想之后,我们就可以采用逆序求解的思想进行了。

逆序求解

   如图1中,我们可以先求解第四阶段的最优解。然后再求第三阶段,第二阶段,第一阶段。

当k=4时,f_4(D1)=4

当k=3时,出发点有c1,c2,c3 .

f_3(c1)=d(C1,D1)+ f_4(D1))= 7   当C1选择D1时

f_3(c1)=d(C1,D2)+f_4(D2)=8 当C1选择D2时。

最f_3(c1)的最小值7,则第三阶段的最优解为f_3(c1)=7,其策略为u_3(c1)=D1

直到求出f1.

 

 


因为是倒序,所以k的状态由k+1的状态及策略决定。




动态规划详细解析---及各类问题解决方案

动态规划  算法总体思想  动态规划算法与分治法类似,其基本思想也是将待求解问题分解成若干个子问题。 但是经分解得到的子问题往往不是互相独立的。不同子问题的数目常常只有多项式量级。在用分治法...

0-1背包 动态规划问题详解

  • 2013年11月13日 16:53
  • 914KB
  • 下载

动态规划问题详解

  • 2012年05月17日 15:41
  • 619KB
  • 下载

Predict the Winner一个动态规划的问题解法详解

Predict the Winner

经典动态规划问题举例详解

  • 2011年06月04日 10:34
  • 61KB
  • 下载

动态规划,建桥问题代码

  • 2017年11月09日 17:06
  • 340KB
  • 下载

动态规划问题详解(二)

在动态规则问题详解(一)中,我们用1,3,5三个硬币,求用最少的硬币组成11元的问题。这一节,我们来讨论一个复杂一点的问题。这个问题,曾经是某公司的面试题。    有从1-N个连接的整数,把1-N个整...

几个经典的动态规划问题

  • 2015年10月24日 15:47
  • 156KB
  • 下载

kruskal算法,动态规划,背包问题

  • 2013年12月09日 14:46
  • 239KB
  • 下载

《Thinking In Algorithm》13.详解动态规划问题

1. 什么是动态规划 ------------------------------------------- dynamic programming is a method for solvi...
  • SpeedMe
  • SpeedMe
  • 2014年04月23日 16:51
  • 4005
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:动态规划问题详解(三)
举报原因:
原因补充:

(最多只允许输入30个字)