Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Capacity Constrained Routing Algorithms For Evacuation Planning Qingsong Lu, Betsy George Adviser: Prof. Shashi Shekhar Spatial Database Research Group.

Similar presentations


Presentation on theme: "1 Capacity Constrained Routing Algorithms For Evacuation Planning Qingsong Lu, Betsy George Adviser: Prof. Shashi Shekhar Spatial Database Research Group."— Presentation transcript:

1 1 Capacity Constrained Routing Algorithms For Evacuation Planning Qingsong Lu, Betsy George Adviser: Prof. Shashi Shekhar Spatial Database Research Group Department of Computer Science and Engineering University of Minnesota December 2005

2 2 Outline Introduction Motivation Problem Formulation Related Works Our contribution Algorithm Framework and Design Decisions Our Approach Evaluation of Design Decisions Conclusion and Future works

3 3 Motivation – Nature Disaster Lack of effective evacuation plans Traffic congestions on all highways Great confusions and chaos "We packed up Morgan City residents to evacuate in the a.m. on the day that Andrew hit coastal Louisiana, but in early afternoon the majority came back home. The traffic was so bad that they couldn't get through Lafayette." Mayor Tim Mott, Morgan City, Louisiana ( http://i49south.com/hurricane.htm ) ( National Weather Services) Hurricane Andrew Florida and Louisiana, 1992 Hurricane Evacuation Route Signs Hurricane Rita Gulf Coast, 2005 ( National Weather Services)( FEMA.gov) Hurricane Rita evacuees from Houston clog I-45. ( www.washingtonpost.com)

4 4  Preparation of response to a chem-bio attack  Plan evacuation routes and schedules  Help public officials to make important decisions  Guide affected population to safety Base MapWeather Data Plume Dispersion Demographics Information Transportation Networks ( Images from www.fortune.com ) Motivation - Homeland Security

5 5 Problem Formulation Given A transportation network, a directed graph G = ( N, E ) with Capacity constraint (non-negative integer) for each edge and node Travel time (non-negative integer) for each edge Number of evacuees and their initial locations (source nodes) Evacuation destinations (destination nodes) Output Evacuation plan consisting of a set of origin-destination routes and a scheduling of evacuees on each route. ( Route scheduling should observe capacity constraints of network ) Objective Minimize evacuation egress time (time from start of evacuation to last evacuee reaches destination) Minimize computational cost Constraints Edge travel time observes FIFO property Limited computer memory

6 6 Example Input: Evacuation Network with Evacuees N1, 50 (10) N3, 30N5, 6N4, 8 N2, 50 (5) N6, 10N7, 8 N9, 25 N8, 65 (15) N12, 18 N11, 8 N10, 30 (7,1) (3,3) (7,1)(3,4) (5,4) (5,5) (8,1) (6,3) (6,4) (3,5) (3,2) (3,3) (14,4) (Max Capacity, Travel time) Node ID, Max Capacity (Initial Occupancy) Dest #2 Dest #1 N13 N14 Node ID Destination node Node Edge

7 7 Example Evacuation Plan: Example Output : Evacuation Plan

8 8 N1, 50 (10) N3, 30 N5, 6 N4, 8 N2, 50 (5) N6, 10N7, 8 N9, 25 N8, 65 (15) N12, 18 N11, 8N10, 30 (7,1) (3,3) (7,1) (3,4)(5,4) (5,5) (8,1) (6,3) (6,4) (3,5) (3,2) (3,3) (14,4) (Max Capacity, Travel time) Node ID, Max Capacity (Initial Occupancy) Dest #2 Dest #1 N13 N14 Node ID Node Edge Destination node A B C DEF GH I Animation: Time: t = 012345678910111213141516

9 9 Related Works: Linear Programming Approach (1/3) G : evacuation network G T : time-expanded network ( T = 4 ) ( Source : H. Hamacher and S. Tjandra, “Mathematical Modeling of Evacuation Problems: A State of the Art”. Pedestrian and Evacuation Dynamics, pp. 227-266, 2002.) Step 1: Convert evacuation network G into time-expanded network G T with user provided time upper bound T. with n nodes ( n = 4 ) with N = n(T+1) nodes ( N = 20 )

10 10 Related Works: Linear Programming Approach (2/3) Step 2: Treat time-expanded network G T as a flow network and define the evacuation problem as a minimum cost flow problem on G T : Step 3: Solve above problem using minimum cost flow solvers. e.g. NETFLO [Kennington and Helgason,1980], RELAX-IV [Bertsekas and Tseng, 1994]. N: set of nodes, S: set of sources; D: set of destinations, q i : initial # of evacuees at source node i, x ij (t) : flow from node i to j at time t, y i (t) : # of evacuees stay at node i at time t, a i : max. capacity of node i, b ij : max. capacity of arc from node i to j. (minimize total evacuation time of all evacuees) (initial occupancy at source nodes at time 0) (all evacuees reach destination nodes by time T)

11 11 Based on Triple Optimization Theorem [Jarvis and Ratliff, 1982]: Universal max. flow  Min. cost flow  Quickest flow Example: Hoppe and Tardos (Cornell, 1994): ellipsoid method, theoretically polynomial time bounded: O(N 6 ), N = n(T+1), poor scalability to metropolitan road network. EVACNET (U. of Florida, 1993): designed for building evacuation, use NETFLO. Summary : Produce optimal solution: minimize evacuation egress time. Suitable for problem with small size network and require optimal solution Limitations: Require time-expanded network: Duplicate network for each time unit → large memory requirement Increased problem size: N = n(T+1) → high computational complexity Require user to estimated evacuation time upper bound T : Under-estimate → failure of finding a solution Over-estimate → unnecessary storage and run-time Related Works: Linear Programming Approach (3/3)

12 12 Our Contribution Present overview of algorithm framework for evacuation planning Explore alternate optimal solution algorithm using A* search Address limitation of LP algorithm Prove monotonicity and admissibility Experiment show poor scalability Propose new heuristic approach (CCRP) Analyze design decisions for CCRP Prove CCRP computationally efficient than LP algorithm Prove CCRP require less memory than LP algorithm Experiment evaluation of CCRP design decisions: Best implementation of CCRP: CCRP_S: single SP search, Dijkstra’s algorithm w/ double-bucket Faster than LP algorithm High quality solution

13 13 Outline Introduction Algorithm Framework and Design Decisions Design space Representation of Temporal Network Choice of Optimal Pair (Source-Destination) Algorithm Choice of Shortest Path Algorithms Our Approach Evaluation of Design Decisions Conclusion and Future works

14 14 Algorithm Design Space Algorithm Framework Optimal algorithm: Linear Programming, A* based. Heuristic algorithm: CCRP

15 15 Representation of Temporal Network G : evacuation network G T : time-expanded network ( T = 4 ) Time expanded networks Time series representation available capacity ( used capacity )

16 16 Design Decision: Choice of Optimal Pair Algorithm S1S1 S2S2 SkSk d1d1 d2d2 dkdk Sources Destinations R G Three choices: 1. k 2 single-source single-destination shortest path search: one per (S i, d j ) pair. 2. k single-source all-destination shortest path search: one per source node. 3. Single shortest path search: - Add super source node and super destination node to network. - One shortest path search from super source node to super destination node. Heuristic algorithm based on shortest path search from source nodes to destination nodes How to find quickest route between (source, destination) pair

17 17 S0S0 S1S1 S2S2 SxSx d1d1 d2d2 dydy d0d0 SourcesDestinations (0, ∞ ) super source node super destination node (travel time, capacity) R If route is the shortest route between S 0 and d 0, then must be the shortest route R between any (source, destination) pair. G Single shortest path search: (0, ∞ ) (travel time, capacity) Design Decision: Choice of Optimal Pair Algorithm

18 18 Label Correcting Algorithms:  Bellman-Ford-Moore algorithm [ O(mn) ]  Maintains a set of labeled nodes in a FIFO queue.  Incremental Algorithms, Threshold Algorithm, Goldberg-Radzik Algorithm [ O(mn) ]  Partition the set of labeled nodes into two subsets.  Algorithms differ in the data structures used to implement the two subsets. Design Decision: Choice of Shortest Path Algorithm Survey of Shortest Path Algorithms: (Source: B.V. Cherkassky, A.V. Goldberg, and T. Radzik. Shortest Paths Algorithms: Theory and Experimental Evaluation. Mathematical Programming, 73:129-174, 1996.)

19 19 Dijkstra’s Algorithm Implementations:  Naïve implementation [ O(n 2 ) ]  Using k-ary heaps [ O(m log n) ]  Using Fibonacci heaps [ O(m + n log n) ]  Using one level R-heaps [ O(m + n log C) ] (C – largest edge weight)  Using buckets  Dial’s algorithm [ O(m + n C) ]  With overflow bag [ O(m + n(C/B)+B)) ] (B – number of buckets)  Approx bucket implementation [ O(m  + n(  +C/  )) ] (  - the range of label values of nodes in a bucket)  Double bucket implementation [ O(m  + n(  +C/  )) ] Design Decision: Choice of Shortest Path Algorithm Survey of Shortest Path Algorithms: (Cont’d) (Source: B.V. Cherkassky, A.V. Goldberg, and T. Radzik. Shortest Paths Algorithms: Theory and Experimental Evaluation. Mathematical Programming, 73:129-174, 1996.)

