论文部分内容阅读
多Agent系统(Multi-Agent System,MAS)是分布式人工智能(Distributed Artificial Intelligence,DAI)的一个主要领域,而多个Agent之间如何进行组织协调和协作以实现共同目标是MAS研究的核心问题。解决MAS的协作问题有许多方法,Agent的学习方法是其中很重要的一种。通过Agent的学习实现MAS的协调与协作是一个非常值得研究、具有挑战性的课题。
本文将研究如何通过强化Q-学习方法来实现多Agent之间学习与协作,主要工作包括:
●单Agent行为搜索方案的优化多Agent系统的构成单元是一个个单独的Agent,很多个Agent的独立学习构成了多Agent系统的学习过程,那么要使用学习方法来实现多Agent之间的协作学习,首先要强化单个Agent的学习能力。原始的Q学习中采用的是非直接搜索的行为选择方法(如ε-greedy、Boltzmann 策略),Wiering在其论文中又提出了直接搜索的方法。本文在以上工作的基础上探索了一种能够平衡Agent行为选择中探索与利用关系的方法,利用遗忘函数作为加权系数,使Agent在刚开始搜索环境的时候能够按照人为制定的搜索方法对环境进行充分的探索,而在学习一段时间后则能使行为选择逐渐趋向于贪婪策略。实验证明,这种方法较一般行为选择策略,能更好的加速单Agent的学习进程。
●基于知识共享的多Agerlt学习方法传统的多Agent系统中,每个Agent在完成自己独立的学习过程之后,并不能够将自己学到的知识与其他Agent共享。本文研究了一种多Agent知识共享的方法(Q Table Sharing,Q表共享法)来提高整个MAS系统学习能力和性能。在状态空间较小时利用Q表来共享知识;在状态空间较大时,利用Q表进行知识的暂存与共享空间,利用小脑关节模型来完成最终Q值的存储。实验证明,当有多Agent同时学习时,这种方法不仅能强化每个组成Agent的学习能力,还可以提升多Agent系统的整体性能,学习效果也较单Agent的学习要稳定很多。
●基于叠加法的小脑关节模型(Cerebellar Model Articulation,CMAC) 强化学习算法传统的CMAC都是利用哈希方法来解决输入空间到记忆空间的映射冲突,减少输入维数增加带来的记忆空间急剧增大的问题,并且网络的学习误差只被分担到了泛化参数(C)个单元上。本文采用了一种新的基于叠加法的状态空间映射方法,可以使CMAC网络在输入向量维数很大的时候不仅可以避免映射冲突、减少网络的存储空间,而且学习误差也被分担到n*C个单元上。实验证明,这种方法能有效的与Q学习相结合解决大状态空间的Q值存储问题。
●方法的验证与应用本文通过Agent的路径寻优问题来检验以上方法的有效性,将其应用在RoboCup3D(Robot Soccer Cup Three Dimension)的3v2局部协作问题上,取得了很好的效果。此外,本文还讨论了方法在其他协作、学习问题上的应用前景。