基于强化学习的游戏智能体设计(3)
时间:2018-09-11 10:40 来源:毕业论文 作者:毕业论文 点击:次
强化学习以马尔可夫决策过程模型为数学基础,着重研究在转移函数和回报函数未知的情况下,对最优值函数的估计方法。一些强化学习算法在运行过程中会利用尝试得到的经验和统计技术,建立转移函数和回报函数的估计模型,在估计模型上使用规划技术调整自己的策略,这一类强化学习算法称之为基于模型法。另一类强化学习算法不需要学习转移函数和回报函数,利用类似于动态规划的值迭代技术直接学习最优策略,这类算法称之为模型无关法。由于模型无关法不需要估计完整的马尔可夫模型,所以该类方法每次迭代计算量较基于模型法要小,但也由于未使用经验知识估计模型,使得该方法较之基于模型法收敛速度要慢很多[1]。 在实际运用中,强化学习方法经常存在的问题是“探索”与“利用”两难问题:agent在经过多次尝试后找到一些看起来比较好的策略,那么在今后的探索中该agent可以选择已经找到的非常好的策略,即利用学习到的知识。但那些看起来差的策略并非真正差的策略,也许是因为在尝试过程中仅仅一步错了导致整个策略看起来很差,再次尝试这样的策略也许会得到更好的策略。常用的解决这对矛盾的方法是 贪心规则:在 的时间里尝试新的策略,在 的时间里利用已知的最好策略。 至今为止,强化学习吸引了大量的研究者们,从最初的TD算法开始,强化学习的研究走过了相当漫长的道路,在这段时间里,研究者们提出了很多较有影响力的强化学习算法:TD算法、Monte-Carlo方法、Q学习算法、Sarsa算法、Dyna算法,R学习算法等等,其中以Q学习算法和Sarsa算法应用最为广泛[2]。 2.2 强化学习的直观理解 可以将Agent想象成一只马戏团的猴子,它正在学习完成某个表演,比如骑自行车。它需要作出一系列的动作来保持自己的平衡并让自行车动起来,一开始,它可能随机的挥动胳膊,杂乱无章地蹬腿。当然这导致了失败,它摔倒在地上,并且感到很痛,这使得它下一次不再重复这次的动作,因为它知道这样的动作会使它感受到痛苦。在不断的尝试过后,它成功地选择了一系列动作成功使得自行车平衡了。这时候饲养员给了它一颗糖作为奖励。尝到甜头的它,在下次遇到自己在自行车上的情况时依然会选择使得自己得到奖励的那一些动作,而避免那些会使得自己摔倒的动作。再进一步,在使自己平衡的基础上,它又会选择一些动作使得自己前进,前进失败摔倒了,它会将自己所做的动作当作失败经验,前进成功得到饲养员的糖,它会将自己所做的动作当作成功的经验。这些经验会被猴子记忆,并在下次遇到同样情况时加以利用。经过大量的反复的练习,这只小猴子将会学会骑自行车,并在周优尔的演出中为大家带来快乐。 (责任编辑:qin) |