20 20 Candidate selection: Based on run-time of SP algorithms on sparse networks and road networks. (Source: B.V. Cherkassky, A.V. Goldberg, and T. Radzik. Shortest Paths Algorithms: Theory and Experimental Evaluation. Mathematical Programming, 73:129-174, 1996.) Design Decision: Choice of Shortest Path Algorithm

21 21 Outline Introduction Algorithm Framework and Design Decisions Our Approach A* search based optimal algorithm Heuristic approach: CCRP Evaluation of Design Decisions Conclusion and Future works

22 22 Definitions of A* Search Space: Start node: Initial state of evacuation network: all evacuees at source nodes Goal node : All evacuees at destination nodes Search space: Consists of different states of the evacuation network. Each search node is the snapshot of the network at one instant of time Expanding search node Given the occupancy (number of people at the node) of each source node and capacity constraints of outgoing edges of the node, all possible feasible combinations are generated. Cost function f( ) of each search node: f(n)= g(n) + h(n) g(n) : actual cost from start node to n h(n) : estimated cost from n to goal node h(n) should be admissible: never over-estimate h(n) is admissible → A* returns optimal solution. Optimal Algorithm – A* search

23 23 Heuristic Function in A* Search Definition of cost function: f(n) of a search node n : f(n) = g(n) + h(n) g(n) = actual cost to reach n from the initial state. the depth of the search node n, which is the time instant that corresponds to the network state represented by n h(n) = estimated cost from n to reach goal state. maximum h( ) value of all groups in search node n. h( ) value of one group = shortest travel time to reach any destination, ignoring capacity constraints. Lemma 1: h( ) is admissible. h( ) never over-estimate the cost to reach goal state Lemma 2: h( ) monotonic.

24 24 A* Search - Example (1/2) 1 2 3 4 Edge: (capacity, travel time) (2, 1) Node: (occupancy) 2 (2, 2) (2, 1) 1 2 3 4 2 (2, 2) (2, 1) 1 2 3 4 2 (2, 2) (2, 1) 1 2 3 4 1 (2, 2) (2, 1) 1 1 2 3 4 1 (2, 2) (2, 1) 1 1 2 3 4 1 (2, 2) (2, 1) 1 f(n) = g(n) + h(n) = 0 + 2 = 2 T = 0 T = 1 f = g + h = 1 + 1 = 2 f = g + h = 1 + 2 = 3 Initial state f = g + h = 1 + 2 = 3 Next search node to be expanded

25 25 A* Search - Example (2/2) 1 2 3 4 (2, 1) 2 (2, 2) (2, 1) T = 1 f = g + h = 1 + 1 = 2 Next search node to be expanded T = 2 1 2 3 4 (2, 1) (2, 2) (2, 1) 2 1 2 3 4 (2, 2) (2, 1) 1 1 f = g + h = 2 + 0 = 2f = g + h = 2 + 1 = 3 Goal state Optimal solution

26 26 Performance Evaluation of A* Search: Experiment Design Goal: Compare A* Search algorithm with LP minimum cost flow solver (NETFLO): 1. Solution Quality: - Does A* algorithm produce optimal solution (same evacuation time as of NETFLO) ? 2. Performance: - How does the A* algorithm run-time compared with that of NETFLO ? Experiment Platform: CPU: Pentium 4 2GHz, RAM: 2GB, OS: Linux. Network Generator: NETGEN Network Transform Tool A* Search for Evacuation Planning Minimum Cost Flow Solver: NETFLO Data Analysis Number of Source Nodes Number of Nodes Number of Evacuees Evacuation network with capacity constraints and evacuees T-time expanded evacuation network Run-timeSolution Run-timeSolution Estimated Evacuation Egress Time Limit T If no solution, increase T

27 27 Performance Evaluation of A* Search: Experiment Results Experiment: Compare solution and run-time of A* Search and NETFLO. Varying network size: from 10 to 40 nodes. Figure: Run-time of A* Search and NETFLO Solution Quality: A* search produces optimal solution (same evacuation time as NETFLO) in all test cases. Performance: Run-time of A* search is exponential to the network size. Current implementation of A* search has higher run-time than that of NETFLO.

28 28 Summary of A* Search Formulation A* Search for evacuation route planning: Produce optimal solution. Do not need user provided time upper bound. Heuristic function is admissible and monotonic. Experiment results show that run-time is exponential to the size of the network. High memory requirement. Possible to improve performance and memory usage. Need for more efficient approach.

29 29 1. Model node capacity and edge capacity as a time series Time series representation: For a given node N i : Available_Node_Capacity ( N i, t ) = Available capacity of node Ni at time t For a given edge N i -N j : Available_Edge_Capacity ( N i -N j, t ) = Available capacity of edge N i -N j at time t 2. Generalize shortest-path algorithm, e.g. Dijkstra’s algorithm, to account for capacity constraints Capacity Constrained Routing Approach Main ideas:

30 30 While (any source node has evacuees) do Step 1: Find route R with earliest destination arrival time among routes between all (source, destination) pairs, based on current available capacity of nodes and edges. Step 2: Compute actual flow amount on route R flow = min { number of evacuees left at source node of route R, Available_Edge_Capacity( all edges on R ), Available_Node_Capacity( all nodes on R ) } Step 3: Make reservation of capacity on route R Available capacity of each edge on R reduced by flow Available capacity of each incoming nodes on R reduced by flow Summary: Each iteration generate route and schedule for one group of evacuee. Produce sub-optimal solution. Solution evacuation plan observes capacity constraints of network. New Heuristic Algorithm: Capacity Constrained Route Planner (CCRP)

31 31 Example Input: Evacuation Network with Evacuees N1, 50 (10) N3, 30N5, 6N4, 8 N2, 50 (5) N6, 10N7, 8 N9, 25 N8, 65 (15) N12, 18 N11, 8 N10, 30 (7,1) (3,3) (7,1)(3,4) (5,4) (5,5) (8,1) (6,3) (6,4) (3,5) (3,2) (3,3) (14,4) (Max Capacity, Travel time) Node ID, Max Capacity (Initial Occupancy) Dest #2 Dest #1 N13 N14 Node ID Destination node Node Edge

32 32 CCRP Execution Trace N1, 50 (10) N3, 30N5, 6N4, 8 N2, 50 (5) N6, 10N7, 8 N9, 25 N8, 65 (15) N12, 18 N11, 8 N10, 30 (7,1) (3,3) (7,1)(3,4)(5,4) (5,5) (8,1) (6,3) (6,4) (3,5) (3,2) (3,3) (14,4) (Max Capacity, Travel time) Node ID, Max Capacity (Initial Occupancy) Dest #2 N13 N14 Node: Edge: Dest #1 7777 7777 7777 7777 Iteration: 1 T0T1T2T3 T4T5T6T7 T8T9T10T11 T12T13T14T15 Edge reservation table: Quickest route between source/destination pair: SourceDestinationDest. Arrival TimeNo. of Evacuees N1N13143 N1N14153 N2N13143 N2N14153 N8N1346 N8N1453 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 5555 5555 5555 5555 5555 5555 5555 5555 8882 8888 8888 8888 3333 3333 3333 3333 0666 6666 6666 6666 R : (route with earliest destination arrival time) N8N10N13 Start Time:034 Node: Each cell represents one time point (T0 - T15): 8858 8888 8888 8888 e.g. Available edge capacity at time 3 is reduced to 5 Number. of Evacuees on Route R : 6 7777 7777 7777 7777

33 33 CCRP Execution Trace N1, 50 (10) N3, 30N5, 6N4, 8 N2, 50 (5) N6, 10N7, 8 N9, 25 N8, 65 (9) N12, 18 N11, 8 N10, 30 (7,1) (3,3) (7,1)(3,4)(5,4) (5,5) (8,1) (6,4) (3,5) (3,2) (3,3) (14,4) Dest #2 N13 N14 Dest #1 7777 7777 7777 7777 Iteration: 2 Quickest route between source/destination pair: SourceDestinationDest. Arrival TimeNo. of Evacuees N1N13143 N1N14153 N2N13143 N2N14153 N8N1356 N8N1453 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 5555 5555 5555 5555 5555 5555 5555 5555 8882 2888 8888 8888 3333 3333 3333 3333 0066 6666 6666 6666 R : (route with earliest destination arrival time) N8N10N13 Start Time:145 Node: Number. of Evacuees on Route R : 6 7777 7777 7777 7777 (Max Capacity, Travel time) Node ID, Max Capacity (Initial Occupancy) Node: Edge: T0T1T2T3 T4T5T6T7 T8T9T10T11 T12T13T14T15 Edge reservation table: Each cell represents one time point (T0 - T15): 8858 8888 8888 8888 e.g. Available edge capacity at time 3 is reduced to 5 (6,3)

34 34 CCRP Execution Trace N1, 50 (10) N3, 30N5, 6N4, 8 N2, 50 (5) N6, 10N7, 8 N9, 25 N8, 65 (3) N12, 18 N11, 8 N10, 30 (7,1) (3,3) (7,1)(3,4)(5,4) (5,5) (8,1) (6,3) (6,4) (3,5) (3,2) (3,3) (14,4) Dest #2 N13 N14 Dest #1 7777 7777 7777 7777 Iteration: 3 Quickest route between source/destination pair: SourceDestinationDest. Arrival TimeNo. of Evacuees N1N13143 N1N14153 N2N13143 N2N14153 N8N1363 N8N1453 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3333 3330 3333 3333 3333 5555 5555 5555 5555 5555 5555 5555 5555 8882 2888 8888 8888 0333 3333 3333 3333 0066 6666 6666 6666 R : (route with earliest destination arrival time) N8N11N14 Start Time:035 Node: Number. of Evacuees on Route R : 3 7777 7777 7777 7777 (Max Capacity, Travel time) Node ID, Max Capacity (Initial Occupancy) Node: Edge: T0T1T2T3 T4T5T6T7 T8T9T10T11 T12T13T14T15 Edge reservation table: Each cell represents one time point (T0 - T15): 8858 8888 8888 8888 e.g. Available edge capacity at time 3 is reduced to 5

35 35 CCRP Execution Trace N1, 50 (10) N3, 30 N5, 6 N4, 8 N2, 50 (5) N6, 10 N7, 8 N9, 25 N8, 65 N12, 18 N11, 8 N10, 30 (7,1) (3,3) (7,1) (3,4)(5,4) (5,5) (8,1)(6,3) (6,4) (3,5) (3,2) (3,3) (14,4) Dest #2 N13 N14 Dest #1 4777 7777 7777 7777 Iteration: 4 Quickest route between source/destination pair: SourceDestinationDest. Arrival TimeNo. of Evacuees N1N13143 N1N14153 N2N13143 N2N14153 3333 3333 3333 3333 3333 3333 3333 3333 3033 3333 3333 3333 3333 3333 3333 3333 3330 3333 3333 3333 5555 5555 2555 5555 5555 2555 5555 5555 8882 2888 8888 8588 0333 3333 3333 3333 0066 6666 6666 6666 R : (route with earliest destination arrival time) N8N3N4 Start Time: 014 Node: Number. of Evacuees on Route R : 3 7777 7777 7777 7777 N6N10 81314 N13 (Max Capacity, Travel time) Node ID, Max Capacity (Initial Occupancy) Node: Edge: T0T1T2T3 T4T5T6T7 T8T9T10T11 T12T13T14T15 Edge reservation table: Each cell represents one time point (T0 - T15): 8858 8888 8888 8888 e.g. Available edge capacity at time 3 is reduced to 5

36 36 CCRP Execution Trace N1, 50 (7) N3, 30 N5, 6 N4, 8 N2, 50 (5) N6, 10 N7, 8 N9, 25 N8, 65 N12, 18 N11, 8 N10, 30 (7,1) (3,3) (7,1) (3,4)(5,4) (5,5) (8,1)(6,3) (6,4) (3,5) (3,2) (3,3) (14,4) Dest #2 N13 N14 Dest #1 1777 7777 7777 7777 Iteration: 5 Quickest route between source/destination pair: SourceDestinationDest. Arrival TimeNo. of Evacuees N1N13153 N1N14153 N2N13153 N2N14153 3333 3333 3333 3333 3333 3333 3333 3333 3003 3333 3333 3333 3333 3333 3333 3333 3330 3333 3333 3333 5555 5555 2255 5555 5555 2255 5555 5555 8882 2888 8888 8558 0333 3333 3333 3333 0066 6666 6666 6666 R : (route with earliest destination arrival time) N8N3N4 Start Time: 025 Node: Number. of Evacuees on Route R : 3 7777 7777 7777 7777 N6N10 91415 N13 (Max Capacity, Travel time) Node ID, Max Capacity (Initial Occupancy) Node: Edge: T0T1T2T3 T4T5T6T7 T8T9T10T11 T12T13T14T15 Edge reservation table: Each cell represents one time point (T0 - T15): 8858 8888 8888 8888 e.g. Available edge capacity at time 3 is reduced to 5

37 37 Outline Introduction Algorithm Framework and Design Decisions Our Approach Evaluation of Design Decisions Analytical evaluation Experiment evaluation Conclusion and Future works

38 38 Design Decisions for CCRP

39 39 Analytical Evaluation of CCRP Design Decisions Heuristic vs. Optimal Optimal: Linear programming approach: at least Heuristic: CCRP_S Number of iterations: O(p) p : number of evacuees Cost for each iteration: ( n: number nodes, m: number of edges ) Step 1 - Find route R with one Dijkstra search: Dijkstra ( double bucket):, C : max. edge weight Step 2 - Compute flow amount on route R : O ( n ) Step 3 - Make reservations on route R : O ( n ) Step 1 is dominant. CCRP_S cost model: The condition is always true for real evacuation scenarios.

40 40 Analytical Evaluation of CCRP Design Decisions Time Expanded network vs. Time Series Time Expanded network : Linear programming approach Memory requirement (bytes): at least Time series: CCRP_S Memory requirement (bytes):

