[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN114659533A - Path planning method for multi-task conflict detection and resolution in emergency rescue scenarios - Google Patents

Path planning method for multi-task conflict detection and resolution in emergency rescue scenarios Download PDF

Info

Publication number
CN114659533A
CN114659533A CN202111594937.2A CN202111594937A CN114659533A CN 114659533 A CN114659533 A CN 114659533A CN 202111594937 A CN202111594937 A CN 202111594937A CN 114659533 A CN114659533 A CN 114659533A
Authority
CN
China
Prior art keywords
planned
value
vmin
vtt
ett
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
CN202111594937.2A
Other languages
Chinese (zh)
Other versions
CN114659533B (en
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.)
CETC 15 Research Institute
Original Assignee
CETC 15 Research Institute
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 CETC 15 Research Institute filed Critical CETC 15 Research Institute
Priority to CN202111594937.2A priority Critical patent/CN114659533B/en
Publication of CN114659533A publication Critical patent/CN114659533A/en
Application granted granted Critical
Publication of CN114659533B publication Critical patent/CN114659533B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3446Details of route searching algorithms, e.g. Dijkstra, A*, arc-flags or using precalculated routes
    • 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)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Navigation (AREA)
  • Traffic Control Systems (AREA)

Abstract

本发明公开了一种应急救援场景下多任务冲突检测与消解的路径规划方法。本发明对Dijkstra算法进行改进,综合考虑了道路占用、路口占用、车队优先级等多个因素,解决了多梯队协同运输时采用Dijkstra算法进行导航规划时冲突消解问题,能够适用于应急救援协调运输场景。

Figure 202111594937

The invention discloses a path planning method for multi-task conflict detection and resolution in an emergency rescue scenario. The invention improves the Dijkstra algorithm, comprehensively considers multiple factors such as road occupancy, intersection occupancy, fleet priority, etc., solves the problem of conflict resolution when the Dijkstra algorithm is used for navigation planning in multi-echelon cooperative transportation, and can be applied to emergency rescue and coordinated transportation. Scenes.

Figure 202111594937

Description

应急救援场景下多任务冲突检测与消解的路径规划方法Path planning method for multi-task conflict detection and resolution in emergency rescue scenarios

技术领域technical field

本发明涉及路径规划技术领域,具体涉及一种应急救援场景下多任务冲突 检测与消解的路径规划方法。The invention relates to the technical field of path planning, in particular to a path planning method for multi-task conflict detection and resolution in an emergency rescue scenario.

背景技术Background technique

应急救援力量信息化建设一直是国家网信体系建设的重要一环,近年来, 极端恶劣天气、自然灾害频繁发生,国家救援力量承担的任务日趋繁重。一些 救援行动时间跨度长、行动地域广、涉及的救援要素众多,对救援力量的快速 响应能力提出了新的要求。通过全面研究分析路段资源占用情况、时间代价、 行进路线拥堵元素,制定灵活的优先级规则,对多任务路线实现冲突检测与消 解,生成多任务应急救援方案,能够提升救援力量任务规划过程的科学性和精 确性,从而为应急救援行动的快速部署提供有效支撑。The information construction of emergency rescue forces has always been an important part of the construction of the national network information system. In recent years, extreme severe weather and natural disasters have occurred frequently, and the tasks undertaken by the national rescue forces have become increasingly arduous. Some rescue operations have a long time span, a wide range of operations, and many rescue elements involved, which put forward new requirements for the rapid response capability of rescue forces. Through comprehensive research and analysis of road section resource occupancy, time cost, and congestion elements of travel routes, flexible priority rules are formulated, conflict detection and resolution for multi-task routes are realized, and multi-task emergency rescue plans are generated, which can improve the scientific nature of the task planning process of rescue forces. It can provide effective support for the rapid deployment of emergency rescue operations.

现有的有关冲突检测与消解算法文献多数是从构建STN复杂网络入手,考 虑时间、空间、资源等多个维度的影响信息来应对复杂交通场景,如“冲突检测 和消解算法研究与实现”,“基于STN的计划执行过程时间冲突检测与消解”,其 中也有结合GPS定位技术的“无信号交叉口冲突检测与消解算法研究”,此类方 法除了构建难度大以外,也由于加入了卫星等高性能传感器设备而大大增加了 投入成本。基于以上缺点,本文从路线导航层面切入,对行进的任务需求进行 分析,借用传统的图论算法Dijkstra的流程进行改进,进而解决冲突消解问题。 现有的一些针对Dijkstra算法的改进,如“一种基于Dijkstra算法的港口物流调度 方法”是针对港口物流调度的任务进行了复杂系统构建,与Dijkstra结合解决了 有关调度上的路线问题,但并未考虑行进中多任务协调的冲突情况,而“基于 Dijkstra算法的集装箱港口集卡调度场规划研究”也与其上情况类似,其他冲突场 景如“基于改进Dijkstra算法的停车AGV路径规划”是将存车权值设为距离,取 车权值设为时间引入时间窗,而分阶段解决停车路径问题,但是因为停车任务 不具有应急救援任务的优先级性质,这种方法在应急场景下不能处理多任务复 杂协同,而且救援车队因为本身比普通车辆行车长度大,对路口的占有度高, 进入路口结点的设置规则也更复杂,所以并不适合应急救援任务场景。此外还 有针对Dijkstra算法本身存储结构,效率进行的改进优化。Most of the existing literatures on conflict detection and resolution algorithms start with the construction of complex STN networks, and consider the influence information of multiple dimensions such as time, space, and resources to deal with complex traffic scenarios, such as "Research and Implementation of Conflict Detection and Resolution Algorithms", "STN-based planning execution process time conflict detection and resolution", which also includes "unsignaled intersection conflict detection and resolution algorithm research" combined with GPS positioning technology, such methods are not only difficult to construct, but also due to the addition of satellite heights The performance sensor device greatly increases the input cost. Based on the above shortcomings, this paper starts from the route navigation level, analyzes the task requirements of the journey, and borrows the process of the traditional graph theory algorithm Dijkstra to improve, and then solve the problem of conflict resolution. Some existing improvements to Dijkstra's algorithm, such as "A Port Logistics Scheduling Method Based on Dijkstra's Algorithm", are complex system construction for port logistics scheduling tasks, and combined with Dijkstra to solve the routing problem on scheduling, but not The conflict situation of multi-task coordination during travel is not considered, and "Research on the planning of container port truck dispatching yard based on Dijkstra algorithm" is also similar to the above situation. Other conflict scenarios such as "Parking AGV path planning based on improved Dijkstra algorithm" will be stored The vehicle weight value is set as the distance, and the vehicle weight value is set as the time to introduce the time window, and the parking path problem is solved in stages. However, because the parking task does not have the priority nature of the emergency rescue task, this method cannot handle many tasks in an emergency scenario. The tasks are complex and coordinated, and the rescue convoy is not suitable for emergency rescue mission scenarios because it has a longer driving length than ordinary vehicles, occupies a high degree of intersection, and has more complex rules for entering intersection nodes. In addition, there are improvements and optimizations for the storage structure and efficiency of the Dijkstra algorithm itself.

