CN104548598A - 一种虚拟现实场景中寻路的方法 - Google Patents

一种虚拟现实场景中寻路的方法 Download PDF

Info

Publication number
CN104548598A
CN104548598A CN201410852326.7A CN201410852326A CN104548598A CN 104548598 A CN104548598 A CN 104548598A CN 201410852326 A CN201410852326 A CN 201410852326A CN 104548598 A CN104548598 A CN 104548598A
Authority
CN
China
Prior art keywords
pathfinding
branch
stop
point
type
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.)
Granted
Application number
CN201410852326.7A
Other languages
English (en)
Other versions
CN104548598B (zh
Inventor
韩大志
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Pixel Software Technology Co Ltd
Original Assignee
Beijing Pixel Software Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Pixel Software Technology Co Ltd filed Critical Beijing Pixel Software Technology Co Ltd
Priority to CN201410852326.7A priority Critical patent/CN104548598B/zh
Publication of CN104548598A publication Critical patent/CN104548598A/zh
Application granted granted Critical
Publication of CN104548598B publication Critical patent/CN104548598B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Navigation (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本申请公开了一种虚拟现实场景中寻路的方法,通过人们现实找位置的方法得到灵感,在系统内部维护了一个寻路偏转角度和旋转系数,不断地前进和矫正玩家的方向,直到到达目标点或者目标点不可达为止。本申请方案提高了远距离寻路的效率,并且对于短距离寻路和长距离寻路通用,从而简化了开发和维护成本。并且提高了玩家体验。

Description

一种虚拟现实场景中寻路的方法
技术领域
本申请涉及计算机三维虚拟场景模拟技术领域,尤其涉及一种虚拟现实场景中寻路的方法。
背景技术
寻路问题是各类游戏中角色寻路、三维虚拟场景中运动目标的路径规划、机器人寻路、车载导航系统、车辆路径问题(VRP,vehicle routing problem)等多领域中的关键技术之一,相关的寻路算法的研究与应用也是长期的研究热点。
现有技术中常见的寻路算法包括广度优先搜索(BFS,Breadth First Search),深度优先搜索(DFS,Depth First Search),启发式搜索算法等等。深度优先是按照一定的顺序前查找完一个分支,再查找另一个分支,直到找到目标或到达步数为止;广度优先一般是找周围所有点记录下来,然后在对每个点找它们周围所有未找过的点,然后再如此循环下去直到找到目标为止。启发式搜索一般是对每个搜索位置进行评估,找到最好的位置,再从这个位置如此循环进行搜索直到目标。
现有技术中常用的A*(A-Star)寻路算法属于启发式搜索方法,公式表示为:f(n)=g(n)+h(n)。
其中,f(n)是从初始点经由节点n到目标点的估价函数;
g(n)是在状态空间中从初始节点到n节点的实际代价;
h(n)是从n到目标节点最佳路径的估计代价。
保证找到最短路径(最优解的)条件,关键在于估价函数h(n)的选取:估价值h(n)<=n到目标节点的距离实际值,这种情况下,搜索的点数多,搜索范围大,效率低。但能得到最优解。并且如果h(n)=d(n),即距离估计h(n)等于最短距离,那么搜索将严格沿着最短路径进行,此时的搜索效率是最高的。
A*寻路算法的检索过程如图1所示,首先将场景划分为一定大小的栅格方块,方块中的数字相当于坐标。假设物体要从方块A运动到方块B,深灰色方块表示寻路过程中搜索到的方块,浅灰色方块表示实际经过的方块,灰色实线表示A*寻到的最优解。传统的A*寻路是一种“面”的寻路方式,这样多次的重复计算,会在短时间内占用非常多的系统资源,而且随着寻路越长,这种消耗是平方数上升的。其他的寻路算法虽然对传统的A*有优化,但是都是这种基于“面”的算法,寻路过程中对计算机资源占用较高。
目前,在游戏中使用的寻路系统大多分两个方案:短距离寻路,泛指当距离不超过一个计算机屏幕的寻路,使用改良的A*寻路;长距离寻路,比如大于一个到两个计算机屏幕的寻路,使用相应配套的数据解析寻路,比如在虚拟世界内设置几个导航的灯塔,或者在制作地图的时候添加固定的寻路点。这样做法的劣势在于多维护了一部分远距离寻路的数据,多维护了一套不通用的远距离寻路算法。由于不同公司的特定数据不一致,那么远距离寻路算法同样不会一致。这大大增加的开发量,延长开发时间,增加维护成本,大大提高了项目风险。
发明内容
本申请提供了一种虚拟现实场景中寻路的方法,对于远近距离可以采用统一的方法,并且占用资源较少。
本申请实施例提供的一种虚拟现实场景中寻路的方法,包括:
A、记录当前点作为起始点坐标,记录终点坐标,以从起始点指向终点的方向作为寻路方向;
B、判断当前寻路方向上的下一个网格类型属于类型2还是类型3,若属于类型2,执行步骤C;若属于类型3,则执行步骤D;类型2表示周围无阻挡的搜索节点;类型3表示周围有阻挡的搜索节点;
C、沿着当前寻路方向移动一个网格,然后返回步骤B;
D、分出两个寻路分支,分别沿着顺时针风向以及逆时针方向试图绕过阻挡点,这时建立两个线程,分别维护寻路偏转角度和旋转系数;
E、判断是否有一个寻路分支绕过阻挡点,若是,执行步骤207;否则,若两个分支均已停止,则结束本流程,若还至少存在一个进行中的寻路分支,执行步骤F;
F、对于任一个寻路分支,按照当前方向朝着可移动的网格移动,并计算当前的寻路偏转角度和旋转系数;如果寻路偏转角度越来越大,则试图向着减小寻路偏转角度的方向偏转,如果不能,表示终点不可达,停止该寻路分支;检查旋转系数的值,若超出阈值则停止该寻路分支;然后返回步骤E;
G、终止另一个寻路分支;
H、判断是否到达终点,若是,结束本流程,否则返回步骤A。
较佳地,步骤E所述判断依据是下一个寻路节点坐标比阻挡点离终点近,或者偏转角度变小,表明已经绕过该阻挡点。
从以上技术方案可以看出,通过人们现实找位置的方法得到灵感,在系统内部维护了一个寻路偏转角度和旋转系数,不断地前进和矫正玩家的方向,直到到达目标点或者目标点不可达为止。本申请方案提高了远距离寻路的效率,并且对于短距离寻路和长距离寻路通用,从而简化了开发和维护成本。并且提高了玩家体验。
附图说明
图1为现有技术中的A*寻路算法的检索过程示意图;
图2为本申请实施例提供的寻路的方法流程示意图;
图3为依据本申请实施例方案进行寻路过程中遇到阻挡的示意图。
具体实施方式
人们在现实世界中寻路时,会利用已知的经验来更快速地找出到达目的地的路径,利用参照物来确定是否走对了方向。本申请提供的寻路方法模仿现实寻路的上述特点,其原理为:当寻路发起后,寻路系统就计算玩家当前移动方向和目标的角度,内部记录一个旋转系数;寻路系统开始沿着玩家行走的方向,向着目的地寻路,途中发现可以移动的格子,立刻加入的移动路径中,不再记录周围可能的格子,然后动态地计算和目标的偏转角度和旋转系数,最终到达目标点。所述偏转角度就是玩家移动方向和当前点到目标点之间的角度;旋转系数是寻路物体自转的角度,相当于拧发条转的圈数,是用来在复杂地形寻路里优化路径用的参数。
寻路的地图数据一般是网格状的或者是树状的叶子节点,总体归类为带有阻挡的网格状形式,每个网格成为一个节点。
这些节点根据是否可以行走分为阻挡点和非阻挡点,寻路过程就是绕过阻挡点达到目的地的过程。
在寻路过程中,把非阻挡点分为3类:
类型1:初始搜索节点;即寻路开始的节点;
类型2:周围无阻挡的搜索节点;即是周围8个格子中没有阻挡部分;
类型3:周围有阻挡的搜索节点;周围8个格子中至少存在一个阻挡点。
本申请提供的寻路方法只需要知道玩家寻路的方向和开始的地点即可,连终点都可以不知道(被认为是一种特殊情况,终点在无限远处)。无论是2d寻路还是3d寻路,都是通用的。本申请方案只需要维护两个变量:
寻路偏转角度:
初始的值是寻路点到终点的方向和当前移动方向的夹角,范围在0到180度,超过180度的换算成0到180度,当是同一方向的时候,是0度,反方向的时候是180度。当前移动方向即为当在所在网格的中心到移动的下一个网格中心连线的方向。在寻路过程中,寻路偏转角度可能变大或者变小,总体趋势是向变小的方向偏转。
旋转系数:
初始值和偏转角度值以及寻路的具体情况有关,范围是0到无穷大,向变小的方向偏转。旋转系数主要用在当寻路不可达到时,比如起点在一个封闭的圆内,而终点在圆外,这个时候寻路会沿着圆不停绕圈,每次检查旋转系数,如果过大就停下来,或者向相反的方向试探。最坏的结果是传统的A*算法。
本申请实施例提供的寻路的方法流程如图2所示,包括如下步骤:
步骤201:记录当前点作为起始点坐标,记录终点坐标,以从起始点指向终点的方向作为寻路方向,开始本次寻路。
步骤202:判断当前寻路方向上的下一个网格类型属于类型2还是类型3,若属于类型2,执行步骤203;若属于类型3,则执行步骤204;
步骤203:沿着寻路方向移动一个网格,然后返回步骤202。
步骤204:分出两个寻路分支,分别沿着顺时针风向以及逆时针方向试图绕过阻挡点,同时建立两个线程,分别维护寻路偏转角度和旋转系数。
步骤205:判断是否有一个寻路分支绕过阻挡点,若是,执行步骤207;否则,若两个分支均已停止,则结束本流程,若还至少存在一个进行中的寻路分支,执行步骤206。所述判断依据是下一个寻路节点坐标比阻挡点离终点近,或者偏转角度变小(因为当遇到阻挡点的时候绕着走,一定会发生偏转角度的变化,其中使用偏转角度变小更节省时间),表明已经绕过该阻挡点。
步骤206:对于任一个寻路分支,按照当前方向(顺时针或逆时针)朝着可移动的网格移动,并计算当前的寻路偏转角度和旋转系数;如果寻路偏转角度越来越大,则每次寻路会试图向着终点偏转,如果不能,表示终点不可达,结束该分支;检查旋转系数的值,若超出阈值则停止该寻路分支。然后返回步骤205。
步骤207:终止另一个寻路分支,将剩下的寻路分支作为当前寻路方向。
步骤208:判断是否到达终点,若是,结束本流程,否则返回步骤201。
从以上流程可以看出,每次绕过阻挡点后,以当前点为起点,重新确定寻路方向,开始新一次寻路,因此实际从起点到终点是由多次寻路过程组成的。以如图3所示路径为例,假设从起点走到终点,一开始如果方向就是向着终点的,那么按照本申请的寻路方法就会向着终点走,直到遇到墙壁,这时产生两种可能,向A还是向B,这种情况下如果向A走,还是会碰到墙壁,然后又会产生两个选择,这时依然会撞到墙壁,然后又产生两个选择,这样有可能陷入死循环中,旋转系数就是当产生这种循环的时候递增,系统发现旋转系数递增,就是选择不同的路径,这样虽然会有多走的问题,但是比A*寻路好很多。最终会达到终点。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请的保护范围,凡在本申请技术方案的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (2)

1.一种虚拟现实场景中寻路的方法,其特征在于,包括:
A、记录当前点作为起始点坐标,记录终点坐标,以从起始点指向终点的方向作为寻路方向;
B、判断当前寻路方向上的下一个网格类型属于类型2还是类型3,若属于类型2,执行步骤C;若属于类型3,则执行步骤D;类型2表示周围无阻挡的搜索节点;类型3表示周围有阻挡的搜索节点;
C、沿着当前寻路方向移动一个网格,然后返回步骤B;
D、分出两个寻路分支,分别沿着顺时针风向以及逆时针方向试图绕过阻挡点,这时建立两个线程,分别维护寻路偏转角度和旋转系数;
E、判断是否有一个寻路分支绕过阻挡点,若是,执行步骤207;否则,若两个分支均已停止,则结束本流程,若还至少存在一个进行中的寻路分支,执行步骤F;
F、对于任一个寻路分支,按照当前方向朝着可移动的网格移动,并计算当前的寻路偏转角度和旋转系数;如果寻路偏转角度越来越大,则试图向着减小寻路偏转角度的方向偏转,如果不能,表示终点不可达,停止该寻路分支;检查旋转系数的值,若超出阈值则停止该寻路分支;然后返回步骤E;
G、终止另一个寻路分支;
H、判断是否到达终点,若是,结束本流程,否则返回步骤A。
2.根据权利要求1所述的方法,其特征在于,步骤E所述判断依据是下一个寻路节点坐标比阻挡点离终点近,或者偏转角度变小,表明已经绕过该阻挡点。
CN201410852326.7A 2014-12-31 2014-12-31 一种虚拟现实场景中寻路的方法 Active CN104548598B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410852326.7A CN104548598B (zh) 2014-12-31 2014-12-31 一种虚拟现实场景中寻路的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410852326.7A CN104548598B (zh) 2014-12-31 2014-12-31 一种虚拟现实场景中寻路的方法

Publications (2)

Publication Number Publication Date
CN104548598A true CN104548598A (zh) 2015-04-29
CN104548598B CN104548598B (zh) 2017-08-08

Family

ID=53066327

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410852326.7A Active CN104548598B (zh) 2014-12-31 2014-12-31 一种虚拟现实场景中寻路的方法

Country Status (1)

Country Link
CN (1) CN104548598B (zh)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106933223A (zh) * 2015-12-30 2017-07-07 深圳市朗驰欣创科技股份有限公司 一种机器人自主导航方法及系统
CN107433039A (zh) * 2016-05-26 2017-12-05 齐游网络科技(上海)有限公司 Ai动态自动寻路方法
CN107463264A (zh) * 2017-08-16 2017-12-12 福建天晴在线互动科技有限公司 一种vr场景复位的方法和终端
CN107727098A (zh) * 2017-09-26 2018-02-23 上海大学 一种依次巡查多个目标位置的无人水面艇路径规划方法
CN107744663A (zh) * 2017-10-19 2018-03-02 广州爱九游信息技术有限公司 人工智能ai单位的寻路方法及装置
CN107982917A (zh) * 2017-11-21 2018-05-04 北京广同川临场互动科技有限公司 一种3d游戏的人物路径搜索方法
CN108089707A (zh) * 2017-12-21 2018-05-29 清华大学 基于虚拟现实的室内疏散环境中npc系统的同步方法和装置
CN108229734A (zh) * 2017-12-26 2018-06-29 北京像素软件科技股份有限公司 路径规划方法及装置
CN108211360A (zh) * 2016-12-14 2018-06-29 盛趣信息技术(上海)有限公司 多人在线网络游戏的跨地图寻路方法
CN108245888A (zh) * 2018-02-09 2018-07-06 腾讯科技(深圳)有限公司 虚拟对象控制方法、装置及计算机设备
CN108434741A (zh) * 2018-03-15 2018-08-24 网易(杭州)网络有限公司 虚拟现实中的移动控制方法及装置
WO2018223343A1 (zh) * 2017-06-08 2018-12-13 深圳市乃斯网络科技有限公司 游戏中定位路径规划方法及系统
CN109432777A (zh) * 2018-10-26 2019-03-08 网易(杭州)网络有限公司 路径生成方法及装置、电子设备、存储介质
TWI664836B (zh) * 2017-01-13 2019-07-01 大陸商騰訊科技(深圳)有限公司 控制模擬對象尋路的方法、裝置及伺服器
CN110812844A (zh) * 2019-11-06 2020-02-21 网易(杭州)网络有限公司 一种游戏中的寻路方法、终端及可读存储介质
CN113457153A (zh) * 2021-06-24 2021-10-01 深圳市瑞立视多媒体科技有限公司 一种基于虚拟引擎的载具平面移动控制方法和装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1037188A2 (en) * 1999-03-16 2000-09-20 Hitachi, Ltd. Three-dimensional map drawing method and navigation apparatus
WO2007031947A2 (en) * 2005-09-12 2007-03-22 Carlos Tapang Frame and pixel based matching of model-generated graphics images to camera frames
CN1938562A (zh) * 2004-03-31 2007-03-28 英国电讯有限公司 寻路系统
CN101241507A (zh) * 2008-01-17 2008-08-13 腾讯科技(深圳)有限公司 一种地图寻路方法及系统
CN102589558A (zh) * 2011-01-07 2012-07-18 北京高德泰信科技有限公司 导航方法、导航终端和导航系统
CN104156459A (zh) * 2014-08-20 2014-11-19 焦点科技股份有限公司 一种基于相同开销网格的高效寻路的方法及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1037188A2 (en) * 1999-03-16 2000-09-20 Hitachi, Ltd. Three-dimensional map drawing method and navigation apparatus
CN1938562A (zh) * 2004-03-31 2007-03-28 英国电讯有限公司 寻路系统
WO2007031947A2 (en) * 2005-09-12 2007-03-22 Carlos Tapang Frame and pixel based matching of model-generated graphics images to camera frames
CN101241507A (zh) * 2008-01-17 2008-08-13 腾讯科技(深圳)有限公司 一种地图寻路方法及系统
CN102589558A (zh) * 2011-01-07 2012-07-18 北京高德泰信科技有限公司 导航方法、导航终端和导航系统
CN104156459A (zh) * 2014-08-20 2014-11-19 焦点科技股份有限公司 一种基于相同开销网格的高效寻路的方法及系统

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106933223B (zh) * 2015-12-30 2020-06-26 深圳市朗驰欣创科技股份有限公司 一种机器人自主导航方法及系统
CN106933223A (zh) * 2015-12-30 2017-07-07 深圳市朗驰欣创科技股份有限公司 一种机器人自主导航方法及系统
CN107433039A (zh) * 2016-05-26 2017-12-05 齐游网络科技(上海)有限公司 Ai动态自动寻路方法
CN108211360B (zh) * 2016-12-14 2021-08-10 盛趣信息技术(上海)有限公司 多人在线网络游戏的跨地图寻路方法
CN108211360A (zh) * 2016-12-14 2018-06-29 盛趣信息技术(上海)有限公司 多人在线网络游戏的跨地图寻路方法
TWI664836B (zh) * 2017-01-13 2019-07-01 大陸商騰訊科技(深圳)有限公司 控制模擬對象尋路的方法、裝置及伺服器
WO2018223343A1 (zh) * 2017-06-08 2018-12-13 深圳市乃斯网络科技有限公司 游戏中定位路径规划方法及系统
CN107463264A (zh) * 2017-08-16 2017-12-12 福建天晴在线互动科技有限公司 一种vr场景复位的方法和终端
CN107463264B (zh) * 2017-08-16 2020-07-14 福建天晴在线互动科技有限公司 一种vr场景复位的方法和终端
CN107727098A (zh) * 2017-09-26 2018-02-23 上海大学 一种依次巡查多个目标位置的无人水面艇路径规划方法
CN107744663B (zh) * 2017-10-19 2020-10-13 阿里巴巴(中国)有限公司 人工智能ai单位的寻路方法及装置
CN107744663A (zh) * 2017-10-19 2018-03-02 广州爱九游信息技术有限公司 人工智能ai单位的寻路方法及装置
CN107982917B (zh) * 2017-11-21 2020-10-16 北京广同川临场互动科技有限公司 一种3d游戏的人物路径搜索方法
CN107982917A (zh) * 2017-11-21 2018-05-04 北京广同川临场互动科技有限公司 一种3d游戏的人物路径搜索方法
CN108089707A (zh) * 2017-12-21 2018-05-29 清华大学 基于虚拟现实的室内疏散环境中npc系统的同步方法和装置
CN108229734A (zh) * 2017-12-26 2018-06-29 北京像素软件科技股份有限公司 路径规划方法及装置
CN108245888A (zh) * 2018-02-09 2018-07-06 腾讯科技(深圳)有限公司 虚拟对象控制方法、装置及计算机设备
US11565181B2 (en) 2018-02-09 2023-01-31 Tencent Technology (Shenzhen) Company Limited Virtual object control method and apparatus, computer device, and storage medium
CN108434741A (zh) * 2018-03-15 2018-08-24 网易(杭州)网络有限公司 虚拟现实中的移动控制方法及装置
CN109432777A (zh) * 2018-10-26 2019-03-08 网易(杭州)网络有限公司 路径生成方法及装置、电子设备、存储介质
CN109432777B (zh) * 2018-10-26 2021-11-12 网易(杭州)网络有限公司 路径生成方法及装置、电子设备、存储介质
CN110812844A (zh) * 2019-11-06 2020-02-21 网易(杭州)网络有限公司 一种游戏中的寻路方法、终端及可读存储介质
CN110812844B (zh) * 2019-11-06 2023-04-07 网易(杭州)网络有限公司 一种游戏中的寻路方法、终端及可读存储介质
CN113457153A (zh) * 2021-06-24 2021-10-01 深圳市瑞立视多媒体科技有限公司 一种基于虚拟引擎的载具平面移动控制方法和装置

Also Published As

Publication number Publication date
CN104548598B (zh) 2017-08-08

Similar Documents

Publication Publication Date Title
CN104548598A (zh) 一种虚拟现实场景中寻路的方法
CN108775902A (zh) 基于障碍物虚拟膨胀的伴随机器人路径规划方法及系统
CN102147260B (zh) 电子地图匹配方法和装置
CN108444490B (zh) 基于可视图和a*算法深度融合的机器人路径规划方法
CN109478062A (zh) 用于无人机的wwan无线电链路质量导航
CN109059924A (zh) 基于a*算法的伴随机器人增量路径规划方法及系统
CN105606102B (zh) 一种基于格网模型的pdr室内定位方法及系统
CN107345815A (zh) 一种基于改进a*算法的家庭服务机器人路径规划方法
CN103186710B (zh) 最优路径搜索方法及系统
CN102901500A (zh) 基于概率a星与智能体混合的飞行器最优路径确定方法
CN109974725A (zh) 一种路网拓扑构建方法、导航路径计算方法及装置
CN107943053A (zh) 一种移动机器人的路径规划方法
CN110488839A (zh) 一种基于切线交叉法的足式机器人路径规划方法及装置
CN111027743B (zh) 基于分层路网的od最优路径搜索方法及装置
CN102749084A (zh) 一种面向海量交通信息的路径选择方法
CN107092978B (zh) 一种面向虚拟地球的最短路径分层规划方法
CN109405828A (zh) 基于ltl-a*算法的移动机器人全局最优路径规划方法
Kriegel et al. Statistical density prediction in traffic networks
CN105608276A (zh) 输电线路路径自动选择方法及元胞自动机模型
CN113485369A (zh) 改进a*算法的室内移动机器人路径规划和路径优化方法
Miller et al. Time versus cost tradeoffs for deterministic rendezvous in networks
CN116036604B (zh) 数据处理方法、装置、计算机及可读存储介质
Xia et al. AI-driven and MEC-empowered confident information coverage hole recovery in 6G-enabled IoT
CN106658570B (zh) 基于二次栅格划分的移动sink信息收集路径构建方法
CN110336875A (zh) 一种提高物联网应用的计算和存储速度的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant