http://hi.baidu.com/magiccaslte/blog/item/b2d9f09500472c43d1135e93.html
一个偶尔的机会接触到了MDP,马尔可夫决策过程,突然发现多年的困惑有点头绪了,分享一段东西。
以下东西摘自某博士论文部分(若有版权问题请及时告知):
以哲学观点来看,人类来到世间至少有三件事要做:认识世界;改造世界;享受世界。
在这其中,学习类问题对应认识世界,而决策类问题便是和改造世界紧密相关的。决策问题伴随着人们的日常生活,大至公司乃至国家的战略性决定,小至个人利益相关的一些选择。‘决策’又区别于简单的‘决定’以及‘选择’。它通常涉及的是一个过程,其最终对应的行动的执行一般是多步的。在每一步,都要去做一个选择。不同的选择,不同的行动,导致不同的结果,进而也意味着不同的收益。决策不能孤立的进行,若不考虑现在与将来的联系,很难在整个过程中获得最好的收益,就如同在一次长跑比赛中,我们不能在起点就用尽全力冲刺一样。事实上,决策问题与人们的社会生活的联系是如此密切,可以说,一切社会实践活动都离不开决策,甚至,从辨证的观点看,若是把主观世界也当作客观世界的一部份,那么学习本身也是一个改造世界的过程,其过程也一样讲究策略,我们改造就是自己罢了。
对于智能体而言,当其面对客观世界中存在的一个待解决的问题时,首先,他的学习能力使其在主观世界中获得了对该问题的一个抽象的描述,对应为问题的模型,这其中通常包括:
¨ 问题所有可能的状态,
¨ 问题发展过程的演变规律,
¨ 智能体在过程中可以做出的选择,
¨ 智能体所期望的结果等。
事实上,这就是MDP模型的基本构成部分,
而所谓的智能体进行决策,也就是指智能体在此模型的基础上,基于问题过程的规律进行规划,利用智能体可行的选择参与改变过程,使其朝自身期望的结果发展,最终解决问题。总的来说,决策基于问题的模型再结合规划的方法两部分完成。在人工智能领域,马尔可夫决策过程是用来建模规划问题的一个基本理论模型。以其为基础,进一步发展出一系列更具一般性的决策模型,如部分可观察马尔可夫决策过程,分布式马尔可夫决策过程,部分可观察的随机博弈及半马尔可夫决策过程等等。
决策总是与一个过程相联系的(当然,从广义上来看,过程可以只有一步)。智能体要在过程中做出合适的选择,将过程的发展引入对自身有利的方向,必然需要了解描述过程发展变化的知识。相对于穷举所有变化,如果某些知识,不止一次可被用来推断过程发展,即为规律。主体更需要就是这种精简的知识。
马尔可夫过程正是具有一类普遍共性的过程。这类共性既是马尔可夫性,也称无后效性。由俄罗斯数学家马尔可夫于1907提出。所谓无后效性,指的是这样一种性质:某阶段的状态一旦确定,则此后过程的演变不再受此前各状态的影响。也就是说,“未来与过去无关”,当前的状态是此前历史的一个完整总结,此前的历史只能通过当前的状态去影响过程未来的演变。具体地说,如果一个问题被划分各个阶段之后,阶段 I 中的状态只能通过状态转移方程去影响阶段 I+1 中的状态的得来,与其他状态没有关系,特别是与未发生的状态没有关系,这就是无后效性。从更本质的的角度来理论,可以认为马尔可夫性来源于对因果性和时间的连续性以及单向性的认可。
马尔可夫性用来描述过程的规律类似数学中使用递推公式描述数列一样,并且特点是递推式只用到了前面一项。做为区别,比如著名的斐波拉契(Fibonacci)数列,1,1,2,3,5……的递推公式F(n)=F(n-1)+F(n-2)就用到了前面的两项。假设我们构造一个过程,逐次去读取数列中的每一项,任何一个时刻的状态便是读取到的数字。那么,斐波拉契数列对应的便不是一个马尔可夫过程。描述规律的方式很多,把握“当前的状态是此前历史的一个完整总结”这一要点后,很多过程可以被转化描述为马尔可夫过程。当然,前提是,可以做到当前状态完整总结历史这点。但事实上完美总是相对而言的,从后面不确定性的讨论也可以看到。从这个角度来说,马尔可夫过程是一个很实用的理论。在马尔可夫过程上做决策的好处显而易见,我们可以忽略历史的影响,也无需再去不断的保存历史信息,一切规划都只要从当前状态出发即可。它所蕴含的思想是将智能体有限的规划能力引导至更有价值的方向。
马尔可夫决策过程与马尔可夫过程的本质区别就是多了主体即决策者的介入。下面将依次简单介绍马尔可夫决策过程(Markov Decision Processes, MDP),部分可观察马尔可夫决策过程(Partially Observable Markov Decision Processes, POMDP),分布式部分马尔可夫决策过程(Decentralized-POMDP, DEC-POMDP),部分可观察的随机博弈(Partially Observable Stochastic Games, POSG)及半马尔可夫决策过程(Semi-MDP)之间的区别与联系。
50年代R.贝尔曼研究动态规划时和L.S.沙普利研究随机对策时已出现马尔可夫决策过程的基本思想。R.A.霍华德(1960)和D.布莱克韦尔(1962)等人的研究工作奠定了马尔可夫决策过程的理论基础。1965年,布莱克韦尔关于一般状态空间的研究和E.B.丁金关于非时齐(非时间平稳性)的研究,推动了这一理论的发展。1960年以来,马尔可夫决策过程理论得到迅速发展,应用领域不断扩大。凡是以马尔可夫过程作为数学模型的问题,只要能引入决策和效用结构,均可应用这种理论。
在人工智能领域中,对决策类问题的求解过程也可以称为规划。经典规划一般基于确定式的环境模式,如搜索算法A*等。这类方法在现实应用中有很大的局限性。面对现实中的规划问题,主体对环境特性的把握常常是不完整的,正是由于这种知识的缺失,造成了不确定性。马尔可夫决策模型则可以处理这类问题。利用下图信息集合划分的方式,可以更清晰的理解不确定性,以及马尔可夫决策过程(MDP)与下面将提到部分可观察马尔可夫决策过程(POMDP)的区别。
针对某个决策问题,从信息或者知识的角度我们区分出如下所示3个依次为包含关系的集合:
图1.1 决策问题中的信息划分
A集合:为客观存在的影响过程的全部信息,是整个客观世界的世界状态中与问题所对应过程相关的因素。
B集合:为影响智能体主观决策的信息,进一步解释,是智能体主观上知道存在,并能够把握运用的一些信息。因为对于某些因素,即便智能体知道应该与过程相关,但无法把握运用,这些信息也不会影响智能体决策。比如,一般都认为掷硬币,正反面的概率各50%。事实上,风力,掷硬币的具体操作方式,抛出轨迹,用力情况,地面情况等都会影响过程结果,而这些因素通常无法把握运用,即使考虑进来,也难以改变决策。因此,这类智能体知道存在却无法把握利用的信息,及主观上根本不知道其存在而客观上却影响过程的因素,构成了B集合与A集合的差别。同时,也正是这些差别,造成了不确定性的存在。从另一个角度,只要B不是空集,基于应用的需求,就存在进行决策的意义。但对不确定性仍需进行刻画,于是便引入了统计意义上概率。
C集合:为智能体总是能观察到的信息。现实中很多决策过程,对于B集合中的信息,智能体有时观察不到。比如踢足球,自己身后球员的位置是会影响决策的,但却可能会观察不到。
根据定义内容,首先有前提A>=B>=C,进而可以对问题做下面的分类:
1> 当 A=B=C时是一个确定性问题。
2> 当 A>=B=C时是一个MDP问题。
3> 当 A>=B>C时是一个POMDP问题。
MDP本身既可以处理确定性问题,也可处理不确定性问题。而POMDP在MDP模型上进行了一定扩展,引入了对观察不确定性的处理。从一定意义上也可以认为,MDP是POMDP的一种极端的情况,即决策相关信息全部可观察。
MDP及POMDP模型中都认为决策的智能体只有一个,并把其它一切因素都归于客观环境。这些因素一部分是确定性的知识;另一部分则是已归入统计概率的不确定性,认为在当前条件下,从处理问题的实际情况出发,不适合再进行探究,只作概率推理。当一个过程中,有多个智能体同时决策合作来解决一个问题时,上述模型是否适用的关键因素即其他智能体的策略是否已知。策略是决策的结果,指出在过程某个状态要采用哪个行动。如果认为其他智能体策略已知,无论是确定性的策略亦或含概率表示的不确定性策略,那么其他智能体一样可以归入环境,仍可使用MDP或POMDP模型处理。否则,其它智能体会采用何种策略也是需要纳入考虑的,在生成智能体自身决策的同时,也要生成其他智能体的决策,这是其客观过程本身的模型决定的。分布式马尔可夫决策过程(DEC-MDP)及分布式部分可观察马尔可夫决策过程(DEC-POMDP)可以处理这类多智能体合作问题。
在现实应用中,多智能体间除了合作也可能存在对抗,这类问题可以归为博弈。其中本质的区别即智能体间收益评价的不同。合作类问题,各个智能体有相同的收益评价,或者说有共同的目标;而博弈类问题,各个智能体收益评价存在区别,甚至完全对立。部分可观察的随机博弈(POSG)便是进一步扩展的一个决策模型,可以处理这类带有不确定性的博弈问题。
半马尔可夫过程又可以称为非时齐马尔可夫过程,这是相对于一般的时齐马尔可夫过程而言的。所谓时齐是指过程的每两个相邻状态点间的时间间隔是一致的,对应决策过程则是每步行动的执行时间是定长的。非时齐则是描述了一类更一般的情况,对应决策过程中行动的执行时间并不固定,甚至是时间上的一个概率分布。
我的收获:早些年研究的东西,基本思路是有一定的科学理论依据的,只是出发点有了问题,所以难逃计算量的恐怖。就像目前的彩票研究者一样,最终的常理的结论是预知性不明朗,靠运气吧。现在想想其实换一个研究层面去研究,然后按原来的方法计算,很多层面的东西还是相当有可能的。感谢数学,感谢马尔可夫。