发明内容SUMMARY OF THE INVENTION

有鉴于此,本发明提供了一种应急救援场景下多任务冲突检测与消解的路 径规划方法,解决了多梯队协同运输时采用Dijkstra算法进行导航规划时冲突消 解问题。In view of this, the present invention provides a path planning method for multi-task conflict detection and resolution in an emergency rescue scenario, which solves the problem of conflict resolution when using Dijkstra algorithm for navigation planning in multi-echelon cooperative transportation.

本发明的应急救援场景下多任务冲突检测与消解的路径规划方法,包括:The path planning method for multi-task conflict detection and resolution in an emergency rescue scenario of the present invention includes:

步骤1,以区域内可供转向的路口作为结点,道路作为边,构建区域的路网 有向带权图G(V,E),其中,V为路网中结点的集合,E为路网中有向边的集合; 其中边E的权重包括动态权重E.length、E.value和静态权重E.val;其中,E.val 为当前待规划车队在理想情况下通过边E的时间;Step 1: Taking the steerable intersections in the area as nodes and roads as edges, construct a directed weighted graph G(V, E) of the road network in the area, where V is the set of nodes in the road network, and E is the The set of directed edges in the road network; the weight of edge E includes dynamic weight E.length, E.value and static weight E.val; where E.val is the time for the current fleet to be planned to pass edge E under ideal conditions ;

步骤2,考虑待规划车队和已规划车队的冲突情况,对G(V,E)数据进行更新:Step 2, considering the conflict between the fleet to be planned and the planned fleet, update the G(V,E) data:

S21,提取集合V中未被标记的、value值最小的结点Vmin,并根据G(V,E) 获取其邻接点,所述邻接点未被标记;其中value值为当前待规划车队到达此结 点的时间;路径起始结点的value值初始化为0;其他结点的value值初始化为 无穷大;若集合V中的结点均已被标记,则执行步骤3;S21, extract the unmarked node Vmin with the smallest value in the set V, and obtain its adjacent points according to G(V, E), and the adjacent points are not marked; wherein the value is the current fleet to be planned to reach this point The time of the node; the value of the starting node of the path is initialized to 0; the value of other nodes is initialized to infinity; if the nodes in the set V have been marked, go to step 3;

S22,选取Vmin的邻接结点中未被遍历的点Vtt,更新结点Vmin与Vtt的 边Ett的权重Ett.length:S22, select the untraversed point Vtt in the adjacent nodes of Vmin, and update the weight Ett.length of the edge Ett between the nodes Vmin and Vtt:

1)判断结点Vmin与结点Vtt的边Ett是否被其他已规划车队所占用,如果 未被占用,则令Ett.value=Ett.val,Ett.length=Ett.value+fleet.length/velocity;执行2);其中,fleet.length为待规划车队的长度;velocity为待规划车队的平均速度;1) Determine whether the edge Ett between the node Vmin and the node Vtt is occupied by other planned fleets, if not, set Ett.value=Ett.val, Ett.length=Ett.value+fleet.length/velocity ; Execute 2); wherein, fleet.length is the length of the fleet to be planned; velocity is the average speed of the fleet to be planned;

否则,令Ett.value=Vmin.end-Vmin.value+Ett.val,Ett.length=Vmin.end-Vmin.value+Ett.value+fleet.length/velocity;执行2);Otherwise, let Ett.value=Vmin.end-Vmin.value+Ett.val, Ett.length=Vmin.end-Vmin.value+Ett.value+fleet.length/velocity; execute 2);

2)判断待规划车队到达结点Vtt时,是否与已规划车队相冲突;若不冲突, 则令Ett.length=Ett.value,执行S23;若冲突,则转入3);所述冲突是指两个车 队通过结点Vtt的时间段有重叠;2) Judge whether the convoy to be planned conflicts with the planned convoy when it reaches the node Vtt; if it does not conflict, set Ett.length=Ett.value, and execute S23; if there is a conflict, go to 3); the conflict is It means that the time period of the two teams passing through the node Vtt overlaps;

3)判断待规划车队是否先到达结点Vtt:若待规划车队先到达,且待规划 车队的优先级大于或等于已规划车队,则令Ett.length=Ett.value,执行S23,并 通知该冲突已规划车队重新规划;若待规划车队先到达,但待规划车队的优先 级小于已规划车队,则执行4);3) Determine whether the to-be-planned fleet arrives at the node Vtt first: if the to-be-planned fleet arrives first, and the priority of the to-be-planned fleet is greater than or equal to the planned fleet, set Ett.length=Ett.value, execute S23, and notify the The conflict has been planned to re-plan the fleet; if the to-be-planned fleet arrives first, but the priority of the to-be-planned fleet is lower than that of the planned fleet, execute 4);

若待规划车队后到达,但待规划车队的优先级大于已规划车队,则令 Ett.length=Ett.value,执行S23,并通知该已规划车队重新规划;若待规划车队后 到达,且待规划车队的优先级不大于已规划车队,则判断已规划车队的下一个 结点是否是Vmin,若是,则令Ett.length=Vmin.end-Vmin.value+Ett.val,执行S23; 否则令Ett.length=end-Vmin.value,执行S23;If it arrives after the planned fleet, but the priority of the planned fleet is greater than the planned fleet, set Ett.length=Ett.value, execute S23, and notify the planned fleet to re-plan; if it arrives after the planned fleet, and wait for If the priority of the planned fleet is not greater than the planned fleet, then judge whether the next node of the planned fleet is Vmin, if so, set Ett.length=Vmin.end-Vmin.value+Ett.val, and execute S23; otherwise, set Ett.length=end-Vmin.value, execute S23;

4)判断已规划车队的下一个结点是否是Vmin,若不是,则令Ett.length=end-Vmin.value,执行S23;若是,则令Ett.length=Vmin.end-Vmin.value+Ett.val,执 行S23;4) Determine whether the next node of the planned fleet is Vmin, if not, set Ett.length=end-Vmin.value, and execute S23; if so, set Ett.length=Vmin.end-Vmin.value+Ett .val, execute S23;

S23,计算Vtt.value′=Vmin.value+Ett.length;若Vtt.value′小于结点Vtt的value 值,则更新Vtt.value=Vtt.value′,并将Vmin记录到回溯向量res当中;S23, calculate Vtt.value'=Vmin.value+Ett.length; if Vtt.value' is less than the value of the node Vtt, update Vtt.value=Vtt.value', and record Vmin into the backtracking vector res;

S24,判断Vmin的邻接点是否均已遍历,若未全部遍历,则返回S22;若 均已遍历则标记当前结点Vmin,返回S21;S24, judge whether the adjacent points of Vmin have all been traversed, if not all traversed, then return to S22; if all have been traversed, then mark the current node Vmin, and return to S21;

步骤3,从路径终点向前回溯res向量,得到最短路径。Step 3: Backtrack the res vector from the end point of the path forward to obtain the shortest path.

较优的,所述S22中,判断结点Vmin与结点Vtt的边Ett是否被其他已规 划车队所占用的方式为:Preferably, in the described S22, the mode of judging whether the edge Ett of the node Vmin and the node Vtt is occupied by other planned teams is:

