CN111957053A - 游戏玩家匹配方法、装置、存储介质与电子设备 - Google Patents
游戏玩家匹配方法、装置、存储介质与电子设备 Download PDFInfo
- Publication number
- CN111957053A CN111957053A CN202010914674.8A CN202010914674A CN111957053A CN 111957053 A CN111957053 A CN 111957053A CN 202010914674 A CN202010914674 A CN 202010914674A CN 111957053 A CN111957053 A CN 111957053A
- Authority
- CN
- China
- Prior art keywords
- dynamic
- game
- static
- graph
- matching
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 230000003068 static effect Effects 0.000 claims abstract description 167
- 230000002452 interceptive effect Effects 0.000 claims abstract description 115
- 230000015654 memory Effects 0.000 claims description 52
- 230000004931 aggregating effect Effects 0.000 claims description 22
- 238000000605 extraction Methods 0.000 claims description 22
- 238000012545 processing Methods 0.000 claims description 11
- 238000012549 training Methods 0.000 claims description 11
- 238000004422 calculation algorithm Methods 0.000 claims description 9
- 230000006403 short-term memory Effects 0.000 claims description 8
- 230000007787 long-term memory Effects 0.000 claims description 7
- 238000005070 sampling Methods 0.000 claims description 3
- 238000004590 computer program Methods 0.000 claims description 2
- 230000003993 interaction Effects 0.000 description 23
- 239000013598 vector Substances 0.000 description 18
- 230000008859 change Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 11
- 230000002776 aggregation Effects 0.000 description 10
- 238000004220 aggregation Methods 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000004913 activation Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000001556 precipitation Methods 0.000 description 1
- 239000004065 semiconductor Substances 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/70—Game security or game management aspects
- A63F13/79—Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
- A63F13/795—Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories for finding other players; for building a team; for providing a buddy list
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- 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/50—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 characterized by details of game servers
- A63F2300/55—Details of game data or player data management
- A63F2300/5546—Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history
- A63F2300/5566—Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history by matching opponents or finding partners to build a team, e.g. by skill level, geographical area, background, play style
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开提供了一种游戏玩家匹配方法、装置、存储介质与电子设备,属于计算机技术领域。所述方法包括:获取各游戏客户端在全局时间内的交互特征数据;根据所述交互特征数据,以其中的一个或多个游戏客户端为节点,建立静态拓扑图;根据所述交互特征数据和对应的时间点,以其中的一个或多个游戏客户端为节点,建立动态拓扑图;通过静态图模型提取所述静态拓扑图的静态特征,以及通过动态图模型提取所述动态拓扑图的动态特征;根据所述静态特征和所述动态特征生成各所述游戏客户端的目标特征;计算任意两个所述目标特征之间的匹配度,以根据所述匹配度将对应的目标特征所对应的两个游戏客户端匹配为游戏分组。本公开可以提高游戏玩家的匹配准确率。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种游戏玩家匹配方法、游戏玩家匹配装置、计算机可读存储介质与电子设备。
背景技术
随着互联网技术的不断发展,网络游戏的类型逐渐多样化。其中,匹配游戏由于其具有交互性强、战术性强等的特点,受到了玩家们的广泛喜爱。
在上述游戏类型中,通常需要将多个玩家匹配为一个游戏分组,目前的匹配方法主要是根据玩家的游戏段位和等级将相同段位或等级的玩家随机匹配为一个游戏分组。然而,仅根据玩家的游戏段位和等级等进行匹配所产生的匹配准确率较低,并且由于上述游戏匹配方法在每局游戏开始时,玩家所匹配到的游戏分组都是随机产生的,因此,玩家无法自发地进行好友沉淀或游戏匹配,游戏体验度不高。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开提供了一种游戏玩家匹配方法、游戏玩家匹配装置、计算机可读存储介质与电子设备,进而至少在一定程度上改善现有技术游戏匹配准确率不高的问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的第一方面,提供一种游戏玩家匹配方法,所述方法包括:获取各游戏客户端在全局时间内的交互特征数据,其中,所述交互特征数据为体现各所述游戏客户端之间交互关系的数据;根据所述交互特征数据,以其中的一个或多个游戏客户端为节点,建立静态拓扑图;根据所述交互特征数据和对应的时间点,以其中的一个或多个游戏客户端为节点,建立动态拓扑图;通过静态图模型提取所述静态拓扑图的静态特征,以及通过动态图模型提取所述动态拓扑图的动态特征;根据所述静态特征和所述动态特征生成各所述游戏客户端的目标特征;计算任意两个所述目标特征之间的匹配度,以根据所述匹配度将对应的目标特征所对应的两个游戏客户端匹配为游戏分组。
在本公开的一种示例性实施方式中,所述根据所述交互特征数据,以其中的一个或多个游戏客户端为节点,建立静态拓扑图,包括:在根据所述交互特征数据确定任意两个游戏客户端在所述全局时间内任一时间点存在交互关系时,以所述任意两个游戏客户端为节点,并在所述任意两个游戏客户端的节点之间建立边,建立所述静态拓扑图。
在本公开的一种示例性实施方式中,所述根据所述交互特征数据和对应的时间点,以其中的一个或多个游戏客户端为节点,建立动态拓扑图,包括:按照预设时间间隔对所述交互特征数据进行采样,以获取至少两个时间点的交互特征数据;根据所述至少两个时间点的交互特征数据确定在各时间点任意两个游戏客户端是否存在交互关系;在确定所述任意两个游戏客户端存在交互关系时,以所述任意两个游戏客户端为节点,在所述任意两个游戏客户端的节点之间建立边,建立对应时间点的拓扑图,以得到所述动态拓扑图。
在本公开的一种示例性实施方式中,所述静态图模型包括第一图卷积网络,所述通过静态图模型提取所述静态拓扑图的静态特征,包括:将所述静态拓扑图输入至所述第一图卷积网络,提取所述静态拓扑图的静态特征。
在本公开的一种示例性实施方式中,所述将所述静态拓扑图输入至所述第一图卷积网络,提取所述静态拓扑图的静态特征,包括:在所述静态拓扑图中确定与任一节点具有交互关系的邻居节点;对所述邻居节点的输入特征进行聚合,并通过所述第一图卷积网络进行预设层数的迭代,得到所述任一节点的静态特征。
在本公开的一种示例性实施方式中,所述动态图模型包括第二图卷积网络,所述通过动态图模型提取所述动态拓扑图的动态特征,包括:将所述动态拓扑图输入至所述第二图卷积网络,提取所述动态拓扑图的动态特征。
在本公开的一种示例性实施方式中,所述将所述动态拓扑图输入至所述第二图卷积网络,提取所述动态拓扑图的动态特征,包括:根据所述动态拓扑图,确定所述至少两个时间点对应的各时间点的子动态拓扑图;在所述各时间点的子动态拓扑图中确定与任一节点具有交互关系的邻居节点;对所述邻居节点的输入特征进行聚合,并通过所述第二图卷积网络进行预设层数的迭代,得到所述任一节点在所述各时间点的序列特征;对所述任一节点在所述各时间点的序列特征进行聚合,得到所述任一节点的动态特征。
在本公开的一种示例性实施方式中,所述对所述任一节点在所述各时间点的序列特征进行聚合,得到所述任一节点的动态特征,包括:根据所述任一节点在所述各时间点的序列特征,确定所述任一节点在每个时间点的子序列特征;采用长短期记忆网络依次聚合所述任一节点在每个时间点的子序列特征,以将所述长短期记忆网络的隐藏层的状态确定为所述任一节点的动态特征;其中,所述长短期记忆网络包括遗忘门、输入门和输出门。
在本公开的一种示例性实施方式中,所述根据所述静态特征和所述动态特征生成各所述游戏客户端的目标特征,包括:拼接所述静态特征和所述动态特征,以生成各所述游戏客户端的目标特征。
在本公开的一种示例性实施方式中,所述第一图卷积网络和所述第二图卷积网络为相同的图卷积网络。
在本公开的一种示例性实施方式中,所述根据所述匹配度将对应的目标特征所对应的两个游戏客户端匹配为游戏分组,包括:将所述匹配度大于预设阈值的目标特征所对应的两个游戏客户端匹配为游戏分组。
在本公开的一种示例性实施方式中,所述方法还包括:通过反向传播算法对所述动态图模型和所述静态图模型进行联合训练。
根据本公开的第二方面,提供一种游戏玩家匹配装置,所述游戏玩家匹配装置包括:获取模块,用于获取各游戏客户端在全局时间内的交互特征数据,其中,所述交互特征数据为体现各所述游戏客户端之间交互关系的数据;第一建立模块,用于根据所述交互特征数据,以其中的一个或多个游戏客户端为节点,建立静态拓扑图;第二建立模块,用于根据所述交互特征数据和对应的时间点,以其中的一个或多个游戏客户端为节点,建立动态拓扑图;提取模块,用于通过静态图模型提取所述静态拓扑图的静态特征,以及通过动态图模型提取所述动态拓扑图的动态特征;生成模块,用于根据所述静态特征和所述动态特征生成各所述游戏客户端的目标特征;匹配模块,用于计算任意两个所述目标特征之间的匹配度,以根据所述匹配度将对应的目标特征所对应的两个游戏客户端匹配为游戏分组。
在本公开的一种示例性实施方式中,所述第一建立模块用于在根据所述交互特征数据确定任意两个游戏客户端在所述全局时间内任一时间点存在交互关系时,以所述任意两个游戏客户端为节点,并在所述任意两个游戏客户端的节点之间建立边,建立所述静态拓扑图。
在本公开的一种示例性实施方式中,所述第二建立模块用于按照预设时间间隔对所述交互特征数据进行采样,以获取至少两个时间点的交互特征数据,根据所述至少两个时间点的交互特征数据确定在各时间点任意两个游戏客户端是否存在交互关系,在确定所述任意两个游戏客户端存在交互关系时,以所述任意两个游戏客户端为节点,在所述任意两个游戏客户端的节点之间建立边,建立对应时间点的拓扑图,以得到所述动态拓扑图。
在本公开的一种示例性实施方式中,所述静态图模型包括第一图卷积网络,所述提取模块用于将所述静态拓扑图输入至所述第一图卷积网络,提取所述静态拓扑图的静态特征。
在本公开的一种示例性实施方式中,所述提取模块还用于在所述静态拓扑图中确定与任一节点具有交互关系的邻居节点,对所述邻居节点的输入特征进行聚合,并通过所述第一图卷积网络进行预设层数的迭代,得到所述任一节点的静态特征。
在本公开的一种示例性实施方式中,所述动态图模型包括第二图卷积网络,所述提取模块还用于将所述动态拓扑图输入至所述第二图卷积网络,提取所述动态拓扑图的动态特征。
在本公开的一种示例性实施方式中,所述提取模块还用于根据所述动态拓扑图,确定所述至少两个时间点对应的各时间点的子动态拓扑图;在所述各时间点的子动态拓扑图中确定与任一节点具有交互关系的邻居节点;对所述邻居节点的输入特征进行聚合,并通过所述第二图卷积网络进行预设层数的迭代,得到所述任一节点在所述各时间点的序列特征,对所述任一节点在所述各时间点的序列特征进行聚合,得到所述任一节点的动态特征。
在本公开的一种示例性实施方式中,所述提取模块还用于根据所述任一节点在所述各时间点的序列特征,确定所述任一节点在每个时间点的子序列特征,采用长短期记忆网络依次聚合所述任一节点在每个时间点的子序列特征,以将所述长短期记忆网络的隐藏层的状态确定为所述任一节点的动态特征,其中,所述长短期记忆网络包括遗忘门、输入门和输出门。
在本公开的一种示例性实施方式中,所述生成模块用于拼接所述静态特征和所述动态特征,以生成各所述游戏客户端的目标特征。
在本公开的一种示例性实施方式中,所述第一图卷积网络和所述第二图卷积网络为相同的图卷积网络。
在本公开的一种示例性实施方式中,所述匹配模块用于将所述匹配度大于预设阈值的目标特征所对应的两个游戏客户端匹配为游戏分组。
在本公开的一种示例性实施方式中,所述提取模块还用于通过反向传播算法对所述动态图模型和所述静态图模型进行联合训练。
根据本公开的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一种游戏玩家匹配方法。
根据本公开的第四方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一种游戏玩家匹配方法。
本公开具有以下有益效果:
根据本示例性实施方式中的游戏玩家匹配方法、游戏玩家匹配装置、计算机可读存储介质和电子设备,可以根据各游戏客户端在全局时间内的交互特征数据建立静态拓扑图,根据上述交互特征数据和对应的时间点建立动态拓扑图,通过静态图模型提取静态拓扑图的静态特征,以及通过动态图模型提取动态拓扑图的动态特征,根据上述静态特征和动态特征生成各游戏客户端的目标特征,从而计算任意两个目标特征之间的匹配度,将对应的游戏客户端匹配为游戏分组。一方面,本示例性实施方式通过静态图模型和动态图模型提取静态特征和动态特征,以生成目标特征,可以将抽象的交互关系映射为具体的特征向量,并且通过静态特征和动态特征可以综合考量游戏客户端在全局时间内的交互关系和在时间维度上的交互关系变化,因此可以提高提取目标特征的全面性和准确性,由此也提高了游戏玩家匹配的准确率;另一方面,通过计算各游戏客户端的目标特征之间的匹配度,可以将多个游戏客户端匹配为游戏分组,避免了随机匹配造成的匹配准确率不高的问题,在相当程度上提高了玩家的游戏体验;再一方面,通过根据各游戏客户端的交互关系建立静态拓扑图和动态拓扑图,能够满足大量游戏客户端交互关系的分析,同时,结合静态拓扑图和动态拓扑图,可以体现各游戏客户端在全局时间内的交互关系和各时间点交互关系的变化,为研究游戏客户端的交互关系提供了技术支撑。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施方式,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出本示例性实施方式中一种游戏玩家匹配方法的流程图;
图2示出本示例性实施方式中一种静态拓扑图的示意图;
图3示出本示例性实施方式中一种动态拓扑图的示意图;
图4示出本示例性实施方式中另一种游戏玩家匹配方法的流程图;
图5示出本示例性实施方式中再一种游戏玩家匹配方法的流程图;
图6示出本示例性实施方式中一种游戏玩家匹配装置的结构框图;
图7示出本示例性实施方式中一种用于实现上述方法的计算机可读存储介质;
图8示出本示例性实施方式中一种用于实现上述方法的电子设备。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
本公开的示例性实施方式首先提供了一种游戏玩家匹配方法。该方法可以由游戏应用程序后台的匹配服务器执行,根据玩家所在游戏客户端的交互特征数据生成各游戏客户端的目标特征,并根据该目标特征将多个游戏客户端匹配为游戏分组。其中,游戏客户端可以是玩家所在的手机、平板电脑、计算机或游戏机等;交互特征数据可以是体现各游戏客户端之间交互关系的数据,例如可以包括各游戏客户端的玩家标识、时间、各游戏客户端之间的游戏事件信息,如添加好友、进行匹配和战斗、邀请、聊天,以及匹配类型和匹配玩家标识等中的任意一种或多种。
图1示出了本示例性实施方式的一种流程,可以包括以下步骤S110~S160:
步骤S110.获取各游戏客户端在全局时间内的交互特征数据。
其中,全局时间可以根据实际需求进行设置,例如可以设置为一周或一个月等。
通常,各游戏客户端之间的交互特征数据可以保存在特定的数据库或数据平台中,操作人员可以以各游戏客户端的标识或时间等为索引,在上述数据库或数据平台中获取各游戏客户端在对应的全局时间内的交互特征数据。
步骤S120.根据上述交互特征数据,以其中的一个或多个游戏客户端为节点,建立静态拓扑图。
其中,静态拓扑图是指由若干个节点和连接节点的边所组成的结构模型,可以表示一段时间内节点之间的稳定关系,也就是说,静态拓扑图中,节点和边均是固定的,不会随着时间的变化而变化。
根据各游戏客户端的交互特征数据确定各游戏客户端之间在全局时间内是否存在交互关系,当确定各游戏客户端存在交互关系时,可以以各游戏客户端为节点,并在各游戏客户端之间建立边,从而建立静态拓扑图。
由于在各游戏客户端中,存在部分游戏客户端之间不存在交互关系,因此,为了降低静态拓扑图的计算复杂度,在一种可选的实施方式中,步骤S120还可以通过以下方式实现:
在根据上述交互特征数据确定任意两个游戏客户在全局时间内任一时间点存在交互关系时,以上述任意两个游戏客户端为节点,并在上述任意两个游戏客户端的节点之间建立边,来建立静态拓扑图。例如,在根据交互特征数据确定任意两个游戏客户端在全局时间内某个时间点添加了好友,则可以确定上述两个游戏客户端之间存在交互关系,从而以这两个游戏客户端为两个节点,并在两个节点之间建立边。通过这种方式依次判断任意两个游戏客户端之间在全局时间内的交互关系,在对应的两个游戏客户端节点之间建立边,从而生成各游戏客户端的静态拓扑图。图2示出了一种静态拓扑图的示意图,如图所示,节点A、B、C、D和E、F分别表示不同的游戏客户端,具有连边的节点,如AE、AD、CD等则表示两个节点对应的游戏客户端之间在全局时间内存在交互关系。
步骤S130.根据上述交互特征数据和对应的时间点,以其中的一个或多个游戏客户端为节点,建立动态拓扑图。
其中,动态拓扑图也是一种由若干个节点和连接节点的边所组成的结构模型,与静态拓扑图不同的是,动态拓扑图的节点和边可以随着时间的变化而变化,例如,当游戏客户端新添加了好友时,动态拓扑图中可以增加新的节点和连边。
根据各游戏客户端的交互特征数据可以确定各游戏客户端之间在全局时间内的各个时间点是否存在交互关系,当确定任意两个游戏客户端在某个时间点存在交互关系时,可以以上述任意两个游戏客户端为节点,并在该游戏客户端之间建立边,来建立当前时间点的拓扑图;在下个时间点,若上述任意两个游戏客户端之间不存在交互关系时,则可以在下个时间点的拓扑图中,去掉上述任意两个游戏客户端的节点之间的连边,从而建立下个时间点的拓扑图。通过这种方式可以确定各时间点游戏客户端之间的交互关系,从而根据该交互关系建立各时间点的拓扑图,以得到动态拓扑图。
由于各游戏客户端的交互特征数据量一般较大,因此,为了提高建立动态拓扑图的效率,在一种可选的实施方式中,步骤S130可以通过以下方式实现:
按照预设时间间隔对上述交互特征数据进行采样,以获取上述至少两个时间点的交互特征数据;
根据上述至少两个时间点的交互特征数据确定在各时间点任意两个游戏客户端是否存在交互关系;
在确定上述任意两个游戏客户端存在交互关系时,以上述任意两个游戏客户端为节点,在上述任意两个游戏客户端的节点之间建立边,建立对应时间点的拓扑图,以得到动态拓扑图。
其中,预设时间间隔通常可以根据全局时间及操作人员的经验进行设置,例如,当全局时间为一个月时,预设时间间隔可以是一天、12个小时或6个小时等。
根据上述至少两个时间点的交互特征数据确定在各时间点任意两个游戏客户端之间的交互关系,例如,是否进行匹配和游戏,或者是否添加为好友等,从而在确定任意两个游戏客户端在每个时间点具备交互关系,即进行了匹配和游戏,或者添加为好友时,在上述两个游戏客户端的节点之间建立边,从而建立对应时间点的拓扑图。按照上述方式确定上述至少两个时间点中各个时间点游戏客户端之间的交互关系,建立各时间点的拓扑图,在时间维度上,各时间点的拓扑图构成了一个时间序列,该时间序列即构成了各游戏客户端的动态拓扑图。例如,参考图3所示,图中列出了k个时间点的拓扑图D1、D2…Dk,各时间点的拓扑图构成了各游戏客户端的动态拓扑图,可以看出,随着时间的递增,游戏客户端,即节点的数量增多,连接节点的边的数量也随之而增加,这也表明各游戏客户端的交互关系在全局时间内并非一成不变,而是呈现出动态变化的特点。
步骤S140.通过静态图模型提取上述静态拓扑图的静态特征,以及通过动态图模型提取上述动态拓扑图的动态特征。
其中,静态图模型为通过各游戏客户端的静态拓扑图生成的网络模型;静态特征可以是各游戏客户端在全局时间内的稳定特征向量,其可以用于表示全局时间内各游戏客户端之间的交互关系;动态图模型为通过各游戏客户端的动态拓扑图生成的网络模型;动态特征可以是由各游戏客户端在全局时间内对应时间点的交互关系得到的特征向量,其可以用于表示全局时间内各时间点游戏客户端之间的交互关系变化。
通常,游戏客户端之间的交互关系具有一定随机性,因此,根据游戏客户端的交互关系所得到的静态拓扑图和动态拓扑图实际上是一种不规则的数据结构。因此,为了体现游戏客户端节点和节点之间边的特征信息,在一种可选的实施方式中,静态图模型可以是第一图卷积网络,由此步骤S140中通过静态图模型提取静态拓扑图的静态特征可以通过以下方式实现:
将上述静态拓扑图输入至第一图卷积网络,提取该静态拓扑图的静态特征。
其中,图卷积网络(Graph Convolutional Network,GCN)是一种利用深度学习在图结构上运行的算法模型,区别于传统的卷积神经网络,GCN所处理的图(Graph)一般为拓扑图,包括节点和边,而非由像素点组成的图像。相较而言,像素图像主要包含视觉信息,拓扑图主要包含关系信息,GCN即处理拓扑图中关系信息的模型。
本示例性实施方式中,第一图卷积网络可以用于提取静态拓扑图的静态特征,具体的,可以将静态拓扑图作为矩阵向量,如Static_G={X,A}输入至第一图卷积网络,其中,X为静态拓扑图的节点属性矩阵,且X∈RN×d,N为节点的个数,d为每个节点的属性特征维数。参考图4所示,将静态拓扑图411输入至第一图卷积网络421,以通过第一图卷积网络421解析各节点和各级邻居节点的特征信息,以及通过非线性变换对得到的特征信息进行融合,可以得到静态拓扑图411中各节点的静态特征430。
对于静态拓扑图中的每个节点而言,与其相连的邻居节点的距离越近表示两节点的关系越强,反之两节点的关系越弱。因此,为了确定静态拓扑图中邻居节点对于各节点的影响度,在一种可选的实施方式中,上述将静态拓扑图输入至第一图卷积网络,提取静态拓扑图的静态特征可以通过以下方式实现:
在静态拓扑图中确定与任一节点具有交互关系的邻居节点;
对上述邻居节点的输入特征进行聚合,并通过第一图卷积网络进行预设层数的迭代,得到上述任一节点的静态特征。
其中,预设层数是指第一图卷积网络的迭代次数,一般可以根据操作人员的经验进行设置;输入特征是为通过上述第一图卷积网络得到的节点的上一层聚合特征,特别的,当第一图卷积网络的层数为1时,节点的上一层聚合特征为该节点的初始输入特征,该初始输入特征一般可以通过将节点的属性特征,如在线时长、MMR(Match Making Rating,比赛匹配分级)和当日游戏次数等进行归一化得到,或者也可以直接设置为单位矩阵。
在静态拓扑图中,可以通过确定节点的邻居节点,将各级邻居节点的输入特征进行聚合,并与上述节点的输入特征进行非线性转换,得到上述节点的潜在向量,具体的,继续参考图2所示,对于图中的节点A而言,其第一级邻居节点为B、D、E,将B、D、E的输入特征进行聚合,并与A的输入特征进行非线性转化,得到A的第一层潜在向量;然后在第二层,将邻居节点B、D、E的第一层潜在向量进行聚合,并与A的第一层潜在向量进行非线性转换,得到A的第二层潜在向量…以此逐层迭代,直到到达预设层数n,得到A的第n层潜在向量,即得到节点A的特征。通过以上方式进行迭代计算,各节点除了自身的输入特征,还包含了邻居节点的输入特征。
进一步的,在通过动态图模型提取动态拓扑图的动态特征时,由于随着时间的变化,各游戏客户端的交互关系会不断发生变化,为了获取各游戏客户端的动态特征,可以通过动态图模型提取动态拓扑图的动态特征,具体的,在一种可选的实施方式中,动态图模型可以包括第二图卷积网络,由此步骤S140中通过动态图模型提取静态拓扑图的动态特征可以通过以下方式实现:
将动态拓扑图输入至第二图卷积网络,提取上述动态拓扑图的动态特征。
其中,第二图卷积网络可以用于提取动态拓扑图的静态特征,具体的,参考图4所示,可以将动态拓扑图412作为动态图序列,该动态图序列可以表示为G_list={Gk={Xk,Ak}|k=1,2,…,k},其中,k为动态图序列的个数,如图所示,动态拓扑图412包括G1、G2、G3…和Gk,分别可以代表第一时间点、第二时间点、第三时间点…第k时间点的动态图序列,将动态拓扑图412输入至第二图卷积网络422,可以通过第二图卷积网络422解析每个时间点下各节点和各级邻居节点的特征信息,并通过非线性变换对得到的特征信息进行融合,可以得到每个时间点各节点的特征信息,如第一时间点各节点的特征信息D_embedding1、第二时间点各节点的特征信息D_embedding2等,按照时间顺序对各节点的特征信息进行排列,即得到各节点的动态特征440。
由于每个时间点的动态图序列可以表示该时间点时,各游戏客户端的交互关系,因此,在一种可选的实施方式中,上述将动态拓扑图输入至第二图卷积网络,提取上述动态拓扑图的动态特征的方法可以通过以下方式实现:
根据动态拓扑图,确定上述至少两个时间点对应的各时间点的子动态拓扑图;
在上述各时间点的子动态拓扑图中确定与任一节点具有交互关系的邻居节点;
对邻居节点的输入特征进行聚合,并通过第二图卷积网络进行预设层数的迭代,得到上述任一节点的序列特征;
对上述任一节点在各时间点的序列特征进行聚合,得到该任一节点的动态特征。
其中,相对应的,输入特征可以是通过上述第二图卷积网络得到的节点的上一层聚合特征。当第二图卷积网络的层数为1时,节点的上一层聚合特征为该节点的初始输入特征,该初始输入特征也可以通过将节点的属性特征进行归一化得到,也可以直接设置为单位矩阵。
在每个子动态拓扑图中,可以通过第二图卷积网络对各节点的邻居节点的输入特征进行聚合,并与上述节点的输入特征进行非线性转换,得到上述节点的潜在向量,具体的,可以对各节点的第一级邻居节点,即直接邻居节点的输入特征进行聚合,并与上述各节点的输入特征进行非线性转化,得到上述各节点的第一层潜在向量;然后在第二层,对上述各节点的第二级邻居节点的输入特征聚合,并与上述各节点的第一层潜在向量进行非线性转化,得到上述各节点的第二层潜在向量…按照该方式逐层迭代,直到到达预设层数n,得到上述各节点的第n层潜在向量,即得到上述各节点的对应时间点的特征。按照上述方式对各子动态拓扑图进行计算,可以得到各时间点时各节点的特征,即得到各节点的序列特征,进一步通过聚合函数,如平均聚合函数对上述各节点的序列特征进行聚合,即得到上述各节点的动态特征。
实际上,在步骤S140中,动态拓扑图中各时间点的子动态拓扑图可以看做是该时间点的静态拓扑图,因此,在一种可选的实施方式中,上述第一图卷积网络和第二图卷积网络可以是相同的图卷积网络。
如前所述,在通过上述方法对上述任一节点的序列特征进行聚合时,可以通过不同的聚合函数实现。在一种可选的实施方式中,可以按照时间顺序对上述任一节点的邻居节点进行排序,从而通过LSTM(Long Short Term Memory,长短期记忆)网络对邻居节点的上一时间点的输入特征依次输入不同的LSTM单元,并在最后一个单元输出聚合结果,具体的,可以通过方法实现:
根据上述任一节点在各时间点的序列特征,确定该任一节点在每个时间点的子序列特征;
采用长短期记忆网络依次聚合念上述任一节点在每个时间点的子序列特征,以将长短期记忆网络的隐藏层的状态确定为任一节点的动态特征;
其中,长短期记忆网络包括三个控制门,即遗忘门、输入门和输出门,每个门实际上是一层全连接层,用于控制记忆单元的状态,各门值的范围一般在[0,1]之间。
根据任一节点在各时间点的序列特征,确定该节点在每个时间点的序列特征,即子序列特征,然后通过长短期记忆网络的遗忘门、输入门和输出门对每个时间点的子序列特征进行聚合,直到完成对全部时间点的子序列特征的聚合,将得到的长短期记忆网络的隐藏层的状态确定为上述任一节点的动态特征,具体的,采用长短期记忆网络对上述序列特征进行聚合的方法可以包括以下步骤:
(1)采用长短期记忆网络的遗忘门对上述任一节点在当前时间点的序列特征进行计算,得到上述任一节点在当前时间点的第一记忆单元状态。下式(1)为长短期记忆单元遗忘门的计算公式:
ft=σg(WfD_embeddingt+Ufht-1+bf) (1)
其中,σg表示将WfD_embeddingt+Ufht-1+bf的计算结果作为激活函数σ的输入即可计算得到ft,Wf、Uf和bf分别为遗忘门的学习参数,ht-1为记忆单元在上一时间点的隐层状态输出,其计算公式如下式(2)所示:
在上式中,ot为当前时间点输出门的输出信息,ct为当前时间点第二记忆单元的状态,σh为激活函数。
(2)将上述任一节点在当前时间点的记忆单元状态与通过长短期记忆网络中的输入门处理得到的当前时间点的记忆单元状态进行叠加,得到上述任一节点在当前时间点的第二记忆单元状态。下式(3)和(4)分别为长短期记忆网络中输入门的计算公式和第二记忆单元状态的计算公式:
it=σg(WiD_embeddingt+Uiht-1+bi) (3)
其中,Wi、Ui和bi分别为输入门的学习参数。
其中,ct-1为上一时间点的第二记忆单元状态,ft为当前时间点的遗忘门状态,Wc、Uc和bc分别为第二记忆单元状态的学习参数,σ2为激活函数。
(3)通过长短期记忆网络的输出门和上述第二记忆单元状态确定上述任一节点在当前时间点的输出信息。下式(5)为长短期记忆网络中输出门的计算公式:
ot=σg(WoD_embeddingt+U3ht-1+b3) (5)
其中,W3、Uo和bo分别为输出门的学习参数。
(4)将上述当前时间点的下一个时间点作为当前时间点,返回执行步骤(1)~(3),直至上述当前时间点为最后一个时间点。
(5)当上述当前时间点为所述最后一个时间点时,根据上述任一节点在当前时间点的输出信息,确定长短期记忆网络的隐藏层的状态,以得到上述任一节点的动态特征。
实际上,根据上式可知,在迭代计算每个时间点的序列特征时,各时间点隐藏层的状态决定了下一时间点各控制门的状态,因此,通过迭代计算每个时间点的序列特征,可以对历史时间点的序列特征进行非线性变换,得到各历史时间点的输入特征,对各历史时间点的输入特征以及当前时间点的输入特征进行聚合,可以得到当前时间点的输出特征。通过这种方式对每个时间点的序列特征进行计算,可以得到每个时间点各控制门的状态和长短期记忆网络隐藏层的状态,如图4所示,460为通过长短期记忆网络450得到的各时间点隐藏层的状态,其包含第一时间点的隐藏层状态hidden1、第二时间点的隐藏层状态hidden2…,在最后一个时间点k,输出特征包含了全部历史时间点和当前时间点的输入特征,此时,可以根据长短期记忆网络输出门的状态ot和第二记忆单元状态ct计算得到最后一个时间点的隐藏层的状态hiddenk,从而将该最后一个时间点的隐藏层的状态确定为上述任一节点的动态特征。
步骤S150.根据上述静态特征和上述动态特征生成各游戏客户端的目标特征。
在得到各节点的静态特征和动态特征后,根据上述静态特征和动态特征生成各游戏客户端的目标特征,例如,可以分别设置静态特征和动态特征的权重,来将静态特征和动态特征组合为目标特征。
在一种可选的实施方式中,可以通过拼接上述静态特征和动态特征得到各节点,即各游戏客户端的目标特征,例如,图4中S_embedding为静态特征430,D_embedding为动态特征470,通过将静态特征430和动态特征470进行拼接,可以得到各节点的目标特征480,即embeddingi=[S_embedding;D_embedding]i,其中,i表示各节点的时间点顺序。
步骤S160.计算任意两个目标特征之间的匹配度,以根据该匹配度将对应的目标特征所对应的两个游戏客户端匹配为游戏分组。
其中,匹配度可以表示两个目标特征所对应的游戏客户端之间的交互可能性,一般地,其值越高,表示两个游戏客户端的交互可能性越高。
在一种可选的实施方式中,任意两个目标特征之间的匹配度可以通过加权算法进行计算,具体的,可以通过下式(6)计算:
一般地,在得到任意两个目标特征之间的匹配度后,在一种可选的实施方式中,可以根据该匹配度与预设阈值之间的大小关系对各游戏客户端进行匹配,具体的,可以将上述匹配度大于预设阈值的目标特征对应的两个游戏客户端匹配为游戏分组。
其中,预设阈值一般可以根据经验进行设置,例如可以设置为0.7或0.8等。
按照以上步骤S110~S160计算任意两个游戏客户端之间的匹配度,在该匹配度大于预设阈值时,说明两个游戏客户端的匹配可能较高,则可以将这两个游戏客户端匹配为一个游戏分组。特别的,当根据以上步骤确定存在交叉的多个游戏客户端之间的匹配度大于预设阈值时,则可以将对应的多个游戏客户端匹配为一个游戏分组,例如,当A和B、B和C的匹配度均大于预设阈值时,则可以将A、B和C匹配为一个游戏分组。
进一步的,为了提高生成目标特征的准确率,在一种可选的实施方式中,在通过步骤S110~S150提取各游戏客户端的目标特征后,还可以通过反向传播算法对上述动态图模型和静态图模型进行联合训练。例如,首先,可以获取各游戏客户端在一个月内和这一个月之后两天的交互特征数据,根据各游戏客户端一个月内的交互特征数据建立静态拓扑图和动态拓扑图,通过静态图模型对静态拓扑图进行训练,通过动态图模型对动态拓扑图进行训练,得到确定的静态图模型和动态图模型,将其作为混合模型,其中,动态图模型可以同时包括通过上述第二图卷积网络和长短期记忆网络进行训练得到的网络模型;其次,将上述两天内的交互特征数据划分为训练集和测试集,其中,训练集用于对上述混合模型进行训练,测试集用于验证该混合模型的准确率,具体的,可以通过训练集得到各游戏客户端的目标特征,然后通过测试集计算该目标特征的AUC曲线和准确率等,从而确定上述混合模型的性能,以在该模型的性能未达到预设条件,如准确率小于预设阈值时,通过梯度下降算法等更新混合模型的参数,再次进行训练,直至上述混合模型的性能达到预设条件。下表1示出了在真实数据上通过静态图模型、动态图模型+长短期记忆网络、混合图模型+长短期记忆网络所得到的特征提取方法的训练效果:
表1特征提取方法的训练性能
可以看出,相比通过静态图模型、动态图模型和长短期记忆网络提取游戏客户端的目标特征的方法,本示例性实施方式中通过结合静态图模型、动态图模型和长短期记忆网络,提高了特征提取模型的性能,相应地,也提高了游戏客户端目标特征的提取准确率。
此外,在通过反向传播算法对上述静态图模型和动态图模型进行训练时,可以根据多个游戏客户端的匹配度和未来一段时间的真实匹配情况计算游戏客户端的损失函数,如交叉熵函数,计算上述特征提取方法的损失值,从而通过梯度反向传播方法更新特征提取方法的各个参数,在梯度更新次数达到一定数值或者损失函数值小于预设阈值时停止计算,此时得到的特征提取模型即为最终的特征提取模型。
图5示出了本示例性实施方式中提取目标特征的再一种流程,可以包括以下方法:
(1)将静态拓扑图510和动态拓扑图520输入至图卷积网络530,可以得到动态拓扑图520对应的序列特征540和静态特征550。由于动态拓扑图在每个时间点的拓扑图可以看做是该时间点的静态拓扑图,因此,在通过图卷积网络530对序列特征进行训练时,可以采用相同的图卷积网络。
其中,动态拓扑图520包括多个时间点的序列特征,如G1、G2…,序列特征540包括多个时间点的序列特征,如D_embedding1、D_embedding2…。
(2)将序列特征540输入至长短期记忆网络560,通过长短期记忆网络560的遗忘门、输入门和输出门对序列特征540进行聚合,以得到各节点的动态特征570。
通过长短期记忆网络中的三个控制门,可以确定每个时间点的序列特征在下一时间点的输入特征,经过多次迭代计算,可以实现各时间点的输入特征与以往历史时间点输入特征的叠加,相比静态拓扑图,更好地体现了各游戏客户端交互关系的变化。
(3)将静态特征550和动态特征570进行拼接,得到各游戏客户端的目标特征580。
在得到各游戏客户端的目标特征后,可以通过计算任意两个游戏客户端之间的匹配度,确定该任意两个游戏客户端之间的匹配可能,当得到的匹配度大于预设阈值时,可以确定上述两个游戏客户端之间存在匹配倾向,因此可以将上述两个游戏客户端匹配为一个游戏分组,反之,则确定上述两个游戏客户端之间的匹配可能较低,而不将其匹配为一个游戏分组。
综上,根据本示例性实施方式中的游戏玩家匹配方法,可以根据各游戏客户端在全局时间内的交互特征数据建立静态拓扑图,根据上述交互特征数据和对应的时间点建立动态拓扑图,通过静态图模型提取静态拓扑图的静态特征,以及通过动态图模型提取动态拓扑图的动态特征,根据上述静态特征和动态特征生成各游戏客户端的目标特征,从而计算任意两个目标特征之间的匹配度,将对应的游戏客户端匹配为游戏分组。一方面,本示例性实施方式通过静态图模型和动态图模型提取静态特征和动态特征,以生成目标特征,可以将抽象的交互关系映射为具体的特征向量,并且通过静态特征和动态特征可以综合考量游戏客户端在全局时间内的交互关系和在时间维度上的交互关系变化,因此可以提高提取目标特征的全面性和准确性,由此也提高了游戏玩家匹配的准确率;另一方面,通过计算各游戏客户端的目标特征之间的匹配度,可以将多个游戏客户端匹配为游戏分组,避免了随机匹配造成的匹配准确率不高的问题,在相当程度上提高了玩家的游戏体验;再一方面,通过根据各游戏客户端的交互关系建立静态拓扑图和动态拓扑图,能够满足大量游戏客户端交互关系的分析,同时,结合静态拓扑图和动态拓扑图,可以体现各游戏客户端在全局时间内的交互关系和各时间点交互关系的变化,为研究游戏客户端的交互关系提供了技术支撑。
本公开的示例性实施方式还提供了一种游戏玩家匹配装置,参考图6所示,游戏玩家匹配装置600可以包括:获取模块610,可以用于获取各游戏客户端在全局时间内的交互特征数据,其中,交互特征数据为体现各游戏客户端之间交互关系的数据;第一建立模块620,可以用于根据交互特征数据,以其中的一个或多个游戏客户端为节点,建立静态拓扑图;第二建立模块630,可以用于根据交互特征数据和对应的时间点,以其中的一个或多个游戏客户端为节点,建立动态拓扑图;提取模块640,可以用于通过静态图模型提取静态拓扑图的静态特征,以及通过动态图模型提取动态拓扑图的动态特征;生成模块650,可以用于根据静态特征和动态特征生成各游戏客户端的目标特征;匹配模块660,可以用于计算任意两个目标特征之间的匹配度,以根据匹配度将对应的目标特征所对应的两个游戏客户端匹配为游戏分组。
在本公开的一种示例性实施方式中,第一建立模块620可以用于在根据交互特征数据确定任意两个游戏客户端在全局时间内存在交互关系时,以任意两个游戏客户端为节点,并在任意两个游戏客户端的节点之间建立边,建立静态拓扑图。
在本公开的一种示例性实施方式中,第二建立模块630可以用于按照预设时间间隔对交互特征数据进行采样,以获取至少两个时间点的交互特征数据;根据至少两个时间点的交互特征数据确定在各时间点任意两个游戏客户端是否存在交互关系;在确定任意两个游戏客户端存在交互关系时,以任意两个游戏客户端为节点,在任意两个游戏客户端的节点之间建立边,建立对应时间点的拓扑图,以得到动态拓扑图。
在本公开的一种示例性实施方式中,静态图模型包括第一图卷积网络,提取模块640可以用于将静态拓扑图输入至第一图卷积网络,提取静态拓扑图的静态特征。
在本公开的一种示例性实施方式中,提取模块640还可以用于在静态拓扑图中确定与任一节点具有交互关系的邻居节点,对邻居节点的输入特征进行聚合,并通过第一图卷积网络进行预设层数的迭代,得到任一节点的静态特征。
在本公开的一种示例性实施方式中,动态图模型包括第二图卷积网络,提取模块640还可以用于将动态拓扑图输入至第二图卷积网络,提取动态拓扑图的动态特征。
在本公开的一种示例性实施方式中,提取模块640还可以用于根据动态拓扑图,确定至少两个时间点对应的各时间点的子动态拓扑图;在各时间点的子动态拓扑图中确定与任一节点具有交互关系的邻居节点,对邻居节点的输入特征进行聚合,并通过第二图卷积网络进行预设层数的迭代,得到任一节点在各时间点的序列特征,对任一节点在各时间点的序列特征进行聚合,得到任一节点的动态特征。
在本公开的一种示例性实施方式中,提取模块640还可以用于根据任一节点在各时间点的序列特征,确定任一节点在每个时间点的子序列特征,采用长短期记忆网络依次聚合任一节点在每个时间点的子序列特征,以将长短期记忆网络的隐藏层的状态确定为任一节点的动态特征,其中,长短期记忆网络包括遗忘门、输入门和输出门。
在本公开的一种示例性实施方式中,生成模块650可以用于拼接静态特征和动态特征,以生成各游戏客户端的目标特征。
在本公开的一种示例性实施方式中,第一图卷积网络和第二图卷积网络为相同的图卷积网络。
在本公开的一种示例性实施方式中,匹配模块660可以用于将匹配度大于预设阈值的目标特征所对应的两个游戏客户端匹配为游戏分组。
在本公开的一种示例性实施方式中,提取模块640还可以用于通过反向传播算法对动态图模型和静态图模型进行联合训练。
上述装置中各模块的具体细节在方法部分实施方式中已经详细说明,未披露的方案细节内容可以参见方法部分的实施方式内容,因而不再赘述。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
本公开的示例性实施方式还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。
参考图7所示,描述了根据本公开的示例性实施方式的用于实现上述方法的程序产品700,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
程序产品700可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
本公开的示例性实施方式还提供了一种能够实现上述方法的电子设备。下面参照图8来描述根据本公开的这种示例性实施方式的电子设备800。图8显示的电子设备800仅仅是一个示例,不应对本公开实施方式的功能和使用范围带来任何限制。
如图8所示,电子设备800可以以通用计算设备的形式表现。电子设备800的组件可以包括但不限于:上述至少一个处理单元810、上述至少一个存储单元820、连接不同系统组件(包括存储单元820和处理单元810)的总线830和显示单元840。
其中,存储单元820存储有程序代码,程序代码可以被处理单元810执行,使得处理单元810执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。例如,处理单元810可以执行图1、图4和图5所示的方法步骤等。
存储单元820可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)821和/或高速缓存存储单元822,还可以进一步包括只读存储单元(ROM)823。
存储单元820还可以包括具有一组(至少一个)程序模块825的程序/实用工具824,这样的程序模块825包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线830可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备800也可以与一个或多个外部设备900(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备800交互的设备通信,和/或与使得该电子设备800能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口850进行。并且,电子设备800还可以通过网络适配器860与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器860通过总线830与电子设备800的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备800使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的示例性实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,上述附图仅是根据本公开示例性实施方式的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例性实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开示例性实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开示例性实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施方式。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施方式仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
Claims (15)
1.一种游戏玩家匹配方法,其特征在于,所述方法包括:
获取各游戏客户端在全局时间内的交互特征数据,其中,所述交互特征数据为体现各所述游戏客户端之间交互关系的数据;
根据所述交互特征数据,以其中的一个或多个游戏客户端为节点,建立静态拓扑图;
根据所述交互特征数据和对应的时间点,以其中的一个或多个游戏客户端为节点,建立动态拓扑图;
通过静态图模型提取所述静态拓扑图的静态特征,以及通过动态图模型提取所述动态拓扑图的动态特征;
根据所述静态特征和所述动态特征生成各所述游戏客户端的目标特征;
计算任意两个所述目标特征之间的匹配度,以根据所述匹配度将对应的目标特征所对应的两个游戏客户端匹配为游戏分组。
2.根据权利要求1所述的游戏玩家匹配方法,其特征在于,所述根据所述交互特征数据,以其中的一个或多个游戏客户端为节点,建立静态拓扑图,包括:
在根据所述交互特征数据确定任意两个游戏客户端在所述全局时间内任一时间点存在交互关系时,以所述任意两个游戏客户端为节点,并在所述任意两个游戏客户端的节点之间建立边,建立所述静态拓扑图。
3.根据权利要求1所述的游戏玩家匹配方法,其特征在于,所述根据所述交互特征数据和对应的时间点,以其中的一个或多个游戏客户端为节点,建立动态拓扑图,包括:
按照预设时间间隔对所述交互特征数据进行采样,以获取至少两个时间点的交互特征数据;
根据所述至少两个时间点的交互特征数据确定在各时间点任意两个游戏客户端是否存在交互关系;
在确定所述任意两个游戏客户端存在交互关系时,以所述任意两个游戏客户端为节点,在所述任意两个游戏客户端的节点之间建立边,建立对应时间点的拓扑图,以得到所述动态拓扑图。
4.根据权利要求1所述的游戏玩家匹配方法,其特征在于,所述静态图模型包括第一图卷积网络,所述通过静态图模型提取所述静态拓扑图的静态特征,包括:
将所述静态拓扑图输入至所述第一图卷积网络,提取所述静态拓扑图的静态特征。
5.根据权利要求4所述的游戏玩家匹配方法,其特征在于,所述将所述静态拓扑图输入至所述第一图卷积网络,提取所述静态拓扑图的静态特征,包括:
在所述静态拓扑图中确定与任一节点具有交互关系的邻居节点;
对所述邻居节点的输入特征进行聚合,并通过所述第一图卷积网络进行预设层数的迭代,得到所述任一节点的静态特征。
6.根据权利要求4所述的游戏玩家匹配方法,其特征在于,所述动态图模型包括第二图卷积网络,所述动态图模型提取所述动态拓扑图的动态特征,包括:
将所述动态拓扑图输入至所述第二图卷积网络,提取所述动态拓扑图的动态特征。
7.根据权利要求6所述的游戏玩家匹配方法,其特征在于,所述将所述动态拓扑图输入至所述第二图卷积网络,提取所述动态拓扑图的动态特征,包括:
根据所述动态拓扑图,确定所述至少两个时间点对应的各时间点的子动态拓扑图;
在所述各时间点的子动态拓扑图中确定与任一节点具有交互关系的邻居节点;
对所述邻居节点的输入特征进行聚合,并通过所述第二图卷积网络进行预设层数的迭代,得到所述任一节点在所述各时间点的序列特征;
对所述任一节点在所述各时间点的序列特征进行聚合,得到所述任一节点的动态特征。
8.根据权利要求7所述的游戏玩家匹配方法,其特征在于,所述对所述任一节点在所述各时间点的序列特征进行聚合,得到所述任一节点的动态特征,包括:
根据所述任一节点在所述各时间点的序列特征,确定所述任一节点在每个时间点的子序列特征;
采用长短期记忆网络依次聚合所述任一节点在每个时间点的子序列特征,以将所述长短期记忆网络的隐藏层的状态确定为所述任一节点的动态特征;
其中,所述长短期记忆网络包括遗忘门、输入门和输出门。
9.根据权利要求1所述的游戏玩家匹配方法,其特征在于,所述根据所述静态特征和所述动态特征生成各所述游戏客户端的目标特征,包括:
拼接所述静态特征和所述动态特征,以生成各所述游戏客户端的目标特征。
10.根据权利要求6所述的游戏玩家匹配方法,其特征在于,所述第一图卷积网络和所述第二图卷积网络为相同的图卷积网络。
11.根据权利要求1所述的游戏玩家匹配方法,其特征在于,所述根据所述匹配度将对应的目标特征所对应的两个游戏客户端匹配为游戏分组,包括:
将所述匹配度大于预设阈值的目标特征所对应的两个游戏客户端匹配为游戏分组。
12.根据权利要求8所述的游戏玩家匹配方法,其特征在于,所述方法还包括:
通过反向传播算法对所述动态图模型和所述静态图模型进行联合训练。
13.一种游戏玩家匹配装置,其特征在于,所述装置包括:
获取模块,用于获取各游戏客户端在全局时间内的交互特征数据,其中,所述交互特征数据为体现各游戏客户端之间交互关系的数据;
第一建立模块,用于根据所述交互特征数据,以其中的一个或多个游戏客户端为节点,建立静态拓扑图;
第二建立模块,用于根据所述交互特征数据和对应的时间点,以其中的一个或多个游戏客户端为节点,建立动态拓扑图;
提取模块,用于通过静态图模型提取所述静态拓扑图的静态特征,以及通过动态图模型提取所述动态拓扑图的动态特征;
生成模块,用于根据所述静态特征和所述动态特征生成各所述游戏客户端的目标特征;
匹配模块,用于计算任意两个所述目标特征之间的匹配度,以根据所述匹配度将对应的目标特征所对应的两个游戏客户端匹配为游戏分组。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-12任一项所述的方法。
15.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1-12任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010914674.8A CN111957053A (zh) | 2020-09-03 | 2020-09-03 | 游戏玩家匹配方法、装置、存储介质与电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010914674.8A CN111957053A (zh) | 2020-09-03 | 2020-09-03 | 游戏玩家匹配方法、装置、存储介质与电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111957053A true CN111957053A (zh) | 2020-11-20 |
Family
ID=73393544
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010914674.8A Pending CN111957053A (zh) | 2020-09-03 | 2020-09-03 | 游戏玩家匹配方法、装置、存储介质与电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111957053A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113609363A (zh) * | 2021-08-19 | 2021-11-05 | 北京爱奇艺科技有限公司 | 一种用户搜索方法及装置 |
CN117573928A (zh) * | 2023-12-11 | 2024-02-20 | 南月(广州)机器人科技有限公司 | 一种基于网络社交的物联网竞技信息采集方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140274404A1 (en) * | 2013-03-15 | 2014-09-18 | Andrew Hoskins | Suggesting matches for players of an online multiplayer game based on skills and/or social proximity |
US20150148127A1 (en) * | 2013-11-22 | 2015-05-28 | Zynga Inc. | Systems and methods for matching players of a game |
CN107920122A (zh) * | 2017-11-23 | 2018-04-17 | 杭州电魂网络科技股份有限公司 | 游戏玩家匹配方法、装置、匹配服务器及可读存储介质 |
US20180111051A1 (en) * | 2016-10-21 | 2018-04-26 | Electronic Arts Inc. | Multiplayer video game matchmaking system and methods |
CN108465239A (zh) * | 2018-03-29 | 2018-08-31 | 武汉斗鱼网络科技有限公司 | 一种游戏的控制方法及装置 |
CN108920213A (zh) * | 2018-06-29 | 2018-11-30 | 北京金山安全软件有限公司 | 游戏的动态配置方法及装置 |
CN110020149A (zh) * | 2017-11-30 | 2019-07-16 | Tcl集团股份有限公司 | 用户信息的标签化处理方法、装置、终端设备及介质 |
-
2020
- 2020-09-03 CN CN202010914674.8A patent/CN111957053A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140274404A1 (en) * | 2013-03-15 | 2014-09-18 | Andrew Hoskins | Suggesting matches for players of an online multiplayer game based on skills and/or social proximity |
US20150148127A1 (en) * | 2013-11-22 | 2015-05-28 | Zynga Inc. | Systems and methods for matching players of a game |
US20180111051A1 (en) * | 2016-10-21 | 2018-04-26 | Electronic Arts Inc. | Multiplayer video game matchmaking system and methods |
CN107920122A (zh) * | 2017-11-23 | 2018-04-17 | 杭州电魂网络科技股份有限公司 | 游戏玩家匹配方法、装置、匹配服务器及可读存储介质 |
CN110020149A (zh) * | 2017-11-30 | 2019-07-16 | Tcl集团股份有限公司 | 用户信息的标签化处理方法、装置、终端设备及介质 |
CN108465239A (zh) * | 2018-03-29 | 2018-08-31 | 武汉斗鱼网络科技有限公司 | 一种游戏的控制方法及装置 |
CN108920213A (zh) * | 2018-06-29 | 2018-11-30 | 北京金山安全软件有限公司 | 游戏的动态配置方法及装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113609363A (zh) * | 2021-08-19 | 2021-11-05 | 北京爱奇艺科技有限公司 | 一种用户搜索方法及装置 |
CN117573928A (zh) * | 2023-12-11 | 2024-02-20 | 南月(广州)机器人科技有限公司 | 一种基于网络社交的物联网竞技信息采集方法 |
CN117573928B (zh) * | 2023-12-11 | 2024-05-14 | 南月(广州)机器人科技有限公司 | 一种基于网络社交的物联网竞技信息采集方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11659050B2 (en) | Discovering signature of electronic social networks | |
RU2743626C1 (ru) | Поиск стратегии в стратегическом взаимодействии между сторонами | |
WO2023065859A1 (zh) | 物品推荐方法、装置及存储介质 | |
CN112418292B (zh) | 一种图像质量评价的方法、装置、计算机设备及存储介质 | |
CN112699998B (zh) | 一种时间序列预测方法、装置、电子设备及可读存储介质 | |
CN112085615A (zh) | 图神经网络的训练方法及装置 | |
CN112639841B (zh) | 用于在多方策略互动中进行策略搜索的采样方案 | |
CN113656698B (zh) | 兴趣特征提取模型的训练方法、装置和电子设备 | |
US11204803B2 (en) | Determining action selection policies of an execution device | |
CN111957053A (zh) | 游戏玩家匹配方法、装置、存储介质与电子设备 | |
CN110889759A (zh) | 信用数据的确定方法、装置及存储介质 | |
CN112214499A (zh) | 图数据处理方法、装置、计算机设备和存储介质 | |
CN112292696A (zh) | 确定执行设备的动作选择方针 | |
CN114358257A (zh) | 神经网络剪枝方法及装置、可读介质和电子设备 | |
CN113965313A (zh) | 基于同态加密的模型训练方法、装置、设备以及存储介质 | |
CN113657468A (zh) | 预训练模型的生成方法、装置、电子设备和存储介质 | |
CN116992151A (zh) | 一种基于双塔图卷积神经网络的在线课程推荐方法 | |
CN116258923A (zh) | 图像识别模型训练方法、装置、计算机设备和存储介质 | |
CN113609397A (zh) | 用于推送信息的方法和装置 | |
CN113627513A (zh) | 一种训练数据生成方法、系统、电子设备及存储介质 | |
CN112292698A (zh) | 确定执行设备的动作选择方针 | |
CN110837847A (zh) | 用户分类方法及装置、存储介质、服务器 | |
CN116485501B (zh) | 一种基于图嵌入与注意力机制的图神经网络会话推荐方法 | |
CN113032685B (zh) | 基于社交关系的对象推送方法、装置、设备及存储介质 | |
CN114817751B (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 |