动态规划数学描述

首先,例举一个典型的且很直观的多阶段决策问题:
[
下图表示城市之间的交通路网,线段上的数字表示费用,单向通行由A->E。试用动态规划的最优化原理求出A->E的最省费用。


如图从AE共分为4个阶段,即第一阶段从AB,第二阶段从BC,第三阶段从CD,第四阶段从DE。除起点A和终点E外,其它各点既是上一阶段的终点又是下一阶段的起点。例如从AB的第一阶段中,A为起点,终点有B1B2B3三个,因而这时走的路线有三个选择,一是走到B1,一是走到B2,一是走到B3。若选择B2的决策,B2就是第一阶段在我们决策之下的结果,它既是第一阶段路线的终点,又是第二阶段路线的始点。在第二阶段,再从B2点出发,对于B2点就有一个可供选择的终点集合(C1C2C3);若选择由B2走至C2为第二阶段的决策,则C2就是第二阶段的终点,同时又是第三阶段的始点。同理递推下去,可看到各个阶段的决策不同,线路就不同。很明显,当某阶段的起点给定时,它直接影响着后面各阶段的行进路线和整个路线的长短,而后面各阶段的路线的发展不受这点以前各阶段的影响。故此问题的要求是:在各个阶段选取一个恰

当的决策,使由这些决策组成的一个决策序列所决定的一条路线,其总路程最短。


动态规划为此类多阶段决策问题寻求了一种简便的方法。为了便于讨论,我们先引入动态规划问题的一些概念、术语和符号。


名词解释:

1)决策和阶段

在对问题的处理中作出某种选择性的行动就是决策。例如在且点需选择下一步到B1还是到B2,这就是一次决策。一个实际问题可能要有多次决策或多个决策点,为此对整个问题,可按其特点划分成需要作出选择的若干轮次,这些轮次即称为阶段。如图中,从AE共分为4个阶段,即第一阶段从AB,第二阶段从BC,第三阶段从CD,第四阶段从DE

2)状态和状态变量


某一阶段的出发位置称为状态。通常一个阶段包含若干状态。例如阶段3含有3种状态C1C2C3。状态通常可有一个变量来描述,用来描述状态的变量称为状态变量,记第K阶段的状态变量为Uk。例如U3={C1C2C3}

3)决策变量和允许决策集合


在每一个阶段中都需有一次决策,决策也可以用一个变量来描述,称这种变量为决策变量,一般用Xk表示第K阶段的决策变量。在实际问题中,决策变量的取值往往限制在某一个范围之内,此范围称为允许决策集合,用Sk表示第K阶段的允许决策集合。例如,S3={D1D2},它表示第三阶段可有两种不同的决策。那么Xk
Sk
之间的关系是UK+1=XkUk)。当第K阶段的状态确定之后,可能作出的决策范围还要受到这一状态的影响,这就是说,决策变量Xk是状态变量Uk的函数,记为XkUk),简记为Xk。把Xk的取值范围记为Sk(Uk),显然有Xk(Uk)Sk(Uk)

例如在图的第三阶段中,若从状态C1出发,就可作出二种不同的决策,其允许决策集合S3(C1)={D1D2}。若选取的点是D2,则D2是状态C1在决策X3(C1)作用下的下个新的状态,记作X3(C1)=D2


4)策略和最优策略


所有阶段依次排列构成问题的全过程。全过程中各阶段决策变量Xk(Uk)所组成的有序总体称为策略。在实际问题中,可供选择的策略有一定的范围,该范围称为允许策略集合P。从P中找出最优效果的策略称为最优策略。


5)状态转移方程


前一阶段的终点就是后一阶段的起点,前一阶段的决策变量就是后一阶段的状态变量,这种关系描述了由K阶段到K1阶段状态的演变规律,称为状态转移方程。如上图的状态转移方程为UK+1=XkUk)。

6)动态规划的函数基本方程

为了帮助大家理解动态规划的基本思想,先说最短路线的一个重要特性:如果从A->B->C->DAD的最短路线,那么从BD的最短路线必是B->C->D。更一般地说:如果最短路线在第K阶段通过Pk,则由点Pk出发到达终点的这条路线对于从Pk出发到达终点的所有可能选择的不同路线来说,必定也是最短路线。

这就引出了从终点逐段向始点方向寻找最短路线的一种方法:
若以Uk表示第K阶段的一个决策点,从终点开始,依逆向求出倒数第一阶段、倒数第二阶段、倒数第三阶段、……、倒数第N-1阶段中各点到达终点的最短路线。最终求出从起点到终点的最短路线。这就是动态规划的基本思想。
下面,我们按照动态规划的方法将上例从最后一段开始计算,由终点E向前逐步倒推至起点A
Uk表示第K阶段的一个决策点,FkUk)表示从第K阶段中的点Uk到达终点的最短路线的长度,SkXkUk)表示第K阶段中XkUk的距离。
(当K=5时,F5E=0
K=4时,F4D1=5F4D2=2
K=3时,
F3
C1=min[S3C1D1+F4D1),S3C1D2+F4D2]=min[811]=8
F3
C2=min[S3C2D1+F4D1),S3C2D2+F4D2]=min[711]=7
F3
C3=min[S3C3D2+F4D2]=min[12]=12
K=2时,
F2
B1=min[S2B1C1+F3C1),S2B1C2+F3C2]=min[2021]=20
F2
B2=min[S2B2C1+F3C1),S2B2C2+F3C2),S2B2C3+F3C3]
            =min[14
1716]=14
F2
B3=min[S2B3C1+F3C1),S2B3C2+F3C2),S2B3C3+F3C3]
            =min[21
1923]=19
K=1时,
F1
A=min[S1AB1+F2B1),S1AB2+F2B2),S1AB3+F2B3]
            =min[22
1920]=19
其中X1A=B2X2B2=C1X3C1=D1X4D1=E 组成一个最优策略。路线  A->B2->C1->D1->E  为从AE的最短路线。最短路线长19
从上面的计算过程中,我们可以看出,在求解的各个阶段,我们利用了K阶段与K+1阶段之间的如下关系:
     Fk
 Uk=min[SkUkXk+Fk+1Xk]       k=4321
     F5
 U5=0
这种递推关系,叫做动态规划的函数基本方程。
动态规划的最优化原理是作为整个过程的最优策略具有这样的性质:无论过去的状态和决策如何,对前面的决策所形成的状态而言,余下的诸决策必须构成最优策略。
与穷举法相比,动态规划的方法有两个明显的优点:
(1)
大大减少了计算量
(2)
丰富了计算结果
从上例的求解结果中,我们不仅得到由A点出发到终点E的最短路线及最短距离,而且还得到了从所有各中间点到终点的最短路线及最短距离,这对许多实际问题来讲是很有用的。

动态规划的最优化概念是在一定条件下,我到一种途径,在对各阶段的效益经过按问题具体性质所确定的运算以后,使得全过程的总效益达到最优。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值