在边Ett的参数中设置state,用于存放已规划车队在边Ett的占用时间,即[Vmin.start,Vtt.end]或[Vtt.start,Vmin.end];其中,Vmin.start为已规划车队经过结点Vmin的开始时间,Vtt.end为该车队离开结点Vtt的结束时间;Vtt.start为已 规划车队经过结点Vtt的开始时间,Vmin.end为该车队离开结点Vmin的结束时 间;Set the state in the parameters of edge Ett to store the occupied time of the planned fleet on edge Ett, that is [Vmin.start,Vtt.end] or [Vtt.start,Vmin.end]; The start time of the planned convoy passing through the node Vmin, Vtt.end is the end time of the convoy leaving the node Vtt; Vtt.start is the start time of the planned convoy passing the node Vtt, and Vmin.end is the time when the convoy left the node Vmin. End Time;

则若待规划车队的Vmin.value在state存储的时间段内,则表明表Ett已被 占用,否则,表明未被占用。Then, if the Vmin.value of the fleet to be planned is within the time period stored in the state, it means that the table Ett has been occupied, otherwise, it means that it is not occupied.

较优的,所述S22中,判断待规划车队到达结点Vtt时,是否与已规划车队 相冲突的方式为:Preferably, in the described S22, when it is judged that the fleet to be planned arrives at the node Vtt, whether it is in conflict with the planned fleet is:

若待规划车队满足:Vmin.value+Ett.value>Vtt.end或Vmin.value+Ett.length<Vtt.start,则不冲突,否则为冲突;其中,Vtt.end为已规划车队经过结点Vtt的 开始时间,Vtt.start为已规划车队经过结点Vtt的开始时间。If the fleet to be planned satisfies: Vmin.value+Ett.value>Vtt.end or Vmin.value+Ett.length<Vtt.start, there is no conflict, otherwise it is a conflict; among them, Vtt.end is the planned fleet passing through the node The start time of Vtt, Vtt.start is the start time of the planned fleet passing through the node Vtt.

较优的,所述S22中,判断待规划车队是否先到达结点Vtt的方式为:若待 规划车队满足:Vmin.value+Ett.value<Vtt.start且Vtt.start<Vmin.value+Ett.length, 则表示待规划梯队先到达Vtt;其中,Vtt.start表示代表该已规划车队经过此结 点的开始时间;否则,待规划车队后到达结点Vtt。Preferably, in the S22, the method of judging whether the fleet to be planned reaches the node Vtt first is: if the fleet to be planned satisfies: Vmin.value+Ett.value<Vtt.start and Vtt.start<Vmin.value+Ett .length, it means that the planned echelon arrives at Vtt first; among them, Vtt.start means the start time of the planned fleet passing through this node; otherwise, the planned fleet arrives at the node Vtt.

较优的,所述步骤2中,构建集合U和集合S,初始化集合U为集合V, 集合S为空集;从集合U中选取Vmin并移入集合S;将Vmin及其邻接点并入 临时集合Vtemp当中,将待规划车队由Vmin到集合Vtemp中各结点的边并入 临时集合Etemp中;Preferably, in the step 2, a set U and a set S are constructed, the set U is initialized as a set V, and the set S is an empty set; Vmin is selected from the set U and moved into the set S; Vmin and its adjacent points are merged into the temporary set. In the set Vtemp, merge the edges of the fleet to be planned from Vmin to each node in the set Vtemp into the temporary set Etemp;

从临时集合Vtemp中选取结点Vtt,计算结点Vmin与Vtt的边Ett的权重Ett.length,更新Vtemp中的结点Vtt的value值为:Vtt.value=Vmin.value+Ett.length;Select the node Vtt from the temporary set Vtemp, calculate the weight Ett.length of the edge Ett between the node Vmin and Vtt, and update the value of the node Vtt in Vtemp to the value: Vtt.value=Vmin.value+Ett.length;

遍历集合Vtemp中的所有结点;若集合Vtemp中的结点的value值小于集 合U中相同结点的value值,则更新集合U中该结点的value值为集合Vtemp 中的value值;Traverse all the nodes in the set Vtemp; if the value of the node in the set Vtemp is less than the value of the same node in the set U, then update the value of the node in the set U to the value in the set Vtemp;

清空集合Vtemp、Etemp;Empty the collection Vtemp, Etemp;

从集合U中重新选取Vmin并移入集合S,重复执行上述操作,直到集合U 为空集,执行步骤3。Reselect Vmin from the set U and move it into the set S, and repeat the above operations until the set U is an empty set, and perform step 3.

较优的,所述Vtt.length根据道路交通状况、路面材质以及坡度进行修订。Preferably, the Vtt.length is revised according to road traffic conditions, road surface material and gradient.

有益效果:Beneficial effects:

1)本发明考虑到现实的物流运输的场景下多个车队行进中方案实施很多时 候会发生拥堵问题,对Dijkstra算法进行改进,综合考虑了道路占用、路口占用、 车队优先级等多个因素,解决了多梯队协同运输时采用Dijkstra算法进行导航规 划时冲突消解问题,能够适用于应急救援协调运输场景。1) The present invention takes into account the fact that in the actual logistics and transportation scenario, the implementation of multiple fleets in the moving scheme will often cause congestion problems, and improves the Dijkstra algorithm, comprehensively considering road occupation, intersection occupation, fleet priority and other factors, It solves the problem of conflict resolution when using Dijkstra algorithm for navigation planning in multi-echelon collaborative transportation, and can be applied to emergency rescue coordinated transportation scenarios.

2)本发明从与历史任务路径发生理论冲突的角度解决路径规划问题并做出 提前应对或响应,所以在初步规划阶段并不需要引入价格高昂GIS,GPS技术 等,成本大大降低。且可以针对历史任务的优先级进行更新,调整,更加灵活。2) The present invention solves the path planning problem from the perspective of theoretical conflict with the historical task path and makes an early response or response, so it is not necessary to introduce expensive GIS, GPS technology, etc. in the preliminary planning stage, and the cost is greatly reduced. And it can be updated and adjusted for the priority of historical tasks, which is more flexible.

3)本方案具有一定的可拓展性,便于后续改进。举例来说,车队经过交通 状况不同,路面材质不同,坡度不同的道路时,所花费的时间代价并不相同, 本方案可以通过对带有这些影响因素的道路数据引入来提前考虑权值变化,且 还可以根据一些特殊车型需要进行调整。这使得方案的灵活度,拓展性大大提 高。3) This scheme has certain scalability, which is convenient for subsequent improvement. For example, when the convoy passes through roads with different traffic conditions, different pavement materials, and different slopes, the time and cost spent are not the same. In this scheme, the weight change can be considered in advance by introducing road data with these influencing factors. And it can also be adjusted according to the needs of some special models. This greatly improves the flexibility and expandability of the program.

附图说明Description of drawings

图1为本发明流程图。Fig. 1 is a flow chart of the present invention.