41 41 Analytical Evaluation of CCRP Design Decisions Multiple SP search vs. Single SP search Multiple SP search : CCRP_M Cost model: Single SP search: CCRP_S Cost model:

42 42 Experiment Evaluation of CCRP Design Decisions: Goal: 1. Compare heuristic CCRP with LP minimum cost flow solver (e.g. RelaxIV): - Performance: Run-time - Solution Quality: Evacuation egress time 2. Test effect of independent parameters on performance and solution quality - Number of evacuees, number of source/destination nodes, size of network of nodes). Network Generator: NETGEN Time Expanded Network Converter CCRP Minimum Cost Flow Solver: RelaxIV Data Analysis Number of Source Nodes Number of Nodes Number of Evacuees Evacuation network with capacity constraints and evacuees T-time expanded evacuation network Run-timeSolution Run-timeSolution Evacuation Egress Time Upper-bound T If no solution, increase T Number of Destination Nodes Heuristic vs. Optimal: Experiment Design

43 43 Heuristic vs. Optimal: Experiment Results 1 Experiment 1: Effect of Number of Evacuees Setup: fixed network size = 5000 nodes, fixed number of source nodes = 2000 nodes, number of evacuees from 5,000 to 50,000. Figure 1 Quality of solution Figure 2 Run-time CCRP produces high quality solution, solution quality drops slightly as number of evacuees grows. Run-time of CCRP is less than 1/2 that of RelaxIV. CCRP is scalable to the number of evacuees.

44 44 Heuristic vs. Optimal : Experiment Results 2 Experiment 2: Effect of Number of Source Nodes Setup: fixed network size = 5000 nodes, fixed number of evacuees = 5000, number of source nodes from 1,000 to 4,000. Figure 1 Quality of solution Figure 2 Run-time CCRP produces high quality solution, solution quality not affected by number of source nodes. Run-time of CCRP is less than half of RelaxIV. CCRP is scalable to the number of source nodes.

45 45 Heuristic vs. Optimal : Experiment Results 3 Experiment 2: Effect of Number of Destination Nodes Setup: fixed network size = 5000 nodes, fixed number of evacuees = 5000, number of destination nodes from 10 to 50. Figure 1 Quality of solutionFigure 2 Run-time CCRP produces high quality solution, solution quality not affected by number of destination nodes. Run-time of CCRP decrease as number destination nodes grows, while run-time of RelaxIV increases.

46 46 Heuristic vs. Optimal : Experiment Results 4 Experiment 3: Effect of Network Size Setup: fixed number of evacuees = 5000, fixed number of source nodes = 10 nodes, number of nodes from 50 to 50,000. Figure 1 Quality of solution Figure 2 Run-time CCRP produces high quality solution, solution quality increases as network size grows. Run-time of CCRP is scalable to network size.

47 47 Multiple SP search vs. Single SP search Experiment Design: Goal: Compare performance of single shortest path search at step 1 (CCRP_S) and multiple shortest path search at Step 1 (CCRP_M). Network Generator: NETGEN CCRP_M: Multiple SP search at Step 1 (one search from each source node) Data Analysis Number of Nodes Evacuation network Run-time CCRP_S: Single SP search at Step 1 Run-time Experiment Evaluation of CCRP Design Decisions:

48 48  CCRP_S is strictly faster than CCRP_M.  Single SP search in CCRP is a better choice over Multiple SP search. Experiment Result: Figure: Run-time of CCRP_S and CCRP_M with respect to network size Multiple SP search vs. Single SP search

49 49 Choice of shortest path search algorithms Candidate SP algorithms: Dijkstra naïve implementation (for comparison) Dijkstra using k-ary heap(k=3) Dijkstra using Fibonacci heap Dijkstra using double bucket Two Queue Goal: Compare performance of CCRP with different shortest path algorithms. Experiment Evaluation of CCRP Design Decisions: Experiment Design:

50 50 Best choice for CCRP: Dijkstra’s algorithm using double bucket implementation. Choice of shortest path search algorithms Experiment Result: Figure: CCRP Run-time with Different Shortest Path Search Algorithms

