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

Slides:



Advertisements
Similar presentations
Chapter 4: Informed Heuristic Search
Advertisements

Review: Search problem formulation
Min Cost Flow: Polynomial Algorithms. Overview Recap: Min Cost Flow, Residual Network Potential and Reduced Cost Polynomial Algorithms Approach Capacity.
§3 Shortest Path Algorithms Given a digraph G = ( V, E ), and a cost function c( e ) for e  E( G ). The length of a path P from source to destination.
Solving Problem by Searching
Introduction to Algorithms
15.082J & 6.855J & ESD.78J Shortest Paths 2: Bucket implementations of Dijkstra’s Algorithm R-Heaps.
1 Advancing Supercomputer Performance Through Interconnection Topology Synthesis Yi Zhu, Michael Taylor, Scott B. Baden and Chung-Kuan Cheng Department.
5-1 Chapter 5 Tree Searching Strategies. 5-2 Satisfiability problem Tree representation of 8 assignments. If there are n variables x 1, x 2, …,x n, then.
CS171 Introduction to Computer Science II Graphs Strike Back.
Dynamic Pickup and Delivery with Transfers* P. Bouros 1, D. Sacharidis 2, T. Dalamagas 2, T. Sellis 1,2 1 NTUA, 2 IMIS – RC “Athena” * To appear in SSTD’11.
Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.
Algorithm Strategies Nelson Padua-Perez Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
State Space Search Algorithms CSE 472 Introduction to Artificial Intelligence Autumn 2003.
Capacity Constrained Routing Algorithms
Review: Search problem formulation
Placement of Integration Points in Multi-hop Community Networks Ranveer Chandra (Cornell University) Lili Qiu, Kamal Jain and Mohammad Mahdian (Microsoft.
1 Evacuation Route Planning: A Scientific Approach Shashi Shekhar McKnight Distinguished University Professor, University of Minnesota Project Details.
Group Members Faculty : Professor Shashi Shekhar Professor Mohamed Mokbel Students : Mete Celik Betsy George James Kang Sangho Kim Xiaojia Li Qingsong.
Network Coding Project presentation Communication Theory 16:332:545 Amith Vikram Atin Kumar Jasvinder Singh Vinoo Ganesan.
Continuous Retiming EECS 290A Sequential Logic Synthesis and Verification.
Evacuation Route Planning: Scalable Approaches
Tracking Moving Objects in Anonymized Trajectories Nikolay Vyahhi 1, Spiridon Bakiras 2, Panos Kalnis 3, and Gabriel Ghinita 3 1 St. Petersburg State University.
Time-Variant Spatial Network Model Vijay Gandhi, Betsy George (Group : G04) Group Project Overview of Database Research Fall 2006.
1 Time-Aggregated Graphs- Modeling Spatio-temporal Networks August 29, 2008 Department of Computer Science and Engineering University of Minnesota Prof.
1 Evacuation Planning Algorithms Qingsong Lu Advisor: Prof. Shashi Shekhar August 9, 2002.
Path Protection in MPLS Networks Using Segment Based Approach.
Quickest path and Quickest routing: A dynamic routing method Research Topic: Jiang, XidongMS candidate in computer science at California State University,
1 Evacuation Planning Algorithms Professor Shashi Shekhar Dept. of Computer Science, University of Minnesota Participants: Q. Lu, S. Kim February 2004.
Prof. Ram and I By Shashi Shekhar (not Sushi Shekhar!) May 6 th, 2006.
Non-Conservative Cost Bound Increases in IDA* Doug Demyen.
Shashi Shekhar Professor, Computer Science Department Teaching: Csci 8705: Topics in Scientific Databases Csci.
S. Suri, M, Waldvogel, P. Warkhede CS University of Washington Profile-Based Routing: A New Framework for MPLS Traffic Engineering.
Capacity Constrained Routing Algorithms for Evacuation Planning: A Summary of Results Speaker: Chen-Nien Tsai.
UCSC 1 Aman ShaikhICNP 2003 An Efficient Algorithm for OSPF Subnet Aggregation ICNP 2003 Aman Shaikh Dongmei Wang, Guangzhi Li, Jennifer Yates, Charles.
1 Network Coding and its Applications in Communication Networks Alex Sprintson Computer Engineering Group Department of Electrical and Computer Engineering.
Analysis of Algorithms These slides are a modified version of the slides used by Prof. Eltabakh in his offering of CS2223 in D term 2013.
Highway Risk Mitigation through Systems Engineering.
Single Source Shortest-Path: The General Case (with negative edges) Bellman-Ford algorithm. Iteratively relax all edges |V|-1 times Running time? O(VE).
Program Efficiency & Complexity Analysis. Algorithm Review An algorithm is a definite procedure for solving a problem in finite number of steps Algorithm.
Informed search algorithms Chapter 4. Best-first search Idea: use an evaluation function f(n) for each node –estimate of "desirability"  Expand most.
Review: Tree search Initialize the frontier using the starting state While the frontier is not empty – Choose a frontier node to expand according to search.
Java Methods Big-O Analysis of Algorithms Object-Oriented Programming
Chapter 3 Algorithms Complexity Analysis Search and Flow Decomposition Algorithms.
Efficient Cache Structures of IP Routers to Provide Policy-Based Services Graduate School of Engineering Osaka City University
DATA STRUCTURES AND ALGORITHMS Lecture Notes 2 Prepared by İnanç TAHRALI.
Presentation Template KwangSoo Yang Florida Atlantic University College of Engineering & Computer Science.
CS223 Advanced Data Structures and Algorithms 1 Maximum Flow Neil Tang 3/30/2010.
M ODELING OF E VACUATION P LANNING O F B UILDING USING D YNAMIC E XITS By: Prachi Garg Roll No : ______________________________________ under.
IT Applications for Decision Making. Operations Research Initiated in England during the world war II Make scientifically based decisions regarding the.
1 An Arc-Path Model for OSPF Weight Setting Problem Dr.Jeffery Kennington Anusha Madhavan.
Pipelined and Parallel Computing Partition for 1 Hongtao Du AICIP Research Nov 3, 2005.
Informed Search CSE 473 University of Washington.
A* optimality proof, cycle checking CPSC 322 – Search 5 Textbook § 3.6 and January 21, 2011 Taught by Mike Chiang.
Highway Risk Mitigation through Systems Engineering.
Multi-Objective Optimization for Topology Control in Hybrid FSO/RF Networks Jaime Llorca December 8, 2004.
Spatial Networks Introduction to Spatial Computing CSE 5ISC Some slides adapted from Shashi Shekhar, University of Minnesota.
BITS Pilani Pilani Campus Data Structure and Algorithms Design Dr. Maheswari Karthikeyan Lecture1.
1 Chapter 5 Branch-and-bound Framework and Its Applications.
1 Double-Patterning Aware DSA Template Guided Cut Redistribution for Advanced 1-D Gridded Designs Zhi-Wen Lin and Yao-Wen Chang National Taiwan University.
Chapter 3 Solving problems by searching. Search We will consider the problem of designing goal-based agents in observable, deterministic, discrete, known.
Introduction to Spatial Computing CSE 5ISC
Graph Theory and Algorithm 02
Multi-Objective Optimization for Topology Control in Hybrid FSO/RF Networks Jaime Llorca December 8, 2004.
Dijkstra’s Algorithm for the Shortest Path Problem
CSE 473 University of Washington
Chapter 6 Network Flow Models.
Maximum Flow Neil Tang 4/8/2008
Solving Problems by Searching
Presentation transcript:

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 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 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 ( ) ( 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. (

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 ) Motivation - Homeland Security

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 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 Example Evacuation Plan: Example Output : Evacuation Plan

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 =

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 , 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 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 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 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 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 Algorithm Design Space Algorithm Framework Optimal algorithm: Linear Programming, A* based. Heuristic algorithm: CCRP

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 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 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 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: , 1996.)

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: , 1996.)

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: , 1996.) Design Decision: Choice of Shortest Path Algorithm

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 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 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 A* Search - Example (1/2) Edge: (capacity, travel time) (2, 1) Node: (occupancy) 2 (2, 2) (2, 1) (2, 2) (2, 1) (2, 2) (2, 1) (2, 2) (2, 1) (2, 2) (2, 1) (2, 2) (2, 1) 1 f(n) = g(n) + h(n) = = 2 T = 0 T = 1 f = g + h = = 2 f = g + h = = 3 Initial state f = g + h = = 3 Next search node to be expanded

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

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 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 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 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 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 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 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 # 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 N8N R : (route with earliest destination arrival time) N8N10N13 Start Time:034 Node: Each cell represents one time point (T0 - T15): e.g. Available edge capacity at time 3 is reduced to 5 Number. of Evacuees on Route R :

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 # Iteration: 2 Quickest route between source/destination pair: SourceDestinationDest. Arrival TimeNo. of Evacuees N1N13143 N1N14153 N2N13143 N2N14153 N8N1356 N8N R : (route with earliest destination arrival time) N8N10N13 Start Time:145 Node: Number. of Evacuees on Route R : (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): e.g. Available edge capacity at time 3 is reduced to 5 (6,3)

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 # Iteration: 3 Quickest route between source/destination pair: SourceDestinationDest. Arrival TimeNo. of Evacuees N1N13143 N1N14153 N2N13143 N2N14153 N8N1363 N8N R : (route with earliest destination arrival time) N8N11N14 Start Time:035 Node: Number. of Evacuees on Route R : (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): e.g. Available edge capacity at time 3 is reduced to 5

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 # Iteration: 4 Quickest route between source/destination pair: SourceDestinationDest. Arrival TimeNo. of Evacuees N1N13143 N1N14153 N2N13143 N2N R : (route with earliest destination arrival time) N8N3N4 Start Time: 014 Node: Number. of Evacuees on Route R : N6N 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): e.g. Available edge capacity at time 3 is reduced to 5

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 # Iteration: 5 Quickest route between source/destination pair: SourceDestinationDest. Arrival TimeNo. of Evacuees N1N13153 N1N14153 N2N13153 N2N R : (route with earliest destination arrival time) N8N3N4 Start Time: 025 Node: Number. of Evacuees on Route R : N6N 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): e.g. Available edge capacity at time 3 is reduced to 5

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

38 Design Decisions for CCRP

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 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 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 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 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 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 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 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 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  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 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 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 Outline Introduction Algorithm Framework and Design Decisions Our Approach Evaluation of Design Decisions Conclusion and Future works

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 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 Thank you ! Questions and Comments ?

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 A Simple Example – Building floor Map Two-story building: - Two staircases - Two exits on first floor ( Building floor map from EVACNET User Manual )

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

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 A Real Scenario: Nuclear Power Plant Evacuation Route Planning Nuclear Power Plants in Minnesota Twin Cities

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 E 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:

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

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.