图2为本发明Ett.length、Vtt.value更新流程图。FIG. 2 is a flow chart of updating Ett.length and Vtt.value of the present invention.

图3为道路有向图,其中字母代表路口结点,字母之间的线段代表两个路 口之间的路段,它上面的数字代表经过这个路段的时间。Figure 3 is a directed road graph, in which letters represent intersection nodes, the line segment between the letters represents the road segment between two intersections, and the number above it represents the time passing through this road segment.

如图3(a)所示,原有的从A到F的最短路径为A->B->C->F,时间为27, 小于另一条30。但是如果此时有其他车队占用C口时间10,那么从C到F的代 价就会从10变为20(如图3(b)所示)。但传统算法不做这种考虑其他车队影 响的代价计算,所以依然会计算最短路径为A->B->C->F。As shown in Fig. 3(a), the original shortest path from A to F is A->B->C->F, and the time is 27, which is less than 30 for the other one. But if there are other teams occupying C port time 10 at this time, then the cost from C to F will change from 10 to 20 (as shown in Figure 3(b)). However, the traditional algorithm does not do this cost calculation considering the influence of other teams, so the shortest path is still calculated as A->B->C->F.

经过本发明方法的计算,最终得到的最短路径为A->D->E->F,时间为30, 小于另一条37。After calculation by the method of the present invention, the shortest path finally obtained is A->D->E->F, and the time is 30, which is less than the other 37.

具体实施方式Detailed ways

下面结合附图并举实施例,对本发明进行详细描述。The present invention will be described in detail below with reference to the accompanying drawings and embodiments.

本发明提供了一种应急救援场景下多任务冲突检测与消解的路径规划方法, 在传统Dijkstra算法的理论基础上,借用图论原理,在原有带权图的基础上增加 了结点和边的时间属性,建模时可将路段视作边缘,路口视作结点,并且进行 图搜索的过程中,把关注点放到每一个结点和边的时间属性上,综合时间和优 先级的考虑,使得运输车队在使用该算法进行路径规划时能够实现与已有的运 输任务车队的避堵功能。The invention provides a path planning method for multi-task conflict detection and resolution in an emergency rescue scene. Based on the theoretical basis of the traditional Dijkstra algorithm, the graph theory principle is borrowed, and the time of nodes and edges is increased on the basis of the original weighted graph. Attribute, when modeling, the road segment can be regarded as an edge, and the intersection can be regarded as a node, and in the process of graph search, the focus is placed on the time attribute of each node and edge, considering the time and priority, This enables the transport fleet to achieve the function of avoiding congestion with the existing fleet of transport tasks when using the algorithm for path planning.

相比基于Dijkstra算法的导航实现,本方案不再忽视现在的计算车队长度与 已有的历史车队长度、行进路线,将其在有向图中经过一个结点或一个边的过 程视作带有属性的时间窗口,一旦与规划中路径发生冲突之后,会进行优先级 判断,优先为任务级别更高的任务车队分配该路口路段的资源,如果是当前任 务的优先级更高,则实际的搜索权重并不进行修改,如果是与其他任务在该点 发生冲突时的优先级更低或者同一等级,则会相应的根据时间属性更改目前搜 索的权重,使得车队任务在算法运行过程中,考虑到避堵的任务需求,最终规 划出一条将拥堵时间代价计算在内的车队路线。Compared with the navigation implementation based on the Dijkstra algorithm, this scheme no longer ignores the current calculated fleet length and the existing historical fleet length and travel route, and regards the process of passing a node or an edge in the directed graph as a The time window of the attribute, once it conflicts with the planned path, the priority will be judged, and the resources of the intersection and road section will be allocated to the task fleet with a higher task level first. If the priority of the current task is higher, the actual search will be performed. The weight is not modified. If the priority is lower or the same level when it conflicts with other tasks at this point, the weight of the current search will be changed accordingly according to the time attribute, so that the team task will take into account during the operation of the algorithm. To meet the task requirements of congestion avoidance, a convoy route is finally planned that takes into account the cost of congestion time.

本发明方法流程图如图1所示,具体包括:The flow chart of the method of the present invention is shown in Figure 1, which specifically includes:

1)构建某区域的道路模型:以该区域内可供转向的路口作为结点,道路作 为边径,构建该区域路网G(V,E);其中,V为路网中结点的集合,E为路网中 有向边的集合,G(V,E)为有向带权图;1) Construct the road model of a certain area: take the steerable intersections in the area as nodes and the roads as the edges to construct the road network G(V, E) in the area; where V is the set of nodes in the road network , E is the set of directed edges in the road network, and G(V, E) is a directed weighted graph;

其中,本实施例对边和结点的结构设计如下:Wherein, the structural design of the edge and node in this embodiment is as follows:

边E结构为:The edge E structure is:

edgeedge idid valuevalue SnodeSnode EnodeEnode state*state* lengthlength val val

edge是边名称;id是边的索引;value为考虑边占用影响的道路权值;Snode、Enode分别这条边的起点和终点;state*代表当前路段是否被其他车队所占用, 为链表形式,被占用则读取占用时间;length是这条边的动态权重,即考虑了车 队经过的权重;val是这条边的静态权重,为当前待规划车队在理想情况下通过 这条边的时间。edge is the name of the edge; id is the index of the edge; value is the road weight considering the influence of edge occupancy; Snode and Enode are the start and end points of the edge respectively; state* represents whether the current road segment is occupied by other teams, in the form of a linked list, If it is occupied, read the occupied time; length is the dynamic weight of this edge, that is, the weight of the fleet passing by is considered; val is the static weight of this edge, which is the ideal time for the current fleet to be planned to pass this edge.

结点V结构为:The structure of node V is:

nodenode idid start*start* end*end* next*next* value value

node是结点名称;id是结点的索引,start*代表其他车队经过此结点的开始 时间,为链表形式;end*则代表其他车队离开此结点的结束时间,为链表形式; next*则代表其他车队的下一个结点,为链表形式;value则代表当前待规划车队 到达此结点的开始时间,初始值是无穷大。node is the name of the node; id is the index of the node, start* represents the start time of other teams passing through this node, in the form of a linked list; end* represents the end time of the other teams leaving this node, in the form of a linked list; next* It represents the next node of other teams, in the form of a linked list; value represents the start time of the current team to be planned to reach this node, and the initial value is infinity.

2)初始化,过程如下:2) Initialization, the process is as follows:

2.1)初始化当前时刻t0:将模型中的初始路径时间t置0;2.1) Initialize the current time t0: set the initial path time t in the model to 0;

2.2)初始化回溯向量res,用来保存最短路径结果;2.2) Initialize the backtracking vector res to save the shortest path result;

2.3)初始化结点集合S,表示当前时刻下已找到最短路径的结点的集合, 令S=ф;2.3) Initialize the node set S, which represents the set of nodes that have found the shortest path at the current moment, let S=ф;

2.4)初始化结点集合U,表示当前时刻下未计算出的、最短路径的结点 的集合;令U=V。2.4) Initialize the node set U, which represents the set of nodes with the shortest path not calculated at the current moment; let U=V.