51 51 Outline Introduction Algorithm Framework and Design Decisions Our Approach Evaluation of Design Decisions Conclusion and Future works

52 52 Conclusions Explore alternate optimal solution algorithm using A* search Address limitation of LP algorithm Prove monotonicity and admissibility Experiment show poor scalability Propose new heuristic approach (CCRP) Prove CCRP computationally efficient than LP algorithm Prove CCRP require less memory than LP algorithm Experiment evaluation of CCRP design decisions: Best implementation of CCRP: CCRP_S: single SP search, Dijkstra’s algorithm w/ double-bucket Faster than LP algorithm High quality solution Has clear advantage over linear programming algorithm in real evacuation scenarios (e.g. number of destination nodes)

53 53 Future Works CCRP Algorithm: Assumptions: Edge travel time observe FIFO (First-In First-Out) property. Edge travel time incorporate delay at intersections. Effect of allowing time-varying edge capacity and travel time. A* Search Algorithm: Performance tuning of current A* implementation: Improve algorithm run-time: Explore new data structures to reduce memory usage Analysis of cost model of A* search Explore Assignment-simulation Approach Integrate CCRP with assignment-simulation Approach

54 54 Thank you ! Questions and Comments ?

55 55 Alternate Problem Formulation for Evacuation Problems Alternate objectives: (A) Maximize the number of evacuees that reach destination at each time period. (B) Minimize the average evacuation time for all evacuees. Triple Optimization Theorem [Jarvis and Ratliff]: (A) (B) => (our formulation) Objective of our formulation: Minimize the evacuation egress time.

56 56 A Simple Example – Building floor Map Two-story building: - Two staircases - Two exits on first floor ( Building floor map from EVACNET User Manual )

57 57 A Simple Example – Node and Edge Definition Nodes: Edges: Each room, hallway, staircase, etc. Each available link between two nodes.

58 58 A Simple Example - Initial State Each node has: Maximum node capacity ( max. number of people the node can hold) Initial node occupancy ( number of people at the node ) Each edge has: Maximum edge capacity ( max. number of people can travel through this edge simultaneously ) Edge Travel time ( how long it takes to travel through this edge) Init. Occupancy =10 Max. Capacity = 50 Init. Occupancy = 5 Max. Capacity = 65 Init. Occupancy = 15 Capacity=6 Travel time=3

59 59 A Real Scenario: Nuclear Power Plant Evacuation Route Planning Nuclear Power Plants in Minnesota Twin Cities

60 60 A Real Scenario: Monticello Emergency Planning Zone and Population Monticello EPZ Subarea Population 2 4,675 5N 3,994 5E 9,645 5S 6,749 5W 2,236 10N 391 10E 1,785 10SE 1,390 10S 4,616 10SW 3,408 10W 2,354 10NW 707 Total41,950 Estimate EPZ evacuation time: Summer/Winter(good weather): 3 hours, 30 minutes Winter (adverse weather): 5 hours, 40 minutes Emergency Planning Zone (EPZ) is a 10-mile radius around the plant divided into sub areas. Data source: Minnesota DPS & DHS Web site: http://www.dps.state.mn.us http://www.dhs.state.mn.us

61 61 A Real Scenario: Transportation Road Map Affected Cities Monticello Power Plant Evacuation Destination University of Minnesota

62 62 A Real Scenario : New Plan Routes Source cities Destination Monticello Power Plant Routes used only by old plan Routes used only by result plan of capacity constrained routing Routes used by both plans Congestion is likely in old plan near evacuation destination due to capacity constraints. Our plan has richer routes near destination to reduce congestion and total evacuation time. Twin Cities Experiment Result Total evacuation time: - Existing Plan: 268 min. - New Plan: 162 min.


Download ppt "1 Capacity Constrained Routing Algorithms For Evacuation Planning Qingsong Lu, Betsy George Adviser: Prof. Shashi Shekhar Spatial Database Research Group."

Similar presentations


Ads by Google