马尔科夫决策过程
一.开篇的几句话:
今天本想及时下班,但是还想再学点东西就留下来公司了,这个内容今天(周五)晚上估计写不完,不过明天我会来公司继续写的。做题看了一集加州理工大的机器学习的教学视频,里面提到增强学习(reinforcement learning)。当我回想这个算法的原理时我已经忘记了,所以今天网上学习了再写出来。
二.马尔科夫决策过程
1. 一些不得不说的概念
马尔科夫决策过程(MDP,Markov decision processes):是指决策人在决策时周期地或连续地观察具有马尔可夫性的随机动态系统,序贯地作出决策。即根据每个时刻观察到的状态,从可用的行动集合中选用一个行动作出决策。
这个随机的动态系统下一步的状态是随机的,并且其状态转移概率具有马尔可夫性。决策者根据新观察到的状态,再作新的决策,依此反复地进行。
这里提到的马尔可夫性:在知道马尔科夫决策过程之前大家肯定也都听说过 马尔科夫链以及因马尔科夫模型,它们具有的一个共同性质就是马尔可夫性(无后效性),也就是指系统 的下个状态只与当前状态以及当前所选的动作有关,而与更早之前的状态无关。
在此举个简单的例子,当我们在下棋的时候,面对棋谱,轮到决策者A决定走一步的时候,棋盘的局面是s,A走了一步(选择动)作a,这时A的对手B要做出选择,B的选择(导致棋局下一个局面s')我们是不确定的但是肯定只与A的状态a和动作a有关,而不用考虑更早之前的状态和动作,也就是说s'是根据s和a随机生成的。
一个马尔科夫决策过程由一个五元组构成
* S表示状态集(states), 比如在下棋的时候,棋谱所处的局面是就是现在的状态
* A表示一组动作, 例如决策者决定走一步,就要从这组动作中选取,前后等
* Psa是状态转移的概率,S中一个状态的转变,需要A来参与,Psa表示在当前状态s(状态也有状态组S)下,经过动作a作用后