3)如果U=ф,则跳到步骤14);否则,跳转到步骤4);3) If U=ф, go to step 14); otherwise, go to step 4);

4)选取集合U中value值最小的结点Vmin,将其移入到集合S中;其中, 路径规划的起点V0的value值为0,其他结点的value值为无穷大;4) Select the node Vmin with the smallest value in the set U, and move it into the set S; wherein, the value of the starting point V0 of the path planning is 0, and the value of other nodes is infinite;

5)根据路网G(V,E),在集合U内搜索结点Vmin的邻接点,将结点Vmin 及其邻接点并入到临时集合Vtemp当中;5) According to the road network G(V, E), search the adjacent points of the node Vmin in the set U, and merge the node Vmin and its adjacent points into the temporary set Vtemp;

6)根据路网G(V,E),构建临时集合Etemp,存放待规划车队由Vmin到集 合Vtemp中各结点的边;6) According to the road network G(V, E), construct a temporary set Etemp, and store the edges of the fleet to be planned from Vmin to each node in the set Vtemp;

7)从集合Vtemp中任意选取一个未被遍历的元素Vtt;7) arbitrarily select an untraversed element Vtt from the set Vtemp;

8)判断元素Vtt的状态:8) Determine the state of the element Vtt:

8.1)读取其上的start属性Vtt.start和end属性Vtt.end;8.1) Read the start attribute Vtt.start and end attribute Vtt.end on it;

8.2)读取Etemp集合中,Vmin-Vtt的有向边Ett.val;8.2) Read the directed edge Ett.val of Vmin-Vtt in the Etemp set;

8.3)Ett.val是不考虑梯队长度,不考虑边占用的理想通过时间;8.3) Ett.val is the ideal passing time regardless of echelon length and edge occupation;

Ett.value是考虑路段被占用,需要整个梯队进行等待后队头到达Vtt所花费 的时间;Ett.value is the time it takes for the head of the team to reach Vtt after the entire echelon is required to wait for the road section to be occupied;

Ett.length是考虑路段被占用,需要整个梯队进行等待后队尾部离开Vtt所 花费的时间;Ett.length is the time it takes for the tail of the team to leave Vtt after the entire echelon is required to wait for the road section to be occupied;

在对后两者进行赋值的时侯,先进行逻辑判断,分为两种情况:When assigning values to the latter two, first make a logical judgment, which is divided into two cases:

如果该路段未被其他梯队占用:If the road segment is not occupied by other echelons:

则Ett.value=Ett.val,Then Ett.value=Ett.val,

Ett.length=Ett.value+fleet.length/velocity;Ett.length=Ett.value+fleet.length/velocity;

其中,fleet.length为车队长度;velocity为车队平均速度;执行8.4);Among them, fleet.length is the length of the fleet; velocity is the average speed of the fleet; execute 8.4);

否则:Ett.value=Vmin.end-Vmin.value+Ett.val,Otherwise: Ett.value=Vmin.end-Vmin.value+Ett.val,

Ett.length=Vmin.end-Vmin.value+Ett.value+fleet.length/velocity;Ett.length=Vmin.end-Vmin.value+Ett.value+fleet.length/velocity;

执行8.4);implement 8.4);

其中,可根据该路段的“state”判断该路段是否被占用:state里面存放的是 其他已规划车队在Vmin和Vtt两个路口之间被占用的时间段,比如车队a会先 到达Vmin,然后经过Vtt,那么state中存放的占用时间段为[Vmin.start,Vtt.end];Among them, you can judge whether the road section is occupied according to the "state" of the road section: the state stores the time period when other planned fleets are occupied between the two intersections Vmin and Vtt. For example, fleet a will reach Vmin first, and then After Vtt, the occupied time period stored in the state is [Vmin.start,Vtt.end];

另一种情况是车队a会先到达Vtt,然后经过Vmin,那么state中存放的时 间段为[Vtt.start,Vmin.end];Another situation is that the team a will reach Vtt first, and then pass through Vmin, then the time period stored in the state is [Vtt.start, Vmin.end];

只要Vmin.value处于这个区间之内,那么就认为待规划车队到达Vmin的 时刻,路段Ett是被占用状态。As long as Vmin.value is within this interval, it is considered that the road segment Ett is occupied when the planned fleet reaches Vmin.

即若待规划车队到达Vmin的时间Vmin.value满足:state存放时间段的起 点<Vmin.value<state存放时间段的终点,则意味着Ett被占用。That is, if the time Vmin.value when the planned fleet reaches Vmin satisfies: the starting point of the state storage period < Vmin.value < the end point of the state storage period, it means that Ett is occupied.

之所以采用存储的方式,是因为:如果在算法运行的时候再去判断先Vtt 还是先Vmin,那会浪费大量时间,所以不如就一开始在存储的时候存取这个信 息,这样虽然使得存储空间增大,但是使得算法程序在运行时候不会再进行这 里谁先谁后的逻辑判断,会大大提高性能。The reason why the storage method is adopted is because: if the algorithm is running, it will waste a lot of time to determine whether Vtt first or Vmin first, so it is better to access this information at the beginning of storage, so that although the storage space is reduced. increase, but the algorithm program will no longer make the logical judgment of who comes first here, which will greatly improve the performance.

8.4)判断待规划车队是否与其他已规划车队在结点Vtt处发生冲突,所述冲 突为两车队同时经过结点Vtt:8.4) Determine whether the convoy to be planned conflicts with other planned convoys at the node Vtt, and the conflict is that the two convoys pass through the node Vtt at the same time:

如果Vmin.value+Ett.value>Vtt.end或Vmin.value+Ett.length<Vtt.start,则表示 待规划车队比其他已规划车队早到或者晚到,不会与其发生冲突,令 Ett.length=Ett.value,执行步骤10);否则代表发生冲突,执行步骤9);If Vmin.value+Ett.value>Vtt.end or Vmin.value+Ett.length<Vtt.start, it means that the to-be-planned fleet will arrive earlier or later than other planned fleets, and there will be no conflict with them, so that Ett. length=Ett.value, go to step 10); otherwise, a conflict occurs, go to step 9);

9)根据实际冲突的时间,更新Etemp状态:9) According to the actual conflict time, update the Etemp state:

9.1)若Vmin.value+Ett.value<Vtt.start且Vtt.start<Vmin.value+Ett.length, 代表待规划梯队会先到达Vtt,与已入库梯队a会在该点发生冲突,此时可判断 两次任务的优先级,假设待规划梯队任务优先级高于或等于a,可使待规划梯队 率先占用Vtt点,并且读取a的坐标,重新为a规划路线,并令Ett.length=Ett.value, 进入步骤10);若当前任务优先级小于a的优先级,则在计算Vtt时,a对其优 先占用,当前任务要将等待时间规划在内,判断a到达Vtt以后的next结点, 如果梯队a在Vtt上的next结点不是Vmin,转到9.2);否则next结点=Vmin, 代表优先让a梯队经过该路口,a也会与带规划梯队发生任务冲突, Ett.length=Vmin.end-Vmin.value+Ett.val,转到步骤10)。9.1) If Vmin.value+Ett.value<Vtt.start and Vtt.start<Vmin.value+Ett.length, it means that the planned echelon will reach Vtt first, and there will be a conflict with the warehoused echelon a at this point. When the priority of the two tasks can be judged, if the priority of the task of the echelon to be planned is higher than or equal to a, the echelon to be planned can take the lead in occupying the Vtt point, read the coordinates of a, re-plan the route for a, and make Ett. length=Ett.value, go to step 10); if the priority of the current task is less than the priority of a, then when calculating Vtt, a will take priority over it, the current task should plan the waiting time, and determine that a reaches Vtt after the next node, if the next node of echelon a on Vtt is not Vmin, go to 9.2); otherwise, next node = Vmin, which means that echelon a is given priority to pass this intersection, and a will also have a task conflict with the planning echelon, Ett .length=Vmin.end-Vmin.value+Ett.val, go to step 10).

