CN114247144B - 多智能体对抗仿真方法、装置、电子设备及存储介质 - Google Patents
多智能体对抗仿真方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN114247144B CN114247144B CN202111586160.5A CN202111586160A CN114247144B CN 114247144 B CN114247144 B CN 114247144B CN 202111586160 A CN202111586160 A CN 202111586160A CN 114247144 B CN114247144 B CN 114247144B
- Authority
- CN
- China
- Prior art keywords
- agent
- attack
- scene
- situation
- confrontation
- 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
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/55—Controlling game characters or game objects based on the game progress
- A63F13/57—Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
-
- 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/55—Controlling game characters or game objects based on the game progress
- A63F13/57—Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
- A63F13/577—Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game using determination of contact between game characters or objects, e.g. to avoid collision between virtual racing cars
-
- 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/837—Shooting of targets
-
- 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/8076—Shooting
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请涉及多智能体仿真技术领域,特别涉及一种多智能体对抗仿真方法、装置、电子设备及存储介质,其中,方法包括:获取对抗场景参数;基于所述对抗场景参数生成初始场景,其中,所述初始场景包含智能体交互机制,并根据场景的智能体个数分配操控装置;开始仿真后,根据操控指令操控至少一个智能体进行交互,并采集当前场景态势数据;在所述至少一个智能体中的追逃方与攻防方之间的对抗结束后,判定仿真结束,以预设文件格式导出所述当前场景态势数据。由此,解决了相关技术中多智能体对抗仿真无法满足充分研究多智能体行为的需求等问题。
Description
技术领域
本申请涉及多智能体仿真技术领域,特别涉及一种多智能体对抗仿真方法、装置、电子设备及存储介质。
背景技术
多智能体对抗行为仿真是近年来的一项关键技术,在智能网联汽车、智能交通、智能军事等领域都有广泛应用,尤其是在涉及多智能间交互的研究中扮演重要角色,例如多车在交通场景中的协同、博弈,军事场景中的攻击、防御等。随着当前单体智能水平迅速提升,多智能体间的交互行为成为了一项重要的课题,希望机器能够学习人类智慧并最终实现对人类智能的超越。因此,目前对多智能体对抗行为仿真平台的需求也大幅上升。
在对智能体行为的研究中,越来越多的学者开始引入“态势”这一因素。态势是由当前智能体所处的环境综合形成的,包含各个智能体的行为、环境变化以及各种高阶数据,在交通常见的态势有行车风险、道路流量等,而在军事中态势则有阵地归属、攻击能量等。然而当前多智能体对抗仿真无法满足充分研究多智能体行为的需求。
发明内容
本申请提供一种多智能体对抗仿真方法、装置、电子设备及存储介质,以解决相关技术中多智能体对抗仿真无法满足充分研究多智能体行为的需求等问题。
本申请第一方面实施例提供一种多智能体对抗仿真方法,包括以下步骤:获取对抗场景参数;基于所述对抗场景参数生成初始场景,其中,所述初始场景包含智能体交互机制,并根据场景的智能体个数分配操控装置;开始仿真后,根据操控指令操控至少一个智能体进行交互,并采集当前场景态势数据;在所述至少一个智能体中的追逃方与攻防方之间的对抗结束后,判定仿真结束,以预设文件格式导出所述当前场景态势数据。
进一步地,所述当前场景态势数据包括基于攻击方式计算的攻击能量、更新的智能体状态信息和智能体轨迹数据中的一项或多项。
进一步地,所述对抗场景参数包括两方对抗的单元数量、地图场景大小和态势分析网格大小中的一项或多项。
进一步地,所述基于所述对抗场景参数生成初始场景,包括:设置每个智能体的属性,并确定智能体交互机制。
进一步地,在采集所述当前场景态势数据之后,还包括:每个预设时长保存所述当前场景态势数据。
本申请第二方面实施例提供一种多智能体对抗仿真装置,包括:获取模块,用于获取对抗场景参数;生成模块,用于基于所述对抗场景参数生成初始场景,其中,所述初始场景包含智能体交互机制,并根据场景的智能体个数分配操控装置;交互模块,用于开始仿真后,根据操控指令操控至少一个智能体进行交互,并采集当前场景态势数据;导出模块,用于在所述至少一个智能体中的追逃方与攻防方之间的对抗结束后,判定仿真结束,以预设文件格式导出所述当前场景态势数据。
进一步地,所述当前场景态势数据包括基于攻击方式计算的攻击能量、更新的智能体状态信息和智能体轨迹数据中的一项或多项。
进一步地,所述对抗场景参数包括两方对抗的单元数量、地图场景大小和态势分析网格大小中的一项或多项。
进一步地,所述生成模块用于设置每个智能体的属性,并确定智能体交互机制。
进一步地,还包括:保存模块,用于在采集所述当前场景态势数据之后,每个预设时长保存所述当前场景态势数据。
本申请第三方面实施例提供一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现如上述实施例所述的多智能体对抗仿真方法。
本申请第四方面实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上述实施例所述的多智能体对抗仿真方法。
由此,本申请至少具有如下有益效果:
设计了智能体对抗仿真的流程,能够根据实际需求自定义例如智能体数量、场地大小等对抗参数,同时引入了对抗态势计算,能够记录智能体对抗时产生的多种态势,支撑后续复杂决策算法的开发,从而可以实现实时的量化态势分析,同时提供可由人操控智能体的接口,以便研究智能体之间的合作、对抗过程。解决了相关技术中多智能体对抗仿真无法满足充分研究多智能体行为的需求等问题。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为根据本申请实施例提供的多智能体对抗仿真方法的流程示意图;
图2为根据本申请一个实施例提供的多智能体对抗仿真方法的流程示意图;
图3为根据本申请实施例提供的智能体与其毁伤幅员示意图;
图4为根据本申请实施例提供的攻击态势热图;
图5为根据本申请实施例提供的时序样本的特征和标签示意图;
图6为根据本申请实施例提供的对抗仿真平台中的样例示意图;
图7为根据本申请实施例提供的单帧态势数据经过可视化后的示意图;
图8为根据本申请实施例提供的智能体一段时间内的位移示意图;
图9为根据本申请实施例提供的智能体位置预测示意图;
图10为根据本申请实施例提供的多智能体对抗仿真装置的方框示意图;
图11为根据本申请实施例提供的电子设备的方框示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
相关技术中多智能体对抗仿真平台无法满足充分研究多智能体行为的需求,尤其是缺乏态势相关的模块。这些仿真平台主要存在以下问题:
(1)基于特定游戏规则进行细化设定,泛用性差,与实际环境相差较远;
(2)多智能体行为颗粒度粗,无法精准地反馈多智能体单步行为之间的细节,难以支撑分析与量化研究;
(3)对计算机环境的依赖性强,在使用前需要下载大量相关依赖环境并适配系统;
(3)接口封闭性强,无法随需求调用所需要的数据。
相关技术中的多智能体对抗仿真平台如下:
第一、以庙算·智胜为代表的以兵棋推演为模板的平台,该类平台以兵棋机制为核心流程,是一种正反双反的回合制仿真,单步时一方能够采取攻击、防守、移动等行为。该类平台虽然使用简单,通过在线网站即可使用,并且提供人机对抗模式,然而由于基于兵棋流程,回合制行为不符合现实实际,同时单步颗粒度过大,且能够采取的行为选择有限,无法满足后续研究需求。
第二、以mujoco为代表的物理引擎智能体仿真平台,其中较为著名的多智能体平台为Hide-and-seek(捉迷藏)。该平台基于游戏引擎开发,具有较为拟真的物理规律,多用于强化学习相关算法使用。Hide-and-seek流程基于捉迷藏,也是回合制仿真,由追方与逃方轮流进行有限距离的移动。该类平台虽然物理规律强,对移动等行为无约束,然而依旧采用了回合制,无法实时提现多智能体之间的深层对抗,同时该类平台要求下载一系列庞大的计算机环境依赖项,难以使用与安装,对较多软件库都有特定的版本要求,且由于开发者不再进行更新,这些版本大多不是最新版本,干扰计算机其他功能的使用。
第三、以multi-particle为代表的二维智能体仿真,该类平台以粒子碰撞等物理规律设计仿真流程,虽然易于上手,然而由于规则设定过于简单无法真实反映智能体交互过程,同时智能体行为逻辑提前设计,无法进行实时操控,体现不了对人类智能的学习,不适合用于研究复杂的多智能交互决策逻辑。
因此,本申请实施例提出了一种能够体现智能体之间交互行为,同时支持实时量化态势分析,并且可用于提取人类智慧的实时多智能体对抗仿真方法。下面将参考附图描述本申请实施例的多智能体对抗仿真方法、装置、电子设备及存储介质。针对上述背景技术中提到的相关技术中多智能体对抗仿真无法满足充分研究多智能体行为的需求的问题,本申请提供了一种多智能体对抗仿真方法,在该方法中,设计了智能体对抗仿真的流程,能够根据实际需求自定义例如智能体数量、场地大小等对抗参数,同时引入了对抗态势计算,能够记录智能体对抗时产生的多种态势,支撑后续复杂决策算法的开发,从而可以实现实时的量化态势分析,同时提供可由人操控智能体的接口,以便研究智能体之间的合作、对抗过程。由此,解决了相关技术中多智能体对抗仿真无法满足充分研究多智能体行为的需求等问题。
具体而言,图1为本申请实施例所提供的一种多智能体对抗仿真方法的流程示意图。
如图1所示,该多智能体对抗仿真方法包括以下步骤:
在步骤S101中,获取对抗场景参数。
其中,对抗场景参数包括两方对抗的单元数量、地图场景大小和态势分析网格大小中的一项或多项。
可以理解的是,如图2所示,本申请实施例首先输入包括场地大小,智能体个数等的对抗场景参数。
具体而言,在仿真场景开始前,输入仿真场景个性化参数,包括:两方对抗的单元数量、地图场景大小(长、宽)、态势分析网格大小。具体内容如下:
1)对抗单元数量:设定追方与逃方的数量,例如追方4逃方2;同一阵营的智能体互相会进行协同合作等行为,共同达成目标。
2)地图场景大小:输入到仿真平台的为实际场景的大小,在平台中1米对应40像素宽度,根据输入的需求场景大小生成仿真窗口,例如输入的参数为30米长、25米宽,则实际生成的界面大小为1200×1000像素;
3)态势分析网格大小:使用者设定所需要的态势分析颗粒度,在实际分析环境态势时会将场景分割为大小一致的网格,使用者输入的为单个网格的实际大小,例如输入30米长、25米宽的场地,若输入网格宽度为0.5米,则最后输出的态势图就是60×50的矩阵。
在步骤S102中,基于对抗场景参数生成初始场景,其中,初始场景包含智能体交互机制,并根据场景的智能体个数分配操控装置。
可以理解的是,如图2所示,本申请实施例可以基于输入参数生成初始场景,其中包含了智能体交互的机制设计;并根据场景智能体个数分配操控装置,例如支持的操控装置有手柄与键盘。
在本实施例中,基于对抗场景参数生成初始场景,包括:设置每个智能体的属性,并确定智能体交互机制。
具体而言,根据步骤S101中的参数生成场地后,需要对智能体进行初始化,本申请实施例希望模仿多智能体追逃与攻防对抗,因此需要设计智能体交互机制。具体设计如下步骤:
1.1、智能体属性设置。智能体应当具有加速度、速度、初始坐标、朝向、生命值、量化攻击能力等属性。上述智能体设置遵循真实智能体性能,例如一般单体最大速度设置为200像素/秒,对应现实为5米/秒。生命值为最多受到攻击的次数,可由使用者指定。最大转动角速度也可以随使用者需求改变。在初始位置设置时,有两种模式可选:一种为同一阵营初始分布在同一区域,另一种为两方阵营混合分布,可以根据使用者需求调整。
1.2、生成智能体交互机制。智能体具有两种攻击方式,分别为发射子弹与直接碰撞,还原实际对抗场景中的情况,因为在实际对抗围捕与追逃中,也是有两种情况可以视为对抗胜利结束:通过攻击将对方摧毁,或者接触到对方控制对方行为。
在仿真环境中,智能体均为设置成直瞄武器,即直线发射子弹。为模拟真实情况,在仿真设置中实际发射角度与智能体朝向并不相同,而是具有一个服从正态分布的误差项。根据调研,子弹发射角度如式2-1与2-2,其中θ子弹为子弹实际发射的朝向,θ智能体为发射子弹的智能体朝向,ε为服从一个均值为0、为15°的正态分布的误差项:
θ子弹=θ智能体+ε#(2-1)
ε~N(0,15°)#(2-2)
当某个智能体承受到了一次子弹攻击,则其生命值减一,当生命值为0时,改智能体丧失移动能力。
第二种攻击方式为直接碰撞。每个智能体设定有“毁伤幅员”,即碰撞的判定区域,如图3所示,虚线框线所包含的区域便是该智能体的毁伤幅员,只要有两个智能体的毁伤幅员区域部分重叠,则两智能体生命值同时减为0,丧失移动能力。
完成了场景初始设置后,进行智能体操控装置分配:本申请实施例的目的为通过记录人操控多智能体进行对抗的行为,提取人类智慧,所以基本功能为提供可以由实验人员操控智能体的设备与接口。在本申请实施例的仿真平台中,有两类操控装置可供分配,分别为键盘与手柄。通过基于joystick程序包的开发,智能体可以通过手柄完成移动、攻击等行为。实验人员可以选择使用键盘还是手柄进行操控,默认首先生成的智能体由键盘进行操控。键盘至多承担两个智能体的操控,剩余的智能体将分配给手柄。若实验人员希望进行自定义分配(例如全部由手柄控制),则可修改个性化设置。
在步骤S103中,开始仿真后,根据操控指令操控至少一个智能体进行交互,并采集当前场景态势数据。
可以理解的是,如图2所示,仿真开始,实验人员操控智能体进行交互,并生成当前场景态势数据,包括基于攻击方式进行攻击能量计算、智能体状态信息更新、智能体轨迹数据整合等。
具体而言,实验人员按照实验场景目的进行连续实时操控。进行该步时仿真平台会调用内置更新函数,更新函数每0.02秒运行一次,该更新函数基于arcade程序框架进行开发。arcade框架会将所有智能体维护在一个列表中,每次调用on_update函数,都会依次执行这样一些任务:更新智能体列表和子弹列表中各个实体的信息(例如速度、位置等);检查子弹和智能体、以及智能体之间是否有碰撞;如果子弹已经越界则将该子弹从子弹列表中移除。最后将所有智能体渲染到可视化图窗上显示。
在仿真进行期间,需要每0.2秒保存当前的态势信息,以csv文件格式存储在仿真平台所处的文件夹下。需要生成并保存的态势数据包含以下几类,其计算方法分别为:
(1)各智能体的实时属性信息:包括ID、生命值等,直接调用对象状态;
(2)对抗场景量化攻击态势:为体现某一方对整体场地的攻击能力覆盖,使用量化的攻击态势来表征。攻击态势计算方式如下:首先定义单一智能体的攻击能量,在对抗场景中,单一智能体可以通过发射子弹来实行攻击,其攻击能量可以视为子弹造成的威胁,而发射地点距离目标越远命中率越低,此外由于子弹大概率落在智能体朝向正负15度的范围内,因此整体单一智能体产生的攻击能量仅限朝向正负15度之间的区域,同时随着距离变大而衰减。场景中某处坐标(x1,y1)由单一智能体产生的攻击能量计算方法如下式4-1~4-3,其中(xa,ya)为智能体所在位置坐标,θ地点为所计算地点与智能体之间的夹角,d为所计算地点与智能体之间的距离,E攻击为攻击能量,E0为一个攻击能量常数由实验人指定,γ为距离衰减系数,在本样例中取0.8,dmax为智能体最大射程。
在得到了单一智能体对某一地点形成的攻击能量后,整体的攻击态势由下式4-4得到,即将本方所有智能体产生的攻击能量相加:
对场地中所有地点网格都采取同样的计算,即得到最终的量化攻击态势。
得到的攻击态势热图,如图4所示是一个三个智能体构成的攻击态势热图,颜色越亮的区域表示攻击态势越强。
(3)时序位置与运动状态信息:在多智能体预测、群体智能决策中,各个智能体的位置、速度、朝向信息至关重要,因此需要记录过去一段时间内各个智能体的移动数据。对该类数据,采取以下处理方法:
首先对角度值进行处理。原始数据实际得到的角度值取值在-360度~0度。但角度是个周期性质的量,360度和0度在方向上没有差别,但是数值上差别比较大,如果不做预处理,在后续数据理解中容易把360度和0度看作是不同的特征。因此通过把速度、加速度在x,y方向上做分解,通过把角度值信息包含到速度和加速度的分量中去,可以解决这个问题。如公式4-5~4-8所示。
vx=v×cosα#(4-5)
vy=v×sinα#(4-6)
ax=a×cosα#(4-7)
ay=a×sinα#(4-8)
其次,对各项状态信息进行归一化处理。当前对于多智能体的研究场场结合深度学习模型,而在深度学习模型中,如果输入输出数据的数值的绝对值较大,会导致模型的损失函数值变大,进而反向传播产生的梯度会比较大,容易导致训练不稳定。因此针对位置、速度、加速度、态势值,都按照各项数据的最大值进行了归一化,将数据归一化到0~1之间。
随后,对多智能体的位置历史时间序列进行样本构造。时间序列一般依照某个相等的时间间隔对观测变量进行采样。时间序列是一系列实数值数据:X1,X2,X3,...,Xt,Xt∈R(t∈Z)。在对抗环境中,本质是多元时间序列数据,如公式4-9的矩阵XT×N所示:
本申请实施例可以采用如下方法进行一个样本的建模:将前T帧作为特征,后X帧作为标签,样本构造如图5所示。这样的构造有便于后续进行多智能体决策、预测等研究的实验方法验证,具有可延展性与通用性。
(4)对抗场景对局录像:在实际研究中,往往需要选取特定的某几局仿真做样本研究,因此需要对全程进行录像。本仿真平台提供两种录像模式,一种是通过记录每一时刻智能体的状态信息通过再现代码复现对抗,另一种适用于计算机存储空间较大的实验人员,可以基于windows系统自带的截屏功能对对局进行视频存储。
在本实施例中,在采集当前场景态势数据之后,还包括:每个预设时长保存当前场景态势数据。
其中,预设时长可以根据存储的需求具体设置,对此不作具体限定。
可以理解的是,本申请实施例可以将上述生成的各类态势数据滚动写入csv文件中,以保存生成的态势数据。
在步骤S104中,在至少一个智能体中的追逃方与攻防方之间的对抗结束后,判定仿真结束,以预设文件格式导出当前场景态势数据。
其中,预设文件格式可以根据实际需求具体设置,比如可以设置为csv文件格式等,对此不作具体限定。
可以理解的是,如图2所示,判断对抗是否结束,若未结束则回到步骤S103,若仿真结束,则可以以csv文件格式导出上述保存的态势数据。
具体而言,判断对抗是否结束。判定的标准有几类,一类为一方将另一方的所有智能体生命值全部清零(无论通过子弹攻击还是冲撞),一类为围捕成功,即数量多的一方触碰到所有数量少的一方的智能体,第三类为占领特定地区,占领方式为在某一区域内停留特定时间(由实验人员自由设置)。若对抗未结束,则返回步骤S4继续仿真对抗;若对抗结束,导出态势数据文件,将上述保存的csv输出,仿真结束。
下面给出该对抗仿真平台的一个样例,如图6所示,输入仿真场景参数,设置为30米宽25米长,三个浅颜色单元追捕一个深颜色单元,深颜色单元使用手柄操控,浅颜色单元使用键盘操控。在仿真过程中,得到的单帧态势数据经过可视化后如图7所示;通过态势数据记录后,还原的智能体一段时间内的位移如图8所示。如图9所示,以该仿真平台态势数据为基础,进行了智能体位置预测研究,实线为智能体历史轨迹,星号为智能体未来实际轨迹,五角星为智能体未来预测得到的轨迹,可以看到本仿真平台所记录的数据足够支撑同类型的多智能体决策、行为研究。
综上,本申请实施例的方法可以应用于仿真平台上,通过考虑量化态势的多智能体对抗仿真,可以实现一个两方追逃、攻击对抗的场景,方式为发射子弹攻击与闪躲,在进行对抗时,平台实时生成态势热力图以便后续分析研究。具体地:本申请实施例通过对智能体行为本质分析,得到了其相关场景态势的计算机制设计,同时设计了智能体之间贴近实际的交互对抗形式,符合当前多智能体研究的需求;相较于其他同类型智能体对抗仿真平台,本平台以实时操控的机制取代回合制,操控颗粒度细,贴近实际情况,同时提供大量的量化态势数据接口,能够辅助后续的多智能体决策研究。
根据本申请实施例提出的多智能体对抗仿真方法,设计了智能体对抗仿真的流程,能够根据实际需求自定义例如智能体数量、场地大小等对抗参数,同时引入了对抗态势计算,能够记录智能体对抗时产生的多种态势,支撑后续复杂决策算法的开发,从而可以实现实时的量化态势分析,同时提供可由人操控智能体的接口,以便研究智能体之间的合作、对抗过程。
其次参照附图描述根据本申请实施例提出的多智能体对抗仿真装置。
图10是本申请实施例的多智能体对抗仿真装置的方框示意图。
如图10所示,该多智能体对抗仿真装置10包括:获取模块100、生成模块200、交互模块300和导出模块400。
其中,获取模块100用于获取对抗场景参数;生成模块200用于基于对抗场景参数生成初始场景,其中,初始场景包含智能体交互机制,并根据场景的智能体个数分配操控装置;交互模块300用于开始仿真后,根据操控指令操控至少一个智能体进行交互,并采集当前场景态势数据;导出模块400用于在至少一个智能体中的追逃方与攻防方之间的对抗结束后,判定仿真结束,以预设文件格式导出当前场景态势数据。
在本实施例中,当前场景态势数据包括基于攻击方式计算的攻击能量、更新的智能体状态信息和智能体轨迹数据中的一项或多项。
在本实施例中,对抗场景参数包括两方对抗的单元数量、地图场景大小和态势分析网格大小中的一项或多项。
在本实施例中,生成模块200用于设置每个智能体的属性,并确定智能体交互机制。
在本实施例中,本申请实施例的装置10还包括:保存模块。其中,保存模块用于在采集当前场景态势数据之后,每个预设时长保存当前场景态势数据。
需要说明的是,前述对多智能体对抗仿真方法实施例的解释说明也适用于该实施例的多智能体对抗仿真装置,此处不再赘述。
根据本申请实施例提出的多智能体对抗仿真装置,设计了智能体对抗仿真的流程,能够根据实际需求自定义例如智能体数量、场地大小等对抗参数,同时引入了对抗态势计算,能够记录智能体对抗时产生的多种态势,支撑后续复杂决策算法的开发,从而可以实现实时的量化态势分析,同时提供可由人操控智能体的接口,以便研究智能体之间的合作、对抗过程。
图11为本申请实施例提供的电子设备的结构示意图。该电子设备可以包括:
存储器1101、处理器1102及存储在存储器1101上并可在处理器1102上运行的计算机程序。
处理器1102执行程序时实现上述实施例中提供的多智能体对抗仿真方法。
进一步地,电子设备还包括:
通信接口1103,用于存储器1101和处理器1102之间的通信。
存储器1101,用于存放可在处理器1102上运行的计算机程序。
存储器1101可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
如果存储器1101、处理器1102和通信接口1103独立实现,则通信接口1103、存储器1101和处理器1102可以通过总线相互连接并完成相互间的通信。总线可以是工业标准体系结构(Industry Standard Architecture,简称为ISA)总线、外部设备互连(PeripheralComponent,简称为PCI)总线或扩展工业标准体系结构(Extended Industry StandardArchitecture,简称为EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图11中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
可选地,在具体实现上,如果存储器1101、处理器1102及通信接口1103,集成在一块芯片上实现,则存储器1101、处理器1102及通信接口1103可以通过内部接口完成相互间的通信。
处理器1102可能是一个中央处理器(Central Processing Unit,简称为CPU),或者是特定集成电路(Application Specific Integrated Circuit,简称为ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上的多智能体对抗仿真方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或N个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“N个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更N个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或N个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,N个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种多智能体对抗仿真方法,其特征在于,包括以下步骤:
获取对抗场景参数;
基于所述对抗场景参数生成初始场景,其中,所述初始场景包含智能体交互机制,并根据场景的智能体个数分配操控装置;
开始仿真后,根据操控指令操控至少一个智能体进行交互,并采集当前场景态势数据;
在所述至少一个智能体中的追逃方与攻防方之间的对抗结束后,判定仿真结束,以预设文件格式导出所述当前场景态势数据;
其中,所述当前场景态势数据包括基于攻击方式计算的攻击态势、更新的智能体状态信息和智能体轨迹数据中的一项或多项,每种态势数据的计算方式如下:
若所述当前场景态势数据为更新的智能体状态信息,则态势数据的计算方式为:各智能体的实时属性信息:直接调用对象状态;对抗场景量化攻击态势:为体现某一方对整体场地的攻击能力覆盖,使用量化的攻击态势来表征;
若所述当前场景态势数据为基于攻击方式计算的攻击态势,则态势数据的计算方式为:使用量化的攻击态势来表征任意智能体对整体场地的攻击能力覆盖,攻击态势计算具体包括:定义单一智能体的攻击能量,在对抗场景中,单一智能体通过发射子弹来实行攻击,其攻击能量视为子弹造成的威胁,发射地点距离目标越远命中率越低,整体单一智能体产生的攻击能量限朝向正负15度之间的区域,随着距离变大而衰减,场景中某处坐标(x1,y1)由单一智能体产生的攻击能量计算方法如下式;
其中,(xa,ya)为智能体所在位置坐标,θ地点为所计算地点与智能体之间的夹角,d为所计算地点与智能体之间的距离,E攻击为攻击能量,E0为一个攻击能量常数,γ为距离衰减系数;
在得到单一智能体对某一地点形成的攻击能量后,整体的攻击态势由下式得到,将所有智能体产生的攻击能量相加:
对场地中所有地点网格都采取同样的计算,得到最终的量化攻击态势;
2.根据权利要求1所述的方法,其特征在于,所述对抗场景参数包括两方对抗的单元数量、地图场景大小和态势分析网格大小中的一项或多项。
3.根据权利要求1所述的方法,其特征在于,所述基于所述对抗场景参数生成初始场景,包括:设置每个智能体的属性,并确定智能体交互机制。
4.根据权利要求1-3任一项所述的方法,其特征在于,在采集所述当前场景态势数据之后,还包括:
每个预设时长保存所述当前场景态势数据。
5.一种多智能体对抗仿真装置,其特征在于,包括:
获取模块,用于获取对抗场景参数;
生成模块,用于基于所述对抗场景参数生成初始场景,其中,所述初始场景包含智能体交互机制,并根据场景的智能体个数分配操控装置;
交互模块,用于开始仿真后,根据操控指令操控至少一个智能体进行交互,并采集当前场景态势数据;以及
导出模块,用于在所述至少一个智能体中的追逃方与攻防方之间的对抗结束后,判定仿真结束,以预设文件格式导出所述当前场景态势数据;
其中,所述当前场景态势数据包括基于攻击方式计算的攻击态势、更新的智能体状态信息和智能体轨迹数据中的一项或多项,每种态势数据的计算方式如下:
若所述当前场景态势数据为更新的智能体状态信息,则态势数据的计算方式为:各智能体的实时属性信息:直接调用对象状态;对抗场景量化攻击态势:为体现某一方对整体场地的攻击能力覆盖,使用量化的攻击态势来表征;
若所述当前场景态势数据为基于攻击方式计算的攻击态势,则态势数据的计算方式为:定义单一智能体的攻击能量,在对抗场景中,单一智能体通过发射子弹来实行攻击,其攻击能量视为子弹造成的威胁,发射地点距离目标越远命中率越低,整体单一智能体产生的攻击能量限朝向正负15度之间的区域,随着距离变大而衰减,场景中某处坐标(x1,y1)由单一智能体产生的攻击能量计算方法如下式;
其中,(xa,ya)为智能体所在位置坐标,θ地点为所计算地点与智能体之间的夹角,d为所计算地点与智能体之间的距离,E攻击为攻击能量,E0为一个攻击能量常数,γ为距离衰减系数;
在得到单一智能体对某一地点形成的攻击能量后,整体的攻击态势由下式得到,将所有智能体产生的攻击能量相加:
对场地中所有地点网格都采取同样的计算,得到最终的量化攻击态势;
6.根据权利要求5所述的装置,其特征在于,所述对抗场景参数包括两方对抗的单元数量、地图场景大小和态势分析网格大小中的一项或多项。
7.根据权利要求5所述的装置,其特征在于,所述生成模块用于设置每个智能体的属性,并确定智能体交互机制。
8.根据权利要求5-7任一项所述的装置,其特征在于,还包括:
保存模块,用于在采集所述当前场景态势数据之后,每个预设时长保存所述当前场景态势数据。
9.一种电子设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现如权利要求1-4任一项所述的多智能体对抗仿真方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行,以用于实现如权利要求1-4任一项所述的多智能体对抗仿真方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111586160.5A CN114247144B (zh) | 2021-12-21 | 2021-12-21 | 多智能体对抗仿真方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111586160.5A CN114247144B (zh) | 2021-12-21 | 2021-12-21 | 多智能体对抗仿真方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114247144A CN114247144A (zh) | 2022-03-29 |
CN114247144B true CN114247144B (zh) | 2023-04-14 |
Family
ID=80796981
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111586160.5A Active CN114247144B (zh) | 2021-12-21 | 2021-12-21 | 多智能体对抗仿真方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114247144B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111159832A (zh) * | 2018-10-19 | 2020-05-15 | 百度在线网络技术(北京)有限公司 | 交通信息流的构建方法和装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8948501B1 (en) * | 2009-12-22 | 2015-02-03 | Hrl Laboratories, Llc | Three-dimensional (3D) object detection and multi-agent behavior recognition using 3D motion data |
CN109740283A (zh) * | 2019-01-17 | 2019-05-10 | 清华大学 | 自主多智能体对抗仿真方法及系统 |
CN110119773B (zh) * | 2019-05-07 | 2021-07-23 | 中国科学院自动化研究所 | 战略博弈系统的全局态势评估方法、系统和装置 |
-
2021
- 2021-12-21 CN CN202111586160.5A patent/CN114247144B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111159832A (zh) * | 2018-10-19 | 2020-05-15 | 百度在线网络技术(北京)有限公司 | 交通信息流的构建方法和装置 |
Non-Patent Citations (1)
Title |
---|
杨建华,吴朝晖,潘云鹤.面向虚拟战场的攻防对抗仿真技术研究.计算机仿真.2005,(08),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN114247144A (zh) | 2022-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7159458B2 (ja) | 仮想環境における仮想対象のスケジューリング方法、装置、デバイス及びコンピュータプログラム | |
Cioppa et al. | Military applications of agent-based simulations | |
Abbass et al. | Computational red teaming: Past, present and future | |
CN113705102B (zh) | 海空集群对抗的推演仿真系统及方法、设备、存储介质 | |
CN113791634A (zh) | 一种基于多智能体强化学习的多机空战决策方法 | |
CN109740283A (zh) | 自主多智能体对抗仿真方法及系统 | |
Wintermute et al. | SORTS: A human-level approach to real-time strategy AI | |
Barlow et al. | Crocadile-an open, extensible agent-based distillation engine | |
CN116661503B (zh) | 一种基于多智能体安全强化学习的集群航迹自动规划方法 | |
Park et al. | Simulation framework for small scale engagement | |
Ilachinski | Artificial intelligence and autonomy: Opportunities and challenges | |
CN113509726B (zh) | 交互模型训练方法、装置、计算机设备和存储介质 | |
CN114247144B (zh) | 多智能体对抗仿真方法、装置、电子设备及存储介质 | |
Horne | Maneuver warfare distillations: essence not verisimilitude | |
Soleyman et al. | Multi-agent mission planning with reinforcement learning | |
Buro et al. | On the development of a free RTS game engine | |
CN112561032A (zh) | 一种基于种群训练的多智能体强化学习方法及系统 | |
Ilachinski | Towards a science of experimental complexity: An artificial-life approach to modeling warfare | |
CN114935893A (zh) | 基于双层模型的作战场景中飞机的动作控制方法及装置 | |
Zhang et al. | Intelligent battlefield situation comprehension method based on deep learning in wargame | |
Hillestad et al. | The theater-level campaign model: A research prototype for a new generation of combat analysis model | |
TR2021014085A2 (tr) | Tecrübe i̇le sürekli̇ öğrenen otonom sanal si̇mülatör varliklari | |
Möbius et al. | AI-based Military Decision Support Using Natural Language | |
Yang | A networked multi-agent combat model: Emergence explained | |
CN117973494A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |