一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种关系确定方法及装置与流程

2022-06-08 20:21:59 来源:中国专利 TAG:


1.本发明涉及数据处理技术,更具体的说,是涉及一种关系确定方法及装置。


背景技术:

2.在merge游戏中,地图抽象设计为由一个个大小相等的平行四边形格子按行和列等距整齐摆放组合成的规则网格结构,物品摆放在格子中。物品本身的尺寸的宽和高对应跨格子的数量,如3x3的物品占宽3格,高3格。当拖动大尺寸的物品放置到小尺寸的物品上时,可以将占地面积内的小物品挤开。或者当砍伐资源等玩法时,一个物品能产生多个新的物品。这些情况都需要我们在地图上寻找足够数量的空格子用来放置这些物品。然而,如何从多个空格子中寻找出一定数量的最优的空格子,是领域内技术人员不断研究的主题。


技术实现要素:

3.有鉴于此,本发明提供如下技术方案:
4.一种关系确定方法,包括:
5.建立虚拟地图和虚拟物品的数据模型;
6.确定待放置到所述虚拟地图上的待放置物品,所述待放置物品基于所述虚拟物品确定;
7.从所述虚拟地图中搜索出能够放置所述待放置物品的候选格子单元,所述候选格子单元的容量大于所述待放置物品的容积;
8.基于所述虚拟物品的位置和所述候选格子单元的位置建立网络流模型,所述网络流模型中包括源点、所述虚拟物品的位置节点、所述候选格子单元的位置节点和汇点,不同节点之间存在连接边,每一条连接边包含容量和权重的属性;
9.求解所述网络流模型,使得求解结果满足从所述源点到所述汇点的流量最大;
10.基于所述求解结果确定所述虚拟物品与所述候选格子单元的对应关系,所述对应关系表征所述待放置物品的放置位置。
11.可选地,所述网络流模型中,所述源点为起始节点,所述虚拟物品的位置节点为第一层子节点,所述候选格子单元的位置节点为第二层子节点,所述汇点为终止节点。
12.可选地,所述网络流模型中还包括方向节点,所述方向节点作为第三层子节点位于所述第二层子节点和所述汇点之间。
13.可选地,所述网络流模型中,所述源点与每一个所述第一层节点之间的连接边的容量和属性均为1。
14.可选地,所述网络流模型中,每一个所述第一层节点与每一个所述第二层节点之间的连接边的容量为1,权重为规则权重,所述规则权重为候选格子单元的距离权重、方向权重和符合条件物品的权重之和。
15.可选地,其中,所述距离权重基于所述虚拟物品的位置到候选格子单元的欧氏距离确定,所述方向权重基于所述虚拟地图的中心到候选格子单元的连线的方向确定,所述
符合条件物品的权重基于候选格子单元周围符合第一条件的物品的存在情况确定。
16.可选地,所述从所述虚拟地图中搜索出能够放置所述待放置物品的候选格子单元,包括:
17.基于宽度优先搜索算法从所述虚拟地图中搜索出能够放置所述待放置物品的候选格子单元。
18.可选地,所述求解所述网络流模型,包括:
19.使用spfa搜索算法进行搜索并不断更新残留容量,直到找不到新的增广路。
20.可选地,所述虚拟地图基于网格的几何图形进行坐标划分。
21.一种关系确定装置,包括:
22.第一建立模块,用于建立虚拟地图和虚拟物品的数据模型;
23.物品确定模块,用于确定待放置到所述虚拟地图上的待放置物品,所述待放置物品基于所述虚拟物品确定;
24.候选确定模块,用于从所述虚拟地图中搜索出能够放置所述待放置物品的候选格子单元,所述候选格子单元的容量大于所述待放置物品的容积;
25.第二建立模块,用于基于所述虚拟物品的位置和所述候选格子单元的位置建立网络流模型,所述网络流中包括源点、所述虚拟物品的位置节点、所述候选格子单元的位置节点和汇点,不同节点之间存在连接边,每一条连接边包含容量和权重的属性;
26.模型求解模块,用于求解所述网络流模型,使得求解结果满足从所述源点到所述汇点的流量最大;
27.关系确定模块,用于基于所述求解结果确定所述虚拟物品与所述候选格子单元的对应关系,所述对应关系表征所述待放置物品的放置位置。
28.经由上述的技术方案可知,与现有技术相比,本发明实施例公开了一种关系确定方法及装置,方法包括:建立虚拟地图和虚拟物品的数据模型;确定待放置到所述虚拟地图上的待放置物品;从所述虚拟地图中搜索出能够放置所述待放置物品的候选格子单元;基于所述虚拟物品的位置和所述候选格子单元的位置建立网络流模型;求解所述网络流模型,使得求解结果满足从所述源点到所述汇点的流量最大;基于所述求解结果确定所述虚拟物品与所述候选格子单元的对应关系,所述对应关系表征所述待放置物品的放置位置。上述方案能够从多个待选空格子中寻找出一定数量的最优的空格子进行待放置物品的放置,便于用户后续操作,优化了用户的使用体验。
附图说明
29.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
30.图1为本技术实施例公开的一种关系确定方法的流程图;
31.图2为本技术实施例公开的一个游戏场景示意图;
32.图3为本技术实施例公开的网络流模型的示意图;
33.图4为本技术实施例公开的一种关系确定装置的结构示意图;
34.图5为本技术实施例公开的一种电子设备的结构示意图。
具体实施方式
35.为了引用和清楚起见,下文中使用的技术名词的说明、简写或缩写总结如下:
36.merge:一种游戏类型,merge游戏是一种合成类游戏,常见的玩法包括:网格地图上摆放着物品,相同等级的相邻物品可以合成为更高级的物品。
37.spfa:全称shortest path faster algorithm算法,bellman-ford算法的队列优化算法,用于在一个带权图中搜索单源最短路径。
38.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
39.本技术实施例可以应用于电子设备,本技术对该电子设备的产品形式不做限定,可以包括但并不局限于智能手机、平板电脑、可穿戴设备、个人计算机(personal computer,pc)、上网本等,可以依据应用需求选择。
40.图1为本技术实施例公开的一种关系确定方法的流程图。参见图1欧舒适,关系确定方法可以包括:
41.步骤101:建立虚拟地图和虚拟物品的数据模型。
42.本技术实施例公开的关系确定方法,可应用于merge游戏中基于网络流的全局最优权重的实现。具体的,根据游戏玩法的需求,可以将游戏地图建模成为图的数据结构,也即所述虚拟地图,以二维数组的形式来定义图的结构。其中所述虚拟地图可基于网格的几何图形进行坐标划分,每个格子的位置可以划归为整数的索引,如最左下角的格子的位置为(0,0),该格子右边格子为(1,0),上方格子为(0,1),依此类推。
43.步骤102:确定待放置到所述虚拟地图上的待放置物品,所述待放置物品基于所述虚拟物品确定。
44.其中的待放置物品为原有的虚拟物品变化而来。图2为本技术实施例公开的一个游戏场景示意图,结合图2所示,在砍伐资源类游戏中,图2中存在果蔬物品,点击消耗体力开始砍伐,然后可以产生数个苹果掉落到地上的空格子上。这个示例中的苹果即为所述待放置物品,本实现方案就是从地图上的空格子中确定出一定数量的能够放置苹果的最佳格子的位置。
45.步骤103;从所述虚拟地图中搜索出能够放置所述待放置物品的候选格子单元,所述候选格子单元的容量大于所述待放置物品的容积。
46.具体的,可以但不限于基于宽度优先搜索算法从所述虚拟地图中搜索出能够放置所述待放置物品的候选格子单元。
47.步骤104:基于所述虚拟物品的位置和所述候选格子单元的位置建立网络流模型。
48.其中,所述网络流模型中包括源点、所述虚拟物品的位置节点、所述候选格子单元的位置节点和汇点,不同节点之间存在连接边,每一条连接边包含容量和权重的属性。
49.图3为本技术实施例公开的网络流模型的示意图。结合图3所示,网络流模型建立时,需要为节点与节点之间的连接边附加容量(cap)和权重(w)的属性。设定唯一的源点(_
s)和唯一的汇点(_t)。所述网络流模型中,所述源点为起始节点,所述虚拟物品的位置节点为第一层节点,所述候选格子单元的位置节点为第二层节点,所述汇点为终止节点。参见图3,找出从源点到汇点的满足条件的路径,就可以得出是哪个物品(i1—in1)选了哪个格子(c1—cn2)。
50.第一层子节点设计为每一个对应的虚拟物品的原始位置建立一个节点,源点与每个第一层子节点建立边,边的容量和权重都设定为1。第二层子节点设计为每一个对应的候选格子单元的位置建立一个节点,每一个虚拟物品的原始位置节点都与每一个候选格子单元建立连接边,一共建立n1xn2条边,边的容量为1,权重为规则权重。
51.由此,所述网络流模型中,所述源点与每一个所述第一层节点之间的连接边的容量和属性均为1。所述网络流模型中,每一个所述第一层节点与每一个所述第二层节点之间的连接边的容量为1,权重为规则权重,所述规则权重为候选格子单元的距离权重、方向权重和符合条件物品的权重之和。
52.其中,所述距离权重基于所述虚拟物品的位置到候选格子单元的欧氏距离确定,所述方向权重基于所述虚拟地图的中心到候选格子单元的连线的方向确定,所述符合条件物品的权重基于候选格子单元周围符合第一条件的物品的存在情况确定。
53.具体的,为了优化玩家游戏体验,需要在搜索候选格子单元的时候设立一定的规则来决定优先选取哪些空格子,即根据规则设定几个权重值。在merge游戏中,具体如下:
54.1、距离权重:计算原始位置(如被挤开物品原本的位置、产生新物品的原始物品的位置)到空格子的欧式距离。以权重系数的形式将距离转换为权重,当距离到达阈值之后,权重就保持定值不在增加。
55.2、方向权重:将地图的方向简化为上下左右四个方向,根据从地图中心到空格位置的连线的方向,赋予不同的方向权重值。(目标是尽可能的分散到不同方向,为了玩家体验,飞行轨迹不会单一。)
56.3、符合条件物品的权重:在空格子处的四领域中搜索是否具有符合条
57.相同的物品(前述讲到相同物品可以合成为更高级的物品,此处根据需求可以寻找相同物品,这样可以方便玩家合成,也可以是同一物品的高级或低级物品,形成同类物品掉落到附近),以方便玩家合成。根据条件的不同赋予不同的物品权重。
58.最终候选格子单元处的权重为以上距离权重、方向权重和符合条件物品的权重之和。
59.此算法可以推广到其他可以以图为数据结构,需要为数个节点在全图中带条件优先级地搜索对应数量的终点的游戏玩法中。例如有m个新物品要放置到地图上,地图上的剩余格子大于m,假设为n。那么就相当于,要从地图的n个空格子,找出m个来放置这些新物品。如何找这m个格子,从而满足需求的一系列条件,如上述几个权重类别。在推广应用中,也可以基于实际需求确定其他别的条件。
60.其他实现中,除了第一层子节点和第二层子节点外,所述网络流模型中还可以包括方向节点,所述方向节点作为第三层子节点位于所述第二层节点和所述汇点之间。
61.第三层子结点为可选节点,由于游戏玩法中希望尽可能的使待放置物品往不同方向散开,因此选取方向作为第三层节点,已知有四个方向,每个空格子与所在方向建立边,边的容量为1,权重为1,同时统计经过该方向节点的边的数量记为对应的fc。最后方向各自
与汇点建立边,边的容量为fc,权重为1。
62.需要说明的是,图3所示示意图根据merge游戏算法建立,推广到其他类似的游戏逻辑,只需要同样建立网络流的图结构,可以根据实际情况增减网络流层数,同时正确赋予容量与权重即可。
63.步骤104后,进入步骤105。
64.步骤105;求解所述网络流模型,使得求解结果满足从所述源点到所述汇点的流量最大。
65.建立了网络流模型之后,求解的目的即不断的寻找从源点到汇点的增广路,使得流入汇点的流量最大。通常,为了求解最大流,可以对网络流增加方向边,基于前文所述连接边建立对应的反向边,反向边的权重取对应正向边(连接边)的权重的相反数,方向边的容量初始为0。由于负权边的存在,采取spfa算法,以权重为依据不断寻找增广路,找到增广路后对网络流的容量进行更新。
66.步骤106:基于所述求解结果确定所述虚拟物品与所述候选格子单元的对应关系,所述对应关系表征所述待放置物品的放置位置。
67.不断重复寻找增广路的过程,直到无法再找出其他增广路,此时得出的增广路的集合,即为所需要的从虚拟物品原始位置到候选格子单元的对应关系。
68.本实施例所述关系确定方法,能够基于虚拟地图上的物品及格子的数据生成网络流模型,通过对网络流模型的结算确定出从源点到汇点的最大流量,进而确定出虚拟物品与候选格子单元的对应关系,实现了从多个待选空格子中寻找出一定数量的最优的空格子进行待放置物品的放置,便于用户后续操作,优化了用户的使用体验。
69.在一个简单的完成的示例中,关系确定方法的实现可包括如下步骤:
70.1、建立虚拟地图和虚拟物品的数据模型,地图可以是根据网格的几何图形来进行坐标划分,如图2的(17,29)、(20,26)等都是地图上的空格子。物品放置在格子上,如下图格子(20,28)上有苹果物品,物品本身带属性有id,占多少个格子如(1x1、2x2)等,此外有游戏需求相关的配置来标识物品的合成关系、砍伐生成关系等。
71.2、确定待放置到地图上的新物品。作为输入参数1。
72.3、从地图中先搜索出足够放置新物品的数量的空格子,作为候选格子。搜索方法可以是宽度优先搜索算法等。作为输入参数2。
73.4、设计网络流分层结构,并建立网络流的数据模型。包括如上图中的结点、边(首尾连接的结点、权重、容量等属性)、源点、汇点等。
74.5、对上述网络流数据模型进行求解、求解方式为使用spfa搜索并不断更新残留容量等属性,直到找不到新的增广路。
75.6、根据求解的结果,通过解析过程中找出的增广路,得出经过了哪些路径。匹配路径中的物品和格子,即为要求解的物品和格子的对应关系。
76.对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
77.上述本发明公开的实施例中详细描述了方法,对于本发明的方法可采用多种形式
的装置实现,因此本发明还公开了一种装置,下面给出具体的实施例进行详细说明。
78.图4为本技术实施例公开的一种关系确定装置的结构示意图。参见图4所示,关系确定装置40可以包括:
79.第一建立模块401,用于建立虚拟地图和虚拟物品的数据模型。
80.物品确定模块402,用于确定待放置到所述虚拟地图上的待放置物品,所述待放置物品基于所述虚拟物品确定。
81.候选确定模块403,用于从所述虚拟地图中搜索出能够放置所述待放置物品的候选格子单元,所述候选格子单元的容量大于所述待放置物品的容积。
82.第二建立模块404,用于基于所述虚拟物品的位置和所述候选格子单元的位置建立网络流模型,所述网络流中包括源点、所述虚拟物品的位置节点、所述候选格子单元的位置节点和汇点,不同节点之间存在连接边,每一条连接边包含容量和权重的属性。
83.模型求解模块405,用于求解所述网络流模型,使得求解结果满足从所述源点到所述汇点的流量最大。
84.关系确定模块406,用于基于所述求解结果确定所述虚拟物品与所述候选格子单元的对应关系,所述对应关系表征所述待放置物品的放置位置。
85.本实施例所述关系确定装置,能够基于虚拟地图上的物品及格子的数据生成网络流模型,通过对网络流模型的结算确定出从源点到汇点的最大流量,进而确定出虚拟物品与候选格子单元的对应关系,实现了从多个待选空格子中寻找出一定数量的最优的空格子进行待放置物品的放置,便于用户后续操作,优化了用户的使用体验。
86.一个实现中,所述网络流模型中,所述源点为起始节点,所述虚拟物品的位置节点为第一层子节点,所述候选格子单元的位置节点为第二层子节点,所述汇点为终止节点。
87.一个实现中,所述网络流模型中还包括方向节点,所述方向节点作为第三层子节点位于所述第二层子节点和所述汇点之间。
88.一个实现中,所述网络流模型中,所述源点与每一个所述第一层节点之间的连接边的容量和属性均为1。
89.一个实现中,所述网络流模型中,每一个所述第一层节点与每一个所述第二层节点之间的连接边的容量为1,权重为规则权重,所述规则权重为候选格子单元的距离权重、方向权重和符合条件物品的权重之和。
90.一个实现中,所述距离权重基于所述虚拟物品的位置到候选格子单元的欧氏距离确定,所述方向权重基于所述虚拟地图的中心到候选格子单元的连线的方向确定,所述符合条件物品的权重基于候选格子单元周围符合第一条件的物品的存在情况确定。
91.一个实现中,候选确定模块具体可用于:基于宽度优先搜索算法从所述虚拟地图中搜索出能够放置所述待放置物品的候选格子单元。
92.一个实现中,模型求解模块具体可用于:使用spfa搜索算法进行搜索并不断更新残留容量,直到找不到新的增广路。
93.一个实现中,所述虚拟地图基于网格的几何图形进行坐标划分。
94.上述实施例中的所述的任意一种关系确定装置包括处理器和存储器,上述实施例中的第一建立模块、物品确定模块、候选确定模块、第二建立模块、模型求解模块、关系确定模块等均作为程序模块存储在存储器中,由处理器执行存储在所述存储器中的上述程序模
块来实现相应的功能。
95.处理器中包含内核,由内核去存储器中调取相应的程序模块。内核可以设置一个或多个,通过调整内核参数来实现回访数据的处理。
96.存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram),存储器包括至少一个存储芯片。
97.在示例性实施例中,还提供了一种计算机可读存储介质,可直接加载到计算机的内部存储器,其中含有软件代码,该计算机程序经由计算机载入并执行后能够实现上述关系确定方法任一实施例所示步骤。
98.在示例性实施例中,还提供一种计算机程序产品,可直接加载到计算机的内部存储器,其中含有软件代码,该计算机程序经由计算机载入并执行后能够实现上述所述的关系确定方法任一实施例所示步骤。
99.进一步,本发明实施例提供了一种电子设备。图5为本技术实施例公开的一种电子设备的结构示意图。参见图5所示,电子设备50包括至少一个处理器501、以及与处理器连接的至少一个存储器502、总线503;其中,处理器、存储器通过总线完成相互间的通信;处理器用于调用存储器中的可执行程序指令,以执行上述的关系确定方法。
100.其中,所述可执行程序指令包括:建立虚拟地图和虚拟物品的数据模型;确定待放置到所述虚拟地图上的待放置物品,所述待放置物品基于所述虚拟物品确定;从所述虚拟地图中搜索出能够放置所述待放置物品的候选格子单元,所述候选格子单元的容量大于所述待放置物品的容积;基于所述虚拟物品的位置和所述候选格子单元的位置建立网络流模型,所述网络流模型中包括源点、所述虚拟物品的位置节点、所述候选格子单元的位置节点和汇点,不同节点之间存在连接边,每一条连接边包含容量和权重的属性;求解所述网络流模型,使得求解结果满足从所述源点到所述汇点的流量最大;基于所述求解结果确定所述虚拟物品与所述候选格子单元的对应关系,所述对应关系表征所述待放置物品的放置位置。
101.本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
102.还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
103.结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术
领域内所公知的任意其它形式的存储介质中。
104.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献