论文部分内容阅读
近年来,有关Multi-agent系统(MAS)与分布式人工智能(DAI)的研究,已经成为人工智能领域的重要研究方向之一。该研究方向要求在一个实时动态变化的和不可预测的环境中,拥有自主能力的Agent,作为团队的一部分,能自动地进行有效的动作,完成整个队伍的目标。 RoboCup即机器人世界杯足球赛,是一个典型的Multi-agent系统,它具有MAS的所有特性。同时,机器人足球具有观赏性和刺激性,可以很好的展示Multi-agent系统的研究成果。鉴于机器人足球的这些特点,国际人工智能界选择了机器人足球作为Multi-agent系统研究的一个标准问题,在本文中,我们使用仿真机器人足球作为我们研究的载体。 本文首先对Agent及Multi-agent及RoboCup进行了简单介绍,然后较为详细地介绍了仿真机器人足球赛的2D仿真环境。最后介绍了仿真机器人足球的一些主要模型并描述了Oryx的实现过程与方法。 本文设计了一个分层的Agent结构Oryx。整个系统按照模块化设计,采用面向对象的方法,用C++语言在Linux平台上进行了实现。整个系统一共分为三层:通讯层、动作层和高层决策层,低层为上一层服务,高层则调用下一层的方法。层次结构的设计,使得整个程序的结构更加清晰。整个Agent采用符合POSIX规范的多线程技术,线程问通过互斥技术进行通讯。 本文通过机器学习算法实现Agent的个体智能,比如射门、截球、传球等。本文首先重点研究了BP神经网络学习算法,使用这种学习算法实现截球和传球等个体动作模型,最后结合足球领域专家的知识实现了Agent间的协作。在设计中使用了Robocup中一个典型的协作方法SBSP作为Oryx的高层决策机制,取得了较好的效果。该Agent充分考虑了系统的实时性和噪音,具有合理的结构和相当的智能性并且能够根据环境做出比较协调的协作动作,能够在高层决策的统一框架内协调、协作,一起实现共同的目标:取得比赛的最终胜利。 要进行仿真组的Agent设计,必须考虑到各种技术,包括自主智能体设计原则,多智能体合作,策略获取,实时推理。目前的主要难点在于在线学习、对抗环境下的实时战略研究和Multi-agent间的合作、协作方法的研究。包括动态协调机制、协商策略和高级攻防战略的应用研究等。