CN115238525A - 一种用于行人仿真客流组织的可行路径搜索方法 - Google Patents

一种用于行人仿真客流组织的可行路径搜索方法 Download PDF

Info

Publication number
CN115238525A
CN115238525A CN202211126607.5A CN202211126607A CN115238525A CN 115238525 A CN115238525 A CN 115238525A CN 202211126607 A CN202211126607 A CN 202211126607A CN 115238525 A CN115238525 A CN 115238525A
Authority
CN
China
Prior art keywords
line
line segment
feasible
point
variable
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
CN202211126607.5A
Other languages
English (en)
Other versions
CN115238525B (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.)
Guangdong University of Technology
Original Assignee
Guangdong University of Technology
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 Guangdong University of Technology filed Critical Guangdong University of Technology
Priority to CN202211126607.5A priority Critical patent/CN115238525B/zh
Publication of CN115238525A publication Critical patent/CN115238525A/zh
Application granted granted Critical
Publication of CN115238525B publication Critical patent/CN115238525B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • G06Q10/047Optimisation of routes or paths, e.g. travelling salesman problem
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Human Resources & Organizations (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • General Physics & Mathematics (AREA)
  • Development Economics (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Evolutionary Computation (AREA)
  • Game Theory and Decision Science (AREA)
  • Computer Hardware Design (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开了一种用于行人仿真客流组织的可行路径搜索方法,包括:获取行人仿真的矢量化地图数据集,将数据集中线段所在的二维坐标区域划分为多个子区域,依据数据集中每条线段所处位置将线段归类到相应的子区域;其中,所述线段表示地图中障碍物的外轮廓线;建立可行线段集合,用于存储路径搜索过程中的可行线段;设定行人仿真的路径起点和终点位置,建立起点和终点的起讫线,进入路径搜索的父循环流程;当变量拐点内、外角都存在以变量拐点为端点的线段,则进入路径搜索的子循环流程;筛选出可行线段集合中首坐标端点为行人仿真的路径起点、末坐标端点为终点的可行线段并简化可行线段,简化后的所有可行线段即为从起点到终点的可行路径集合。

Description

一种用于行人仿真客流组织的可行路径搜索方法
技术领域
本发明涉及路径规划技术领域,具体涉及一种用于行人仿真客流组织的可行路径搜索方法。
背景技术
路径规划算法是移动机器人导航、无人机避障飞行、车辆自动驾驶以及行人仿真等应用的关键技术。在全局静态路径规划传统算法中,有基于构建可视地图的可视图法,有在Dijkstra算法基础上发展而来的A*算法等。近些年来,智能算法、传统与智能相结合的算法相继产生,种类增多,但各自有其优劣性。
A*算法是路径规划的典型代表,是一种在网格化地图中搜索最短路径的方法,其适用范围广,尤其是游戏开发、机器人导航等领域;但在行人仿真实际应用中,对于大规模且复杂的交通枢纽场景,仿真所需的地图精度较高,而地图精度越高,A*算法耗时越长,致使整个行人仿真系统运行效率下降,而采用缩小地图的做法,则会损失地图精度,且容易丢失交通站场内一些体积较小的关键服务设施。此外,A*算法单一的优化路径并不能满足密集型客流时行人交通组织多路线的需求。在节假日、大型活动及恶劣天气出现密集型客流的情况下,受限于交通站场内空间结构,单一的通行路径并不能承受大量客流,而规划出多条较优的可通行路径进行分流是有效解决方法。
现有的同类算法存在以下技术问题:
可视图算法使用的是穷举法,算法效率低下。
A*算法需进行网格化处理,面对大规模和复杂场景时,其计算规模仍然较大,导致其计算时间较长。A*算法提供的起终点之间最优路径,难以满足快速产生起终点之间较优的路径集合这一需求。
智能算法,如神经网络算法、遗传算法等,对硬件要求普遍较高,参数调节相对困难,有时存在局部最优和收敛问题。
发明内容
本发明的目的是提供一种用于行人仿真客流组织的可行路径搜索方法,以较低的计算量和时间快速产生起终点之间较优的路径集合,为行人仿真中客流组织等应用提供大致的可行路径参考。
为了实现上述任务,本发明采用以下技术方案:
一种用于行人仿真客流组织的可行路径搜索方法,包括:
获取行人仿真的矢量化地图数据集,将数据集中线段所在的二维坐标区域划分为多个子区域,依据数据集中每条线段所处位置将线段归类到相应的子区域;其中,所述线段表示地图中障碍物的外轮廓线;
建立可行线段集合,用于存储路径搜索过程中的可行线段;
设定行人仿真的路径起点和终点位置,建立起点和终点的起讫线,进入路径搜索的父循环流程;在该流程中,通过判断所述起讫线所在子区域,根据子区域中线段集合是否与所述起讫线相交,确定可行线段并添加到所述可行线段集合中;其中,当存在相交情况时,首先确定与起讫线相交且与起点直线距离最短的线段,令该线段的两个端点作为变量拐点,构造起点-变量拐点-终点的折线集合,通过判断折线集合内折线的变量拐点内、外角是否都存在以变量拐点为端点的线段来确定是否存在可行线段;
当变量拐点内、外角都存在以变量拐点为端点的线段,则进入路径搜索的子循环流程;在该流程中,根据变量拐点所在子区域的线段集合确定以变量拐点作为其一个端点的所有线段的另一端点,组合成端点集合;构造起点-变量拐点-端点集合中的端点的折线集合;通过判断折线集合内折线的变量拐点内、外角是否都存在以变量拐点为端点的线段来确定是否存在可行线段;
筛选出可行线段集合中首坐标端点为行人仿真的路径起点、末坐标端点为终点的可行线段并简化可行线段,简化后的所有可行线段即为从起点到终点的可行路径集合。
进一步地,所述将数据集中线段所在的二维坐标区域划分为多个子区域,依据数据集中每条线段所处位置将线段归类到相应的子区域,包括:
遍历数据集
Figure 527142DEST_PATH_IMAGE001
中各条线段端点,将端点的x坐标值的最小值记为
Figure 460594DEST_PATH_IMAGE002
、最大值记为
Figure 584539DEST_PATH_IMAGE003
,将端点的y坐标值的最小值记为
Figure 245327DEST_PATH_IMAGE004
、最大值记为
Figure 669486DEST_PATH_IMAGE005
,由以上四个最值构成线段所在的二维坐标区域
Figure 554266DEST_PATH_IMAGE006
,将
Figure 996134DEST_PATH_IMAGE006
划分为
Figure 991772DEST_PATH_IMAGE007
个子区域,每个子区域记为
Figure 739279DEST_PATH_IMAGE008
遍历数据集
Figure 670326DEST_PATH_IMAGE001
,令
Figure 909809DEST_PATH_IMAGE009
,判断线段
Figure 725449DEST_PATH_IMAGE010
上是否存在点
Figure 45572DEST_PATH_IMAGE011
落在子区域
Figure 85204DEST_PATH_IMAGE008
内,即
Figure 258653DEST_PATH_IMAGE012
,则将线段
Figure 2618DEST_PATH_IMAGE010
归类到子区域
Figure 990297DEST_PATH_IMAGE008
的线段集合
Figure 122201DEST_PATH_IMAGE013
中;若线段
Figure 319964DEST_PATH_IMAGE010
上存在多个点落在多个不同的子区域,则线段
Figure 742986DEST_PATH_IMAGE010
同时归类到多个子区域的线段集合中。
进一步地,所述建立可行线段集合,用于存储路径搜索过程中的可行线段,包括:
若当前需要添加的可行线段为
Figure 381909DEST_PATH_IMAGE014
,而集合R中已有的可行线段记为
Figure 215873DEST_PATH_IMAGE015
;若
Figure 713981DEST_PATH_IMAGE014
已在集合R中则结束,否则将
Figure 393224DEST_PATH_IMAGE014
添加到集合
Figure 886654DEST_PATH_IMAGE016
,同时遍历集合R,若
Figure 563623DEST_PATH_IMAGE015
的末坐标端点与
Figure 345765DEST_PATH_IMAGE014
的首坐标端点重合,则将
Figure 563120DEST_PATH_IMAGE015
Figure 848739DEST_PATH_IMAGE014
的末坐标端点组合,组成新的可行线段添加到集合R,否则结束。
进一步地,所述通过判断所述起讫线所在子区域,根据子区域中线段集合是否与所述起讫线相交,确定可行线段并添加到所述可行线段集合中,包括:
步骤3.1,将路径搜索的起点O坐标值赋值给变量o,终点D坐标值赋值给变量d,以变量o为起点变量d为终点,两点相连构造起讫线L od ,判断起讫线L od 所在的子区域,提取出起讫线L od 所在的子区域对应的线段集合;
步骤3.2,遍历步骤3.1提取出的若个线段集合内的线段,判断线段是否与起讫线L od 相交;当不存在相交时,认为起讫线L od 是可行线段,该可行线段需要添加到集合R中,父循环程序结束。
进一步地,所述当存在相交情况时,首先确定与起讫线相交且与起点直线距离最短的线段,令该线段的两个端点作为变量拐点,构造起点-变量拐点-终点的折线集合,通过判断折线集合内折线的变量拐点内、外角是否都存在以变量拐点为端点的线段来确定是否存在可行线段,包括:
步骤3.3,在提取出的若个线段集合中,寻找与起讫线L od 相交且与起点o直线距离最短的线段L i ,若存在多条线段L i 则任取其一;线段L i 的两个端点记为
Figure 566116DEST_PATH_IMAGE017
,此时令变量拐点
Figure 773237DEST_PATH_IMAGE018
,分别以o为起点、
Figure 794283DEST_PATH_IMAGE019
为拐点、d为终点依序相连形成折线
Figure 324621DEST_PATH_IMAGE020
,组成折线集合
Figure 218759DEST_PATH_IMAGE021
步骤3.4,依次判断步骤3.3中折线集合内折线的变量拐点
Figure 693603DEST_PATH_IMAGE019
内、外角是否都存在以变量拐点
Figure 410017DEST_PATH_IMAGE019
为端点的线段:
以折线中线段
Figure 388338DEST_PATH_IMAGE022
为基准线,线段
Figure 391060DEST_PATH_IMAGE023
为分界线,设定基准线
Figure 25303DEST_PATH_IMAGE022
绕拐点
Figure 184889DEST_PATH_IMAGE024
顺时针方向旋转到分界线
Figure 34028DEST_PATH_IMAGE023
所形成的角度区间
Figure 863443DEST_PATH_IMAGE025
为内角,而角度区间
Figure 109617DEST_PATH_IMAGE026
设定为外角;其中
Figure 21029DEST_PATH_IMAGE027
为基准线与分界线的顺时针夹角;
提取出变量拐点
Figure 239521DEST_PATH_IMAGE024
所在子区域对应的线段集合,在该集合中寻找线段,若存在以拐点
Figure 397095DEST_PATH_IMAGE024
为端点的线段,则逐一计算基准线
Figure 474773DEST_PATH_IMAGE028
线段的顺时针夹角,组成夹角集合
Figure 320369DEST_PATH_IMAGE029
;令夹角值
Figure 550624DEST_PATH_IMAGE030
,若
Figure 427836DEST_PATH_IMAGE031
,则将
Figure 258389DEST_PATH_IMAGE032
添加到内角集合
Figure 783042DEST_PATH_IMAGE033
;若
Figure 241705DEST_PATH_IMAGE034
,则将
Figure 928033DEST_PATH_IMAGE032
添加到外角集合
Figure 245882DEST_PATH_IMAGE035
;逐一添加完成后,判断
Figure 292335DEST_PATH_IMAGE033
Figure 90658DEST_PATH_IMAGE035
是否为空集:
若内、外角都存在以拐点
Figure 259471DEST_PATH_IMAGE024
为端点的线段,即内、外角集合都不为空集,即
Figure 877665DEST_PATH_IMAGE036
Figure 665493DEST_PATH_IMAGE037
,则跳转到路径搜索的子循环流程;否则,此时变量起点o更新为拐点
Figure 302010DEST_PATH_IMAGE024
,变量终点d依旧为初始终点D,继续父循环程序,回到步骤3.1;
当内、外角不都存在以拐点
Figure 595720DEST_PATH_IMAGE024
为端点的线段时,认为基准线
Figure 101875DEST_PATH_IMAGE022
是可行线段,该可行线段需要添加到集合R中。
进一步地,所述根据变量拐点所在子区域的线段集合确定以变量拐点作为其一个端点的所有线段的另一端点,组合成端点集合;构造起点-变量拐点-端点集合中的端点的折线集合;通过判断折线集合内折线的变量拐点内、外角是否都存在以变量拐点为端点的线段来确定是否存在可行线段,包括:
步骤4.1,提取出变量拐点
Figure 772022DEST_PATH_IMAGE024
所在子区域对应的线段集合,在该集合中寻找以变量拐点
Figure 200730DEST_PATH_IMAGE024
作为其一个端点的所有线段的另一端点,组合成端点集合
Figure 649028DEST_PATH_IMAGE038
,令端点
Figure 304132DEST_PATH_IMAGE039
,此时变量终点d更新为端点
Figure 168183DEST_PATH_IMAGE040
,分别以o为起点、
Figure 513713DEST_PATH_IMAGE024
为拐点、
Figure 945963DEST_PATH_IMAGE040
为终点依序相连形成折线
Figure 681838DEST_PATH_IMAGE041
Figure 474213DEST_PATH_IMAGE042
…,组合成折线集合
Figure 611933DEST_PATH_IMAGE043
;
步骤4.2,依次判断折线集合内折线的变量拐点
Figure 215084DEST_PATH_IMAGE024
内、外角是否都存在以变量拐点
Figure 766151DEST_PATH_IMAGE024
为端点的线段;
若内、外角都存在以拐点
Figure 972005DEST_PATH_IMAGE024
为端点的线段,则直接淘汰该折线;
当内、外角不都存在以拐点
Figure 839598DEST_PATH_IMAGE024
为端点的线段时,认为基准线
Figure 738284DEST_PATH_IMAGE022
是可行线段,添加到集合R中;
步骤4.3,此时变量起点o更新为拐点
Figure 307805DEST_PATH_IMAGE024
,变量拐点
Figure 582929DEST_PATH_IMAGE024
更新为端点
Figure 570607DEST_PATH_IMAGE040
,变量终点d更新为初始终点D,组成折线
Figure 374615DEST_PATH_IMAGE044
步骤4.4,判断步骤4.3中折线的变量拐点内、外角是否都存在以变量拐点为端点的线段;
若内、外角都存在以变量拐点
Figure 900275DEST_PATH_IMAGE024
(即端点
Figure 583017DEST_PATH_IMAGE045
)为端点的线段,则继续子循环流程,变量拐点
Figure 877732DEST_PATH_IMAGE024
仍为端点
Figure 852641DEST_PATH_IMAGE040
,回到步骤4.1进行循环;否则,变量起点o更新为端点
Figure 413066DEST_PATH_IMAGE040
,变量终点d依旧为初始终点D跳转到父循环流程。
进一步地,所述筛选出可行线段集合中首坐标端点为行人仿真的路径起点、末坐标端点为终点的可行线段并简化可行线段,包括:
经过路径搜索后,可行线段集合R中有首坐标端点为起点O、末坐标端点为终点D的可行线段,记为可行路径;将筛选出的可行路径组成可行路径集
Figure 764413DEST_PATH_IMAGE046
,令
Figure 975952DEST_PATH_IMAGE047
Figure 387342DEST_PATH_IMAGE048
;简化可行路径,是判断可行路径
Figure 169484DEST_PATH_IMAGE049
中间端点能否省略,具体简化过程如下:
若中间端点从头逐一判断都不能省略,直至判断
Figure 58943DEST_PATH_IMAGE050
时,以
Figure 328250DEST_PATH_IMAGE050
的前后端点相连构造线段
Figure 520328DEST_PATH_IMAGE051
,提取出线段
Figure 914400DEST_PATH_IMAGE051
所在子区域对应的线段集合,并将线段集合组成
Figure 732183DEST_PATH_IMAGE052
Figure 793680DEST_PATH_IMAGE052
中存在线段
Figure 422239DEST_PATH_IMAGE053
与线段
Figure 631503DEST_PATH_IMAGE051
相交且交点非
Figure 862765DEST_PATH_IMAGE050
的前后端点,则
Figure 388555DEST_PATH_IMAGE050
不能省略,循环继续判断下一端点
Figure 312649DEST_PATH_IMAGE054
,直至循环结束;
Figure 71526DEST_PATH_IMAGE052
中任意线段
Figure 106478DEST_PATH_IMAGE053
与线段
Figure 486775DEST_PATH_IMAGE051
不相交,或相交但交点为
Figure 581770DEST_PATH_IMAGE050
的前后端点且折线
Figure 765627DEST_PATH_IMAGE055
的拐点
Figure 214057DEST_PATH_IMAGE056
的内、外角不都存在以拐点
Figure 104652DEST_PATH_IMAGE057
为端点的线段,则
Figure 495182DEST_PATH_IMAGE050
可省略,将端点
Figure 114471DEST_PATH_IMAGE050
从可行路径
Figure 881438DEST_PATH_IMAGE049
中删除,更新可行路径
Figure 626540DEST_PATH_IMAGE058
,循环继续判断下一端点
Figure 141966DEST_PATH_IMAGE054
经过以上循环过程,得到从起点到终点的可行路径集合。
一种仿真设备,包括处理器、存储器以及存储在所述存储器中的计算机程序;处理器执行计算机程序时,实现所述用于行人仿真客流组织的可行路径搜索方法的步骤。
一种计算机可读存储介质,所述可读存储介质中存储有计算机程序;计算机程序被处理器执行时,实现所述用于行人仿真客流组织的可行路径搜索方法的步骤。
与现有技术相比,本发明具有以下技术特点:
本方法能快速产生起终点之间较优的可行路径集合,包含最优路径;本方案将各个线段分类到子区域的方法,使得路径搜索时只需考虑当前所处的子区域内的线段,很大程度降低计算量,提高搜索效率;本方案基于矢量化地图数据,无需考虑空间复杂性,在路径搜索过程中进一步缩减计算量。
附图说明
图1为将数据集划分为子区域的示意图;
图2为路径搜索的父循环、子循环过程;
图3为基准线绕拐点旋转所形成的角度区间的示意图;
图4为添加可行线段到集合R中的流程示意图。
具体实施方式
本发明提供了一种用于行人仿真客流组织的可行路径搜索方法。该方法是基于矢量化地图数据集搜索,而地图矢量化是在二维直角坐标中用x、y坐标精确地表示地图图形或地理实体的位置和形状,因此该方法能确保地图精度不损失。可行路径是从起始点出发,沿着目标点的可行方向进行搜索的过程中所产生的可通行的路径,包括最优路径。本方案能满足密集型客流时行人交通组织多路线的需求,提供行人仿真时除最优路径外的可行路径以便客流分开行走;同时,该方法速度快的原因在于搜索过程基于矢量化地图的点线结构,无需考虑空间复杂性,且划分子区域后只需考虑当前所处的子区域内的线段,很大程度降低计算量,有助于提高仿真系统的运行效率。
参见附图,本发明的一种用于行人仿真客流组织的可行路径搜索方法,包括以下步骤:
步骤1,获取行人仿真的矢量化地图数据集
Figure 97153DEST_PATH_IMAGE001
,将
Figure 90648DEST_PATH_IMAGE001
中线段所在的二维坐标区域
Figure 690257DEST_PATH_IMAGE006
划分为多个子区域,依据
Figure 907742DEST_PATH_IMAGE001
中每条线段所处位置将线段归类到相应的子区域;其中,所述线段表示地图中障碍物的外轮廓线。
矢量化地图数据集
Figure 632116DEST_PATH_IMAGE059
,数据集
Figure 616252DEST_PATH_IMAGE001
是由行人仿真系统将所研究区域地图中的障碍物矢量化成多边形所产生的,其中线段
Figure 651727DEST_PATH_IMAGE060
表示数据集中的第K条线段;在地图中,线段表示地图中多边形障碍物的外轮廓线,是两个二维坐标端点相连的线段;例如对于地图中的建筑物,通过外轮廓拟合,可以将该建筑物以其外轮廓表示,其外轮廓的每一条边将作为一条线段。
遍历数据集
Figure 977798DEST_PATH_IMAGE001
中各条线段端点,将端点的x坐标值的最小值记为
Figure 641997DEST_PATH_IMAGE002
、最大值记为
Figure 524765DEST_PATH_IMAGE003
,将端点的y坐标值的最小值记为
Figure 974332DEST_PATH_IMAGE004
、最大值记为
Figure 923833DEST_PATH_IMAGE005
,由以上四个最值构成线段所在的二维坐标区域
Figure 75329DEST_PATH_IMAGE006
,将
Figure 224770DEST_PATH_IMAGE006
划分为
Figure 981373DEST_PATH_IMAGE007
个子区域,每个子区域记为
Figure 118087DEST_PATH_IMAGE008
,其中
Figure 976453DEST_PATH_IMAGE061
Figure 778187DEST_PATH_IMAGE062
,如图1所示。每个子区域
Figure 389297DEST_PATH_IMAGE008
Figure 24809DEST_PATH_IMAGE063
坐标范围表示如下:
Figure 26263DEST_PATH_IMAGE064
其中,每个子区域的
Figure 553059DEST_PATH_IMAGE065
轴向距离
Figure 34987DEST_PATH_IMAGE066
,其
Figure 90668DEST_PATH_IMAGE067
轴向距离
Figure 48260DEST_PATH_IMAGE068
遍历数据集
Figure 998986DEST_PATH_IMAGE001
,令
Figure 584688DEST_PATH_IMAGE009
,判断线段
Figure 296423DEST_PATH_IMAGE010
上是否存在点
Figure 865945DEST_PATH_IMAGE011
落在子区域
Figure 954118DEST_PATH_IMAGE008
内,即
Figure 191064DEST_PATH_IMAGE069
,则将线段
Figure 339280DEST_PATH_IMAGE010
归类到子区域
Figure 537043DEST_PATH_IMAGE008
的线段集合
Figure 678174DEST_PATH_IMAGE013
中;若线段
Figure 520359DEST_PATH_IMAGE010
上存在多个点落在多个不同的子区域,则线段
Figure 495269DEST_PATH_IMAGE010
同时归类到多个子区域的线段集合中。
该步骤中建立了每个子区域对应的线段集合,目的是在后续的路径搜索过程中,作为路径搜索主要考虑的对象;相比于传统路径规划的穷举法,本方案这样设计很大程度上降低搜索过程的计算量,从而便于行人仿真系统的高效运行。
步骤2,建立可行线段集合R,用于存储路径搜索过程中的可行线段。
可行线段表示仿真中行人可通行的路径。添加可行线段到集合R方法:假设当前需要添加的可行线段为
Figure 570541DEST_PATH_IMAGE070
,而集合R中已有的可行线段记为
Figure 921888DEST_PATH_IMAGE071
,即
Figure 821842DEST_PATH_IMAGE072
Figure 92286DEST_PATH_IMAGE070
是在路径搜索过程中产生的,规定
Figure 264642DEST_PATH_IMAGE070
由两个二维坐标端点以列表的形式构成,而
Figure 295046DEST_PATH_IMAGE071
由两个或两个以上的二维坐标端点以列表的形式构成,如表1所示,
Figure 970878DEST_PATH_IMAGE073
表示第e个二维坐标端点。
表1
Figure 677802DEST_PATH_IMAGE074
如图4所示,若
Figure 144644DEST_PATH_IMAGE075
已在集合R中则该步骤结束,否则将
Figure 837793DEST_PATH_IMAGE075
添加到集合
Figure 758345DEST_PATH_IMAGE016
,同时遍历集合R,若
Figure 511537DEST_PATH_IMAGE071
的末坐标端点(即
Figure 268272DEST_PATH_IMAGE071
的最后一个坐标端点)与
Figure 765112DEST_PATH_IMAGE075
的首坐标端点(即
Figure 540170DEST_PATH_IMAGE075
的第一个坐标端点)重合,则将
Figure 464264DEST_PATH_IMAGE071
Figure 911557DEST_PATH_IMAGE075
的末坐标端点组合,组成新的可行线段添加到集合R,否则该步骤结束。
显然,经过端点组合形成的可行线段添加到集合R,更新后的集合R中,既有由两个二维坐标端点以列表的形式构成的可行线段,也有由两个以上的二维坐标端点以列表的形式构成的可行线段,故
Figure 336722DEST_PATH_IMAGE071
由两个或两个以上的二维坐标端点以列表的形式构成。
该步骤中建立了可行线段集合R,目的是在后续的路径搜索过程中,及时添加路径搜索过程中产生的可行线段。这使得搜索出的可行线段有序拼接,从而便于形成仿真中行人可通行且完备的路径。
步骤3,设定行人仿真的路径起点和终点位置,建立起点和终点的起讫线,进入路径搜索的父循环流程;在该流程中,通过判断所述起讫线所在子区域,根据子区域中线段集合是否与所述起讫线相交,确定可行线段并添加到所述可行线段集合R中;其中,当存在相交情况时,首先确定与起讫线相交且与起点直线距离最短的线段,令该线段的两个端点作为变量拐点,构造起点-变量拐点-终点的折线集合,通过判断折线集合内折线的变量拐点内、外角是否都存在以变量拐点为端点的线段来确定是否存在可行线段。
该步骤中,依据行人仿真系统实际需求,初始化路径搜索的起点变量o和终点变量d,将路径搜索的起点O坐标值赋值给变量o,终点D坐标值赋值给变量d。如图2父循环所示,路径搜索的父循环程序如下:
步骤3.1,以变量o为起点变量d为终点,两点相连构造起讫线L od ,与步骤1方法相同,判断起讫线L od 所在的子区域,提取出起讫线L od 所在的子区域对应的线段集合。例如,子区域
Figure 920281DEST_PATH_IMAGE008
对应的线段集合为
Figure 343172DEST_PATH_IMAGE013
,线段集合已在步骤1产生。
步骤3.2,遍历步骤3.1提取出的若个线段集合内的线段,判断线段是否与起讫线L od 相交;当不存在相交时,认为起讫线L od 是可行线段,该可行线段需要添加到集合R中,则当前需要添加的可行线段为
Figure 808920DEST_PATH_IMAGE076
,依据步骤2的方法将
Figure 647563DEST_PATH_IMAGE070
到添加集合R,父循环程序结束。
若存在相交,进入步骤3.3。
步骤3.3,在步骤3.1提取出的若个线段集合中,寻找与起讫线L od 相交且与起点o直线距离最短的线段L i ,若存在多条线段L i 则任取其一。线段L i 的两个端点记为
Figure 397213DEST_PATH_IMAGE077
,此时令变量拐点
Figure 351525DEST_PATH_IMAGE018
,分别以o为起点、
Figure 366885DEST_PATH_IMAGE024
为拐点、d为终点依序相连形成折线
Figure 71536DEST_PATH_IMAGE078
,组成折线集合
Figure 178424DEST_PATH_IMAGE079
步骤3.4,依次判断步骤3.3中折线集合内折线的变量拐点
Figure 943118DEST_PATH_IMAGE024
内、外角是否都存在以变量拐点
Figure 117878DEST_PATH_IMAGE024
为端点的线段。
以折线中线段
Figure 298324DEST_PATH_IMAGE022
为基准线,线段
Figure 225829DEST_PATH_IMAGE023
为分界线,设定基准线
Figure 708894DEST_PATH_IMAGE022
绕拐点
Figure 761163DEST_PATH_IMAGE024
顺时针方向旋转到分界线
Figure 338775DEST_PATH_IMAGE023
所形成的角度区间
Figure 871519DEST_PATH_IMAGE025
为内角,而角度区间
Figure 774753DEST_PATH_IMAGE026
设定为外角,如图3所示,其中
Figure 48739DEST_PATH_IMAGE027
为基准线与分界线的顺时针夹角,
Figure 711933DEST_PATH_IMAGE022
是指o
Figure 20554DEST_PATH_IMAGE024
连接形成的线段。
与步骤1方法相同,提取出变量拐点
Figure 297952DEST_PATH_IMAGE024
所在子区域对应的线段集合,在该集合中寻找线段,若存在以拐点
Figure 200180DEST_PATH_IMAGE024
为端点的线段,则逐一计算基准线
Figure 260540DEST_PATH_IMAGE028
线段的顺时针夹角,组成夹角集合
Figure 79460DEST_PATH_IMAGE029
。令夹角值
Figure 199863DEST_PATH_IMAGE080
,若
Figure 323808DEST_PATH_IMAGE031
,则将
Figure 515755DEST_PATH_IMAGE032
添加到内角集合
Figure 798969DEST_PATH_IMAGE033
,若
Figure 965639DEST_PATH_IMAGE034
,则将
Figure 967093DEST_PATH_IMAGE032
添加到外角集合
Figure 759469DEST_PATH_IMAGE035
。逐一添加完成后,判断
Figure 897189DEST_PATH_IMAGE033
Figure 432163DEST_PATH_IMAGE035
是否为空集。
若内、外角都存在以拐点
Figure 779968DEST_PATH_IMAGE024
为端点的线段,即内、外角集合都不为空集,即
Figure 251401DEST_PATH_IMAGE036
Figure 118994DEST_PATH_IMAGE081
,说明拐点
Figure 17680DEST_PATH_IMAGE024
无法直接到达终点d,则跳转到步骤4子循环程序。否则,此时变量起点o更新为拐点
Figure 852780DEST_PATH_IMAGE024
,变量终点d依旧为初始终点D,继续父循环程序,回到步骤3.1。
当内、外角不都存在以拐点
Figure 940953DEST_PATH_IMAGE019
为端点的线段时,认为基准线
Figure 787687DEST_PATH_IMAGE082
是可行线段,该可行线段需要添加到集合R中,则当前需要添加的可行线段为
Figure 981907DEST_PATH_IMAGE083
,依据步骤2的方法将
Figure 179671DEST_PATH_IMAGE014
到添加集合R。
步骤3中建立了路径搜索的父循环程序,其主要目的是实现沿着初始终点的可行方向快速搜索的功能;相比于A*路径规划算法,本方案这样设计可以省去沿着初始终点搜索过程中不必要的计算量,从而较大提高路径搜索的效率。
步骤4,当变量拐点
Figure 868272DEST_PATH_IMAGE019
内、外角都存在以拐点
Figure 569512DEST_PATH_IMAGE019
为端点的线段,则进入路径搜索的子循环流程;在该流程中,根据变量拐点所在子区域的线段集合确定以变量拐点
Figure 934634DEST_PATH_IMAGE019
作为其一个端点的所有线段的另一端点,组合成端点集合;构造起点-变量拐点-端点集合中的端点的折线集合;通过判断折线集合内折线的变量拐点内、外角是否都存在以变量拐点为端点的线段来确定是否存在可行线段。
步骤4.1,如图2子循环所示,与步骤1方法相同,提取出变量拐点
Figure 432743DEST_PATH_IMAGE019
所在子区域对应的线段集合,在该集合中寻找以变量拐点
Figure 784090DEST_PATH_IMAGE019
作为其一个端点的所有线段(除线段L i 外)的另一端点,组合成端点集合
Figure 730049DEST_PATH_IMAGE038
,令端点
Figure 407018DEST_PATH_IMAGE084
,此时变量终点d更新为端点
Figure 189160DEST_PATH_IMAGE040
,分别以o为起点、
Figure 672094DEST_PATH_IMAGE019
为拐点、
Figure 347926DEST_PATH_IMAGE040
为终点依序相连形成折线
Figure 805583DEST_PATH_IMAGE041
Figure 199656DEST_PATH_IMAGE042
等等,组合成折线集合
Figure 17439DEST_PATH_IMAGE085
步骤4.2,与步骤3.4方法相同,依次判断步骤4.1中折线集合内折线的变量拐点
Figure 78936DEST_PATH_IMAGE019
内、外角是否都存在以变量拐点
Figure 441915DEST_PATH_IMAGE019
为端点的线段。
若内、外角都存在以拐点
Figure 323283DEST_PATH_IMAGE024
为端点的线段,即内、外角集合都不为空集,即
Figure 148020DEST_PATH_IMAGE036
Figure 667951DEST_PATH_IMAGE037
,说明拐点
Figure 857624DEST_PATH_IMAGE024
无法直接到达终点d,则直接淘汰该折线。否则,进入步骤4.3。
当内、外角不都存在以拐点
Figure 85343DEST_PATH_IMAGE024
为端点的线段时,认为基准线
Figure 120295DEST_PATH_IMAGE022
是可行线段,该可行线段需要添加到集合R中,则当前需要添加的可行线段为
Figure 969433DEST_PATH_IMAGE083
,依据步骤2的方法将
Figure 189062DEST_PATH_IMAGE070
到添加集合R。
步骤4.3,此时变量起点o更新为拐点
Figure 779444DEST_PATH_IMAGE024
,变量拐点
Figure 493453DEST_PATH_IMAGE024
更新为端点
Figure 384048DEST_PATH_IMAGE040
,变量终点d更新为初始终点D,组成折线
Figure 774578DEST_PATH_IMAGE044
步骤4.4,与步骤3.4方法相同,判断步骤4.3中折线的变量拐点
Figure 930884DEST_PATH_IMAGE024
内、外角是否都存在以变量拐点
Figure 307639DEST_PATH_IMAGE024
为端点的线段。
若内、外角都存在以变量拐点
Figure 911796DEST_PATH_IMAGE024
(即端点
Figure 348593DEST_PATH_IMAGE045
)为端点的线段,即内、外角集合都不为空集,即
Figure 54512DEST_PATH_IMAGE036
Figure 234958DEST_PATH_IMAGE037
,说明端点
Figure 693621DEST_PATH_IMAGE040
无法直接到达终点d,则继续子循环程序,变量拐点
Figure 301320DEST_PATH_IMAGE024
仍为端点
Figure 432218DEST_PATH_IMAGE040
,回到步骤4.1进行循环。否则,变量起点o更新为
Figure 540988DEST_PATH_IMAGE045
,变量终点d依旧为初始终点D跳转到父循环程序,回到步骤3.1。
步骤4中建立了路径搜索的子循环程序,其目的是路径搜索过程中避开障碍物。避障是路径搜索的关键步骤,而本方案是基于矢量化地图的点线结构进行路径搜索实现避障,这样子设计可以忽略空间的复杂性,从而加快路径搜索的速度。
步骤5,路径搜索程序结束后,筛选出可行线段集合R中首坐标端点为初始起点O、末坐标端点为初始终点D的可行线段并简化可行线段,简化后的所有可行线段即为从起点到终点的可行路径集合。
经过路径搜索后,可行线段集合R中有首坐标端点为起点O、末坐标端点为终点D的可行线段,记为可行路径。将筛选出的可行路径组成可行路径集
Figure 995104DEST_PATH_IMAGE046
,令
Figure 649070DEST_PATH_IMAGE047
Figure 516532DEST_PATH_IMAGE048
Figure 38780DEST_PATH_IMAGE050
为路径中的其中一个中间端点;简化可行线段,即简化可行路径,是判断可行路径
Figure 222768DEST_PATH_IMAGE049
中间端点能否省略,中间端点表示
Figure 437848DEST_PATH_IMAGE049
中除初始起点O和初始终点D外的二维坐标端点。具体简化过程如下:
若中间端点从头逐一判断都不能省略,直至判断
Figure 589344DEST_PATH_IMAGE050
时,以
Figure 649704DEST_PATH_IMAGE050
的前后端点相连构造线段
Figure 885601DEST_PATH_IMAGE086
,与步骤1方法相同,提取出线段
Figure 396217DEST_PATH_IMAGE086
所在子区域对应的线段集合,并将线段集合组成
Figure 644796DEST_PATH_IMAGE087
Figure 384213DEST_PATH_IMAGE087
中存在线段
Figure 933006DEST_PATH_IMAGE088
与线段
Figure 348944DEST_PATH_IMAGE086
相交且交点非
Figure 84818DEST_PATH_IMAGE050
的前后端点,即
Figure 831189DEST_PATH_IMAGE089
,使得
Figure 359122DEST_PATH_IMAGE090
Figure 899956DEST_PATH_IMAGE091
,则
Figure 123127DEST_PATH_IMAGE050
不能省略,循环继续判断下一端点
Figure 453614DEST_PATH_IMAGE054
,直至循环结束。其中,
Figure 445841DEST_PATH_IMAGE088
表示
Figure 485472DEST_PATH_IMAGE087
内的其中一条线段。
Figure 195939DEST_PATH_IMAGE052
中任意线段
Figure 64538DEST_PATH_IMAGE053
与线段
Figure 255479DEST_PATH_IMAGE051
不相交,或相交但交点为
Figure 59487DEST_PATH_IMAGE050
的前后端点且折线
Figure 381884DEST_PATH_IMAGE055
的拐点
Figure 195119DEST_PATH_IMAGE056
的内、外角不都存在以拐点
Figure 37304DEST_PATH_IMAGE057
为端点的线段,即
Figure 277793DEST_PATH_IMAGE092
,使得
Figure 25169DEST_PATH_IMAGE093
,或
Figure 251882DEST_PATH_IMAGE094
Figure 73208DEST_PATH_IMAGE095
Figure 609231DEST_PATH_IMAGE096
Figure 781586DEST_PATH_IMAGE097
,则
Figure 563989DEST_PATH_IMAGE050
可省略,将端点
Figure 505401DEST_PATH_IMAGE050
从可行路径
Figure 415588DEST_PATH_IMAGE049
中删除,更新可行路径
Figure 685026DEST_PATH_IMAGE058
,循环继续判断下一端点
Figure 378176DEST_PATH_IMAGE098
,此时,端点
Figure 298727DEST_PATH_IMAGE054
前一端点为
Figure 51920DEST_PATH_IMAGE057
,直至循环结束。其中,折线
Figure 808654DEST_PATH_IMAGE055
是由端点
Figure 305495DEST_PATH_IMAGE099
依序相连形成的。
经过以上循环过程,可行路径集合F变成简化路径集合
Figure 283815DEST_PATH_IMAGE100
,其中
Figure 817695DEST_PATH_IMAGE101
表示第p条简化路径,该集合同时也是从起点到终点的可行路径集合。
进一步地,在可行路径集合中,可通过以下方法来确定最优路径:
Figure 451939DEST_PATH_IMAGE102
,其中
Figure 611525DEST_PATH_IMAGE103
表示简化路径
Figure 382035DEST_PATH_IMAGE101
的第q个二维坐标端点,定义函数
Figure 290079DEST_PATH_IMAGE104
如下:
Figure 270674DEST_PATH_IMAGE105
同理可得
Figure 109317DEST_PATH_IMAGE106
等,令
Figure 344120DEST_PATH_IMAGE107
,则
Figure 610016DEST_PATH_IMAGE108
表示简化路径集合
Figure 77907DEST_PATH_IMAGE109
中最优路径。
该步骤中建立了可行路径集合并简化可行路径,其目的是进一步缩短可行路径的长度,使其更加符合仿真中行人行走路径。本方案这样子设计可以使搜索出的可行路径更加贴切行人仿真系统,从而为客流组织的决策提供更高的参考价值。
以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (9)

1.一种用于行人仿真客流组织的可行路径搜索方法,其特征在于,包括:
获取行人仿真的矢量化地图数据集,将数据集中线段所在的二维坐标区域划分为多个子区域,依据数据集中每条线段所处位置将线段归类到相应的子区域;其中,所述线段表示地图中障碍物的外轮廓线;
建立可行线段集合,用于存储路径搜索过程中的可行线段;
设定行人仿真的路径起点和终点位置,建立起点和终点的起讫线,进入路径搜索的父循环流程;在该流程中,通过判断所述起讫线所在子区域,根据子区域中线段集合是否与所述起讫线相交,确定可行线段并添加到所述可行线段集合中;其中,当存在相交情况时,首先确定与起讫线相交且与起点直线距离最短的线段,令该线段的两个端点作为变量拐点,构造起点-变量拐点-终点的折线集合,通过判断折线集合内折线的变量拐点内、外角是否都存在以变量拐点为端点的线段来确定是否存在可行线段;
当变量拐点内、外角都存在以变量拐点为端点的线段,则进入路径搜索的子循环流程;在该流程中,根据变量拐点所在子区域的线段集合确定以变量拐点作为其一个端点的所有线段的另一端点,组合成端点集合;构造起点-变量拐点-端点集合中的端点的折线集合;通过判断折线集合内折线的变量拐点内、外角是否都存在以变量拐点为端点的线段来确定是否存在可行线段;
筛选出可行线段集合中首坐标端点为行人仿真的路径起点、末坐标端点为终点的可行线段并简化可行线段,简化后的所有可行线段即为从起点到终点的可行路径集合。
2.根据权利要求1所述的用于行人仿真客流组织的可行路径搜索方法,其特征在于,所述将数据集中线段所在的二维坐标区域划分为多个子区域,依据数据集中每条线段所处位置将线段归类到相应的子区域,包括:
遍历数据集
Figure 418896DEST_PATH_IMAGE001
中各条线段端点,将端点的x坐标值的最小值记为
Figure DEST_PATH_IMAGE002
、最大值记为
Figure 119392DEST_PATH_IMAGE003
,将端点的y坐标值的最小值记为
Figure DEST_PATH_IMAGE004
、最大值记为
Figure 492605DEST_PATH_IMAGE005
,由以上四个最值构成线段所在的二维坐标区域
Figure DEST_PATH_IMAGE006
,将
Figure 169705DEST_PATH_IMAGE006
划分为
Figure 984077DEST_PATH_IMAGE007
个子区域,每个子区域记为
Figure DEST_PATH_IMAGE008
遍历数据集
Figure 977178DEST_PATH_IMAGE001
,令
Figure 713053DEST_PATH_IMAGE009
,判断线段
Figure DEST_PATH_IMAGE010
上是否存在点
Figure 239850DEST_PATH_IMAGE011
落在子区域
Figure 987357DEST_PATH_IMAGE008
内,即
Figure DEST_PATH_IMAGE012
,则将线段
Figure 777458DEST_PATH_IMAGE010
归类到子区域
Figure 531788DEST_PATH_IMAGE008
的线段集合
Figure 737641DEST_PATH_IMAGE013
中;若线段
Figure 835260DEST_PATH_IMAGE010
上存在多个点落在多个不同的子区域,则线段
Figure 593001DEST_PATH_IMAGE010
同时归类到多个子区域的线段集合中。
3.根据权利要求1所述的用于行人仿真客流组织的可行路径搜索方法,其特征在于,所述建立可行线段集合,用于存储路径搜索过程中的可行线段,包括:
若当前需要添加的可行线段为
Figure DEST_PATH_IMAGE014
,而集合R中已有的可行线段记为
Figure 382096DEST_PATH_IMAGE015
;若
Figure 250695DEST_PATH_IMAGE014
已在集合R中则结束,否则将
Figure 97429DEST_PATH_IMAGE014
添加到集合
Figure DEST_PATH_IMAGE016
,同时遍历集合R,若
Figure 72075DEST_PATH_IMAGE015
的末坐标端点与
Figure 145205DEST_PATH_IMAGE014
的首坐标端点重合,则将
Figure 692861DEST_PATH_IMAGE015
Figure 784314DEST_PATH_IMAGE014
的末坐标端点组合,组成新的可行线段添加到集合R,否则结束。
4.根据权利要求1所述的用于行人仿真客流组织的可行路径搜索方法,其特征在于,所述通过判断所述起讫线所在子区域,根据子区域中线段集合是否与所述起讫线相交,确定可行线段并添加到所述可行线段集合中,包括:
步骤3.1,将路径搜索的起点O坐标值赋值给变量o,终点D坐标值赋值给变量d,以变量o为起点变量d为终点,两点相连构造起讫线L od ,判断起讫线L od 所在的子区域,提取出起讫线L od 所在的子区域对应的线段集合;
步骤3.2,遍历步骤3.1提取出的若个线段集合内的线段,判断线段是否与起讫线L od 相交;当不存在相交时,认为起讫线L od 是可行线段,该可行线段需要添加到集合R中,父循环程序结束。
5.根据权利要求1所述的用于行人仿真客流组织的可行路径搜索方法,其特征在于,所述当存在相交情况时,首先确定与起讫线相交且与起点直线距离最短的线段,令该线段的两个端点作为变量拐点,构造起点-变量拐点-终点的折线集合,通过判断折线集合内折线的变量拐点内、外角是否都存在以变量拐点为端点的线段来确定是否存在可行线段,包括:
步骤3.3,在提取出的若个线段集合中,寻找与起讫线L od 相交且与起点o直线距离最短的线段L i ,若存在多条线段L i 则任取其一;线段L i 的两个端点记为
Figure 24802DEST_PATH_IMAGE017
,此时令变量拐点
Figure DEST_PATH_IMAGE018
,分别以o为起点、
Figure 289955DEST_PATH_IMAGE019
为拐点、d为终点依序相连形成折线
Figure DEST_PATH_IMAGE020
,组成折线集合
Figure 234777DEST_PATH_IMAGE021
步骤3.4,依次判断步骤3.3中折线集合内折线的变量拐点
Figure 931469DEST_PATH_IMAGE019
内、外角是否都存在以变量拐点
Figure 936334DEST_PATH_IMAGE019
为端点的线段:
以折线中线段
Figure DEST_PATH_IMAGE022
为基准线,线段
Figure 685853DEST_PATH_IMAGE023
为分界线,设定基准线
Figure 575311DEST_PATH_IMAGE022
绕拐点
Figure 641356DEST_PATH_IMAGE019
顺时针方向旋转到分界线
Figure 223647DEST_PATH_IMAGE023
所形成的角度区间
Figure DEST_PATH_IMAGE024
为内角,而角度区间
Figure 961927DEST_PATH_IMAGE025
设定为外角;其中
Figure DEST_PATH_IMAGE026
为基准线与分界线的顺时针夹角;
提取出变量拐点
Figure 248552DEST_PATH_IMAGE019
所在子区域对应的线段集合,在该集合中寻找线段,若存在以拐点
Figure 149862DEST_PATH_IMAGE019
为端点的线段,则逐一计算基准线
Figure 903055DEST_PATH_IMAGE027
线段的顺时针夹角,组成夹角集合
Figure DEST_PATH_IMAGE028
;令夹角值
Figure 377899DEST_PATH_IMAGE029
,若
Figure DEST_PATH_IMAGE030
,则将
Figure 218947DEST_PATH_IMAGE031
添加到内角集合
Figure DEST_PATH_IMAGE032
;若
Figure 462846DEST_PATH_IMAGE033
,则将
Figure 495262DEST_PATH_IMAGE031
添加到外角集合
Figure DEST_PATH_IMAGE034
;逐一添加完成后,判断
Figure 457402DEST_PATH_IMAGE032
Figure 492354DEST_PATH_IMAGE034
是否为空集:
若内、外角都存在以拐点
Figure 138230DEST_PATH_IMAGE019
为端点的线段,即内、外角集合都不为空集,即
Figure 967646DEST_PATH_IMAGE035
Figure DEST_PATH_IMAGE036
,则跳转到路径搜索的子循环流程;否则,此时变量起点o更新为拐点
Figure 417082DEST_PATH_IMAGE019
,变量终点d依旧为初始终点D,继续父循环程序,回到步骤3.1;
当内、外角不都存在以拐点
Figure 101397DEST_PATH_IMAGE019
为端点的线段时,认为基准线
Figure 585468DEST_PATH_IMAGE022
是可行线段,该可行线段需要添加到集合R中。
6.根据权利要求1所述的用于行人仿真客流组织的可行路径搜索方法,其特征在于,所述根据变量拐点所在子区域的线段集合确定以变量拐点作为其一个端点的所有线段的另一端点,组合成端点集合;构造起点-变量拐点-端点集合中的端点的折线集合;通过判断折线集合内折线的变量拐点内、外角是否都存在以变量拐点为端点的线段来确定是否存在可行线段,包括:
步骤4.1,提取出变量拐点
Figure 585785DEST_PATH_IMAGE019
所在子区域对应的线段集合,在该集合中寻找以变量拐点
Figure 538829DEST_PATH_IMAGE019
作为其一个端点的所有线段的另一端点,组合成端点集合
Figure 181163DEST_PATH_IMAGE037
,令端点
Figure DEST_PATH_IMAGE038
,此时变量终点d更新为端点
Figure 254161DEST_PATH_IMAGE039
,分别以o为起点、
Figure 64860DEST_PATH_IMAGE019
为拐点、
Figure 629834DEST_PATH_IMAGE039
为终点依序相连形成折线
Figure DEST_PATH_IMAGE040
Figure 403754DEST_PATH_IMAGE041
…,组合成折线集合
Figure DEST_PATH_IMAGE042
;
步骤4.2,依次判断折线集合内折线的变量拐点
Figure 81992DEST_PATH_IMAGE019
内、外角是否都存在以变量拐点
Figure 814324DEST_PATH_IMAGE019
为端点的线段;
若内、外角都存在以拐点
Figure 995424DEST_PATH_IMAGE019
为端点的线段,则直接淘汰该折线;
当内、外角不都存在以拐点
Figure 713981DEST_PATH_IMAGE019
为端点的线段时,认为基准线
Figure 292730DEST_PATH_IMAGE022
是可行线段,添加到集合R中;
步骤4.3,此时变量起点o更新为拐点
Figure 71330DEST_PATH_IMAGE019
,变量拐点
Figure 486262DEST_PATH_IMAGE019
更新为端点
Figure 8510DEST_PATH_IMAGE039
,变量终点d更新为初始终点D,组成折线
Figure 441766DEST_PATH_IMAGE043
步骤4.4,判断步骤4.3中折线的变量拐点内、外角是否都存在以变量拐点为端点的线段;
若内、外角都存在以变量拐点
Figure 391267DEST_PATH_IMAGE019
为端点的线段,则继续子循环流程,变量拐点
Figure 260872DEST_PATH_IMAGE019
仍为端点
Figure 852390DEST_PATH_IMAGE039
,回到步骤4.1进行循环;否则,变量起点o更新为端点
Figure 140152DEST_PATH_IMAGE039
,变量终点d依旧为初始终点D跳转到父循环流程。
7.根据权利要求1所述的用于行人仿真客流组织的可行路径搜索方法,其特征在于,所述筛选出可行线段集合中首坐标端点为行人仿真的路径起点、末坐标端点为终点的可行线段并简化可行线段,包括:
经过路径搜索后,可行线段集合R中有首坐标端点为起点O、末坐标端点为终点D的可行线段,记为可行路径;将筛选出的可行路径组成可行路径集
Figure DEST_PATH_IMAGE044
,令
Figure 339183DEST_PATH_IMAGE045
Figure DEST_PATH_IMAGE046
;简化可行路径,是判断可行路径
Figure 446817DEST_PATH_IMAGE047
中间端点能否省略,具体简化过程如下:
若中间端点从头逐一判断都不能省略,直至判断
Figure DEST_PATH_IMAGE048
时,以
Figure 156540DEST_PATH_IMAGE048
的前后端点相连构造线段
Figure 174175DEST_PATH_IMAGE049
,提取出线段
Figure 855692DEST_PATH_IMAGE049
所在子区域对应的线段集合,并将线段集合组成
Figure DEST_PATH_IMAGE050
Figure 935774DEST_PATH_IMAGE050
中存在线段
Figure 603516DEST_PATH_IMAGE051
与线段
Figure 600291DEST_PATH_IMAGE049
相交且交点非
Figure 328076DEST_PATH_IMAGE048
的前后端点,则
Figure 925148DEST_PATH_IMAGE048
不能省略,循环继续判断下一端点
Figure DEST_PATH_IMAGE052
,直至循环结束;
Figure 724477DEST_PATH_IMAGE050
中任意线段
Figure 716703DEST_PATH_IMAGE051
与线段
Figure 490755DEST_PATH_IMAGE049
不相交,或相交但交点为
Figure 201222DEST_PATH_IMAGE048
的前后端点且折线
Figure 335401DEST_PATH_IMAGE053
的拐点
Figure DEST_PATH_IMAGE054
的内、外角不都存在以拐点
Figure 21947DEST_PATH_IMAGE054
为端点的线段,则
Figure 825955DEST_PATH_IMAGE048
可省略,将端点
Figure 148352DEST_PATH_IMAGE048
从可行路径
Figure 696008DEST_PATH_IMAGE047
中删除,更新可行路径
Figure 538193DEST_PATH_IMAGE055
,循环继续判断下一端点
Figure 513102DEST_PATH_IMAGE052
经过以上循环过程,得到从起点到终点的可行路径集合。
8.一种仿真设备,包括处理器、存储器以及存储在所述存储器中的计算机程序;其特征在于,处理器执行计算机程序时,实现根据权利要求1-7任一项所述用于行人仿真客流组织的可行路径搜索方法的步骤。
9.一种计算机可读存储介质,所述可读存储介质中存储有计算机程序;其特征在于,计算机程序被处理器执行时,实现根据权利要求1-7任一项所述用于行人仿真客流组织的可行路径搜索方法的步骤。
CN202211126607.5A 2022-09-16 2022-09-16 一种用于行人仿真客流组织的可行路径搜索方法 Active CN115238525B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211126607.5A CN115238525B (zh) 2022-09-16 2022-09-16 一种用于行人仿真客流组织的可行路径搜索方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211126607.5A CN115238525B (zh) 2022-09-16 2022-09-16 一种用于行人仿真客流组织的可行路径搜索方法

Publications (2)

Publication Number Publication Date
CN115238525A true CN115238525A (zh) 2022-10-25
CN115238525B CN115238525B (zh) 2023-04-18

Family

ID=83681357

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211126607.5A Active CN115238525B (zh) 2022-09-16 2022-09-16 一种用于行人仿真客流组织的可行路径搜索方法

Country Status (1)

Country Link
CN (1) CN115238525B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10333746A (ja) * 1997-05-28 1998-12-18 Shinryo Corp 移動ロボットの経路作成方法
JP2001117487A (ja) * 1999-10-14 2001-04-27 Zenrin Co Ltd ポリゴン道路網データ作成装置及び方法
US20010034588A1 (en) * 2000-03-17 2001-10-25 Maneesh Agrawals System and method for abstracting and visualizing a rout map
WO2009092327A1 (zh) * 2008-01-17 2009-07-30 Tencent Technology (Shenzhen) Company Limited 一种地图寻路方法及系统
JP2009281942A (ja) * 2008-05-23 2009-12-03 Sony Computer Entertainment Inc 経路探索装置、経路探索方法及びプログラム
CN106156898A (zh) * 2016-08-23 2016-11-23 吕建正 一种基于MoCD算法的商品配送路径规划方法
CN109443363A (zh) * 2018-11-09 2019-03-08 厦门大学 分治确定性路径寻优算法
WO2022056770A1 (zh) * 2020-09-17 2022-03-24 华为技术有限公司 一种路径规划方法和路径规划装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10333746A (ja) * 1997-05-28 1998-12-18 Shinryo Corp 移動ロボットの経路作成方法
JP2001117487A (ja) * 1999-10-14 2001-04-27 Zenrin Co Ltd ポリゴン道路網データ作成装置及び方法
US20010034588A1 (en) * 2000-03-17 2001-10-25 Maneesh Agrawals System and method for abstracting and visualizing a rout map
WO2009092327A1 (zh) * 2008-01-17 2009-07-30 Tencent Technology (Shenzhen) Company Limited 一种地图寻路方法及系统
JP2009281942A (ja) * 2008-05-23 2009-12-03 Sony Computer Entertainment Inc 経路探索装置、経路探索方法及びプログラム
CN106156898A (zh) * 2016-08-23 2016-11-23 吕建正 一种基于MoCD算法的商品配送路径规划方法
CN109443363A (zh) * 2018-11-09 2019-03-08 厦门大学 分治确定性路径寻优算法
WO2022056770A1 (zh) * 2020-09-17 2022-03-24 华为技术有限公司 一种路径规划方法和路径规划装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
SAIFEI CHEN,HUI FU AND ETC,.: "Route Choice Behavior Modeling for Emergency Evacuation and Efficiency Analysis Based on Type-II Fuzzy Theory" *
傅惠,陈恺宇: "基于工作流网的应急资源配置与路径规划集成优化" *
吴少健; 江秋枫; 卢洁楚; 李子晗; 朱润峰: "公交车到站时间预测模型研究" *

Also Published As

Publication number Publication date
CN115238525B (zh) 2023-04-18

Similar Documents

Publication Publication Date Title
CN108151751B (zh) 一种基于高精度地图和传统地图结合的路径规划方法及装置
CN109828607B (zh) 一种面向不规则障碍物的无人机路径规划方法及系统
CN110220521B (zh) 一种高精地图的生成方法和装置
CN110823241B (zh) 基于可通行区域骨架提取的机器人路径规划方法及系统
EP3109842B1 (en) Map-centric map matching method and apparatus
CN111811514B (zh) 一种基于正六边形栅格跳点搜索算法的路径规划方法
CN110823240B (zh) 一种具有航向约束的跟随机器人路径规划方法及系统
CN108444490B (zh) 基于可视图和a*算法深度融合的机器人路径规划方法
CN109145171A (zh) 一种多尺度地图数据更新方法
CN111880561B (zh) 城市环境下基于改进鲸鱼算法的无人机三维路径规划方法
CN112325892A (zh) 一种基于改进a*算法的类三维路径规划方法
CN115164907B (zh) 基于动态权重的a*算法的森林作业机器人路径规划方法
CN108334080A (zh) 一种针对机器人导航的虚拟墙自动生成方法
CN111272179B (zh) 一种基于种子搜索的建筑空间无人机航线规划方法
CN114440916B (zh) 一种导航方法、装置、设备及存储介质
CN115200585A (zh) 基于空域网格的无人机航迹规划方法、装置及电子设备
Wu et al. A Non-rigid hierarchical discrete grid structure and its application to UAVs conflict detection and path planning
CN116958316B (zh) 拓扑图生成方法、装置、计算机设备及存储介质
CN115238525B (zh) 一种用于行人仿真客流组织的可行路径搜索方法
Si et al. TOM-odometry: A generalized localization framework based on topological map and odometry
CN116839609A (zh) 全覆盖路径规划方法、装置及计算机可读存储介质
CN115143980A (zh) 基于剪枝Voronoi图的增量式拓扑地图构建方法
CN115631476A (zh) 一种车道数据处理方法、系统、电子设备及存储介质
US20230099772A1 (en) Lane search for self-driving vehicles
CN116089557A (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