无后效性是指如果在某个阶段上过程的状态已知,则从此阶段以后过程的发展变化仅与此阶段的状态有关,而与过程在此阶段以前的阶段所经历过的状态无关。利用
动态规划方法求解多阶段决策过程问题,过程的状态必须具备无后效性。
原则简介
所谓无后效性原则,指的是这样一种性质:某阶段的状态一旦确定,则此后过程的演变不再受此前各状态及决策的影响。也就是说,“未来与过去无关”,当前的状态是此前历史的一个完整总结,此前的历史只能通过当前的状态去影响过程未来的演变。具体地说,如果一个问题被划分各个阶段之后,阶段k中的状态只能通过阶段k+1中的状态通过状态转移方程得来,与其他状态没有关系,特别是与未发生的状态没有关系,这就是无后效性。
对于不能划分阶段的问题,不能用
动态规划来解;对于能划分阶段,但不符合最优化原理,也不能用动态规划来解;既能划分阶段,又符合
最优化原理,但不具备无后效性原则的,还是不能用
动态规划来解;误用动态规划程序设计方法求解会导致错误的结果。
实例说明
例1
货郎担问题和旅行路线问题。货郎担问题是对平面给定的n个点确定一条连接各点的、闭合的最短游历路线问题。图1(a)给出了7个点问题的解。旅行路线问题是货郎担问题的简化,这种旅行路线先从最左边开始,严格地由左至右到最右边的点,然后再严格地由右至左到出发点,求路程最短的路径长度。图1(b)给出了7个点问题的解。
这两个问题看起来非常相似,但本质上是完全不同的。为了方便讨论,可以将每个顶点标记号码。由于必然经过最右边的顶点7,所以一条路(到)可以看成是两条路线(到)与(到)的结合。因此,这个题目的状态可以用两条道路结合的形式表示。可以把这些状态中,两条路中起始顶点相同的状态归于一个阶段,设为阶段[,]。
那么,对于旅行路线问题来说,阶段[,]如果可以通过阶段推出,则必须满足的条件就是:<或<。例如,阶段[3,4]中的道路可以通过阶段[3,5]中的道路加一条边4—5得出,而阶段[3,5]的状态却无法由阶段[3,4]中的状态得出,因为在旅行路线问题的要求中必须严格地由左到右来旅行。所以如果已经知道了阶段[3,4]中的状态,那么阶段[3,5]中的状态必然已知,因此,问题满足无后效性原则,可以考虑用动态规划方法求解。
而对于货郎担问题,阶段与阶段之间没有什么必然的顺序。如道路{3—2—5—7,4—6—7)属于阶段[3,4],可由属于阶段[2,4]的道路{2—5—7,4—6—7)推出;而道路{2—3—6—7,4—5—7)属于阶段[2,4],可由属于阶段[3,4]的道路{3—6—7,4—5—7}推出。可以很清晰地看出,这两个阶段的关系是有后效性的。对于这个问题是不能像上一个问题那样来解决的。
例2 图2中的⑤,假定从⑤到①的最小距离路由已经找到(本例为⑤一③一①),则不管过去是从哪里到达⑤的,从⑤开始以后的最小距离路由总是这一条(即⑤一⑧一①)这也就是说从⑤以后的决策总是一样的,这就导致一个结论。以某一点为起点到目的地之间的最优化路由只与当前所处的地点或地位或状态有关,而与过去如何到达这个起点的情况、条件无关,状态序列的这个特性称之为“无后效性弦”。
无后效性
服从
指数分布的等待时间具有无后效性:对于任意t>0和s>o,有
如果表示某系统中接连发生的两次故障之间的时间间隔,则等式表明,在时间段(s,s+t]上无故障的概率,只与时间段的长度t有关,不依赖于过去系统无故障工作的时间s。我们把这种性质叫做无后效性,这是指数分布有广泛应用的重要原因。
在
离散型随机变量的
概率分布中只有
几何分布具有无后效性。可以证明,在
连续型随机变量的分布中,只有指数分布具有这种无后效性,这两种分布分别描绘离散等待时间和连续等待时间。