• 学前教育
  • 小学学习
  • 初中学习
  • 高中学习
  • 语文学习
  • 数学学习
  • 英语学习
  • 作文范文
  • 文科资料
  • 理科资料
  • 文档大全
  • 当前位置: 雅意学习网 > 小学学习 > 正文

    BP神经网络在短道速滑智能体决策过程中的应用:深度神经网络dnn

    时间:2020-03-11 07:17:21 来源:雅意学习网 本文已影响 雅意学习网手机站

      摘要: 通过人工神经网络,实现了短道速滑仿真系统中智能体(agent)的决策过程。将智能体的当前状态作为神经网络的输入,智能体要采取的动作作为神经网络的输出,从而实现智能体的决策。神经网络的训练采用有监督学习的误差反向传播(Back Propagation)算法,样本采集自仿真系统运行时使用者的输入。通过所述方法,能够保证智能体在高速的比赛过程中较少犯规,并可以达到在体能受限的情况下取得较优秀成绩的目的,还能够模拟某一特定运动员的滑行特性和决策习惯。
      关键词:
      中图分类号: TP18 文献标识码:A 文章编号:2095-2163(2011)01-0028-05
      
      0引言
      短道速滑技战术仿真系统为短道速滑运动员提供一个可在计算机上进行比赛对抗的平台,以达到对不同战术的可行性研究以及与国外高水平运动员模拟比赛的目的。
      在该仿真系统中,智能体的任务就是模拟短道速滑运动员在比赛中产生类人决策,并与人为控制的运动员进行对抗,达到使用户体验到与高水平运动员竞技的目标。所以,智能体决策的优劣直接影响到该系统的仿真性,特别是短道速滑运动是一种节奏快、速度高、对决策要求准确的体育项目,更加要求智能体在决策过程中不仅要尽可能地不犯规、不出错,而且要能够体现出决策的个体差异性,即不同的智能体在应对同一种情况时产生的决策是不同的。所以,智能体决策过程首先要保证运动员能够完成比赛;其次,能够实现不同的运动员在比赛过程中有各自的滑行特性和决策习惯。
      对于智能体决策过程的研究思想和方法大致分为四类,如表1所示。其中,符号主义通过一定的逻辑规则,对特定的符号信息进行处理;联结主义试图构造类似于人脑活动机理的网络来模拟智能;演化主义以生物界优胜劣汰的进化过程为参照,通过对编码的类似自然选择的计算来达到智能模拟;行为主义的目标则是能够建造可自主发挥作用、有生命周期的计算实体[1]。
      对于短道速滑仿真系统中的智能体决策,如果采取有限状态机或者决策树等方法计算智能体的决策,由于受到逻辑规则的限制,虽然能够通过制定准确的逻辑规则实现智能体完成比赛的目的,但逻辑规则变更难度大,从而使得:其一,无法达到不同运动员在决策上的差异性的要求;其二,无法改进已有的决策过程或生成新的决策方案。而人工神经网络则不仅可以通过对样本的训练使得智能体能够按照样本的滑行方式完成比赛,还能够通过不同的运动员拥有不同的神经网络权值实现决策的差异性;同时,本系统的训练样本可以通过实际比赛时记录人的操作实现,不仅可以将人的表现建立到智能体中,还能不断改进已有的决策方案或生成新的决策方案。多agent系统中的反应式agent允许agent通过处理当前的瞬时信息获得决策方案,非常符合短道速滑这种速度高、变化快的体育运动中智能体的设计[2-3]。
      因此,本文中智能体的决策过程将行为主义和联结主义两种智能模拟方法相结合,参考多agent系统中的反应式agent设计智能体的决策模型,使用具有学习能力的神经网络实现智能体的决策过程。从而让不同的运动员通过拥有自己的神经网络而体现出差异性,并且在系统的使用中,神经网络还可以通过用户的使用情况而不断优化。
      1人工神经网络概述
      人工神经网络通过模仿生物神经网络系统的行为特征,实现了从样例中学习出一种能够从输入向输出映射的函数。神经网络的本质是通过给定的权值改变规则和训练样本,不断修正系统中神经元之间的连接强度,直到达到所需精度。
      反向传播(BP)算法是训练神经网络权值最常用的方法。该算法利用输出层误差来估计前导层的误差,并修改前导层的权值,然后再用前导层的误差估计更前一层的误差并修改权值,如此下去,就形成了信号从输入层向输出层传播,而误差则沿反方向逐级向输入层传播的过程[4]。但BP算法存在收敛速度慢,易陷入局部极小的缺点。由于训练样本易得,本文采用BP算法来训练神经网络的权值,并引入每一轮训练之前将样本顺序打乱、根据误差改变量的大小调节学习速率、增加动量项等方式以避免BP算法陷于局部极小解[5]。
      2智能体决策过程的设计
      智能体的决策过程就是智能体在一定的输入下,计算出在当前输入下的一个输出,即为决策。
      2.1决策过程模型
      本文的智能体采用反应式agent设计[6],如图1所示。首先,智能体感知周围环境,获得自身状态和周围环境的情况,然后,根据自己已有的知识存储通过一定的计算方法对获得的信息进行分析推理,最后将计算结果作为决策输出。
      作为智能体决策过程的输入,自身状态与周围环境的输入不仅要体现出智能体当前的特性、具有较高的区分度,还要尽可能地简化,使智能体可能处于的状态不至于因为太多而使系统的性能下降。对于短道速滑比赛中的智能体,输入内容主要包括自身状态和前方运动员情况两类信息。其中,自身状态包括当前位置、速度大小、身体朝向、名次、完成圈数、剩余体能;前方运动员情况应包括前方运动员与自己的速度关系、距离关系和位置关系。
      作为智能体决策过程的输出,在本文中为智能体在比赛过程中可能采用的动作,包括直道动作、弯道动作、加减速情况以及向前滑行的方向。
      对于反应式agent系统模型中的知识存储与分析推理,可理解为输入向输出的映射过程,其中,输入为感知周围环境所获得的状态集合,输出为计算得到的动作集合,如图2所示,智能体感知到当前状态为Si,通过分析推理,得到在状态下Si应该选择动作Aj才是最优的决策。
      神经网络的一个强大能力就是封装一个将输入映射到输出的非线性函数,这恰恰符合决策模型中对于知识存储和分析推理的要求。因而,本文决策模型中的感知环境就是神经网络的输入,知识存储就是神经网络的权值,推理过程就是前向的神经网络计算,决策输出就是神经网络的计算结果。
      2.2神经网络的设计
      根据决策模型的设计,将神经网络设计为有监督学习的神经网络。设计思路是:首先,用户模拟某一特定运动员进行滑行,系统记录下滑行过程中用户所控制的运动员的状态和此状态下所采取的决策,此数据即为神经网络的学习样本;然后,系统通过神经网络的训练程序以学习样本为输入得到神经网络的权值;最后,将此训练好的神经网络作为该运动员的专属神经网络,从而达到模拟此特定运动员的滑行特性和决策习惯的目标,如图3所示[7]。
      2.2.1神经网络的组成单元
      在决策过程模型的设计中,神经网络的输入包含多个非线性变化的输入,因此,在文中选择能够接收非线性函数输入且应用广泛的sigmoid单元,如图4所示。系统对输入进行了归一化操作,以适应sigmoid单元的输入要求。
      2.2.2神经网络的输入
      根据智能体的决策过程设计中所述模型,神经网络的输入要包含以下信息:智能体的位置、速度、身体朝向、名次、完成圈数、剩余体能、前方运动员与自己的速度关系、距离大小和位置关系。
      (1)智能体的位置和身体朝向
      对于智能体的位置描述为三元组?邀x, y, z?妖,即智能体在3D空间中的坐标。由于短道速滑所处的冰面为y平面,智能体的位置变化仅仅体现在x坐标和z坐标上,所以把x和z作为神经网络的输入以表示智能体的位置信息。
      身体朝向为单位向量?邀x,y,z?妖。同位置信息一样,向量中的y值始终为0,所以,将x和z作为神经网络的输入。
      (2)速度大小、剩余体能和名次、完成圈数
      速度与剩余体能为智能体的身体状态属性,在比赛过程中随相应的函数呈非线性变化。名次和完成圈数是智能体在比赛中的比赛属性,取值为整数,且以阶跃函数的形式变化。四个属性都以自身的数值作为神经网络的输入。
      (3)前方运动员的情况
      对于智能体前方运动员的情况,主要考虑以下三个因素:与前一名运动员的速度差、相对距离大小以及距离的方向,其中表示距离方向需要x和z两个参数。
      所以,神经网络的输入向量包括12个元素,分别为:位置的x坐标和z坐标、速度大小、身体朝向向量中的x和z、剩余体能、完成圈数、与前一名运动员的速度差、与前一名运动员的距离大小、与前一名运动员的距离向量中的x和z,如图5中输入层所示。
      2.2.3神经网络的隐藏层
      由于具有单隐藏层的前馈网络可以映射所有的连续函数,而当需要学习不连续函数时,具有两层隐藏层的神经网络则更合适。本系统的神经网络输入不仅包含连续的输入(如位置、速度等),还包含不连续的输入(如名次、完成圈数等),所以,将神经网络的隐藏层设计成两层。
      根据第一层隐藏层的节点个数为输入层节点个数的两倍,第二层的节点个数小于第一层的节点个数且不能整除第一层节点数的设计习惯,将第一层隐藏层的节点个数设为24个,将第二层隐藏层的节点个数设为11个,如图5所示。
      2.2.4神经网络的输出
      智能体的输出即为智能体所能采取的动作集合中的一项。在短道速滑仿真系统中,智能体所能采取的动作主要包括直道与弯道动作、保持速度、加速、减速、沿原方向前进、左转、右转。
      根据智能体所能采取的动作集合,将神经网络的输出向量定义为:是否采取转弯动作、是否加速、是否减速、是否左转、是否右转,如图5中输出层所示。
      2.3反向传播(BP)算法的应用
      BP算法的样本来自于比赛过程中实时获得的人控运动员的状态和对应的输入,然后对输入样本进行迭代计算,便可以得到用于智能体计算决策的神经网络权值。将此权值应用于智能体计算决策的过程中,将当前的瞬时状态作为输入,同时采用BP算法中前向计算的方法计算神经网络的输出,便可以得到当前状态的决策。
      3实验及结果分析
      根据对短道速滑中智能体决策过程的设计,在所设计的短道速滑技战术仿真系统上进行了实验。首先,通过平台采集训练样本,通过BP算法训练神经网络的权值。然后,将训练后得到的神经网络权值应用于智能体的决策过程中,实现通过神经网络控制的智能体。实验结果主要考察三个方面,一是基本智能性,二是高级智能性,三是决策差异性。
      3.1神经网络训练样本的采集
      为了样本采集更接近于实际情况,首先开发了一个决策树算法,用来实现基本的智能体控制。在样本采集过程(比赛对抗)中,与人为控制的运动员进行比赛。同时,系统以帧为单位,采集人为控制的运动员每帧所处的状态以及对应的输入作为样本中的一项。
      在本次实验中,以500米比赛为例,制作了激进和保守两种不同滑行策略的智能体,每个智能体运动员的样本采集均通过作者手动控制的形式与决策树算法驱动的智能体进行比赛来实现。采集激进滑行策略的运动员样本时,作者控制的运动员总是想争夺第一的位置,只要前方有人,就想方设法超越。采集保守滑行策略的运动员样本时,作者控制的运动员一直处于跟随滑行的状态,仅仅在比赛还有最后一圈时,才采取加速超越的策略,分布情况如表2所示。
      3.2基本智能性
      基本智能性主要考察智能体的路线选择能力,包括向目标点滑行,直道弯道动作的切换时机、躲避前方运动员。在实验中,将评价路线选择好坏的标准定为整个滑行过程中的出界次数和碰撞次数。
      考察基本智能性的方式是人控运动员、决策树算法控制的智能体、神经网络中激进策略控制的智能体和保守策略控制的智能体同时进行500米比赛,最终通过比赛后的犯规统计,判断不同算法在基本智能性上的优劣,如表3所示。其中,实验结果来自于50场500米比赛的赛后犯规情况(出界次数和碰撞次数)统计的总和。
      由表3可知,在基本智能性上,由于决策树的决策过程取决于其逻辑规则的定制,而在短道速滑比赛中,逻辑规则的定义相对较简单且完备,从实验结果上可以看出,决策树在基本智能性上的表现甚至好于人工控制的运动员,其中的4次出界,也是由于比赛中其他运动员对其的碰撞导致的。人工神经网络的实验结果相比于决策树略差,特别是在出界方面。一个主要原因是神经网络控制的运动员在进弯道之前刚刚完成超越或还在超越中,导致转弯时情况复杂,转弯算法难以控制,出现出界情况。但总的来说,保守策略的神经网络的犯规统计与人为控制比较接近,符合智能体尽量不犯规的目标,激进策略的智能体由于经常采取超越动作,滑行路线不够稳定,导致出界次数较多,需要改进。
      3.3高级智能性
      高级智能性是指智能体在能保证不犯规(不出界、 不撞人)的情况下,可以根据自身的体能状况,合理地选择滑行策略,从而达到体能利用最优,比赛成绩最好的目标。所以,高级智能性的评价标准包括比赛结束时的剩余体能情况和比赛成绩。测试高级智能型的实验和测试基本智能性的实验为一组实验,且四个运动员在比赛中的身体素质属性一致,实验结果如表4所示。
      从表4中可以看出,决策树控制的智能体剩余体能较多、成绩较差,这主要是因为在决策树的规则中,设定的智能体的巡航速度恰好为滑完全程剩余体能为10%的速度,即使由于超越和领滑时会多消耗体能而使最终的剩余体能略低于10%。这也恰恰体现了决策树算法在控制智能体上由于本身逻辑规则的限制而不灵活的缺点。相反,从实验结果中可以看出,神经网络在灵活性上要远远好于决策树算法,比赛结束时的剩余体能较少、成绩也较好。这主要取决于在获得神经网络的训练样本时,就按照规定的滑行策略,以将体能恰好用完为滑行目标来进行比赛,导致训练好的神经网络在控制智能体时,会综合考虑位置、体能、完成圈数和前方运动员的情况做出一个与训练样本中类似的决策。
      3.4决策差异性
      决策差异性就是不同的智能体运动员在比赛中会采用各自的滑行特性和决策习惯,在对于基本智能性和高级智能性的实验中,已经能看出一些智能体运动员的决策差异性。在本节中,采用在比赛中每一圈结束时各个运动员的名次来考察在应用神经网络作为决策过程的智能体在决策上的差异如图6和图7所示。其中,图6中为一场人工控制运动员采用稍微保守的滑行策略滑行的典型比赛,图7为一场人工控制的运动员采用稍微激进的滑行策略滑行的典型比赛。从图中可以看出,采用激进战术的运动员的名次变化较为明显,这是因为该运动员一直试图超越前方运动员;采用保守滑行策略的运动员在前期的名次变化不明显,在比赛后期较为明显,这是因为比赛前期,该运动员以跟滑为主,后期才开始发力超越。其次,可以从图中总结出,如果人工控制运动员采用保守战术,则在体能较好的情况下,采用激进战术的智能体较为占优势,因为该智能体可以在取得领先位置后,凭借体能优势保持住自己的领先优势。另一方面,如果人工控制运动员采用激进战术,则采用保守策略的智能体更可能赢得比赛,这是因为在前期的比赛中,激进智能体和人工控制运动员为争夺领先而耗费了大量体力,使得在比赛后期,保守运动员可以凭借体能优势超越前方运动员率先到达终点。
      4结束语
      实验结果表明,在基本智能性上,人工神经网络表现稍差,出界次数较多,主要原因是造成出界的状态在训练样本中较少出现,以至于学习过程中无法提供给智能体足够的先验知识。这个缺点可以通过在场地弯道的边界处设计一面不可见的墙阻挡运动员出界,并同时带来减速效果来弥补。其次,在高级智能性和决策差异性上,人工神经网络控制的智能体符合预期,不仅达到了在体能限制的情况下争取最好成绩的目标,还使不同的智能体具有各自的滑行特性和决策习惯。本文所述方法已经运用于短道速滑技战术仿真系统的智能体决策过程中。
      参考文献:
      [1] 梁义芝,刘云飞. 智能模拟及其实现[C]//2000中国控制与决策 学术年会论文集,2000:334-337.
      [2] LESSER V R. Reflections on the Nature of Multi-Agent Co- ordination and Its Implications for an Agent Architecture[J]. A- utonomous Agents and Multi - Agent Systems, 1998,1.
      [3] 饶东宁,蒋志华,姜云飞. 多agent规划综述[J]. 计算机应用研 究,2011,28(3):801-804.
      [4] 戚德虎,康继昌. BP神经网络的设计[J]. 计算机工程与设计, 1998,19(2):48-50.
      [5] 张芳芳,贺娟,李明军. 基于导数优化的BP学习算法的研究综 述[J]. 计算机应用研究,2009,26(3):809-813.
      [6] COLLINS P. Technology for teams: the use of agent technolo- gy for self-organisation[J]. AI & SOCIETY, 2004,18.
      [7] 布伟光,何中市,高静. 无监督神经网络在游戏中的应用研究 -解决游戏中的障碍物绕行问题[J].计算机工程与应用,2008,44(16):90-93.

    推荐访问:速滑 神经网络 过程中 BP神经网络在短道速滑智能体决策过程中的应用 bp神经网络算法 bp神经网络原理

    • 文档大全
    • 故事大全
    • 优美句子
    • 范文
    • 美文
    • 散文
    • 小说文章