若start<Vmin.value+Ett.value<Vtt.end,代表待规划梯队会后到达Vtt,梯队 a会先到,假设待规划梯队的任务优先级不高于a梯队,且梯队a在Vtt上的next 结点不是Vmin,依旧是在不改变a梯队行进路线的前提下转到9.2),如果next 结点=Vmin,则代表a梯队在经过该路口之后,也会与当前任务发生冲突,所以 等待时间会被加长,Ett.length=Vmin.end-Vmin.value+Ett.val,进入步骤10);If start<Vmin.value+Ett.value<Vtt.end, it means that the planned echelon will arrive at Vtt after the planned echelon meeting, and the echelon a will arrive first. It is assumed that the task priority of the planned echelon is not higher than that of the a echelon, and the echelon a is on the Vtt The next node is not Vmin, and still go to 9.2 without changing the route of echelon a). If the next node = Vmin, it means that echelon a will also conflict with the current task after passing through the intersection, so The waiting time will be lengthened, Ett.length=Vmin.end-Vmin.value+Ett.val, go to step 10);

若待规划梯队的任务优先级高于a梯队,则优先使当前梯队占用Vtt点,并 且重新为a规划路线,Ett.length=Ett.value,进入步骤10);If the task priority of the echelon to be planned is higher than the echelon a, the current echelon is given priority to occupy the Vtt point, and the route is re-planned for a, Ett.length=Ett.value, enter step 10);

9.2)更新Ett.length=end-Vmin.value,进入步骤10);9.2) Update Ett.length=end-Vmin.value, enter step 10);

10)更新Vtemp中Vtt的状态:Vtt.value=Vmin.value+Ett.length;10) Update the state of Vtt in Vtemp: Vtt.value=Vmin.value+Ett.length;

11)判断Vtemp是否全遍历,若否,回到步骤7),若已全部遍历完成则跳 转到步骤12);11) judge whether Vtemp is fully traversed, if not, return to step 7), if all traversal is completed then jump to step 12);

12)根据集合Vtemp更新集合U:如果此时集合U中某结点t的value大于 Vtemp中结点t的value,则更新U中t.value为Vtemp中结点t的value值,这 也说明到达t的最短距离前驱结点是Vmin,将Vmin记录到回溯向量res当中, 清空集合Vtemp、Etemp,执行步骤13);否则,不更新U中的结点t,执行步 骤13);12) Update set U according to set Vtemp: If the value of a node t in set U is greater than the value of node t in Vtemp at this time, update t.value in U to the value of node t in Vtemp, which also means that The shortest distance precursor node to t is Vmin, Vmin is recorded in the backtracking vector res, the set Vtemp and Etemp are cleared, and step 13) is performed; otherwise, the node t in U is not updated, and step 13) is performed;

13)回到步骤3)。13) Go back to step 3).

14)从终点向前回溯res向量,得到最短路径。举例来说,到达图3的终点 F,从res向量中读到F的前驱是E点,E点的前驱是D点,D点的前驱是A点, 那么最终的最短路径就是A->D->E->F。14) Backtrack the res vector from the end point forward to get the shortest path. For example, to reach the end point F in Figure 3, read from the res vector that the precursor of F is point E, the precursor of point E is point D, and the precursor of point D is point A, then the final shortest path is A->D ->E->F.

综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保 护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等, 均应包含在本发明的保护范围之内。To sum up, the above are only preferred embodiments of the present invention, and are not intended to limit the protection scope of the present invention. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention shall be included within the protection scope of the present invention.

Claims (6)

1.一种应急救援场景下多任务冲突检测与消解的路径规划方法,其特征在于,包括:1. a path planning method for multi-task conflict detection and resolution under an emergency rescue scenario, characterized in that, comprising: 步骤1,以区域内可供转向的路口作为结点,道路作为边,构建区域的路网有向带权图G(V,E),其中,V为路网中结点的集合,E为路网中有向边的集合;其中边E的权重包括动态权重E.length、E.value和静态权重E.val;其中,E.val为当前待规划车队在理想情况下通过边E的时间;Step 1: Taking the steerable intersections in the area as nodes and roads as edges, construct a directed weighted graph G(V, E) of the road network in the area, where V is the set of nodes in the road network, and E is the The set of directed edges in the road network; the weight of edge E includes dynamic weight E.length, E.value and static weight E.val; where E.val is the time for the current fleet to be planned to pass edge E under ideal conditions ; 步骤2,考虑待规划车队和已规划车队的冲突情况,对G(V,E)数据进行更新:Step 2, considering the conflict between the fleet to be planned and the planned fleet, update the G(V,E) data: S21,提取集合V中未被标记的、value值最小的结点Vmin,并根据G(V,E)获取其邻接点,所述邻接点未被标记;其中value值为当前待规划车队到达此结点的时间;路径起始结点的value值初始化为0;其他结点的value值初始化为无穷大;若集合V中的结点均已被标记,则执行步骤3;S21, extract the unmarked node Vmin with the smallest value in the set V, and obtain its adjacent points according to G(V, E), and the adjacent points are not marked; where the value is the current fleet to be planned to reach this point The time of the node; the value of the starting node of the path is initialized to 0; the value of other nodes is initialized to infinity; if the nodes in the set V have been marked, go to step 3; S22,选取Vmin的邻接结点中未被遍历的点Vtt,更新结点Vmin与Vtt的边Ett的权重Ett.length:S22, select the untraversed point Vtt in the adjacent nodes of Vmin, and update the weight Ett.length of the edge Ett between the nodes Vmin and Vtt: 1)判断结点Vmin与结点Vtt的边Ett是否被其他已规划车队所占用,如果未被占用,则令Ett.value=Ett.val,Ett.length=Ett.value+fleet.length/velocity;执行2);其中,fleet.length为待规划车队的长度;velocity为待规划车队的平均速度;1) Determine whether the edge Ett between the node Vmin and the node Vtt is occupied by other planned fleets, if not, set Ett.value=Ett.val, Ett.length=Ett.value+fleet.length/velocity ; Execute 2); wherein, fleet.length is the length of the fleet to be planned; velocity is the average speed of the fleet to be planned; 否则,令Ett.value=Vmin.end-Vmin.value+Ett.val,Ett.length=Vmin.end-Vmin.value+Ett.value+fleet.length/velocity;执行2);Otherwise, let Ett.value=Vmin.end-Vmin.value+Ett.val, Ett.length=Vmin.end-Vmin.value+Ett.value+fleet.length/velocity; execute 2); 2)判断待规划车队到达结点Vtt时,是否与已规划车队相冲突;若不冲突,则令Ett.length=Ett.value,执行S23;若冲突,则转入3);所述冲突是指两个车队通过结点Vtt的时间段有重叠;2) Judging whether the convoy to be planned conflicts with the planned convoy when it reaches the node Vtt; if there is no conflict, set Ett.length=Ett.value, and execute S23; if there is a conflict, go to 3); the conflict is It means that the time period of the two teams passing through the node Vtt overlaps; 3)判断待规划车队是否先到达结点Vtt:若待规划车队先到达,且待规划车队的优先级大于或等于已规划车队,则令Ett.length=Ett.value,执行S23,并通知该冲突已规划车队重新规划;若待规划车队先到达,但待规划车队的优先级小于已规划车队,则执行4);3) Determine whether the to-be-planned fleet arrives at the node Vtt first: if the to-be-planned fleet arrives first, and the priority of the to-be-planned fleet is greater than or equal to the planned fleet, set Ett.length=Ett.value, execute S23, and notify the The conflict has been planned to re-plan the fleet; if the to-be-planned fleet arrives first, but the priority of the to-be-planned fleet is lower than that of the planned fleet, execute 4); 若待规划车队后到达,但待规划车队的优先级大于已规划车队,则令Ett.length=Ett.value,执行S23,并通知该已规划车队重新规划;若待规划车队后到达,且待规划车队的优先级不大于已规划车队,则判断已规划车队的下一个结点是否是Vmin,若是,则令Ett.length=Vmin.end-Vmin.value+Ett.val,执行S23;否则令Ett.length=end-Vmin.value,执行S23;If it arrives after the planned fleet, but the priority of the planned fleet is greater than the planned fleet, set Ett.length=Ett.value, execute S23, and notify the planned fleet to re-plan; if it arrives after the planned fleet, and wait for If the priority of the planned fleet is not greater than the planned fleet, then judge whether the next node of the planned fleet is Vmin, if so, set Ett.length=Vmin.end-Vmin.value+Ett.val, and execute S23; otherwise, set Ett.length=end-Vmin.value, execute S23; 4)判断已规划车队的下一个结点是否是Vmin,若不是,则令Ett.length=end-Vmin.value,执行S23;若是,则令Ett.length=Vmin.end-Vmin.value+Ett.val,执行S23;4) Determine whether the next node of the planned fleet is Vmin, if not, set Ett.length=end-Vmin.value, and execute S23; if so, set Ett.length=Vmin.end-Vmin.value+Ett .val, execute S23; S23,计算Vtt.value′=Vmin.value+Ett.length;若Vtt.value′小于结点Vtt的value值,则更新Vtt.value=Vtt.value′,并将Vmin记录到回溯向量res当中;S23, calculate Vtt.value'=Vmin.value+Ett.length; if Vtt.value' is less than the value of the node Vtt, then update Vtt.value=Vtt.value', and record Vmin in the backtracking vector res; S24,判断Vmin的邻接点是否均已遍历,若未全部遍历,则返回S22;若均已遍历则标记当前结点Vmin,返回S21;S24, judge whether the adjacent points of Vmin have all been traversed, and if not all of them have been traversed, then return to S22; if all have been traversed, mark the current node Vmin, and return to S21; 步骤3,从路径终点向前回溯res向量,得到最短路径。Step 3: Backtrack the res vector from the end point of the path forward to obtain the shortest path. 2.如权利要求1所述的应急救援场景下多任务冲突检测与消解的路径规划方法,其特征在于,所述S22中,判断结点Vmin与结点Vtt的边Ett是否被其他已规划车队所占用的方式为:2. The path planning method for multi-task conflict detection and resolution under the emergency rescue scene as claimed in claim 1, wherein in the described S22, it is judged whether the edge Ett of the node Vmin and the node Vtt is by other planned motorcades. The way it is occupied is: 在边Ett的参数中设置state,用于存放已规划车队在边Ett的占用时间,即[Vmin.start,Vtt.end]或[Vtt.start,Vmin.end];其中,Vmin.start为已规划车队经过结点Vmin的开始时间,Vtt.end为该车队离开结点Vtt的结束时间;Vtt.start为已规划车队经过结点Vtt的开始时间,Vmin.end为该车队离开结点Vmin的结束时间;Set the state in the parameters of edge Ett to store the occupied time of the planned fleet on edge Ett, that is [Vmin.start,Vtt.end] or [Vtt.start,Vmin.end]; The start time of the planned convoy passing through the node Vmin, Vtt.end is the end time of the convoy leaving the node Vtt; Vtt.start is the start time of the planned convoy passing the node Vtt, and Vmin.end is the time when the convoy left the node Vmin. End Time; 则若待规划车队的Vmin.value在state存储的时间段内,则表明表Ett已被占用,否则,表明未被占用。Then, if the Vmin.value of the fleet to be planned is within the time period stored in the state, it means that the table Ett has been occupied; otherwise, it is not occupied. 3.如权利要求1所述的应急救援场景下多任务冲突检测与消解的路径规划方法,其特征在于,所述S22中,判断待规划车队到达结点Vtt时,是否与已规划车队相冲突的方式为:3. The path planning method for multi-task conflict detection and resolution under the emergency rescue scene as claimed in claim 1, characterized in that, in the S22, when it is judged that the convoy to be planned arrives at the node Vtt, whether it is in conflict with the planned convoy The way is: 若待规划车队满足:Vmin.value+Ett.value>Vtt.end或Vmin.value+Ett.length<Vtt.start,则不冲突,否则为冲突;其中,Vtt.end为已规划车队经过结点Vtt的开始时间,Vtt.start为已规划车队经过结点Vtt的开始时间。If the fleet to be planned satisfies: Vmin.value+Ett.value>Vtt.end or Vmin.value+Ett.length<Vtt.start, there is no conflict, otherwise it is a conflict; among them, Vtt.end is the planned fleet passing through the node The start time of Vtt, Vtt.start is the start time of the planned fleet passing through the node Vtt. 4.如权利要求1所述的应急救援场景下多任务冲突检测与消解的路径规划方法,其特征在于,S22中,判断待规划车队是否先到达结点Vtt的方式为:若待规划车队满足:Vmin.value+Ett.value<Vtt.start且Vtt.start<Vmin.value+Ett.length,则表示待规划梯队先到达Vtt;其中,Vtt.start表示代表该已规划车队经过此结点的开始时间;否则,待规划车队后到达结点Vtt。4. the path planning method of multi-task conflict detection and resolution under the emergency rescue scene as claimed in claim 1, it is characterized in that, in S22, the mode that judges whether the convoy to be planned arrives at node Vtt first is: if the convoy to be planned meets the : Vmin.value+Ett.value<Vtt.start and Vtt.start<Vmin.value+Ett.length, it means that the planned echelon reaches Vtt first; among them, Vtt.start means that the planned fleet passes through this node Start time; otherwise, it will arrive at node Vtt after planning the fleet. 5.如权利要求1所述的应急救援场景下多任务冲突检测与消解的路径规划方法,其特征在于,所述步骤2中,构建集合U和集合S,初始化集合U为集合V,集合S为空集;从集合U中选取Vmin并移入集合S;将Vmin及其邻接点并入临时集合Vtemp当中,将待规划车队由Vmin到集合Vtemp中各结点的边并入临时集合Etemp中;5. The path planning method for multi-task conflict detection and resolution in an emergency rescue scenario as claimed in claim 1, wherein in the step 2, a set U and a set S are constructed, and the initialization set U is a set V, and a set S is an empty set; select Vmin from set U and move it into set S; merge Vmin and its adjacent points into the temporary set Vtemp, and merge the edges of the fleet to be planned from Vmin to each node in the set Vtemp into the temporary set Etemp; 从临时集合Vtemp中选取结点Vtt,计算结点Vmin与Vtt的边Ett的权重Ett.length,更新Vtemp中的结点Vtt的value值为:Vtt.value=Vmin.value+Ett.length;Select the node Vtt from the temporary set Vtemp, calculate the weight Ett.length of the edge Ett between the node Vmin and Vtt, and update the value of the node Vtt in Vtemp to the value: Vtt.value=Vmin.value+Ett.length; 遍历集合Vtemp中的所有结点;若集合Vtemp中的结点的value值小于集合U中相同结点的value值,则更新集合U中该结点的value值为集合Vtemp中的value值;Traverse all the nodes in the set Vtemp; if the value of the node in the set Vtemp is less than the value of the same node in the set U, then update the value of the node in the set U to the value in the set Vtemp; 清空集合Vtemp、Etemp;Empty the collection Vtemp, Etemp; 从集合U中重新选取Vmin并移入集合S,重复执行上述操作,直到集合U为空集,执行步骤3。Reselect Vmin from the set U and move it into the set S, and repeat the above operations until the set U is an empty set, and then go to step 3. 6.如权利要求1所述的应急救援场景下多任务冲突检测与消解的路径规划方法,其特征在于,所述Vtt.length根据道路交通状况、路面材质以及坡度进行修订。6 . The path planning method for multi-task conflict detection and resolution in an emergency rescue scenario according to claim 1 , wherein the Vtt.length is revised according to road traffic conditions, road surface material and gradient. 7 .
CN202111594937.2A 2021-12-24 2021-12-24 Path planning method for detecting and resolving multitasking conflicts in emergency rescue scene Active CN114659533B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111594937.2A CN114659533B (en) 2021-12-24 2021-12-24 Path planning method for detecting and resolving multitasking conflicts in emergency rescue scene

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111594937.2A CN114659533B (en) 2021-12-24 2021-12-24 Path planning method for detecting and resolving multitasking conflicts in emergency rescue scene

Publications (2)

Publication Number Publication Date
CN114659533A true CN114659533A (en) 2022-06-24
CN114659533B CN114659533B (en) 2024-09-13

Family

ID=82026056

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111594937.2A Active CN114659533B (en) 2021-12-24 2021-12-24 Path planning method for detecting and resolving multitasking conflicts in emergency rescue scene

Country Status (1)

Country Link
CN (1) CN114659533B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117423237A (en) * 2023-12-18 2024-01-19 湖南力唯中天科技发展有限公司 Method and system for detecting and generating multiple special service route conflicts

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112071060A (en) * 2020-08-27 2020-12-11 华南理工大学 An emergency rescue path planning method based on changes in urban road network traffic environment
CN113724510A (en) * 2021-07-22 2021-11-30 东南大学 Emergency signal priority and social vehicle dynamic path induction collaborative optimization method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112071060A (en) * 2020-08-27 2020-12-11 华南理工大学 An emergency rescue path planning method based on changes in urban road network traffic environment
CN113724510A (en) * 2021-07-22 2021-11-30 东南大学 Emergency signal priority and social vehicle dynamic path induction collaborative optimization method

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
郭洪月;王元新;孙晨曦;: "自动泊车系统中AGV路径规划及碰撞规避问题分析", 装备制造技术, no. 04, 15 April 2020 (2020-04-15) *
黄丁才;牛轶峰;沈林成;王阔天;: "基于图像质量的无人侦察机航线规划", 微计算机信息, no. 26, 15 September 2010 (2010-09-15) *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117423237A (en) * 2023-12-18 2024-01-19 湖南力唯中天科技发展有限公司 Method and system for detecting and generating multiple special service route conflicts
CN117423237B (en) * 2023-12-18 2024-04-05 湖南力唯中天科技发展有限公司 Method and system for detecting and generating multiple special service route conflicts

Also Published As

Publication number Publication date
CN114659533B (en) 2024-09-13

Similar Documents

Publication Publication Date Title
US12140967B2 (en) Multi-robot route planning
Shao et al. Traveling officer problem: Managing car parking violations efficiently using sensor data
CN108256553B (en) Construction method and device of double-layer path for vehicle-mounted UAV
Ferrucci et al. Real-time control of express pickup and delivery processes in a dynamic environment
CN111532641B (en) Parallel path planning method for automatic guided vehicles in warehouse sorting
CN108280463B (en) Optimization method and device for double-layer path of vehicle-mounted unmanned aerial vehicle
CN107203190A (en) A kind of inertial navigation AGV dispatching methods and system based on pahtfinder hard
CN114076606A (en) Method and computer system for providing a journey route or time required for a journey route from a departure location to a destination location
CN114489062A (en) Workshop logistics-oriented multi-automatic guided vehicle distributed dynamic path planning method
CN104021664B (en) The dynamic path planning method of forming into columns and travelling worked in coordination with by automobile
KR101010718B1 (en) Dynamic Driving Method of Unmanned Carrier Occupying Multiple Resources
CN108592928A (en) Construction method and device for double-layer path of vehicle-mounted unmanned aerial vehicle
CN113291356A (en) Dynamic train tracking interval calculation method
Daniels Real-time conflict resolution in automated guided vehicle scheduling
CN115638804B (en) Deadlock-free unmanned vehicle online path planning method
CN114659533A (en) Path planning method for multi-task conflict detection and resolution in emergency rescue scenarios
Hammadi et al. Multimodal transport systems
CN114264313A (en) Potential energy-based lane-level path planning method, system, equipment and storage medium
Falek et al. Muse: Multimodal separators for efficient route planning in transportation networks
Nourmohammadzadeh et al. Fuel efficient truck platooning with time restrictions and multiple speeds solved by a particle swarm optimisation
Aissat et al. Meeting locations in real-time ridesharing problem: A buckets approach
Gentile et al. Time-dependent shortest hyperpaths for dynamic routing on transit networks
Valdés et al. An efficient algorithm for optimal routing applied to convoy merging manoeuvres in urban environments
Song et al. Optimized multicar dynamic route planning based on time-hierarchical graph model
Montero et al. A combined methodology for transportation planning assessment. Application to a case study

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