Emergency facility location-path planning method based on ripple diffusion algorithm
Patent Information
- Application Number
- CN202311391631.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-10-25
- Publication Date
- 2026-10-27
- Estimated Expiration
- 2043-10-25
AI Technical Summary
[0002]现有的应急设施选址-路径规划方法是基于静态交通路网进行分析,很少考虑到交通路网中的时变速度,未能使得应急设施选址-路径优化过程与速度实时变化过程协同演变;在求解应急设施选址-路径优化问题的算法中,精确算法的时间复杂度较高,计算速率较低,启发式算法的求解精度不高,无法满足应急救援及时性、高效性要求
Smart Images

Figure CN117371633B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of emergency facility site selection and route planning technology for transportation networks, specifically to an emergency facility site selection and route planning method based on the ripple diffusion algorithm. Background Technology
[0002] Existing emergency facility location-route planning methods are based on static traffic network analysis and rarely consider time-varying speeds in the traffic network. This fails to ensure that the emergency facility location-route optimization process evolves in tandem with the real-time speed changes. Among the algorithms for solving the emergency facility location-route optimization problem, exact algorithms have high time complexity and low computation speed, while heuristic algorithms have low solution accuracy, which cannot meet the requirements of timeliness and efficiency in emergency rescue. Summary of the Invention
[0003] To address the shortcomings of existing technologies, this invention provides an emergency facility site selection and path planning method based on the ripple diffusion algorithm, comprising the following steps:
[0004] Step S1: Generate a road network, given a starting node, a target node, and intermediate nodes. The starting node is an emergency facility node, the target node is an emergency disaster-stricken node, and the intermediate nodes are the traffic road network nodes involved from the starting node to the target node.
[0005] Step S2: Initialize the parameters so that all nodes are inactive and the ripple radius of all nodes spreading to their neighboring nodes is 0.
[0006] Step S3: Activate the starting node and ensure it has an initial ripple. Let t = 0 and obtain the velocity matrix at time t = 0.
[0007] Step S4: Wait for one iteration period t', update the time parameter, and obtain the velocity matrix from time t before the update to time t+t' after the update;
[0008] Step S5: Update the ripple radius of all nodes at time t+t'. For node i that is in an active state but whose neighboring node j has an inactive state, update the ripple radius of the spread of node i to all its neighboring nodes j.
[0009] Step S6: Determine whether at time t+t', there exists a ripple radius from node i to its neighbor node j that is greater than or equal to the distance between node i and node j. If yes, proceed to step S7; otherwise, go to step S4.
[0010] Step S7: If the ripple radius of node i spreading to its neighbor node j is greater than or equal to the distance between node i and node j, change the state of the corresponding neighbor node j from inactive to active. At the same time, all other spreading to the corresponding neighbor node j will be terminated.
[0011] Step S8: Determine if any ripples have reached and activated the target node. If yes, proceed to step S11; otherwise, proceed to step S9.
[0012] Step S9: For the case where the radius of the ripple spreading from node i to its neighbor node j is greater than or equal to the distance between node i and node j, determine whether there is a remaining time t. re If it exists, then calculate the corresponding node j in the remaining time t within the current iteration period. re The radius of the new ripples generated within the node j that spread to the neighboring node k of the corresponding node j is determined, and the process jumps to step S10; if no such ripples exist, the process jumps directly to step S10.
[0013] Step S10: Determine whether, within the current iteration period, all neighboring nodes j of node i are either activated or in a dead state. If so, node i changes from an activated state to a dead state and cannot be activated again.
[0014] Step S11: Output the optimal route and the shortest delivery time.
[0015] In steps S3 and S4, a time-varying speed model of the road network is established using road network distribution, traffic flow and vehicle speed information, and the speed matrix at each time point is updated based on the time-varying speed model.
[0016] In step S5, the ripple radius of node i spreading to all its neighboring nodes j is determined by the following formula:
[0017] r(i,j,t+t′)=r(i,j,t)+V(i,j,t+t′)×t′;
[0018] Where r(i,j,t+t') is the ripple radius of the diffusion from node i to its corresponding neighbor node j at time t+t';
[0019] r(i,j,t) is the ripple radius of the diffusion from node i to its corresponding neighbor node j at time t;
[0020] V(i,j,t+t') represents the rate at which i diffuses to its corresponding neighbor j at time t+t'.
[0021] In step S9, the remaining time t is determined using the following formula. re And the corresponding node j in the remaining time t reThe radius by which the newly generated ripple spreads to the neighboring node k of the corresponding node j:
[0022]
[0023] r(j,k,t+t′)=V(j,k,t+t′)×t re ;
[0024] Where, d ij This represents the distance between node i and its corresponding neighbor node j;
[0025] V(i,j,t+t') is the speed at which i diffuses to its corresponding neighbor node j at time t+t'.
[0026] r(i,j,t+t') is the ripple radius of the diffusion from node i to its corresponding neighbor node j at time t+t';
[0027] r(j,k,t+t') is the ripple radius that spreads from node j to its corresponding neighbor node k after node j is activated at time t+t'.
[0028] V(j,k,t+t') represents the rate at which j diffuses to its corresponding neighbor node k at time t+t'.
[0029] The emergency facility site selection-path planning method based on the ripple diffusion algorithm of this invention can obtain the optimal solution in a short time, and has advantages in both solution accuracy and calculation speed. Attached Figure Description
[0030] Figure 1 : Schematic diagram of the ripple diffusion algorithm.
[0031] Figure 2 The flowchart illustrates the specific implementation of the emergency facility site selection and path planning method based on the ripple diffusion algorithm of this invention.
[0032] Figure 3 Map showing the distribution of emergency facilities and emergency nodes. Detailed Implementation
[0033] To gain a better understanding of the technical solution and beneficial effects of the present invention, the technical solution of the present invention and its beneficial effects are described in detail below with reference to the accompanying drawings.
[0034] The purpose of this invention is to provide a fast and efficient emergency facility site selection and path planning method to solve the problems of low computational efficiency, high time complexity, and low solution accuracy in the existing technology, and to provide reliable technical support for practical problems in emergency management.
[0035] Figure 1This section describes the algorithm principle of the ripple diffusion algorithm. Node 1 represents an emergency facility node, nodes 2 and 3 represent transportation network nodes, and node 4 represents an emergency disaster-affected node. The shortest path from node 1 to node 4 is 1→3→4, as an example. Gray represents inactive nodes, black represents active nodes, and white represents dead nodes. States can only transition in one direction, and each node can only be activated once. Dashed circles represent spreading ripples, black line segments represent the length of the ripple, solid circles represent ripples that have stopped spreading, and t represents a specific moment. The ripple diffusion speed is the time-varying speed of the arc segment within a certain iteration time.
[0036] In the ripple diffusion relay race, at time t=1, node 1 generates a ripple that spreads to its neighboring nodes; at time t=2, node 1's ripple reaches and activates node 2, converting it from an inactive state to an active state and generating a new ripple; at time t=3, node 3 is first activated by the ripple emitted by node 1, and at the same time, all of node 1's neighboring nodes are activated, preventing it from continuing to spread ripples, and thus it changes from an active state to a dead state; at time t=4, the ripple diffusion relay race continues until a certain ripple activates the target node for the first time, at which point all other ripples immediately stop spreading, and the shortest path from the starting point to the ending point is determined by backtracking the order in which the ripple visited each node.
[0037] This invention, based on the ripple algorithm, constructs a solution method for the emergency facility location-path problem. The general idea is as follows:
[0038] 1. Construct a dynamic traffic network model
[0039] First, by utilizing traffic information such as road network distribution, traffic flow, and vehicle speed, a time-varying speed model of the traffic network is established in order to solve the emergency facility location-path problem in a dynamic traffic network environment.
[0040] 2. Establish an emergency facility location-path problem model
[0041] Based on the dynamic traffic network, an emergency facility site selection and route optimization model is established with the goal of minimizing total delivery time.
[0042] 3. Solve using the ripple diffusion algorithm.
[0043] according to Figure 1 The algorithm diagram shown allows for the selection of any emergency facility as the starting point. The parameters of the ripple diffusion algorithm are initialized, and the ripples are continuously diffused and their radii are updated by executing a ripple relay race. Finally, the optimal path from the emergency facility to the emergency disaster-stricken node is determined.
[0044] 4. Determine the optimal address-path scheme
[0045] Based on the solution results of the ripple diffusion algorithm, the optimal solution is determined, namely the optimal site selection scheme for emergency facilities and the optimal rescue route.
[0046] 1. The relevant parameters of the ripple algorithm are defined as follows:
[0047] Algorithm parameter table
[0048]
[0049]
[0050] 2. The calculation formula for the ripple diffusion algorithm used to solve the emergency facility location-path optimization problem is as follows:
[0051] (1) Ripple diffusion speed
[0052] Suppose that the ripple diffusion velocity between node i and node j at time t is represented by V(i,j,t), and after the iteration time t′ is updated, the ripple diffusion velocity between node i and its neighboring node j at time t+t′ is represented by V(i,j,t+t′). Therefore, the ripple diffusion velocities between any nodes within any iteration time can be used to construct a velocity matrix.
[0053] (2) Ripple spread radius
[0054] The ripple radius is updated once within the iteration time t′. The ripple radius at time t+t′ is equal to the ripple radius at time t plus the product of the ripple diffusion rate at time t+t′ and the iteration time t′. The initial ripple radius is 0. The formula for calculating the ripple radius spreading from node i to node j within time t+t′ is as follows:
[0055] r(i,j,t+t′)=r(i,j,t)+V(i,j,t+t′)×t′ (1)
[0056] (3) Ripple spread radius during the remaining time
[0057] Within a certain iteration time t′, a ripple activates a node. The activated node will generate new ripples that continue to spread for the remaining time of this iteration time t′. If node i generates ripple i within iteration time t′ and activates its neighbor node j, and there is a remaining time t... re Node j generates a new ripple j in the remaining time t. re The formula for calculating the ripple radius of the inward diffusion from neighbor node k is as follows:
[0058]
[0059] r(j,k,t+t′)=V(j,k,t+t′)×t re (3)
[0060] 3. The specific implementation process based on the ripple algorithm is as follows: Figure 2 As shown, it includes the following steps:
[0061] Step S1: Generate a road network, given a starting node, a target node, and intermediate nodes. The starting node is an emergency facility node, the target node is an emergency disaster-stricken node, and the intermediate nodes are the traffic road network nodes involved from the starting node to the target node.
[0062] Step S2: Initialize the parameters so that all nodes are inactive and the ripple radius of all nodes spreading to their neighboring nodes is 0.
[0063] Step S3: Activate the starting node and ensure it has an initial ripple. Let t = 0 and obtain the velocity matrix at time t = 0.
[0064] Step S4: Wait for one iteration period t', update the time parameter, and obtain the velocity matrix from time t before the update to time t+t' after the update;
[0065] Step S5: Update the ripple radius of all nodes at time t+t'. For node i that is in an active state but whose neighboring node j has an inactive state, update the ripple radius of the spread of node i to all its neighboring nodes j. Figure 2 middle, This indicates that node j is a node in the set of neighboring nodes of node i. This indicates that node k is a node in the set of neighboring nodes of node j;
[0066] Step S6: For the case where a node i is in an active state but its neighbor node j has an inactive state, determine at time t+t' whether there is a ripple radius of node i spreading to its neighbor node j that is greater than or equal to the distance between node i and node j. If yes, proceed to step S7; otherwise, jump to step S4.
[0067] Step S7: If the ripple radius of node i spreading to its neighbor node j is greater than or equal to the distance between node i and node j, change the state of the corresponding neighbor node j from inactive to active. At the same time, all other spreading to the corresponding neighbor node j will be terminated.
[0068] Step S8: Determine if any ripples have reached and activated the target node. If yes, proceed to step S11; otherwise, proceed to step S9.
[0069] Step S9: For the case where the radius of the ripple spreading from node i to its neighbor node j is greater than or equal to the distance between node i and node j, determine whether there is a remaining time t. reIf it exists, then calculate the corresponding node j in the remaining time t within the current iteration period. re The radius of the new ripples generated within the node j that spreads to its neighbor node k (in the next iteration, when calculating the spread radius of node j to its neighbor node k according to Formula 1, the radius of the new ripples generated within the node j that spreads to its neighbor node k is the radius of the new ripples generated within the node j that spreads to its neighbor node k in the remaining time t). re The radius of the new ripple generated within the node that spreads to the neighboring node k of the corresponding node j will be used as the initial radius, that is, as the radius of the spread from node j to node k at the end of the previous iteration cycle, which is equivalent to "r(i,j,t)" in Formula 1, and then jump to step S10; if it does not exist, then jump directly to step S10.
[0070] Step S10: Determine whether, within the current iteration period, all neighboring nodes j of node i are either activated or in a dead state. If so, node i changes from an activated state to a dead state and cannot be activated again.
[0071] Step S11: Output the optimal route and the shortest delivery time.
[0072] Taking the emergency material reserve center in Shijingshan District, Beijing as an example, this paper empirically demonstrates the application of the ripple diffusion algorithm. Assume there are 8 candidate emergency facilities V1 = {0,1,2,3,4,5,6,7} and 15 emergency disaster-affected nodes V2 = {8,9,10,11,12,13,14,15,16,17,18,19,20,21,22}, and the plan is to select one location from the 8 candidate facilities to construct the emergency facility. Red represents the candidate emergency facilities, and green represents the emergency disaster-affected nodes, as shown in the diagram. Figure 3 As shown.
[0073] Considering that real-world traffic networks may experience special conditions such as traffic congestion and road maintenance, they are described as having three network states: congested, moderate, and unobstructed. Due to the special and uncertain nature of disasters, the operating hours of alternative emergency facilities are stipulated to be 24 hours a day. Traffic data for one month in Shijingshan District, Beijing, is collected through channels such as traffic information release platforms, mainly including real-time values such as traffic flow and density.
[0074] Based on the collected data, the normal distribution parameters for different time periods were determined: congestion occurred during rush hour, with a large number of people and vehicles traveling; normal traffic flow occurred during normal times, with stable vehicle density; and smooth traffic flow occurred in the early morning, with very low vehicle density. The relevant time intervals and speed distributions are shown in Table 1.
[0075] Table 1 Velocity Distribution Parameters
[0076]
[0077] The program was written in Python and 2000 trials were conducted. The optimal location scheme and total delivery time were determined in each trial, as shown in Table 2.
[0078] Table 2. Delivery time and distance of emergency facilities to all emergency disaster-stricken nodes.
[0079]
[0080] Based on the data in Table 2, three options are available. Comparison reveals that Emergency Facility 0 has the shortest total delivery time (24.028 hours) and the shortest total delivery distance (835.574 kilometers), and it appears most frequently (1092 times). Therefore, the optimal location for the ripple diffusion algorithm is Emergency Facility 0.
[0081] Meanwhile, the present invention (ripple diffusion algorithm) and existing technologies (genetic algorithm, Dijkstra's algorithm, branch and bound method) were used to solve the same example, and the comparison results of the four methods are shown in the table below.
[0082] Algorithm Comparison Table
[0083]
[0084]
[0085] Analysis of the table above leads to the following conclusions:
[0086] 1) In terms of optimality of delivery time and delivery distance, the ripple diffusion algorithm can obtain the optimal solution, which is better than other methods;
[0087] 2) In terms of algorithm computation speed, the ripple diffusion algorithm has a shorter running time and is faster than other methods.
[0088] In summary, the ripple diffusion algorithm can obtain the optimal solution in a short time when solving the emergency facility site selection-path optimization problem, and it has advantages in both solution accuracy and calculation speed.
[0089] Although the present invention has been described using the above preferred embodiments, it is not intended to limit the scope of protection of the present invention. Any changes and modifications made by those skilled in the art to the above embodiments without departing from the spirit and scope of the present invention shall still fall within the scope of protection of the present invention. Therefore, the scope of protection of the present invention shall be defined by the claims.
Claims
1. An emergency facility site selection-path planning method based on the ripple diffusion algorithm, characterized in that, Includes the following steps: Step S1: Generate a road network, given a starting node, a target node, and intermediate nodes. The starting node is an emergency facility node, the target node is an emergency disaster-stricken node, and the intermediate nodes are the traffic road network nodes involved from the starting node to the target node. Step S2: Initialize the parameters so that all nodes are inactive and the ripple radius of all nodes spreading to their neighboring nodes is 0. Step S3: Activate the starting node and ensure it has an initial ripple. Let t = 0 and obtain the velocity matrix at time t = 0. Step S4: Wait for one iteration period t', update the time parameter, and obtain the velocity matrix from time t before the update to time t+t' after the update; Step S5: Update the ripple radius of all nodes at time t+t'. For node i that is in an active state but whose neighboring node j has an inactive state, update the ripple radius of the spread of node i to all its neighboring nodes j. Step S6: Determine whether at time t+t', there exists a situation where the radius of the ripple spreading from node i to its neighbor node j is greater than or equal to the distance between node i and node j. If yes, proceed to step S7; otherwise, jump to step S4. Step S7: If the ripple radius of node i spreading to its neighbor node j is greater than or equal to the distance between node i and node j, change the state of the corresponding neighbor node j from inactive to active. At the same time, all other spreading to the corresponding neighbor node j will be terminated. Step S8: Determine if any ripples have reached and activated the target node. If yes, proceed to step S11; otherwise, proceed to step S9. Step S9: For the case where the radius of the ripple spreading from node i to its neighbor node j is greater than or equal to the distance between node i and node j, determine whether there is a remaining time t. re If it exists, then calculate the corresponding node j in the remaining time t within the current iteration period. re The radius of the new ripples generated within the node j that spread to the neighboring node k of the corresponding node j is determined, and the process jumps to step S10; if no such ripples exist, the process jumps directly to step S10. Step S10: Determine whether all neighboring nodes j of node i are either activated or in a dead state within the current iteration period. If so, node i changes from an activated state to a dead state and cannot be activated again. Step S11: Output the optimal route and the shortest delivery time.
2. The emergency facility site selection-path planning method based on the ripple diffusion algorithm as described in claim 1, characterized in that, In steps S3 and S4, a time-varying speed model of the road network is established using road network distribution, traffic flow, and vehicle speed information, and the speed matrix at each time point is updated based on the time-varying speed model.
3. The emergency facility site selection-path planning method based on the ripple diffusion algorithm as described in claim 1, characterized in that, In step S5, the ripple radius of node i spreading to all its neighboring nodes j is determined by the following formula: r(i,j,t+t′)=r(i,j,t)+V(i,j,t+t′)×t′; Where r(i,j,t+t') is the ripple radius of the diffusion from node i to its corresponding neighbor node j at time t+t'; r(i,j,t) is the ripple radius of the diffusion from node i to its corresponding neighbor node j at time t; V(i,j,t+t') represents the rate at which node i diffuses to its corresponding neighbor node j at time t+t'.
4. The emergency facility site selection-path planning method based on the ripple diffusion algorithm as described in claim 1, characterized in that, In step S9, the remaining time t is determined using the following formula. re And the corresponding node j in the remaining time t re The radius by which the newly generated ripple spreads to the neighboring node k of the corresponding node j: r(j,k,t+t′)=V(j,k,t+t′)×t re ; Where, d ij This represents the distance between node i and its corresponding neighbor node j; V(i,j,t+t') is the speed at which i diffuses to its corresponding neighbor node j at time t+t'. r(i,j,t+t') is the ripple radius of the diffusion from node i to its corresponding neighbor node j at time t+t'; r(j,k,t+t') is the ripple radius that spreads from node j to its corresponding neighbor node k after node j is activated at time t+t'. V(j,k,t+t') represents the rate at which j diffuses to its corresponding neighbor node k at time t+t'.
Citation Information
Patent Citations
Adaptive electronic design
TW200919210A
Automatic drive planning method, device and system
WO2020107991A1