CN111282279B - 模型训练的方法、基于交互式应用的对象控制方法及装置 - Google Patents
模型训练的方法、基于交互式应用的对象控制方法及装置 Download PDFInfo
- Publication number
- CN111282279B CN111282279B CN202010080662.XA CN202010080662A CN111282279B CN 111282279 B CN111282279 B CN 111282279B CN 202010080662 A CN202010080662 A CN 202010080662A CN 111282279 B CN111282279 B CN 111282279B
- Authority
- CN
- China
- Prior art keywords
- information
- network model
- action
- state information
- engagement
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 108
- 230000002452 interceptive effect Effects 0.000 title claims abstract description 81
- 238000012549 training Methods 0.000 title claims abstract description 79
- 230000009471 action Effects 0.000 claims abstract description 250
- 239000013598 vector Substances 0.000 claims description 159
- 230000003993 interaction Effects 0.000 claims description 78
- 230000006870 function Effects 0.000 claims description 30
- 238000013473 artificial intelligence Methods 0.000 abstract description 15
- 210000005155 neural progenitor cell Anatomy 0.000 description 38
- 238000010586 diagram Methods 0.000 description 30
- 239000003795 chemical substances by application Substances 0.000 description 19
- 230000008569 process Effects 0.000 description 15
- 239000008280 blood Substances 0.000 description 14
- 210000004369 blood Anatomy 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 14
- 238000013461 design Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 8
- 101001124388 Homo sapiens NPC intracellular cholesterol transporter 1 Proteins 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 7
- 238000010801 machine learning Methods 0.000 description 7
- 230000002829 reductive effect Effects 0.000 description 6
- 230000002787 reinforcement Effects 0.000 description 6
- 230000007704 transition Effects 0.000 description 6
- 241000282414 Homo sapiens Species 0.000 description 5
- 101001109579 Homo sapiens NPC intracellular cholesterol transporter 2 Proteins 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000003066 decision tree Methods 0.000 description 3
- 230000007123 defense Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 208000018883 loss of balance Diseases 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000007115 recruitment Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 101100405018 Arabidopsis thaliana NPC3 gene Proteins 0.000 description 1
- 101100187364 Arabidopsis thaliana NPC4 gene Proteins 0.000 description 1
- 101100187365 Arabidopsis thaliana NPC5 gene Proteins 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000002730 additional effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 229940079593 drug Drugs 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000010079 rubber tapping Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 208000015041 syndromic microphthalmia 10 Diseases 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
- A63F13/67—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor adaptively or by learning from player actions, e.g. skill level adjustment or by storing successful combat sequences for re-use
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/80—Special adaptations for executing a specific game genre or game mode
- A63F13/822—Strategy games; Role-playing games
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
- A63F2300/6027—Methods for processing data by generating or executing the game program using adaptive systems learning from user actions, e.g. for skill level adjustment
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/80—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
- A63F2300/807—Role playing or strategy games
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Information Transfer Between Computers (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请公开了一种应用于人工智能领域的模型训练方法,包括:获取第一对象所对应的第一状态信息以及第二对象所对应的第二状态信息;基于第一状态信息,通过第一待训练交战网络模型获取第一动作信息;基于第二状态信息,通过第二待训练交战网络模型获取第二动作信息;基于第一状态信息、第二状态信息、第一动作信息以及第二动作信息,通过判别网络模型获取价值期望;根据价值期望对第一待训练交战网络模型的模型参数进行更新,得到第一交战网络模型。本申请还公开了一种基于交互式应用的对象控制方法及装置。本申请能够实现多个非玩家角色之间的协作与配合,减小非玩家角色与真实玩家的操作差异,提升非玩家角色与真实玩家的对战水平。
Description
技术领域
本申请涉及人工智能领域,尤其涉及模型训练的方法、基于交互式应用的对象控制方法及装置。
背景技术
回合制战斗是游戏中的一种战斗模式,即属于同一方的多个战斗角色通过轮流发动技能,且战斗双方采用轮流攻击的对战方式。如果其中一方的当前战斗角色战亡,则轮到该战亡方的另一战斗角色进行下一轮对战,以此类推,直到其中一方的所有战斗角色均战亡,才会结束回合制战斗。
目前,在回合制战斗中一方为真实玩家,而另一方可以非玩家角色(Non-PlayerCharacter,NPC)。NPC主要通过建立决策树的方式来发动攻击,其中,决策树可以通过对相关特征的选取来建立树结构,每个父节点下的子节点表示该节点所有的行为策略。
然而,对于建立决策树的方式而言,由于局限于样本数据量较小,NPC能够产生的动作策略比较单一,往往缺乏协作和配合,因此,NPC与真实玩家的操作差异较大,难以在对战的过程中提升NPC与真实玩家的对战水平。
发明内容
本申请实施例提供了一种模型训练的方法、基于交互式应用的对象控制方法及装置,能够实现多个NPC之间的协作与配合,减小NPC与真实玩家的操作差异,提升NPC与真实玩家的对战水平。
有鉴于此,本申请第一方面提供一种模型训练的方法,包括:
获取第一对象所对应的第一状态信息以及第二对象所对应的第二状态信息,其中,第一状态信息与第二状态信息属于第一交互回合所对应的状态信息;
基于第一状态信息,通过第一待训练交战网络模型获取第一动作信息;
基于第二状态信息,通过第二待训练交战网络模型获取第二动作信息;
基于第一状态信息、第二状态信息、第一动作信息以及第二动作信息,通过判别网络模型获取价值期望,其中,判别网络模型与第一待训练交战网络模型具有一一对应的关系;
根据价值期望对第一待训练交战网络模型的模型参数进行更新,得到第一交战网络模型。
本申请第二方面提供一种基于交互式应用的对象控制方法,包括:
获取第一对象所在目标交互回合所对应的目标状态信息;
根据第一对象获取第一交战网络模型,其中,第一交战网络模型为上述权利要求1至10中任一项的第一交战网络模型;
基于目标状态信息,通过第一交战网络模型获取目标动作信息;
根据目标动作信息确定第一索引值以及第二索引值,其中,第一索引值用于指示被攻击对象,第二索引值用于指示交互操作类型;
根据第一索引值以及第二索引值,控制第一对象向被攻击对象发起交互操作类型所对应的交互操作。
本申请第三方面提供一种模型训练装置,包括:
获取模块,用于获取第一对象所对应的第一状态信息以及第二对象所对应的第二状态信息,其中,第一状态信息与第二状态信息属于第一交互回合所对应的状态信息;
获取模块,还用于基于第一状态信息,通过第一待训练交战网络模型获取第一动作信息;
获取模块,还用于基于第二状态信息,通过第二待训练交战网络模型获取第二动作信息;
获取模块,还用于基于第一状态信息、第二状态信息、第一动作信息以及第二动作信息,通过判别网络模型获取价值期望,其中,判别网络模型与第一待训练交战网络模型具有一一对应的关系;
训练模块,用于根据获取模块获取的价值期望对第一待训练交战网络模型的模型参数进行更新,得到第一交战网络模型。
在一种可能的设计中,在本申请实施例的第三方面的第一种实现方式中,
获取模块,具体用于获取第一对象所对应的第一属性信息、第一余量信息、第一职业信息、第一排列信息、回合次数信息以及第一操作信息中的至少一种,其中,第一余量信息为第一对象在第一交互回合下所对应的余量信息;
根据第一属性信息、第一余量信息、第一职业信息、第一排列信息、回合次数信息以及第一操作信息中的至少一种,生成第一状态信息,其中,第一状态信息包括P个特征维度,P为大于或等于1的整数;
获取第二对象所对应的第二属性信息、第二余量信息、第二职业信息、第二排列信息、回合次数信息以及第二操作信息中的至少一种,其中,第二余量信息为第二对象在第一交互回合下所对应的余量信息;
根据第二属性信息、第二余量信息、第二职业信息、第二排列信息、回合次数信息以及第二操作信息中的至少一种,生成第二状态信息,其中,第二状态信息包括P个特征维度。
在一种可能的设计中,在本申请实施例的第三方面的第二种实现方式中,
获取模块,具体用于基于第一状态信息,通过第一待训练交战网络模型所包括的全连接层,获取第一状态特征向量;
基于第一状态特征向量,通过第一待训练交战网络模型所包括的动作输出层,获取N个第一动作输出向量,其中,N为大于或等于1的整数;
基于N个第一动作输出向量,通过第一待训练交战网络模型所包括的操作输出层,获取第一策略信息,其中,第一策略信息包括(a×N)个第一元素,a为大于或等于1的整数;
从第一策略信息中确定第一目标元素所对应的第一动作信息,其中,第一目标元素为(a×N)个第一元素中的最大值。
在一种可能的设计中,在本申请实施例的第三方面的第三种实现方式中,
获取模块,具体用于基于第一状态特征向量,通过第一待训练交战网络模型所包括的动作输出层,获取N个第一动作特征向量;
根据N个第一动作特征向量以及N个操作掩模向量,获取N个第一动作输出向量,其中,第一动作特征向量与操作掩模向量具有一一对应的关系,操作掩模向量为根据第一交互回合下的可用操作生成的。
在一种可能的设计中,在本申请实施例的第三方面的第四种实现方式中,
获取模块,具体用于基于第二状态信息,通过第二待训练交战网络模型所包括的全连接层,获取第二状态特征向量;
基于第二状态特征向量,通过第二待训练交战网络模型所包括的动作输出层,获取N个第二动作输出向量,其中,N为大于或等于1的整数;
基于N个第二动作输出向量,通过第二待训练交战网络模型所包括的操作输出层,获取第二策略信息,其中,第二策略信息包括(a×N)个第二元素,a为大于或等于1的整数;
从第二策略信息中确定第二目标元素所对应的第二动作信息,其中,第二目标元素为(a×N)个第二元素中的最大值。
在一种可能的设计中,在本申请实施例的第三方面的第五种实现方式中,
获取模块,具体用于基于第二状态特征向量,通过第二待训练交战网络模型所包括的动作输出层,获取N个第二动作特征向量;
根据N个第二动作特征向量以及N个操作掩模向量,获取N个第二动作输出向量,其中,第二动作特征向量与操作掩模向量具有一一对应的关系,操作掩模向量为根据第一交互回合下的可用操作生成的。
在一种可能的设计中,在本申请实施例的第三方面的第六种实现方式中,
获取模块,具体用于对第一状态信息以及第二状态信息进行拼接处理,得到全局状态信息;
对第一动作信息以及第二动作信息进行拼接处理,得到全局动作信息;
基于全局状态信息以及全局动作信息,通过判别网络模型所包括的全连接层,获取价值期望。
在一种可能的设计中,在本申请实施例的第三方面的第七种实现方式中,
获取模块,还用于根据价值期望对第一待训练交战网络模型的模型参数进行更新,得到第一交战网络模型之后,获取第一对象所对应的第三状态信息以及第二对象所对应的第四状态信息,其中,第三状态信息与第四状态信息属于第二交互回合所对应的状态信息;
获取模块,还用于基于第三状态信息,通过第一交战网络模型获取第三动作信息;
获取模块,还用于基于第四状态信息,通过第二交战网络模型获取第四动作信息,其中,第二交战网络模型为对第二待训练交战网络模型的模型参数进行更新后得到的;
获取模块,还用于获取第二交战回合所对应的目标奖励值;
训练模块,还用于根据目标奖励值、第三动作信息以及第四动作信息,采用损失函数对判别网络模型的模型参数进行更新,得到更新后的判别网络模型,其中,更新后的判别网络模型用于对第一交战网络模型的模型参数进行更新,得到更新后的第一交战网络模型。
在一种可能的设计中,在本申请实施例的第三方面的第八种实现方式中,
获取模块,具体用于获取第二交战回合所对应的第一奖励值,其中,第一奖励值用于表示第一队伍的余量损失与第二队伍的余量损失之间的关系,第一队伍包括第一对象以及第二对象;
获取第二交战回合所对应第二奖励值,其中,第二奖励值用于表示第一队伍的对象损失与第二队伍中的对象损失之间的关系;
获取第二交战回合所对应第三奖励值,其中,第三奖励值用于表示第一队伍与第二队伍之间的交互结果;
获取第二交战回合所对应第四奖励值,其中,第四奖励值用于表示回合次数信息与总回合次数信息之间的关系;
根据第二交战回合所对应的第一奖励值、第二交战回合所对应的第二奖励值、第二交战回合所对应的第三奖励值以及第二交战回合所对应的第四奖励值,确定第二交战回合所对应的目标奖励值。
在一种可能的设计中,在本申请实施例的第三方面的第九种实现方式中,
训练模块,具体用于获取第一策略信息,其中,第一策略信息为第一待训练交战网络模型基于第一状态信息输出的信息,第一策略信息包括(a×N)个第一元素,N为大于或等于1的整数,a为大于或等于1的整数;
根据第一策略信息以及价值期望,对第一待训练交战网络模型的模型参数进行更新,得到第一交战网络模型。
本申请第四方面提供一种对象控制装置,包括:
获取模块,用于获取第一对象所在目标交互回合所对应的目标状态信息;
获取模块,还用于根据第一对象获取第一交战网络模型,其中,第一交战网络模型为上述各个方面中涉及的第一交战网络模型;
获取模块,还用于基于目标状态信息,通过第一交战网络模型获取目标动作信息;
确定模块,用于根据获取模块获取的目标动作信息确定第一索引值以及第二索引值,其中,第一索引值用于指示被攻击对象,第二索引值用于指示交互操作类型;
控制模块,用于根据第一索引值以及第二索引值,控制第一对象向被攻击对象发起交互操作类型所对应的交互操作。
本申请第五方面提供一种计算机设备,包括:存储器、收发器、处理器以及总线系统;
其中,存储器用于存储程序;
处理器用于执行存储器中的程序,包括执行如上述各方面的方法;
总线系统用于连接存储器以及处理器,以使存储器以及处理器进行通信。
本申请的第六方面提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面的方法。
从以上技术方案可以看出,本申请实施例具有以下优点:
本申请实施例中,提供了一种模型训练的方法,首先可以获取第一对象所对应的第一状态信息以及第二对象所对应的第二状态信息,然后基于第一状态信息,通过第一待训练交战网络模型获取第一动作信息,并且基于第二状态信息,通过第二待训练交战网络模型获取第二动作信息,再基于第一状态信息、第二状态信息、第一动作信息以及第二动作信息,通过判别网络模型获取价值期望,最后根据价值期望对第一待训练交战网络模型的模型参数进行更新,得到第一交战网络模型。通过上述方式,为每个NPC训练一个对应的交战网络模型来预测动作策略,并且判别网络模型是基于全局状态信息和全局动作信息来训练对应的交战网络模型,因此,每个NPC在采用对应的交战网络模型进行预测时,能够充分考虑到其他交战网络模型的预测结果,从而实现多个NPC之间的协作与配合,减小NPC与真实玩家的操作差异,提升NPC与真实玩家的对战水平。
附图说明
图1为本申请实施例中对象控制系统的一个环境示意图;
图2为本申请实施例中基于回合制战斗的一个交互式应用界面示意图;
图3为本申请实施例中模型训练方法的一个实施例示意图;
图4为本申请实施例中基于多个NPC进行模型训练的一个网络架构示意图;
图5为本申请实施例中基于多个NPC进行模型训练的一个通用网络架构示意图;
图6为本申请实施例中基于阵法类型生成排列信息的一个实施例示意图;
图7为本申请实施例中交战网络模型的一个结构示意图;
图8为本申请实施例中生成动作输出向量的一个实施例示意图;
图9为本申请实施例中判别网络模型的一个结构示意图;
图10为本申请实施例中基于多轮交互回合生成样本集合的一个实施例示意图;
图11为本申请实施例中基于交互式应用的对象控制方法的一个实施例示意图;
图12为本申请实施例中基于第一索引值确定被攻击对象的一个实施例示意图;
图13为本申请实施例中基于第二索引值确定交互操作类型的一个实施例示意图;
图14为本申请实施例中第一对象发起交互操作的一个界面示意图;
图15为本申请实施例中模型训练装置的一个实施例示意图;
图16为本申请实施例中对象控制装置的一个实施例示意图;
图17为本申请实施例中服务器的一个结构示意图;
图18为本申请实施例中终端设备的一个结构示意图。
具体实施方式
本申请实施例提供了一种模型训练的方法、基于交互式应用的对象控制方法及装置,能够实现多个NPC之间的协作与配合,减小NPC与真实玩家的操作差异,提升NPC与真实玩家的对战水平。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“对应于”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应理解,本申请提供的对象控制方法可以应用于交互式应用,该交互式应用的类型包含但不仅限于回合制大型多人在线角色扮演游戏(Massive Multiplayer OnlineRole-Playing Game,MMORPG)、多人在线战术竞技游戏(Multiplayer Online BattleArena,MOBA)以及即时战略游戏(Real-Time Strategy Game,RTS)。以应用于MMORPG为例,在MMORPG中真实玩家可以扮演虚拟角色,并控制虚拟角色与NPC对战,真实玩家控制的虚拟角色与NPC的数量均可以为一个或多个,NPC可以理解为是人工智能(ArtificialIntelligence,AI)机器人,通过机器学习的方法为每个NPC训练一个对应的交战网络模型,其中,该交战网络模型也可以定义为动作(actor)网络模型。
人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
为了便于理解,本申请提出了一种对象控制的方法,该方法应用于图1所示的对象控制系统,请参阅图1,图1为本申请实施例中对象控制系统的一个环境示意图,如图所示,对象控制系统分为服务器和客户端两个部分,真实玩家从客户端通过互联网与服务器建立通信连接,登陆服务器端后才能进行游戏。在游戏的过程中,真实玩家扮演的虚拟角色和其他真实玩家控制的虚拟角色进行实时互动,而NPC则是游戏中提供的虚拟人物。在本申请提供的技术方案中,可以通过多个智能体(multi-agent)强化学习的方式为对战中的每个NPC训练一个交战网络模型,每个NPC分别通过自身对应的交战网络模型预测出招技能和攻击目标,从而提升NPC与真实玩家的对战水平。multi-agent强化学习的优势在于可以通过减少模型输入状态(state)信息和输出动作(action)信息的维度,由此降低模型计算复杂。
将每个NPC作为一个智能体(agent),采用中心化训练,非中心化预测的方法针对每一个不同的智能体进行策略学习和优化,可以理解的是,中心化训练表示采用各个NPC全局数据训练交战网络模型,非中心化预测表示每个NPC都有自己对应的交战网络模型,从而为该NPC在不同回合和状态下,更加高效且精准地预测出招技能和攻击目标。
需要说明的是,客户端部署于终端设备上,其中,终端设备包含但不仅限于平板电脑、笔记本电脑、掌上电脑、手机、语音交互设备及个人电脑(personal computer,PC),此处不做限定。
下面将结合产品界面对本申请提供的对象控制方法进行介绍,请参阅图2,图2为本身实施例中基于回合制战斗的一个交互式应用界面示意图,如图所示,回合制角色扮演游戏中对战方式主要是多个玩家与多个NPC进行对战,以5V5的对战环境为例,即玩家1、玩家2、玩家3、玩家4和玩家5均为真实玩家控制的虚拟角色,NPC1、NPC2、NPC3、NPC4和NPC5均为AI机器人,假设在第2个交互回合开始之前,先将NPC1的状态信息输入至训练好的交战网络模型中,由该交战网络模型输出NPC1的出招技能(如A技能)和攻击目标(如玩家4),于是在第2个交互回合下,NPC1向玩家4发动A技能。
由于在实际回合制对战中不同NPC的出招和攻击目标的选取往往需要协同和配合,因此,本申请可以使每一个交战网络模型在进行策略学习时可以达到全局协同的效果,这样不同NPC会更加的合理和协作。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
结合上述介绍,本申请实施例提供的方案涉及人工智能的机器学习等技术,具体通过如下实施例进行说明,请参阅图3,本申请实施例中模型训练的方法一个实施例包括:
101、获取第一对象所对应的第一状态信息以及第二对象所对应的第二状态信息,其中,第一状态信息与第二状态信息属于第一交互回合所对应的状态信息;
本实施例中,模型训练装置获取第一对象的第一状态信息以及第二对象的第二状态信息,其中,第一对象和第二对象均为NPC,且第一对象与第二对象可以来自于同一个队伍,在训练的过程中,第一对象和第二对象分别属于不同的智能体,第一状态信息表示第一对象在第一交互回合下的状态信息,第二状态信息表示第二对象在第一交互回合下的状态信息。在回合制游戏中,NPC或者真实玩家只有在轮到自己的回合才能进行交互操作,因此,第一交互回合表示轮到NPC进行操作的回合。
可以理解的是,模型训练装置可以部署于服务器,或者部署于计算能力较高的终端设备,本申请不做限定。
102、基于第一状态信息,通过第一待训练交战网络模型获取第一动作信息;
本实施例中,模型训练装置将第一对象的第一状态信息输入至第一待训练交战网络模型,由该第一待训练交战网络模型输出第一动作信息。为了便于理解,请参阅图4,图4为本申请实施例中基于多个NPC进行模型训练的一个网络架构示意图,如图所示,将第一状态信息作为第一待训练交战网络模型的输入,由此输出第一动作信息。
103、基于第二状态信息,通过第二待训练交战网络模型获取第二动作信息;
本实施例中,模型训练装置将第二对象的第二状态信息输入至第二待训练交战网络模型,由该第二待训练交战网络模型输出第二动作信息。为了便于理解,请继续参阅图4,类似地,将第二状态信息作为第二待训练交战网络模型的输入,由此输出第二动作信息。
104、基于第一状态信息、第二状态信息、第一动作信息以及第二动作信息,通过判别网络模型获取价值期望,其中,判别网络模型与第一待训练交战网络模型具有一一对应的关系;
本实施例中,模型训练装置将第一状态信息、第二状态信息、第一动作信息以及第二动作信息均输入至判别(Critic)网络模型,由该判别网络模型输出价值期望,其中,判别网络模型与第一待训练交战网络模型具有一一对应的关系,该价值期望表示将来期望得到的奖励,根据价值期望来评估当前动作信息的好坏,从而帮助待训练交战网络模型决策哪些出招技能在训练过程中应该被强化来更新自己的策略。
为了便于理解,请继续参阅图4,将第一状态信息、第二状态信息、第一动作信息和第二动作信息均作为判别网络模型的输入,由该判别网络模型输出相应的价值期望。类似地,将第一状态信息、第二状态信息、第一动作信息和第二动作信息均作为第二判别网络模型的输入,由该第二判别网络模型输出相应的价值期望。
105、根据价值期望对第一待训练交战网络模型的模型参数进行更新,得到第一交战网络模型。
本实施例中,模型训练装置根据价值期望,对第一待训练交战网络模型的模型参数进行更新,得到第一交战网络模型。为了便于理解,请继续参阅图4,由判别网络模型输出的价值期望对第一待训练交战网络模型进行更新,类似地,由第二判别网络模型输出的价值期望对第二待训练交战网络模型进行更新。经过多次迭代后,即可得到第一交战网络模型和第二交战网络模型,在对战的过程中,第一对象采用第一交战网络模型预测攻击目标和发动技能,第二对象采用第二交战网络模型预测攻击目标和发动技能。
需要说明的是,本申请是以两个对象为例进行介绍,在实际应用中,还可以对N个对象进行模型训练,为了便于说明,请参阅图5,图5为本申请实施例中基于多个NPC进行模型训练的一个通用网络架构示意图,如图所示,基于多智能体深度确定性策略梯度(Multi-Agent Deep Deterministic Policy Gradient,MADDPG)算法在多智能体环境中,采用中心化训练和去中心化预测的策略,让智能体之间可以学习彼此合作和竞争。以多人回合制对战方式为例,通用网络架构由N个交战网络模型以及N个判别网络模型组成,与真实玩家对战的每个NPC作为一个独立的智能体,都会训练一个与之对应的交战网络模型和判别网络模型。其中,交战网络模型的输入为当前交互回合所对应的状态信息,交战网络模型的输出为当前交互回合所对应的动作信息,该动作信息包括NPC出招技能的索引和攻击目标的索引。将交战网络模型的状态信息和动作信息合并在一起作为判别网络模型的输入,判别网络模型会设法预测一个在当前观测状态下动作的价值,即得到价值期望。
每个判别网络模型不仅会接收与之对应交战网络模型观测的状态信息Si和动作信息ai,同时还会获取到其他交战网络模型的状态信息Sj和动作信息aj,通过这样的训练方法,每个判别网络模型可以在每个对战回合中获取到全局状态信息Sall=(S1,S2,...,SN)以及全局动作信息Aall=(a1,a2,...,aN)。
中心化训练策略在训练过程中,虽然交战网络模型不能获取全部NPC的状态信息,也不了解其他交战网络模型的动作信息,但是每个交战网络模型都有一个类似全局视角的判别网络模型,判别网络模型可以观测到每个交互回合的全局状态信息和全局动作信息来指导对应交战网络模型的优化策略,这样使得不同交战网络模型在策略学习时可以达到全局协同的效果。
本申请实施例中,提供了一种模型训练的方法,通过上述方式,为每个NPC训练一个对应的交战网络模型来预测动作策略,并且判别网络模型是基于全局状态信息和全局动作信息来训练对应的交战网络模型,因此,每个NPC在采用对应的交战网络模型进行预测时,能够充分考虑到其他交战网络模型的预测结果,从而实现多个NPC之间的协作与配合,减小NPC与真实玩家的操作差异,提升NPC与真实玩家的对战水平。
可选地,在上述图3对应的实施例的基础上,本申请实施例提供的模型训练的方法一个可选实施例中,获取第一对象所对应的第一状态信息以及第二对象所对应的第二状态信息,可以包括:
获取第一对象所对应的第一属性信息、第一余量信息、第一职业信息、第一排列信息、回合次数信息以及第一操作信息中的至少一种,其中,第一余量信息为第一对象在第一交互回合下所对应的余量信息;
根据第一属性信息、第一余量信息、第一职业信息、第一排列信息、回合次数信息以及第一操作信息中的至少一种,生成第一状态信息,其中,第一状态信息包括P个特征维度,P为大于或等于1的整数;
获取第二对象所对应的第二属性信息、第二余量信息、第二职业信息、第二排列信息、回合次数信息以及第二操作信息中的至少一种,其中,第二余量信息为第二对象在第一交互回合下所对应的余量信息;
根据第二属性信息、第二余量信息、第二职业信息、第二排列信息、回合次数信息以及第二操作信息中的至少一种,生成第二状态信息,其中,第二状态信息包括P个特征维度。
本实施例中,介绍了一种获取第一状态信息和第二状态信息的方法,即模型训练装置需要分别获取第一状态信息和第二状态信息。具体地,假设NPC的数量和真实玩家的数据均为N个,基于每个NPC可以得到P个特征维度的状态信息。以基于MMORPG场景获取第一状态信息为例进行说明,假设第一状态信息为40个维度的特征,即P可以等于40,这里的第一状态信息可以包括第一属性信息、第一余量信息、第一职业信息、第一排列信息、回合次数信息以及第一操作信息中的至少一种,下面将分别介绍每个类型的信息。
第一属性信息表示第一对象的基本属性,基本属性可以包括10个维度的特征,具体包括第一对象的初始血量、第一对象的物理攻击力、第一对象的法术攻击力、第一对象的初始魔法值、第一对象的治疗量、第一对象的物理防御值、第一对象的法术防御值、第一对象的移动速度、第一对象的封印命中率及第一对象的封印防御值。
第一余量信息表示在第一交互回合下第一对象的余量属性,余量属性可以包括2个维度的特征,具体包括第一对象在第一交互回合的血量值以及魔量值。
第一职业信息表示第一对象的职业属性,职业属性可以包括10个维度的特征,且采用独热编码(one-hot)表示,具体包括力量型职业、速度型职业、治愈型职业、换装型职业、文字型职业、声波型职业、药剂型职业、雪舞型职业、守护型职业以及灵蝶型职业。
第一排列信息表示第一对象所在队伍采用的阵法类型,阵法类型可以包括9个维度的特征,且采用one-hot表示,为了便于理解,请参阅图6,图6为本申请实施例中基于阵法类型生成排列信息的一个实施例示意图,如图所示,图6(a)所示的为“W”型阵法,即对应于排列信息1,图6(b)所示的阵法对应于排列信息2,图6(c)所示的阵法对应于排列信息3,图6(d)所示的阵法对应于排列信息4,图6(e)所示的阵法对应于排列信息5,图6(f)所示的阵法对应于排列信息6,图6(g)所示的阵法对应于排列信息7,图6(h)所示的阵法对应于排列信息8,图6(i)所示的阵法对应于排列信息9。
回合次数信息表示当前对战的轮数,当前对战的轮数可以包括1个维度的特征。
第一操作信息表示当前可用的技能,当前可用的技能可以包括8个维度的特征。
需要说明的是,第二属性信息与第一属性信息类似,第二余量信息与第一余量信息类似,第二职业信息与第一职业信息类似,第二排列信息与第一排列信息类似,且第二操作信息与第一操作信息类似,不同之处在于对应的对象不同,而第二状态信息的生成方式与第一状态信息的生成方式也类似,故此处不做赘述。
其次,本申请实施例中,提供了一种获取第一状态信息和第二状态信息的方法,通过上述方式,能够适用于MMORPG场景中的角色状态,从不同特征维度上对角色的状态信息进行更为全面的表达,由此增加状态信息的信息量,从而提升训练的可靠性,进而增加模型预测的准确度。
可选地,在上述图3对应的实施例的基础上,本申请实施例提供的模型训练的方法一个可选实施例中,基于第一状态信息,通过第一待训练交战网络模型获取第一动作信息,可以包括:
基于第一状态信息,通过第一待训练交战网络模型所包括的全连接层,获取第一状态特征向量;
基于第一状态特征向量,通过第一待训练交战网络模型所包括的动作输出层,获取N个第一动作输出向量,其中,N为大于或等于1的整数;
基于N个第一动作输出向量,通过第一待训练交战网络模型所包括的操作输出层,获取第一策略信息,其中,第一策略信息包括(a×N)个第一元素,a为大于或等于1的整数;
从第一策略信息中确定第一目标元素所对应的第一动作信息,其中,第一目标元素为(a×N)个第一元素中的最大值。
本实施例中,介绍了一种利用交战网络模型获取动作信息的方法,具体地,为了便于说明,请参阅图7,图7为本申请实施例中交战网络模型的一个结构示意图,如图所示,首先将第一状态信息输入至第一待训练交战网络模型所包括的全连接层,由此输出第一状态特征向量。
需要说明的是,全连接(full connection,FC)层可以包括三个维度的FC层,分别为1024维度的FC层、512维度的FC层和256的FC层,可以理解的是,在实际应用中,还可以设置其他数量和维度的FC层,此处仅为一个示意。
假设第一对象有N个对手,那么将第一状态特征向量输入至第一待训练交战网络模型所包括的动作输出层,由此输出N个第一动作输出向量,即得到第一对象针对每个对手(如真实玩家控制的虚拟角色)的第一动作输出向量。再将N个第一动作输出向量进行连接,再输入至第一待训练交战网络模型所包括的操作输出层,由此输出第一策略信息。其中,每个第一动作输出向量具有a个元素,那么连接后得到的第一策略信息包括(a×N)个第一元素。假设a为8,那么第一策略信息包括8N个第一元素。输出的(a×N)个第一元素就是第一对象在第一交互回合下出招技能和攻击目标的概率值,从(a×N)个第一元素中选择最大值作为第一目标元素,基于该第一目标元素确定第一动作信息。
其次,本申请实施例中,提供了一种利用交战网络模型获取动作信息的方法,通过上述方式,利用交战网络模型中所包括的全连接层、动作输出层以及操作输出层,对第一状态信息进行处理,得到第一动作信息,由此为方案的实现提供了具体的依据,从而提升方案的可操作性。
可选地,在上述图3对应的实施例的基础上,本申请实施例提供的模型训练的方法一个可选实施例中,基于第一状态特征向量,通过第一待训练交战网络模型所包括的动作输出层,获取N个第一动作输出向量,可以包括:
基于第一状态特征向量,通过第一待训练交战网络模型所包括的动作输出层,获取N个第一动作特征向量;
根据N个第一动作特征向量以及N个操作掩模向量,获取N个第一动作输出向量,其中,第一动作特征向量与操作掩模向量具有一一对应的关系,操作掩模向量为根据第一交互回合下的可用操作生成的。
本实施例中,介绍了一种获取第一动作输出向量的方式,在获取到第一状态特征向量之后,将第一状态特征向量输入至第一待训练交战网络模型所包括的动作输出层,从而得到N个第一动作特征向量,每个第一动作特征向量有a个维度,即表示第一对象的操作类型不超过a种,且表示第一对象有N个对手。第一动作特征向量表示预测得到的每个技能动作的出招概率。假设a等于8,则表示每个NPC的技能不超过8种,假设N等5,则表示每个NPC有5个可攻击的对手。
将N个维度为a的第一动作特征向量与维度为a的操作掩模向量相乘后串连,即可得到第一动作输出向量。由于在回合制游戏中,NPC有的技能在某一回合释放以后会有额外的效果,比如,使真实玩家控制的虚拟角色进入休息状态,下个回合不能释放技能,或者当血量低于某些状态时无法使用某些特定的技能等,因此,需要对第一待训练交战网络模型预测输出的第一动作特征向量乘以操作掩模向量,从而得到每个交互回合第一对象实际可选用技能。
下面将以一个NPC为例进行介绍,为了便于理解,请参阅图8,图8为本申请实施例中生成动作输出向量的一个实施例示意图,如图所示,以a等于8为例,即维度为8的操作掩模向量由8个0或1的数值组成,0或者1取值是由每回合客户端发过来该回合技能可用列表来确定的,其中,技能可用列表可以是客户端请求时所携带的字段内容。以性别为男,且职业为力量的NPC为例,该NPC的技能列表为技能A、技能B、技能C、技能D、技能E和技能F,一共包括6个主动技能,那么该NPC的状态特征向量可以表示为[1,1,1,1,1,1,0,0]。如果该NPC在某个交互回合获取的操作掩模向量为[1,1,1,0,1,1,0,0],则操作掩模向量第4个位置的取值为0表示该NPC在该交互回合下,技能D是无法使用的,而第7个位置和第8个位置的值填充为0是由于该NPC只有6个主动技能可以释放,其余位置的元素取值均为1,即表示该NPC在本次交互回合下其余技能均可用;通过引入操作掩模向量来筛选出不同NPC在不同交互回合可选用的出招技能。
需要说明的是,在实际应用中还存在多个不同的NPC,这些NPC输出动作输出向量的方式与第一对象输出第一动作输出向量的方式类似,此处不做赘述。
再次,本申请实施例中,提供了一种获取第一动作输出向量的方式,通过上述方式,在生成第一动作输出向量的过程中,还可以根据客户端反馈的对象操作情况确定当前的操作掩模向量,从而更贴近对象实际的操作情况,避免出现操作不可用的情形,由此提升方案的可行性和可操作性。
可选地,在上述图3对应的实施例的基础上,本申请实施例提供的模型训练的方法一个可选实施例中,基于第二状态信息,通过第二待训练交战网络模型获取第二动作信息,可以包括:
基于第二状态信息,通过第二待训练交战网络模型所包括的全连接层,获取第二状态特征向量;
基于第二状态特征向量,通过第二待训练交战网络模型所包括的动作输出层,获取N个第二动作输出向量,其中,N为大于或等于1的整数;
基于N个第二动作输出向量,通过第二待训练交战网络模型所包括的操作输出层,获取第二策略信息,其中,第二策略信息包括(a×N)个第二元素,a为大于或等于1的整数;
从第二策略信息中确定第二目标元素所对应的第二动作信息,其中,第二目标元素为(a×N)个第二元素中的最大值。
本实施例中,介绍了一种利用交战网络模型获取动作信息的方法,具体地,为了便于说明,请再次参阅图7,如图所示,首先将第二状态信息输入至第二待训练交战网络模型所包括的全连接层,由此输出第二状态特征向量。
假设第二对象有N个对手,那么将第二状态特征向量输入至第二待训练交战网络模型所包括的动作输出层,由此输出N个第二动作输出向量,即得到第二对象针对每个对手(如真实玩家控制的虚拟角色)的第二动作输出向量。再将N个第二动作输出向量进行连接,再输入至第二待训练交战网络模型所包括的操作输出层,由此输出第二策略信息。其中,每个第二动作输出向量具有a个元素,那么连接后得到的第二策略信息包括(a×N)个第二元素。假设a为8,那么第二策略信息包括8N个第二元素。输出的(a×N)个第二元素就是第二对象在第一交互回合下出招技能和攻击目标的概率值,从(a×N)个第二元素中选择最大值作为第二目标元素,基于该第二目标元素确定第二动作信息。
其次,本申请实施例中,提供了一种利用交战网络模型获取动作信息的方法,通过上述方式,利用交战网络模型中所包括的全连接层、动作输出层以及操作输出层,对第二状态信息进行处理,得到第二动作信息,由此为方案的实现提供了具体的依据,从而提升方案的可操作性。
可选地,在上述图3对应的实施例的基础上,本申请实施例提供的模型训练的方法一个可选实施例中,基于第二状态特征向量,通过第二待训练交战网络模型所包括的动作输出层,获取N个第二动作输出向量,可以包括:
基于第二状态特征向量,通过第二待训练交战网络模型所包括的动作输出层,获取N个第二动作特征向量;
根据N个第二动作特征向量以及N个操作掩模向量,获取N个第二动作输出向量,其中,第二动作特征向量与操作掩模向量具有一一对应的关系,操作掩模向量为根据第一交互回合下的可用操作生成的。
本实施例中,介绍了一种获取第二动作输出向量的方式,在获取到第二状态特征向量之后,将第二状态特征向量输入至第二待训练交战网络模型所包括的动作输出层,从而得到N个第二动作特征向量,每个第二动作特征向量有a个维度,即表示第二对象的操作类型不超过a种,且表示第二对象有N个对手。第二动作特征向量表示预测得到的每个技能动作的出招概率。类似地,将N个维度为a的第二动作特征向量与维度为a的操作掩模向量相乘后串连,即可得到第二动作输出向量。
对第二待训练交战网络模型预测输出的第二动作特征向量乘以操作掩模向量,从而得到每个交互回合第二对象实际可选用技能。
需要说明的是,第二动作输出向量的获取方式与第一动作输出向量的获取方式类似,此处不做赘述。
再次,本申请实施例中,提供了一种获取第二动作输出向量的方式,通过上述方式,在生成第二动作输出向量的过程中,还可以根据客户端反馈的对象操作情况确定当前的操作掩模向量,从而更贴近对象实际的操作情况,避免出现操作不可用的情形,由此提升方案的可行性和可操作性。
可选地,在上述图3对应的实施例的基础上,本申请实施例提供的模型训练的方法一个可选实施例中,基于第一状态信息、第二状态信息、第一动作信息以及第二动作信息,通过判别网络模型获取价值期望,可以包括:
对第一状态信息以及第二状态信息进行拼接处理,得到全局状态信息;
对第一动作信息以及第二动作信息进行拼接处理,得到全局动作信息;
基于全局状态信息以及全局动作信息,通过判别网络模型所包括的全连接层,获取价值期望。
本实施例中,介绍了一种通过判别网络模型获取价值期望的方法,交战网络模型的输出为该交互回合下基于状态信息预测的出招技能和攻击目标索引的概率分布,判别网络模型的的输出为为在当前观测状态下,交战网络模型预测输出动作信息的价值期望,通过价值期望的大小来评估当前出招技能和攻击目标选取的好坏。如果价值期望越大,则说明该将来获得的总体奖励值更大,也就是说当前出招技能和攻击目标会更好。
具体地,判别网络模型的输入为所有NPC在一个对战回合中获取到全状态信息,以第一待训练交战网络模型和第二待训练交战网络模型为例,在第一交互回合下获取到第一状态信息S1以及第二状态信息S2,即全局状态信息表示为Sall=(S1,S2)。在第一交互回合下获取到第一动作信息a1以及第二动作信息a2,即全局动作信息表示为Aall=(a1,a2)。其中,全局状态信息在合并不同NPC的状态信息时需剔除掉重复冗余特征,包括当前对战的轮数和当前回合对战的阵法。假设第一对象的第一状态信息为40维,第二对象的第二状态信息也为40维,合并后去掉当前对战的轮数和当前回合对战的阵法的10维共用特征,从而得到Sall为(30×2+10)=70维。假设第一对象的第一动作信息为8N维,第二对象的第二动作信息也为8N维,从而得到Aall为16N维。基于全局状态信息以及全局动作信息,输入判别网络模型的特征维度为70+16N维。
为了便于理解,请参阅图9,图9为本申请实施例中判别网络模型的一个结构示意图,如图所示,全局状态信息Sall和全局动作信息Aall作为判别网络模型中FC层的输入,其中,全局状态信息Sall的维度表示为(30N+10)维,全局动作信息Aall的维度表示为8N2维。判别网络模型的整体结构主要包括三个维度分别为1024、512和256的FC层,可以理解的是,在实际应用中,还可以设置其他数量和维度的FC层,此处仅为一个示意。
判别网络模型的输出为当前观测状态下该NPC技能选取的价值期望Q(Sall,Aall)(即未来期望得到的奖励值)。判别网络模型通过价值期望的大小来评估当前出招技能动作的好坏,从而指导待训练交战网络模型去优化不同游戏状态下出招策略。
不同NPC作为独立的智能体,对应的交战网络模型和判别网络模型都是相同的,均采用上述设计的网络模型结构,此处不做赘述。
进一步地,本申请实施例中,提供了一种通过判别网络模型获取价值期望的方法,通过上述方式,将多个交战网络模型的输入数据和输出数据进行拼接之后,作为判别网络模型输入,再输出价值期望,基于价值期望的大小可以评估当前动作信息的好坏,从而指导交战网络模型去优化不同状态信息下动作策略,由此提升方案的可行性。
可选地,在上述图3对应的实施例的基础上,本申请实施例提供的模型训练的方法一个可选实施例中,根据价值期望对第一待训练交战网络模型的模型参数进行更新,得到第一交战网络模型之后,还可以包括:
获取第一对象所对应的第三状态信息以及第二对象所对应的第四状态信息,其中,第三状态信息与第四状态信息属于第二交互回合所对应的状态信息;
基于第三状态信息,通过第一交战网络模型获取第三动作信息;
基于第四状态信息,通过第二交战网络模型获取第四动作信息,其中,第二交战网络模型为对第二待训练交战网络模型的模型参数进行更新后得到的;
获取第二交战回合所对应的目标奖励值;
根据目标奖励值、第三动作信息以及第四动作信息,采用损失函数对判别网络模型的模型参数进行更新,得到更新后的判别网络模型,其中,更新后的判别网络模型用于对第一交战网络模型的模型参数进行更新,得到更新后的第一交战网络模型。
本实施例中,介绍了一种对判别网络模型进行训练的方法,为了便于说明,请参阅图10,图10为本申请实施例中基于多轮交互回合生成样本集合的一个实施例示意图,如图所示,具体地,假设智能体为第一对象,在第i个交互回合下输入状态信息Si,在第i个交互回合下输出动作信息ai。与智能体相交互的称为环境(environment),交互不断进行着,在第i+1个交互回合下,由于动作信息ai的作用,第一对象获得一个奖励值Ri+1。
假设第i个交互回合为第一交互回合,第i+1个交互回合为第二交互回合,那么状态信息Si为第一状态信息,状态信息Si+1为第三状态信息,动作信息ai为第一动作信息,状态信息ai+1为第三动作信息。奖励值Ri+1为目标奖励值。
需要说明的是,训练第二对象所对应的判别网络模型的方式,与训练第一对象所对应的判别网络模型的方式类似,此处不再赘述。
下面将结合具体算法介绍判别网络模型的模型参数更新的方法。假设在回合制对战游戏中由N个NPC作为智能体,与N个真实玩家控制的虚拟角色组成对战场景,采用θ={θ1,...,θN}参数化策略π={π1,...,πN},其中,这里的N表示第N个智能体,每个智能体agent(i)策略信息的期望收益梯度计算公式表示为:
其中,表示判别网络模型输出的价值期望,ai~πi表示ai服从πi的分布,E表示期望,表示梯度算子,logπi表示第i个策略信息,ai表示第i个动作信息,Si表示第i个状态信息,SALL表示全局状态信息,a1,...,aN表示全局动作信息,ai|Si表示Si输出ai的概率。
在实际应用中,可以将状态转移样本集存储在缓冲区内,下面为第i个交互回合下状态转移样本集的一个示例:
(SALL,S'ALL,a1,...,aN,r1,...rN);
其中,SALL表示第i个交互回合下的全局状态信息,S'ALL表示第i+1个交互回合下的全局状态信息,S'ALL可以包括第三状态信息和第四状态信息。a1,...,aN表示第i个交互回合下全局动作信息,r1,...rN表示第i个交互回合下全局奖励值。
判别网络模型可以通过优化下面的损失函数来更新模型参数:
其中,L(θi)表示损失函数,θi表示判别网络模型的模型参数,表示第i个交互回合下的价值期望,表示第i+1个交互回合下的价值期望,a1′,...,aN′表示第i+1个交互回合下的全局动作信息,比如,a1′表示第三动作信息,a2′示第四动作信息。y表示真实值,γ表示折扣因子,通常可以设置为0.95,ri表示目标奖励值。
其次,本申请实施例中,提供了一种对判别网络模型进行训练的方法,通过上述方式,能够利用当前交互回合下训练好的交战网络模型,对下一个交互回合下的判别网络模型进行训练,达到迭代训练的目的,从而能够不断优化判别网络模型,再利用优化的判别网络模型继续优化交战网络模型,由此提升模型预测的准确度。
可选地,在上述图3对应的实施例的基础上,本申请实施例提供的模型训练的方法一个可选实施例中,获取第二交战回合所对应的目标奖励值,可以包括:
获取第二交战回合所对应的第一奖励值,其中,第一奖励值用于表示第一队伍的余量损失与第二队伍的余量损失之间的关系,第一队伍包括第一对象以及第二对象;
获取第二交战回合所对应第二奖励值,其中,第二奖励值用于表示第一队伍的对象损失与第二队伍中的对象损失之间的关系;
获取第二交战回合所对应第三奖励值,其中,第三奖励值用于表示第一队伍与第二队伍之间的交互结果;
获取第二交战回合所对应第四奖励值,其中,第四奖励值用于表示回合次数信息与总回合次数信息之间的关系;
根据第二交战回合所对应的第一奖励值、第二交战回合所对应的第二奖励值、第二交战回合所对应的第三奖励值以及第二交战回合所对应的第四奖励值,确定第二交战回合所对应的目标奖励值。
本实施例中,介绍了一种获取第二交战回合所对应的目标奖励值的方法,目标奖励值是奖励(reward)函数的输出结果,其中,奖励函数在强化学习中起着非常重要的作用,一个学习效果良好的网络模型与奖励函数的多样性和合理性有着紧密的关系。在回合制对战游戏的场景中,对战的最终目的都是将所有的对手击败。如果目标奖励值仅仅只是针对最终对战结果的奖励,那会导致目标奖励值变得非常稀疏,导致模型学习速度很慢。奖励函数设计的稠密会给与模型快速的正向反馈或者反向反馈,帮助模型更快更好的学习。
基于上述介绍,可以针对回合制对战游戏设计奖励函数,该奖励函数主要包括四个部分,下面将针对第一对象在第二交战回合下的交战情况为例进行说明。
奖励函数可以包括第一奖励值,其中,第一奖励值可以称为自奖励值(self-reward),用于表示第一队伍(我方)的余量损失与第二队伍(对手方)的余量损失之间的关系,具体表示每个对战回合中角色血量损失或提升比,第一奖励值的计算方式如下:
其中,rself_t表示第一奖励值,即表示第t轮战斗回合对手N个角色血量的损失比与我方N个角色血量损失比的差,通过第一奖励值能够体现每个战斗回合我方血量损失较低的情况下造成对方血量较大的损失。表示第(t-1)轮战斗回合下对手的血量损失,表示对手的血量损失最大值,表示第t轮战斗回合下对手的血量损失,表示第(t-1)轮战斗回合下我方的血量损失,表示我方的血量损失最大值,表示第t轮战斗回合下我方的血量损失。
以第一对象在第二交战回合下的交战情况为例,即第t轮战斗回合表示第二交战回合,第(t-1)轮战斗回合表示第一交战回合。
奖励函数还可以包括第二奖励值,其中,第二奖励值可以称为角色阵亡奖励值(character-death-reward),用于表示第一队伍的对象损失与第二队伍中的对象损失之间的关系,具体表示对战回合中有角色阵亡的情况下,如果是第一队伍(我方)角色阵亡,则给予一定的即时惩罚,如果是第二队伍(对手方)角色阵亡,则给予一定的即时奖励。当第二奖励值为正数时,表示第t轮战斗回合中有对手方角色阵亡给予即时奖励,当第二奖励值为负数时,表示第t轮战斗回合中有我方角色阵亡给予即时惩罚,具体可以把双方阵亡数加在一起,如果值大于0那个就给与奖励,反之给予惩罚。
奖励函数还可以包括第三奖励值,其中,第三奖励值可以称为战斗奖励值(battle-reward),第三奖励值用于表示第一队伍与第二队伍之间的交互结果,具体表示最终对战结果如果是第一队伍(我方)胜利则给予奖励,如果第一队伍(我方)失败则给予惩罚。当第三奖励值为正数时,表示本次对战我方取得胜利时给予即时奖励,当第三奖励值为负数时,表示本次对战我方被打败时给予即时惩罚。
奖励函数还可以包括第四奖励值,其中,第四奖励值可以称为轮罚奖励(round-penalty-reward),第四奖励值用于表示回合次数信息与总回合次数信息之间的关系,具体表示当一局对战中对战回合数越多给予越大的惩罚,需要尽量在短的对战回合内就可以结束战斗,第四奖励值的计算方式如下:
其中,rround_penalty_t表示第t个交互回合的第四奖励值,battle_round表示回合次数信息,即本次对战的回合数,max_round表示总回合次数信息,即对战回合数的上限。
结合奖励函数可以计算得到目标奖励值,计算方式如下:
rt=ω1×rself_t+ω2×rcharacter_death_t+ω3×rbattle_t+ω4×rround_penalty_t;
其中,rt表示第t个交互回合的目标奖励值,ω1表示第一权重系数,ω2表示第二权重系数,ω3表示第三权重系数,ω4表示第四权重系数,rself_t表示第t个交互回合的第一奖励值,rcharacter_death_t表示第t个交互回合的第二奖励值,rbattle_t表示第t个交互回合的第三奖励值,rround_penalty_t表示第t个交互回合的第四奖励值。
可以理解的是,第t个交互回合可以为第二交战回合,在实际应用中,第t个交互回合还可以是其他轮次下的交战回合。
再次,本申请实施例中,提供了一种获取第二交战回合所对应的目标奖励值的方法,通过上述方式,有针对性地设计了奖励函数,该奖励函数综合了交互式应用的场景特点,不仅针对最终的对战结果设置奖励值,还考虑到对战过程中双方的交互情况设置奖励值,从而有利于提升模型训练的效率和精度。
可选地,在上述图3对应的实施例的基础上,本申请实施例提供的模型训练的方法一个可选实施例中,根据价值期望对第一待训练交战网络模型的模型参数进行更新,得到第一交战网络模型,可以包括:
获取第一策略信息,其中,第一策略信息为第一待训练交战网络模型基于第一状态信息输出的信息,第一策略信息包括(a×N)个第一元素,N为大于或等于1的整数,a为大于或等于1的整数;
根据第一策略信息以及价值期望,对第一待训练交战网络模型的模型参数进行更新,得到第一交战网络模型。
本实施例中,介绍了一种训练得到第一交战网络模型的方式,下面将结合具体算法介绍第一交战网络模型的模型参数更新的方法。假设在回合制对战游戏中由N个NPC作为智能体,与N个真实玩家控制的虚拟角色组成对战场景,采用θ={θ1,...,θN}参数化策略π={π1,...,πN},其中,这里的N表示第N个智能体,每个智能体agent(i)策略信息的期望收益梯度计算公式表示为:
其中,表示判别网络模型输出的价值期望,ai~πi表示ai服从πi的分布,E表示期望,表示梯度算子,logπi表示第i个策略信息,ai表示第i个动作信息,Si表示第i个状态信息,SALL表示全局状态信息,a1,...,aN表示全局动作信息,ai|Si表示Si输出ai的概率。
在实际应用中,可以将状态转移样本集存储在缓冲区内,下面为第i个交互回合下状态转移样本集的一个示例:
第j个样本表示为(SALL,S'ALL,a1,...,aN,r1,...rN);
其中,SALL表示第i个交互回合下的全局状态信息,S'ALL表示第i+1个交互回合下的全局状态信息。a1,...,aN表示第i个交互回合下全局动作信息,r1,...rN表示第i个交互回合下全局奖励值。
针对每一个智能体最小化策略梯度去更新交战网络模型的模型参数,具体为:
其中,φi表示第一待训练交战网络模型的模型参数,S表示缓冲区内状态转移样本集的总数,j表示缓冲区内的第j个状态转移样本集,i表示第i个交互回合,例如为第一交互回合,表示第i个交互回合下的策略信息,例如为第一策略信息,表示第i个交互回合下的价值期望。由此,通过最小化策略梯度可以更新第一待训练交战网络模型的模型参数。
需要说明的是,第二待训练交战网络模型的模型参数更新方式,与第一待训练交战网络模型的模型参数更新方式类似,故此处不做赘述。
其次,本申请实施例中,提供了一种训练得到第一交战网络模型的方式,通过上述方式,能够利用MADDPG算法实现集中式的学习以及分布式的应用,为每一个NPC训练一个策略模型来预测出招技能和攻击目标,并通过中心化训练、非中心化执行的策略使不同NPC在一个对战回合中出招技能和攻击目标的选取更加的高效和协作,减小NPC与真实玩家的操作差异,提升NPC与真实玩家的对战水平,还可以通过不断的迭代更新交战网络模型的参数,进而提升预测的准确性。
结合上述介绍,下面将对本申请中基于交互式应用的对象控制方法进行介绍,请参阅图11,本申请实施例中基于交互式应用的对象控制方法一个实施例包括:
201、获取第一对象所在目标交互回合所对应的目标状态信息;
本实施例中,在交互式应用中,对象控制装置获取第一对象所在目标交互回合所对应的目标状态信息,具体地,假设该交互式应用为回合制对战游戏,第一对象为对战中的一个NPC,目标交互回合可以指回合制对战游戏中轮到NPC攻击的某个回合,而在该目标交互回合下先获取该NPC的目标状态信息,其中,目标状态信息可以包括上述实施例中描述的40维状态信息,此处不再赘述。
可以理解的是,对象控制装置可以部署于服务器,或者部署于计算能力较高的终端设备,本申请不做限定。
202、根据第一对象获取第一交战网络模型;
本实施例中,由于在模型训练的过程中,针对每个NPC训练一个对应的交战网络模型,其中,该第一交战网络模型即为第一对象所对应的模型,因此,对象控制装置需要获取第一对象所对应的第一交战网络模型。类似地,第二对象所采用的交战网络模型即为第二交战网络模型,以此类推。
203、基于目标状态信息,通过第一交战网络模型获取目标动作信息;
本实施例中,对象控制装置将目标状态信息Si输入至第一交战网络模型,由该第一交战网络模型输出目标动作信息ai。其中,目标动作信息ai表示(a×N)中最大概率值所对应的索引,a表示NPC最多的技能数量,N表示对手的数量。
204、根据目标动作信息确定第一索引值以及第二索引值,其中,第一索引值用于指示被攻击对象,第二索引值用于指示交互操作类型;
本实施例中,对象控制装置根据目标动作信息ai计算第一对象在目标交互回合下的索引值和第二索引值,其中,第一索引值用于指示被攻击对象,即表示第一对象在目标交互回合下的攻击目标所对应的索引,第二索引值用于指示交互操作类型,即表示第一对象在目标交互回合下的采用的技能索引。
为了便于理解,请参阅图12,图12为本申请实施例中基于第一索引值确定被攻击对象的一个实施例示意图,如图所示,假设回合制对战游戏中为2V2的对战模式,即对手1所对应的标识为0,对手2所对应的标识为1,基于图12可知,第一对象的策略信息包括16个元素,每个元素对应一个概率值,从这些概率值中选择概率最大值,即53%,因此,目标动作信息即为53%所对应的10,采用如下方式计算第一索引值:
其中,H1表示第一索引值,ai表示目标动作信息。因此,以目标动作信息ai等于10为例,在目标交互回合下,预测得到的第一索引值为1,由此可以确定被攻击对象为标识N=1的对手2。
请参阅图13,图13为本申请实施例中基于第二索引值确定交互操作类型的一个实施例示意图,如图所示,假设第一对象最多有8种技能,即每个技能分别对应0至7的数值,且假设回合制对战游戏中为2V2的对战模式,即对手1所对应的标识为0,对手2所对应的标识为1,基于图13可知,第一对象的策略信息包括16个元素,每个元素对应一个概率值,从这些概率值中选择概率最大值,即53%,因此,目标动作信息即为53%所对应的10,采用如下方式计算第二索引值:
H2=ai%8(取余数);
其中,H2表示第二索引值,ai表示目标动作信息。因此,以目标动作信息ai等于10为例,在目标交互回合下,预测得到的第二索引值为2,由此可以确定第一对象将采用2号技能进行攻击。
采用上述方式计算第一索引值和第二索引值,不仅可以提升网络模型预测的精度,同时也能解决无效技能选取的问题。
205、根据第一索引值以及第二索引值,控制第一对象向被攻击对象发起交互操作类型所对应的交互操作。
本实施例中,对象控制装置根据第一索引值以及第二索引值,控制第一对象向被攻击对象发起交互操作类型所对应的交互操作。具体地,为了便于理解,请参阅图14,图14为本申请实施例中第一对象发起交互操作的一个界面示意图,如图所示,假设第一对象为NPC1,第二对象为NPC2,假设基于NPC1预测得到的第一索引值为1,第二索引值为5,即可以确定在当前交战回合下,NPC1的攻击目标为玩家2(即玩家2的标识为1),并采用6号技能(即6号技能的标识为5)对玩家2进行攻击。类似地,假设基于NPC2预测得到的第一索引值为0,第二索引值为3,即可以确定在当前交战回合下,NPC2的攻击目标为玩家1(即玩家1的标识为0),并采用4号技能(即4号技能的标识为3)对玩家1进行攻击。
本申请实施例中,提供了一种基于交互式应用的对象控制方法,通过上述方式,能够解决NPC出招策略固定单一的问题,多个NPC出招技能和攻击目标没有协作和配合,缺乏拟人性的问题。本方案通过Multi-agent强化学习中的MADDPG算法为每一个NPC训练一个策略模型来预测出招技能和攻击目标,并通过中心化训练、非中心化执行的策略使不同NPC在一个对战回合中出招技能和攻击目标的选取更加的高效和协作,减小NPC与真实玩家的操作差异,提升NPC与真实玩家的对战水平。
下面对本申请中的模型训练装置进行详细描述,请参阅图15,图15为本申请实施例中模型训练装置一个实施例示意图,模型训练装置30包括:
获取模块301,用于获取第一对象所对应的第一状态信息以及第二对象所对应的第二状态信息,其中,第一状态信息与第二状态信息属于第一交互回合所对应的状态信息;
获取模块301,还用于基于第一状态信息,通过第一待训练交战网络模型获取第一动作信息;
获取模块301,还用于基于第二状态信息,通过第二待训练交战网络模型获取第二动作信息;
获取模块301,还用于基于第一状态信息、第二状态信息、第一动作信息以及第二动作信息,通过判别网络模型获取价值期望,其中,判别网络模型与第一待训练交战网络模型具有一一对应的关系;
训练模块302,用于根据获取模块获取的价值期望对第一待训练交战网络模型的模型参数进行更新,得到第一交战网络模型。
本申请实施例中,提供了一种模型训练装置,采用上述装置,为每个NPC训练一个对应的交战网络模型来预测动作策略,并且判别网络模型是基于全局状态信息和全局动作信息来训练对应的交战网络模型,因此,每个NPC在采用对应的交战网络模型进行预测时,能够充分考虑到其他交战网络模型的预测结果,从而实现多个NPC之间的协作与配合,减小NPC与真实玩家的操作差异,提升NPC与真实玩家的对战水平。
可选地,在上述图15所对应的实施例的基础上,本申请实施例提供的模型训练装置30的另一实施例中,
获取模块301,具体用于获取第一对象所对应的第一属性信息、第一余量信息、第一职业信息、第一排列信息、回合次数信息以及第一操作信息中的至少一种,其中,第一余量信息为第一对象在第一交互回合下所对应的余量信息;
根据第一属性信息、第一余量信息、第一职业信息、第一排列信息、回合次数信息以及第一操作信息中的至少一种,生成第一状态信息,其中,第一状态信息包括P个特征维度,P为大于或等于1的整数;
获取第二对象所对应的第二属性信息、第二余量信息、第二职业信息、第二排列信息、回合次数信息以及第二操作信息中的至少一种,其中,第二余量信息为第二对象在第一交互回合下所对应的余量信息;
根据第二属性信息、第二余量信息、第二职业信息、第二排列信息、回合次数信息以及第二操作信息中的至少一种,生成第二状态信息,其中,第二状态信息包括P个特征维度。
可选地,在上述图15所对应的实施例的基础上,本申请实施例提供的模型训练装置30的另一实施例中,
获取模块301,具体用于基于第一状态信息,通过第一待训练交战网络模型所包括的全连接层,获取第一状态特征向量;
基于第一状态特征向量,通过第一待训练交战网络模型所包括的动作输出层,获取N个第一动作输出向量,其中,N为大于或等于1的整数;
基于N个第一动作输出向量,通过第一待训练交战网络模型所包括的操作输出层,获取第一策略信息,其中,第一策略信息包括(a×N)个第一元素,a为大于或等于1的整数;
从第一策略信息中确定第一目标元素所对应的第一动作信息,其中,第一目标元素为(a×N)个第一元素中的最大值。
可选地,在上述图15所对应的实施例的基础上,本申请实施例提供的模型训练装置30的另一实施例中,
获取模块301,具体用于基于第一状态特征向量,通过第一待训练交战网络模型所包括的动作输出层,获取N个第一动作特征向量;
根据N个第一动作特征向量以及N个操作掩模向量,获取N个第一动作输出向量,其中,第一动作特征向量与操作掩模向量具有一一对应的关系,操作掩模向量为根据第一交互回合下的可用操作生成的。
可选地,在上述图15所对应的实施例的基础上,本申请实施例提供的模型训练装置30的另一实施例中,
获取模块301,具体用于基于第二状态信息,通过第二待训练交战网络模型所包括的全连接层,获取第二状态特征向量;
基于第二状态特征向量,通过第二待训练交战网络模型所包括的动作输出层,获取N个第二动作输出向量,其中,N为大于或等于1的整数;
基于N个第二动作输出向量,通过第二待训练交战网络模型所包括的操作输出层,获取第二策略信息,其中,第二策略信息包括(a×N)个第二元素,a为大于或等于1的整数;
从第二策略信息中确定第二目标元素所对应的第二动作信息,其中,第二目标元素为(a×N)个第二元素中的最大值。
可选地,在上述图15所对应的实施例的基础上,本申请实施例提供的模型训练装置30的另一实施例中,
获取模块301,具体用于基于第二状态特征向量,通过第二待训练交战网络模型所包括的动作输出层,获取N个第二动作特征向量;
根据N个第二动作特征向量以及N个操作掩模向量,获取N个第二动作输出向量,其中,第二动作特征向量与操作掩模向量具有一一对应的关系,操作掩模向量为根据第一交互回合下的可用操作生成的。
可选地,在上述图15所对应的实施例的基础上,本申请实施例提供的模型训练装置30的另一实施例中,
获取模块301,具体用于对第一状态信息以及第二状态信息进行拼接处理,得到全局状态信息;
对第一动作信息以及第二动作信息进行拼接处理,得到全局动作信息;
基于全局状态信息以及全局动作信息,通过判别网络模型所包括的全连接层,获取价值期望。
可选地,在上述图15所对应的实施例的基础上,本申请实施例提供的模型训练装置30的另一实施例中,
获取模块301,还用于根据价值期望对第一待训练交战网络模型的模型参数进行更新,得到第一交战网络模型之后,获取第一对象所对应的第三状态信息以及第二对象所对应的第四状态信息,其中,第三状态信息与第四状态信息属于第二交互回合所对应的状态信息;
获取模块301,还用于基于第三状态信息,通过第一交战网络模型获取第三动作信息;
获取模块301,还用于基于第四状态信息,通过第二交战网络模型获取第四动作信息,其中,第二交战网络模型为对第二待训练交战网络模型的模型参数进行更新后得到的;
获取模块301,还用于获取第二交战回合所对应的目标奖励值;
训练模块302,还用于根据目标奖励值、第三动作信息以及第四动作信息,采用损失函数对判别网络模型的模型参数进行更新,得到更新后的判别网络模型,其中,更新后的判别网络模型用于对第一交战网络模型的模型参数进行更新,得到更新后的第一交战网络模型。
可选地,在上述图15所对应的实施例的基础上,本申请实施例提供的模型训练装置30的另一实施例中,
获取模块301,具体用于获取第二交战回合所对应的第一奖励值,其中,第一奖励值用于表示第一队伍的余量损失与第二队伍的余量损失之间的关系,第一队伍包括第一对象以及第二对象;
获取第二交战回合所对应第二奖励值,其中,第二奖励值用于表示第一队伍的对象损失与第二队伍中的对象损失之间的关系;
获取第二交战回合所对应第三奖励值,其中,第三奖励值用于表示第一队伍与第二队伍之间的交互结果;
获取第二交战回合所对应第四奖励值,其中,第四奖励值用于表示回合次数信息与总回合次数信息之间的关系;
根据第二交战回合所对应的第一奖励值、第二交战回合所对应的第二奖励值、第二交战回合所对应的第三奖励值以及第二交战回合所对应的第四奖励值,确定第二交战回合所对应的目标奖励值。
可选地,在上述图15所对应的实施例的基础上,本申请实施例提供的模型训练装置30的另一实施例中,
训练模块302,具体用于获取第一策略信息,其中,第一策略信息为第一待训练交战网络模型基于第一状态信息输出的信息,第一策略信息包括(a×N)个第一元素,N为大于或等于1的整数,a为大于或等于1的整数;
根据第一策略信息以及价值期望,对第一待训练交战网络模型的模型参数进行更新,得到第一交战网络模型。
下面对本申请中的对象控制装置进行详细描述,请参阅图16,图16为本申请实施例中对象控制装置一个实施例示意图,对象控制装置40包括:
获取模块401,用于获取第一对象所在目标交互回合所对应的目标状态信息;
获取模块401,还用于根据第一对象获取第一交战网络模型,其中,第一交战网络模型为上述各个方面中涉及的第一交战网络模型;
获取模块401,还用于基于目标状态信息,通过第一交战网络模型获取目标动作信息;
确定模块402,用于根据获取模块获取的目标动作信息确定第一索引值以及第二索引值,其中,第一索引值用于指示被攻击对象,第二索引值用于指示交互操作类型;
控制模块403,用于根据第一索引值以及第二索引值,控制第一对象向被攻击对象发起交互操作类型所对应的交互操作。
本申请实施例中,提供了一种基于交互式应用的对象控制装置,采用上述装置,能够解决NPC出招策略固定单一的问题,多个NPC出招技能和攻击目标没有协作和配合,缺乏拟人性的问题。本方案通过Multi-agent强化学习中的MADDPG算法为每一个NPC训练一个策略模型来预测出招技能和攻击目标,并通过中心化训练、非中心化执行的策略使不同NPC在一个对战回合中出招技能和攻击目标的选取更加的高效和协作,减小NPC与真实玩家的操作差异,提升NPC与真实玩家的对战水平。
本申请提供的模型训练装置可以部署于服务器,请参阅图17,图17是本发明实施例提供的一种服务器结构示意图,该服务器500可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)522(例如,一个或一个以上处理器)和存储器532,一个或一个以上存储应用程序542或数据544的存储介质530(例如一个或一个以上海量存储设备)。其中,存储器532和存储介质530可以是短暂存储或持久存储。存储在存储介质530的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器522可以设置为与存储介质530通信,在服务器500上执行存储介质530中的一系列指令操作。
服务器500还可以包括一个或一个以上电源526,一个或一个以上有线或无线网络接口550,一个或一个以上输入输出接口558,和/或,一个或一个以上操作系统541,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述实施例中由服务器所执行的步骤可以基于该图17所示的服务器结构。
在本申请实施例中,该服务器所包括的CPU 522还具有以下功能:
获取第一对象所对应的第一状态信息以及第二对象所对应的第二状态信息,其中,第一状态信息与第二状态信息属于第一交互回合所对应的状态信息;
基于第一状态信息,通过第一待训练交战网络模型获取第一动作信息;
基于第二状态信息,通过第二待训练交战网络模型获取第二动作信息;
基于第一状态信息、第二状态信息、第一动作信息以及第二动作信息,通过判别网络模型获取价值期望,其中,判别网络模型与第一待训练交战网络模型具有一一对应的关系;
根据价值期望对第一待训练交战网络模型的模型参数进行更新,得到第一交战网络模型。
本申请实施例还提供了另一种对象控制装置,如图18所示,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。该终端设备可以为包括手机、平板电脑、个人数字助理(Personal Digital Assistant,PDA)、销售终端设备(Point of Sales,POS)、车载电脑等任意终端设备,以终端设备为手机为例:
图18示出的是与本申请实施例提供的终端设备相关的手机的部分结构的框图。参考图18,手机包括:射频(Radio Frequency,RF)电路610、存储器620、输入单元630、显示单元640、传感器650、音频电路660、无线保真(wireless fidelity,WiFi)模块670、处理器680、以及电源690等部件。本领域技术人员可以理解,图18中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图18对手机的各个构成部件进行具体的介绍:
RF电路610可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器680处理;另外,将设计上行的数据发送给基站。通常,RF电路610包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low NoiseAmplifier,LNA)、双工器等。此外,RF电路610还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(GlobalSystem of Mobile communication,GSM)、通用分组无线服务(General Packet RadioService,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。
存储器620可用于存储软件程序以及模块,处理器680通过运行存储在存储器620的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器620可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器620可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元630可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元630可包括触控面板631以及其他输入设备632。触控面板631,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板631上或在触控面板631附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板631可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器680,并能接收处理器680发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板631。除了触控面板631,输入单元630还可以包括其他输入设备632。具体地,其他输入设备632可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元640可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元640可包括显示面板641,可选的,可以采用液晶显示器(Liquid CrystalDisplay,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板641。进一步的,触控面板631可覆盖显示面板641,当触控面板631检测到在其上或附近的触摸操作后,传送给处理器680以确定触摸事件的类型,随后处理器680根据触摸事件的类型在显示面板641上提供相应的视觉输出。虽然在图18中,触控面板631与显示面板641是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板631与显示面板641集成而实现手机的输入和输出功能。
手机还可包括至少一种传感器650,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板641的亮度,接近传感器可在手机移动到耳边时,关闭显示面板641和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路660、扬声器661,传声器662可提供用户与手机之间的音频接口。音频电路660可将接收到的音频数据转换后的电信号,传输到扬声器661,由扬声器661转换为声音信号输出;另一方面,传声器662将收集的声音信号转换为电信号,由音频电路660接收后转换为音频数据,再将音频数据输出处理器680处理后,经RF电路610以发送给比如另一手机,或者将音频数据输出至存储器620以便进一步处理。
WiFi属于短距离无线传输技术,手机通过WiFi模块670可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图18示出了WiFi模块670,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器680是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器620内的软件程序和/或模块,以及调用存储在存储器620内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器680可包括一个或多个处理单元;可选的,处理器680可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器680中。
手机还包括给各个部件供电的电源690(比如电池),可选的,电源可以通过电源管理系统与处理器680逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
在本申请实施例中,该终端设备所包括的处理器680还具有以下功能:
获取第一对象所在目标交互回合所对应的目标状态信息;
根据第一对象获取第一交战网络模型;
基于目标状态信息,通过第一交战网络模型获取目标动作信息;
根据目标动作信息确定第一索引值以及第二索引值,其中,第一索引值用于指示被攻击对象,第二索引值用于指示交互操作类型;
根据第一索引值以及第二索引值,控制第一对象向被攻击对象发起交互操作类型所对应的交互操作。
本申请实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行如前述图3所示实施例描述的方法中终端设备所执行的步骤,或者,使得计算机执行如前述图3所示实施例描述的方法中服务器所执行的步骤。
本申请实施例中还提供一种包括程序的计算机程序产品,当其在计算机上运行时,使得计算机执行如前述图3所示实施例描述的方法中终端设备所执行的步骤,或者,使得计算机执行如前述图3所示实施例描述的方法中服务器所执行的步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (13)
1.一种模型训练的方法,其特征在于,包括:
获取第一对象所对应的第一状态信息以及第二对象所对应的第二状态信息,其中,所述第一状态信息与所述第二状态信息属于第一交互回合所对应的状态信息,所述第一状态信息包括所述第一对象所对应的第一余量信息、第一职业信息、第一排列信息和回合次数信息中的至少一种,所述第二状态信息包括所述第二对象所对应的第二余量信息、第二职业信息、第二排列信息和回合次数信息中的至少一种;
基于所述第一状态信息,通过第一待训练交战网络模型获取第一动作信息;
基于所述第二状态信息,通过第二待训练交战网络模型获取第二动作信息;
对所述第一状态信息以及所述第二状态信息进行拼接处理,得到全局状态信息;
对所述第一动作信息以及所述第二动作信息进行拼接处理,得到全局动作信息;
基于所述全局状态信息以及所述全局动作信息,通过判别网络模型所包括的全连接层,获取价值期望,其中,所述判别网络模型与所述第一待训练交战网络模型具有一一对应的关系;
根据所述价值期望对所述第一待训练交战网络模型的模型参数进行更新,得到第一交战网络模型。
2.根据权利要求1所述的方法,其特征在于,所述基于所述第一状态信息,通过第一待训练交战网络模型获取第一动作信息,包括:
基于所述第一状态信息,通过所述第一待训练交战网络模型所包括的全连接层,获取第一状态特征向量;
基于所述第一状态特征向量,通过所述第一待训练交战网络模型所包括的动作输出层,获取N个第一动作输出向量,其中,所述N为大于或等于1的整数;
基于所述N个第一动作输出向量,通过所述第一待训练交战网络模型所包括的操作输出层,获取第一策略信息,其中,所述第一策略信息包括a×N个第一元素,所述a为大于或等于1的整数;
从所述第一策略信息中确定第一目标元素所对应的第一动作信息,其中,所述第一目标元素为所述a×N个第一元素中的最大值。
3.根据权利要求2所述的方法,其特征在于,所述基于所述第一状态特征向量,通过所述第一待训练交战网络模型所包括的动作输出层,获取N个第一动作输出向量,包括:
基于所述第一状态特征向量,通过所述第一待训练交战网络模型所包括的动作输出层,获取N个第一动作特征向量;
根据所述N个第一动作特征向量以及N个操作掩模向量,获取所述N个第一动作输出向量,其中,所述第一动作特征向量与所述操作掩模向量具有一一对应的关系,所述操作掩模向量为根据所述第一交互回合下的可用操作生成的。
4.根据权利要求1所述的方法,其特征在于,所述基于所述第二状态信息,通过第二待训练交战网络模型获取第二动作信息,包括:
基于所述第二状态信息,通过所述第二待训练交战网络模型所包括的全连接层,获取第二状态特征向量;
基于所述第二状态特征向量,通过所述第二待训练交战网络模型所包括的动作输出层,获取N个第二动作输出向量,其中,所述N为大于或等于1的整数;
基于所述N个第二动作输出向量,通过所述第二待训练交战网络模型所包括的操作输出层,获取第二策略信息,其中,所述第二策略信息包括a×N个第二元素,所述a为大于或等于1的整数;
从所述第二策略信息中确定第二目标元素所对应的第二动作信息,其中,所述第二目标元素为所述a×N个第二元素中的最大值。
5.根据权利要求4所述的方法,其特征在于,所述基于所述第二状态特征向量,通过所述第二待训练交战网络模型所包括的动作输出层,获取N个第二动作输出向量,包括:
基于所述第二状态特征向量,通过所述第二待训练交战网络模型所包括的动作输出层,获取N个第二动作特征向量;
根据所述N个第二动作特征向量以及N个操作掩模向量,获取所述N个第二动作输出向量,其中,所述第二动作特征向量与所述操作掩模向量具有一一对应的关系,所述操作掩模向量为根据所述第一交互回合下的可用操作生成的。
6.根据权利要求1所述的方法,其特征在于,所述根据所述价值期望对所述第一待训练交战网络模型的模型参数进行更新,得到第一交战网络模型之后,所述方法还包括:
获取所述第一对象所对应的第三状态信息以及所述第二对象所对应的第四状态信息,其中,所述第三状态信息与所述第四状态信息属于第二交互回合所对应的状态信息;
基于所述第三状态信息,通过所述第一交战网络模型获取第三动作信息;
基于所述第四状态信息,通过第二交战网络模型获取第四动作信息,其中,所述第二交战网络模型为对所述第二待训练交战网络模型的模型参数进行更新后得到的;
获取所述第二交战回合所对应的目标奖励值;
根据所述目标奖励值、所述第三动作信息以及所述第四动作信息,采用损失函数对所述判别网络模型的模型参数进行更新,得到更新后的判别网络模型,其中,所述更新后的判别网络模型用于对所述第一交战网络模型的模型参数进行更新,得到更新后的第一交战网络模型。
7.根据权利要求6所述的方法,其特征在于,所述获取所述第二交战回合所对应的目标奖励值,包括:
获取所述第二交战回合所对应的第一奖励值,其中,所述第一奖励值用于表示第一队伍的余量损失与第二队伍的余量损失之间的关系,所述第一队伍包括所述第一对象以及所述第二对象;
获取所述第二交战回合所对应第二奖励值,其中,所述第二奖励值用于表示所述第一队伍的对象损失与所述第二队伍中的对象损失之间的关系;
获取所述第二交战回合所对应第三奖励值,其中,所述第三奖励值用于表示所述第一队伍与所述第二队伍之间的交互结果;
获取所述第二交战回合所对应第四奖励值,其中,所述第四奖励值用于表示回合次数信息与总回合次数信息之间的关系;
根据所述第二交战回合所对应的第一奖励值、所述第二交战回合所对应的第二奖励值、所述第二交战回合所对应的第三奖励值以及所述第二交战回合所对应的第四奖励值,确定所述第二交战回合所对应的所述目标奖励值。
8.根据权利要求1所述的方法,其特征在于,所述根据所述价值期望对所述第一待训练交战网络模型的模型参数进行更新,得到第一交战网络模型,包括:
获取第一策略信息,其中,所述第一策略信息为所述第一待训练交战网络模型基于所述第一状态信息输出的信息,所述第一策略信息包括a×N个第一元素,所述N为大于或等于1的整数,所述a为大于或等于1的整数;
根据所述第一策略信息以及所述价值期望,对所述第一待训练交战网络模型的模型参数进行更新,得到所述第一交战网络模型。
9.一种基于交互式应用的对象控制方法,其特征在于,包括:
获取第一对象所在目标交互回合所对应的目标状态信息;
根据所述第一对象获取第一交战网络模型,其中,所述第一交战网络模型为上述权利要求1至8中任一项所述的第一交战网络模型;
基于所述目标状态信息,通过所述第一交战网络模型获取目标动作信息;
根据所述目标动作信息确定第一索引值以及第二索引值,其中,所述第一索引值用于指示被攻击对象,所述第二索引值用于指示交互操作类型;
根据所述第一索引值以及所述第二索引值,控制所述第一对象向所述被攻击对象发起所述交互操作类型所对应的交互操作。
10.一种模型训练装置,其特征在于,包括:
获取模块,用于获取第一对象所对应的第一状态信息以及第二对象所对应的第二状态信息,其中,所述第一状态信息与所述第二状态信息属于第一交互回合所对应的状态信息,所述第一状态信息包括所述第一对象所对应的第一余量信息、第一职业信息、第一排列信息和回合次数信息中的至少一种,所述第二状态信息包括所述第二对象所对应的第二余量信息、第二职业信息、第二排列信息和回合次数信息中的至少一种;
所述获取模块,还用于基于所述第一状态信息,通过第一待训练交战网络模型获取第一动作信息;
所述获取模块,还用于基于所述第二状态信息,通过第二待训练交战网络模型获取第二动作信息;
所述获取模块,还用于对所述第一状态信息以及所述第二状态信息进行拼接处理,得到全局状态信息;对所述第一动作信息以及所述第二动作信息进行拼接处理,得到全局动作信息;基于所述全局状态信息以及所述全局动作信息,通过判别网络模型所包括的全连接层,获取价值期望,其中,所述判别网络模型与所述第一待训练交战网络模型具有一一对应的关系;
训练模块,用于根据所述获取模块获取的所述价值期望对所述第一待训练交战网络模型的模型参数进行更新,得到第一交战网络模型。
11.一种对象控制装置,其特征在于,包括:
获取模块,用于获取第一对象所在目标交互回合所对应的目标状态信息;
所述获取模块,还用于根据所述第一对象获取第一交战网络模型,其中,所述第一交战网络模型为上述权利要求1至9中任一项所述的第一交战网络模型;
所述获取模块,还用于基于所述目标状态信息,通过所述第一交战网络模型获取目标动作信息;
确定模块,用于根据所述获取模块获取的所述目标动作信息确定第一索引值以及第二索引值,其中,所述第一索引值用于指示被攻击对象,所述第二索引值用于指示交互操作类型;
控制模块,用于根据所述第一索引值以及所述第二索引值,控制所述第一对象向所述被攻击对象发起所述交互操作类型所对应的交互操作。
12.一种计算机设备,其特征在于,包括:存储器、收发器、处理器以及总线系统;
其中,所述存储器用于存储程序;
所述处理器用于执行所述存储器中的程序,包括执行如上述权利要求1至8中任一项所述的模型训练的方法,或,执行如上述权利要求9所述的基于交互式应用的对象控制方法;
所述总线系统用于连接所述存储器以及所述处理器,以使所述存储器以及所述处理器进行通信。
13.一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1至8中任一项所述的方法,或,执行如权利要求9所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010080662.XA CN111282279B (zh) | 2020-02-05 | 2020-02-05 | 模型训练的方法、基于交互式应用的对象控制方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010080662.XA CN111282279B (zh) | 2020-02-05 | 2020-02-05 | 模型训练的方法、基于交互式应用的对象控制方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111282279A CN111282279A (zh) | 2020-06-16 |
CN111282279B true CN111282279B (zh) | 2021-05-07 |
Family
ID=71029983
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010080662.XA Active CN111282279B (zh) | 2020-02-05 | 2020-02-05 | 模型训练的方法、基于交互式应用的对象控制方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111282279B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111760291B (zh) * | 2020-07-06 | 2022-03-08 | 腾讯科技(深圳)有限公司 | 游戏互动行为模型生成方法、装置、服务器和存储介质 |
CN114118434A (zh) * | 2020-08-27 | 2022-03-01 | 朱宝 | 智能机器人及其学习方法 |
CN112044076B (zh) * | 2020-08-28 | 2022-07-29 | 腾讯科技(深圳)有限公司 | 一种对象控制方法、装置及计算机可读存储介质 |
CN112044080B (zh) * | 2020-10-13 | 2022-08-30 | 腾讯科技(深圳)有限公司 | 一种虚拟对象的管理方法以及相关装置 |
CN112329948B (zh) * | 2020-11-04 | 2024-05-10 | 腾讯科技(深圳)有限公司 | 一种多智能体策略预测方法及装置 |
CN112494946B (zh) * | 2020-12-18 | 2022-10-25 | 华南理工大学 | 一种rts游戏重放数据的编码系统和方法 |
CN112633415B (zh) * | 2021-01-11 | 2023-05-19 | 中国人民解放军国防科技大学 | 基于规则约束训练的无人机集群智能任务执行方法和装置 |
CN114272599A (zh) * | 2021-08-23 | 2022-04-05 | 腾讯科技(深圳)有限公司 | 人工智能对象控制方法、装置、设备及存储介质 |
CN114404976B (zh) * | 2022-01-20 | 2024-08-20 | 腾讯科技(深圳)有限公司 | 决策模型的训练方法、装置、计算机设备及存储介质 |
CN115366920B (zh) * | 2022-08-31 | 2024-09-20 | 阿波罗智能技术(北京)有限公司 | 用于自动驾驶车辆的决策方法及装置、设备和介质 |
CN116665847B (zh) * | 2023-08-02 | 2023-10-24 | 南京元域绿洲科技有限公司 | 基于vr的围绕精神障碍的情绪调节训练系统 |
CN116821693B (zh) * | 2023-08-29 | 2023-11-03 | 腾讯科技(深圳)有限公司 | 虚拟场景的模型训练方法、装置、电子设备及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014027103A1 (en) * | 2012-08-16 | 2014-02-20 | Truly Social Ltd. | Dynamic data handling |
CN108888958A (zh) * | 2018-06-22 | 2018-11-27 | 深圳市腾讯网络信息技术有限公司 | 虚拟场景中的虚拟对象控制方法、装置、设备及存储介质 |
CN109445662A (zh) * | 2018-11-08 | 2019-03-08 | 腾讯科技(深圳)有限公司 | 虚拟对象的操作控制方法、装置、电子设备及存储介质 |
CN109529358A (zh) * | 2018-11-14 | 2019-03-29 | 腾讯科技(深圳)有限公司 | 特征整合方法和装置及电子装置 |
CN109816412A (zh) * | 2017-11-21 | 2019-05-28 | 腾讯科技(深圳)有限公司 | 一种训练模型生成方法、装置、设备和计算机存储介质 |
CN109893857A (zh) * | 2019-03-14 | 2019-06-18 | 腾讯科技(深圳)有限公司 | 一种操作信息预测的方法、模型训练的方法及相关装置 |
CN110227264A (zh) * | 2019-06-06 | 2019-09-13 | 腾讯科技(成都)有限公司 | 虚拟对象控制方法、装置、可读存储介质和计算机设备 |
CN110598853A (zh) * | 2019-09-11 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种模型训练的方法、信息处理的方法以及相关装置 |
CN110721470A (zh) * | 2019-10-25 | 2020-01-24 | 网易(杭州)网络有限公司 | 虚拟对象移动行为的控制方法、装置及电子设备 |
-
2020
- 2020-02-05 CN CN202010080662.XA patent/CN111282279B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014027103A1 (en) * | 2012-08-16 | 2014-02-20 | Truly Social Ltd. | Dynamic data handling |
CN109816412A (zh) * | 2017-11-21 | 2019-05-28 | 腾讯科技(深圳)有限公司 | 一种训练模型生成方法、装置、设备和计算机存储介质 |
CN108888958A (zh) * | 2018-06-22 | 2018-11-27 | 深圳市腾讯网络信息技术有限公司 | 虚拟场景中的虚拟对象控制方法、装置、设备及存储介质 |
CN109445662A (zh) * | 2018-11-08 | 2019-03-08 | 腾讯科技(深圳)有限公司 | 虚拟对象的操作控制方法、装置、电子设备及存储介质 |
CN109529358A (zh) * | 2018-11-14 | 2019-03-29 | 腾讯科技(深圳)有限公司 | 特征整合方法和装置及电子装置 |
CN109893857A (zh) * | 2019-03-14 | 2019-06-18 | 腾讯科技(深圳)有限公司 | 一种操作信息预测的方法、模型训练的方法及相关装置 |
CN110227264A (zh) * | 2019-06-06 | 2019-09-13 | 腾讯科技(成都)有限公司 | 虚拟对象控制方法、装置、可读存储介质和计算机设备 |
CN110598853A (zh) * | 2019-09-11 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种模型训练的方法、信息处理的方法以及相关装置 |
CN110721470A (zh) * | 2019-10-25 | 2020-01-24 | 网易(杭州)网络有限公司 | 虚拟对象移动行为的控制方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111282279A (zh) | 2020-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111282279B (zh) | 模型训练的方法、基于交互式应用的对象控制方法及装置 | |
CN108888958B (zh) | 虚拟场景中的虚拟对象控制方法、装置、设备及存储介质 | |
CN109893857B (zh) | 一种操作信息预测的方法、模型训练的方法及相关装置 | |
CN112870721B (zh) | 一种游戏互动方法、装置、设备及存储介质 | |
CN108211362B (zh) | 一种基于深度q学习网络的非玩家角色战斗策略学习方法 | |
CN111340211B (zh) | 一种动作控制模型的训练方法、相关装置及存储介质 | |
CN111598169B (zh) | 一种模型训练方法、游戏测试方法、模拟操作方法及装置 | |
CN110163238B (zh) | 一种信息预测的方法、模型训练的方法以及服务器 | |
CN111985640A (zh) | 一种基于强化学习的模型训练方法以及相关装置 | |
CN110841295B (zh) | 一种基于人工智能的数据处理方法和相关装置 | |
CN105117579A (zh) | 对象选取方法和装置 | |
CN112221152A (zh) | 人工智能ai模型的训练方法、装置、设备及介质 | |
CN112221140B (zh) | 虚拟对象的动作确定模型训练方法、装置、设备及介质 | |
CN112044076B (zh) | 一种对象控制方法、装置及计算机可读存储介质 | |
CN115581922A (zh) | 游戏角色控制方法、装置、存储介质以及电子设备 | |
TW202222395A (zh) | 預購道具的顯示方法、裝置、設備、媒體及產品 | |
CN114404977B (zh) | 行为模型的训练方法、结构扩容模型的训练方法 | |
WO2023024762A1 (zh) | 人工智能对象控制方法、装置、设备及存储介质 | |
CN114344889B (zh) | 游戏策略模型生成方法和游戏中智能体的控制方法 | |
CN111265871A (zh) | 虚拟对象的控制方法及装置、设备、存储介质 | |
CN115944921A (zh) | 游戏数据处理方法、装置、设备及介质 | |
CN116943204A (zh) | 虚拟对象的控制方法、装置和存储介质及电子设备 | |
CN114611664A (zh) | 一种多智能体学习方法、装置及设备 | |
CN113599825A (zh) | 一种游戏对局中更新虚拟资源方法和相关装置 | |
CN114042322B (zh) | 动画展示方法、装置、计算机设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40024275 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |