Time Interval All Fastest Paths in a Network
|
|
|
- Beatrix Blair
- 5 years ago
- Views:
Transcription
1 Finding Fastest Paths on A Road Network with Speed Patterns Evangelos Kanoulas Yang Du Tian Xia Donghui Zhang College of Computer & Information Science Northeastern University, Boston, MA {ekanou, duy, tianxia, donghui}@ccs.neu.edu Abstract This paper proposes and solves the Time-Interval All Fastest Path (allfp) query. Given a user-defined leaving or arrival time interval I, a source node s and an end node e, allfp asks for a set of all fastest paths from s to e, one for each sub-interval of I. Note that the query algorithm should find a partitioning of I into sub-intervals. Existing methods can only be used to solve a very special case of the problem, when the leaving time is a single time instant. A straightforward solution to the allfp query is to run existing methods many times, once for every time instant in I. This paper proposes a solution based on novel extensions to the A* algorithm. Instead of expanding the network many times, we expand once. The travel time on a path is kept as a function of leaving time. Methods to combine travel-time functions are provided to expand a path. A novel lower-bound estimator for travel time is proposed. Performance results reveal that our method is more efficient and more accurate than the discrete-time approach. 1 Introduction Have you ever been stuck in traffic while driving, wishing that you had known a better route? In the United states, only 9.3% of the households do not have cars. Driving is part of people s daily life. GIS systems like MapQuest and MapPoint are heavily relied on to provide driving directions. However, surprisingly enough, existing systems either ignore the driving speed on road networks, or assume the speed remains constant on the road segments. In both cases the users preferred leaving time does not affect the query result. For instance, MapQuest does not ask the users to input the day and time of driving. But we all know that during rush hours, inbound highways to big cities have much lower speed than usual. So a fastest path computed during non-rush hours, which may consists of some Partially supported by NSF CAREER Award IIS inbound highway segments, may not remain the fastest path during rush hours. To capture speed changes, we propose the CAtegorized PiecewisE COnstant speed (CapeCod) pattern, which is an extension of the Flow Speed Model (FSM) [19] by incorporating categorized speed patterns. Here days are categorized, e.g. workdays and non-workdays. Within each category, we assume the speed on each road segment is piecewise constant. For instance, in a working day, during rush hour (say from 7am to 9am) the speed is 0.3 miles per minute (mpm), and at other times of the day the speed is 1mpm. The paper proposes and solves the Time Interval All Fastest Paths (allfp) Query, on a road network with CapeCod speed patterns. As the road network may be large, it is reasonable to assume that it is stored on disk. We adapt the Connectivity-Cluster Access Method (CCAM) [18] to store and access the network information. Besides the source node s and the end node e, a query consists of a leaving time interval at s (or e). All fastest paths are enumerated, each corresponding to a disjoint sub-interval of leaving time. The union of all sub-intervals should cover the entire query time interval. An allfp query example is: I may leave for work any time between 7am and 9am; please suggest all fastest paths, e.g. take route A if the leaving time is between 7 and 7:45, and take route B otherwise. A variation is the Time Interval Single Fastest Path (singlefp) query, which only reports a single fastest path: the one that minimizes the travel time among all leaving time instants in the query time interval. If instead of a time interval, a single leaving time instant is given, both allfp and singlefp correspond to the same special case, which is trivial. The special case actually degrades into the shortest-path problem. The reason is that for each edge n i n j, if we know the leaving time instant at n i, the arrival time at n j is fixed. This special case is a well studied problem in multiple disciplines: transportation systems, networks, graph theory, artificial intelligence, and spatial databases. One of the best algorithms, named A* [15], extends Dijkstra s single-source-shortest-path al-
2 gorithm. The idea is as follows. Keep a set E of expanded nodes (initially empty) and a priority queue F of frontier nodes (initially consisting only of the source node s). Each iteration chooses one node from F, expands it by adding its non-expanded neighbors to F, and moves it to E. To choose the next node from F, instead of choosing i where the travel time from s to i is the smallest (as in Dijkstra s algorithm), choose the node j such that the travel time from s to j plus the estimated travel time from j to e is the smallest. As pointed in[15], the estimation must be a lower bound of the actual travel time to ensure correctness. Also, the closer the estimation is to the actual travel time, the more efficient the search is. In allfp and singlefp queries, the leaving time l at s is not fixed, but can be any instant in a given interval I. In this case, the travel time on each road segment is a function of time and therefore, none of the existing algorithms can be applied to solve these queries. For instance, in A*, in each iteration a node is chosen to be expanded. In the new queries, since different leaving time suggests that different nodes should be expanded, which one do we choose? To get around this problem, one approach to answer the new queries (but only approximately) is to assume discrete time model. For instance, if we assume the leaving time can only be at the very beginning of every minute, we can call the A* algorithm many times, one per minute. But this approach is neither accurate nor efficient. We propose an algorithm called IntAllFastestPaths to accurately and efficiently solve the allfp query. One intermediate step of the algorithm identifies the result for the singlefp query, and therefore the algorithm also can answer the singlefp query, without spending the time to find the complete result for the allfp query. The algorithm consists of some novel extensions to the A* Algorithm. (i) Each entry in the priority queue has a travel-time function instead of a single travel time value, and we tell which node should be expanded in each iteration. (ii) Given the travel-time function T 1 (l I) of a path s n i and an edge n i n j, we discuss how to determine the interval I of leaving time at n i. (iii) Once we get such an interval and the corresponding function T 2 (l I ), we present a way to combine T 1 () with T 2 () to get the new travel function for the expanded path s n i n j. (iv) Another important issue is how to provide a lower-bound estimation to the travel time from some node n j to the end node e. A straightforward choice is to use the Euclidean distance divided by the maximum speed in the network, as it is guaranteed to be a lower bound of the actual travel time. In Section 5, we propose a better (i.e. closer to the actual travel time) estimator, namely the boundary node estimator. The major contributions of the paper are: 1. We propose the allfp query and its variation the singlefp query, where the speed changes are captured by the CapeCod patterns. By allowing the users to provide a leaving time interval, the queries are practical extensions to the queries considered in existing pathcomputation systems. 2. We present an algorithm (IntAllFastestPaths) to solve the two fastest-path queries. The algorithm is based on novel extensions to A*. The priority queue stores travel-time functions associated with expanded paths. We describe how to choose a path to keep expanding, how to determine the leaving time interval at each intermediate node, and how to produce the compounded function for the newly expanded path (Section 4). 3. We provide a novel lower-bound estimator to reduce the search space (Section 5). The estimator is based on graph partitioning and pre-computation. The rest of the paper is organized as follows. Problem definition appears in Section 2. Related work is reviewed in Section 3. The fastest-path algorithms are presented in Section 4. The new lower-bound estimator appear in Section 5. Performance results are shown in Section 6. Finally, Section 7 concludes the paper. 2 Problem Definition This section formally defines the CapeCod patterns, the road network which incorporates these patterns and the two queries addressed in this paper. The storage model and the required operations are also discussed. 2.1 CapeCod Network and Fastest Path Queries Definition 1 A (day-)category set D is a list of categories such that each day belongs to exactly one category in D. For any two days belonging to the same category, a road segment exhibits the same speed patterns. For example, such a category set may be: workday, nonworkday. Here the assumption is that for two days in the same category, a road segment has the same speed at the same time of day. Although this may not be 100% accurate, it is a reasonable assumption for two reasons. First, if the volume of traffic on a road segment is high at some time on one workday, it is likely the same to happen the same time on another workday. Second, the approximation becomes more accurate by increasing the number of categories. For instance, if for some road segment the speed pattern for Fridays is different from that of other workdays, we can identify Friday as another category. Definition 2 Given a category set D, a CAtegorized PiecewisE COnstant speed (CapeCod) pattern consists of one
3 daily speed pattern for every day-category in D. Here each daily pattern has piecewise constant speed for the 24-hour duration. An example of a CapeCod pattern may be: for a nonworkday: [0:00-24:00):1mpm 1 ; and for a workday: [0:00-7:00):1mpm, [7:00-9:00):1/2mpm, [9:00-24:00):1mpm. This pattern indicates that traffic congestion occurs every workday from 7am to 9am. Definition 3 Given a category set D, a CapeCod network is a directed graph G(N, E) such that, N = {(n i, loc i ) i [1, m]} is the set of nodes (road intersections and end points) with their spatial locations, and E = {(n i, n j, d ij, pat ij ) i, j [1, m]} is the set of edges n i n j, where d ij is the distance and pat ij is the CapeCod pattern. The Flow Speed Model (FSM) in which the speed on each network edge is a piecewise-constant function, was proposed in [19]. The CapeCod model slightly extends FSM by involving a category of days to fit the need for spatial road networks. Definition 4 Given a CapeCod network, a start node s and an end node e, and a leaving time interval I, the All Fastest Path (allfp) query returns a full partitioning of I: I 1,..., I k, where each sub-interval is associated with a fastest path, such that two leaving time instants in one sub-interval leads to the same fastest-path and two leaving time instants in two adjacent sub-intervals leads to different fastest paths. While focusing on the allfp query, this paper also addresses the single fastest path (singlefp) query. That is, given a start node s, an end node e, and a leaving time interval I, find the time instant l 0 I and the corresponding fastest path from s to e such that leaving from s at time l 0 minimizes the travel time from s to e. Both queries compute fastest paths from node s to e for a leaving time interval I. The singlefp query reports the best leaving time instant during I to minimize travel time and the corresponding fastest path. The allfp query finds all different fastest paths, one per disjoint sub-interval of I. 2.2 Storage Model Assuming that the network has reasonably large size, it needs to be stored on disk. We adopt the connectivitycluster access method (CCAM) [18] to store and access the network information. 1 Here we use mile per minute instead of mile per hour to be consistent with the examples in later sections. In particular, for each node n i, the corresponding information to be stored on disk, denoted as info i, stores the location loc i of it in space plus a list of neighbors. For each neighbor, n j, we store its Euclidean distance d ij from n i and the CapeCod speed pattern of the road segment pat ij. To cluster the information of nodes in disk pages, according to [18], we should preserve the connectivity relationship by heuristically partitioning the graph. Information for nodes in the same partition is stored in the same disk page. On top of the disk pages that store the node information, a B+-tree is kept to efficiently locate the information of any node. The one-dimensional ordering of all nodes is generated using the Hilbert values of their locations. CCAM supports all the necessary operations for our algorithms - such as F indnode(n i ) and GetSuccessor(n i ) - and the appropriate operations to update the network. 3 Related Work Most existing work on path computation has been focused on the shortest-path problem. Several extensions of the Dijkstra algorithm have been proposed, mainly focusing on the maintenance of the priority queue. The A* algorithm [15, 10] finds a path from a given start node to a given end node by employing a heuristic estimate. Each node is ranked by an estimate of the best route that goes through that node. A* visits the nodes in order of this heuristic estimate. A survey on shortest-path computation appeared in [14]. Performance analysis and experimental results regarding the secondary-memory adaptation of shortest path algorithms can be found in [5, 17]. The work in [4] contributes on finding the shortest path that satisfies some spatial constraints. A graph index that can be used to prune the search space was proposed in [20]. One promising idea to deal with large-scale networks is to partition a network into fragments. The boundary nodes, which are nodes having direct links to other fragments, construct the nodes of a high-level, smaller graph. This idea of hierarchical path-finding has been explored in the context of computer networks [9] and in the context of transportation systems [8, 6, 7]. In [16], the materialization trade-off in hierarchical shortest path algorithms is examined. The fastest-path problem is a generalization of the shortest-path problem in the sense that the cost measure (in particular, the travel time) to traverse a road segments varies over time. This makes the fastest-path problem more complicated since the fastest path from a source node s and an end node e is not unique and depends on the leaving time from s. One way to deal with this complexity is to assume a discrete-time model [1, 11]. [1] proposes a backward labelling algorithm based on the assumption that the cost to traverse an edge remains constant after some time. [11] ap-
4 plies the A* algorithm for every leaving time instant simultaneously. Discrete-time models effectively capture transportation networks (e.g. railway or bus networks) in which vehicles depart on particular time instants. However, regarding road networks they are not accurate enough, since what happens between two adjacent time instants cannot be told. Moreover, discrete-time algorithms are not efficient. Suppose we want to know all fastest paths during some time interval (allfp Query). Independent to the number of different fastest paths (which may be small) in the answer set, the discrete-time algorithm needs to perform one query per time instant in the query interval. Even if this is done simultaneously for all leaving time instants it is still computationally inefficient. Another work on fastest-path computation is [12, 13]. However, the network model proposed is beyond GIS. For instance, it allows unrestricted waiting of objects at the nodes, which is not applicable in road networks since unrestricted waiting at road junctions is prohibited. Also, they consider the possibility of non-fifo behavior, where an object that leaves a node later than a previous object may arrive the next-hop node earlier. Moreover, continuous-time models necessitate the processing of functions of leaving time. Here, [12] only suggested operations on functions that are necessary without investigating how this operations can be supported. Therefore, regarding path computations in road networks, this work is of theoretical interest only. The Flow Speed Model (FSM) has been proposed in [19]. In FSM the travel time on each road segment n i n j is a piece-wise linear function of the leaving time from n i. The model is proven to preserve the FIFO property. The paper only addresses the fastest path query for a given leaving time instant. As we have discussed before, this makes the fastest path problem degrade to the shortest path problem and therefore it avoids the complexity of manipulating continuous-time functions. Moreover, [3] proposes a storage model and an update process of the speed on each road segment of road network. The network model used is discrete-time model. To solve the fastest path problem, the paper adopts an algorithm first proposed in [14]. Although the system proposed is highly adaptive to any change in the status of the road network it does not guarantee that the actual fastest path is found. 4 Fastest-Path Computation In this section, we present the basic version of our algorithm. It novelly extends the A* algorithm, while using the Euclidean distance divided by maximum network speed as the lower-bound travel-time estimator. 4.1 From Speed Patterns To Travel Time Functions We first describe how to derive travel time functions on each road segment from the CapeCod speed patterns. Consider a road segment n i n j. Let the distance be d. Let the speed be v 1 during [t 1, t 2 ) and v 2 after t 2 (including t 2 ). The travel time on the road segment n i n j is a continuous, piecewise-linear function of the leaving time from n i, l. In more detail, the travel-time function, denoted as T (l [t 1, t 2 ], n i n j ), is equal to: { d v1, l [t 1, t 2 d v1 ) (1 v1 v 2 )(t 2 l) + d v 2, l [t 2 d v 1, t 2 ] The relationship between speed and travel time on a road segment is illustrated in Figure 1. As a corollary, the travel time along any given path is also a continuous, piecewiselinear function of the leaving time. v 1 v 2 Speed t 1 t 2 (a) Speed Leaving time d / v 2 d / v 1 Travel time t 1 t d / 2 v 1 t 2 (b) Travel time (1) Leaving time Figure 1. The travel time on a road segment as a piecewise linear function of the leaving time. In case an object moving on a single road segment encounters more than two different speed patterns (unlikely to happen in practice), the travel time function is still a continuous, piecewise linear function of leaving time with more than two linear segments. 4.2 Overview of Algorithm IntAllFastestPaths A simple extension to the A* algorithm cannot be used to solve neither the allfp nor the singlefp query, for these queries involve a time interval instead of a single time instant. Let n 0 be the node to be expanded next and let n 0 have three neighbor nodes, n 1, n 2 and n 3. A* picks the neighbor node n i (i [1..3]) to continue expanding if T (l, s n i ) plus the estimated travel time from n i to e is the smallest. The problem is that the leaving time l is not a single value, i.e. l I and for different values of l, different neighbors should be picked. One possible solution is to expand all such neighbors simultaneously. However, expanding all picked neighbors may result in an exponential
5 number of paths being expanded regardless the size of the answer set. Instead, we propose a new algorithm called IntAll- FastestPaths. The main idea of the algorithms is summarized below: 1. Maintain a priority queue of expanded paths, each of which starts with s. For each path s n i, maintain T (l, s n i ) + T est (n i e) as a piecewise-linear function of l I. Here, T est (n i e) is a lower bound estimation function of the travel time from n i to the end node e. In the basic version, we choose the naive estimator, d euc (n i, e)/v max, which is the Euclidean distance between n i and e, divided by the max speed in the network. 2. Similar to the A* Algorithm, in each iteration pick a path from the priority queue to expand. Pick the path, whose maintained function s minimum value during I is the minimum among all paths. Here, how to expand a path is non-trivial and will be discussed in details later in this section. 3. The first path ending to e that is picked from the priority queue is the answer to the singlefp query. The optimal leaving time is the time instant at which the travel time function of the path is getting its minimum value. 4. Maintain a special travel-time function called the lower border function. It is the lower border of travel time functions for all identified paths (i.e. paths already picked from the priority queue) that end to e. In other words, for any time instant l I, the lower border function has a value equal to the minimum value of all travel time functions of identified paths from s to e. This function consists of multiple travel time functions, each corresponding to some path from s to e and some subinterval of I during which this path is the fastest. 5. Stop either when there is no more path left in the priority queue, or if the path picked to be expand next has a minimum value no less than the maximum value of the lower border function. Report the lower border function as the answer to the allfp query. Below we use a running example to further describe the ideas of the algorithm. 4.3 Initialization The example involves a simple road network given in Figure 2. We are interested in finding the fastest path from s to e at some time during I =[6:50-7:05]. s 2 2 e 1 n s e: [6-8):1/3 s n: [6-7):1/3, [7-8):1 n e: [6-7:08):1/3, [7:08-8):1/10 Figure 2. A simple road network. Distances are given on the edges. Speed patterns (#mpm) are given at the right of the network. Initially, the priority queue contains only one entry, which corresponds to the unexpanded node s. To get the required information regarding s and the outgoing edges we perform a F indn ode(s) operation. In its adjacency list there are two neighbors of it: e and n. According to Equation 1, we have, T (l [6:50-7:05), s e) = 6min and T (l [6:50-7:05), s n) equal to 6, l [6:50-6:54) 2 3 (7:00 l) + 2, l [6:54-7:00) 2, l [7:00-7:05] As expressed in step 1 of Algorithm IntAllFastestPaths, in the priority queue we order the paths not by T (), but by T ()+T est (). The functions of the two paths are compared in Figure 3. Here, T est (n e) = 1min, since d euc (n, e) = 1 mile and v max = 1mpm T()+Test() s > e s > n 6:50 6:54 7:00 7:05 l Figure 3. Comparison of the functions T () + T est () associated with paths s e and s n. According to step 2, the path s n to be expanded next, since its minimum value, 3, is smaller than the minimum value, 6, of the path s e. 4.4 Path Expansion In general, to expand a path s n, first all the required information for n and its adjacent nodes needs to be retrieved, Then, for each neighbor n j of n the following steps need to be followed: Given the travel time function for the path s n and the leaving time interval I from s, determine the time
6 interval during which the travel time function for the road segment n n j is needed. Determine the time instants t 1, t 2,... I at which the resulting function, i.e. the travel time function for the path s n j, T (l I, s n j ), changes from one linear function to another Travel time T(l, s => n > e) T(l, n > e) T(l, s => n) 6:50 6:54 6:56 7:00 7:03 7:05 7:07 l For each time interval [t 1, t 2 ),..., determine the corresponding linear function of the resulting function T (l I, s n j ). In our example, the time interval for n e is determined to be [6:56, 7:07] as shown in Figure 4. At time 6:50 (start of I), the travel time along the path s n is 6 minutes. Therefore, the start of the leaving time interval for n e, i.e. the start of arrival time interval to n, is 6:50+6min = 6:56. Similarly, the end of the leaving time interval is 7:05+2min = 7: T(l, s > n) 6:50 6:546:56 7:00 7:057:07 l Figure 4. The time interval, [6:56-7:07], during which the speed on n e is needed. During the time interval [6:56-7:07], the travel time on n e, T (l [6:56-7:07], n e) is { 3, if l [6:56-7:05) (7:08 l), if l [7:05-7:07] There are two cases that trigger the resulting travel time function T (l, s n e) to change from one linear function to another. In the first, simple case the function T (l, s n) changes. The time instants at which the resulting function changes are the ones at which T (l, s n) changes. In Figure 5, these correspond to time instants 6:50, 6:54 and 7:00. In the second, trickier case, the changes of the resulting function are triggered by the changes of T (l, n e), e.g. at time 7:05. In this example, we determine that at time 7:03, T (l, s n e) changes. The reason is that if one leaves s at 7:03, since the travel time on s n is 2 minutes, one will arrive at n at 7:05. At that time the travel time function of n e changes. To find the time instant 7:03, we find the intersection of the function T (l, s n) with a 135 o line passing through the point (7:05, 0). The time instant 7:03 is the leaving time corresponding to that intersection point. Figure 5. The time instants at which T (l, s n e) changes to another linear function, and the T (l, s n e) function. Now that we have determined the four time instants 6:50, 6:54, 7:00, and 7:03, we are ready to create the 4-piece function T (l I, s n e) by combining T (l, s n) and T (n e). We know that for each l, T (l, s n e) is equal to T (l, s n) plus T (l, n e), where l is the time at which node n is reached. That is, l = l + T (l, s n). We have the following algorithm to expand a path, for every identified time instant t {t 1, t 2,... } (e.g. 6:50): Retrieve the linear function of T (l, s n) at time t. Let it be α l + β. Retrieve the linear function of T (l, n e) at time t = t + (α t + β). Let it be γ l + δ. Compute a new linear function (α l + β) + (γ (l + α l + β) + δ)), which can be re-written as (α γ + α + γ) l + (β γ + β + δ). This is the linear function as part of T (l, s n e), for the time interval from t to the next identified time instant. For instance, the combined function T (l I, n e), which is shown in Figure 5, is computed as follows. At t =6:50, the first linear function is a constant function 6. We get t = t + 6=6:56. The second linear function starting with 6:56 is another constant function 3. So the combined function is 9, which is valid until the next identified time instant. At t =6:54, the first linear function is 2 3 (7:00 l) + 2. We have t =6:54+6=7:00. The second linear function is 3. The combined function is 2 3 (7:00 l) + 5. At t =7:00, the first function is constant 2. At t =7:00+2=7:02, the second function is 3. So the combined function is 5. Finally, at t =7:03, the first function is 2, and at t =7:03+2=7:05, the second function as (7:08 l ). And thus the combined function is 2+( (7:08 (l+ 2))) = (7:06 l).
7 4.5 The singlefp Query Result After the expansion, the priority queue contains two functions, as shown in Figure 6. Note that in both functions, the lower bound estimation part is 0, since both paths already end to e T()+Test() T(l, s => n > e) T(l, s > e) T()+Test() T(l, s => n > e) 6:50 6:54 7:00 7:03 7:05 6:58:30 7:03:26 T(l, s > e) Figure 7. The lower border and the result for Query 3. l 6:50 6:54 7:00 7:03 7:05 Figure 6. The two functions in the priority queue. s n e is the result for singlefp. At 7:00 it has the least travel time (5 min). The next step of Algorithm IntAllFastestPaths is to pick the path s n e, as its minimum value (5min) is globally the smallest in the queue. As step 3 of Algorithm IntAllFastestPaths shows, this path is the answer to the singlefp query since it ends to e. Any time instant in [7:00-7:03] is an optimal leaving time, for it will result in the minimum travel time. If we only want to solve the singlefp query, the algorithm terminates. 4.6 The Lower Border Function and The allfp Query Result If we want to solve the allfp query, we are not done yet. Some other path to be identified later on may be the fastest path at some time in I other than [7:00-7:03]. So we remove this path from the priority queue and continue expanding other paths. An important question that arises here is when do we stop expanding, as expanding all paths to the end node is prohibitively expensive. The algorithm terminates when the next path has a minimum value no less than the maximum value of the maintained lower border function. When there is only one identified path that ends with e, the lower border function is the function of this path. In Figure 6, T (l, s n e) is the lower border function. As each new path ending with e is identified, its function is combined with the previous lower border function. E.g. in Figure 7 the new lower border function, after the function T (l, s e) is removed from the priority queue, is shown as the thick polyline. The algorithm can terminate if the next path to be expanded has a minimum value no less than the maximum value of the lower border function (in this case, 6).Since the maximum value of the lower border keeps decreasing, while l the minimum travel time of paths in the priority queue keeps increasing, the algorithm IntAllFastestPaths is expected to terminate very fast. In our example, the set of all fastest paths from s to e when l [6:50-7:05] is: s e, if l [6:50-6:58:30) s n e, if l [6:58:30-7:03:26) s e, if l [7:03:26-7:05] 5 Lower-Bound Travel-Time Estimator In Section 4, we used the Euclidean distance between an intermediate node n and the end node e divided by the maximum speed on the network to estimate the travel time from n to e. Although this estimator is guaranteed to be a lower bound of the actual travel time, it can be highly inaccurate. This will result in an inefficient execution of the IntAllFastestPaths algorithm. In this section, we propose a novel lower-bound travel time estimator, the boundary-node estimator. The boundary-node estimator is based on pre-computation and, in most cases, is tighter than the Euclidean distance divided by the maximum speed estimator. For clarity, we present the idea in terms of distance. And extension to travel time is omitted due to space limitations. To compute the boundary-node distance estimator (1) we partition the space into non-overlaping cells. Nonoverlaping space partinioning has appeared before in the literature, e.g. [2]. A boundary node [9] of a cell is a node directly connected with some other node in a different cell. That is, any path linking a node in a cell C 1 with some node in a different cell C 2 must go through at least two boundary nodes, one in C 1 and one in C 2. (2) For each pair of cells, (C 1, C 2 ), we pre-compute the distance of the shortest path from each boundary node in C 1 to each boundary node in C 2 and store the smallest one among them. This computation can be performed efficiently by collapsing the set of boundary nodes in C 1 into a single start node and the set of boundary nodes in C 2 into a single end node.
8 (3) For each node in a cell, we pre-compute the distance of the shortest path from and to each boundary node and store the smallest one among them. (4) The computation of C 2 b 2 e b 4 b 1 C 1 n b 3 Figure 8. Boundary-node estimator the boundary-node distance estimator is illustrated in Figure 8. Let b 1 be a boundary node in C 1 and b 2 a boundary node in C 2. Let s assume that the distance of the shortest path from b 1 to b 2 (thick poly-line) is smaller than the distance of all other shortest paths from some boundary node in C 1 to some boundary node in C 2. That is, if b 1 is some boundary node in C 1 and b 2 some boundary node in C 2, d(b 1, b 2 ) d(b 1, b 2). Let b 3 be the nearest boundary node from n, and let b 4 be the nearest boundary to e. The boundary-node distance estimator is calculated as: d est (n, e) = d(n, b 3 ) + d(b 1, b 2 ) + d(b 4, e) Theorem 1 The boundary-node estimator is a lower bound of the network distance d(n, e). Proof. Any path from n to e consists of three parts: (i) from n to some boundary node b 1 C 1; (ii) from b 1 to some boundary node b 2 C 2 ; and (iii) from b 2 to e. By the fact that d(n, b 1 ) d(n, b 1 ), d(b 1, b 2 ) d(b 1, b 2 ), and d(b 2, e) d(b 2, e) the theorem holds. 6 Experimental Results In this section we experimentally evaluate the algorithm and the proposed optimizations for both allfp and singlefp Queries. Moreover, we compare the CapeCod model approach to answer the singlefp Query with the Discrete Time model approach. Finally, under the experimental setup described in Table 1, we compare the CapeCod model approach with the approach used by most commercial navigation systems i.e. the speed on a road segment is assumed to be constant and equal to the speed limit. The CapeCode model gives 50% improvement regarding the travel time. This improvement varies depending on the speed on the road network during the rush hours. For instance, if the there is no speed difference between the inbound highways and the local roads during the rush hours then our method saves nothing regarding the travel time. Due to space limitations, we do not present the results of this comparison. 6.1 Experiment Setup Our evaluation is performed using real data for the road network and synthetic data for the CapeCod speed patterns. In particular, our road network is built on a real dataset of 20,461 directed edges and 14,456 nodes, representing all roads in the Suffolk county of Massachusetts. The Suffolk county covers the metropolitan of Boston and therefore, it suffers the rush-hour traffic symptoms. The dataset is extracted from U.S. Census Bureau, 2003 Tiger/Line which classifies the roads into different types, e.g. interstate highways, local rural roads, etc. The nodes in the road network represent the intersections and the start/end of roads. Note that, our solution is mostly meaningful in networks that exhibit traffic congestion, that is networks around metropolitan cities. Countryside roads rarely get congested and this is the main reason we pick the small network of the Suffolk county. On the other hand, our fastest path algorithm can easily scale in larger networks by employing hierarchical network partitioning [9, 7, 8, 16]. In this case, the size of the network partitions can be chosen to be equal to the size of the network explored in our experiments. That will require applying our algorithm few more times (twice at each level of the hierarchy and once at the top level) which will not affect much the performance of our approach. Regarding the CapeCod patterns, we define two daycategories: workday and non-workday, while we distinguish the road segments into (a) inbound highways, (b) outbound highways, (c) local roads outside Boston and (d) local roads in Boston. Based on our unofficial driving experience, we assign realistic driving speed to roads as shown in Table 1. To represent the disk-based road network, we used the connectivity-clustered access method (CCAM) [18] as described in Section 2. In all our experiments, we set the page size to 2048 bytes. All the algorithms are coded in Java, and running on a Dell PC with a 2.66-GHz Pentium 4 processor. 6.2 Measuring the Effects of Optimizations This set of experiments investigates the effect of the proposed optimizations, i.e. the new lower bound estimator. The number of expanded nodes shows the extent to which the search space is pruned and the computational effort that is needed to answer a query. We pick to report the number of expanded nodes instead of the query time, since the former is independent from any programming language and system used. The query time for all the experiments varies between a fraction of a second to a few seconds. For each experiment we pose 100 queries varying the Euclidean distance between the source and the destination nodes. For each query we use the following approaches: (a) the naive
9 Inbound Highways Outbound Highways Local Roads in Boston Local Roads outside Boston Non-workday 65 MPH 65 MPH 40 MPH 40 MPH Workday 20 MPH 7am-10am 30 MPH 4pm-7pm 20 MPH 7am-10am & 4pm-7pm 65 MPH otherwise 65 MPH otherwise 40 MPH otherwise 40 MPH Table 1. The CapeCod pattern schema used. (a) singlefp Query (b) allfp Query Figure 9. The effect of the optimizations varying the Euclidean Distance lower bound estimator (naivelb), i.e. the Euclidean distance divided by the maximum speed estimator; and (b) the boundary node lower bound estimator (bdlb). Figure 9 illustrates the effect of the optimization for both singlefp (a) and allfp Query (b). The query time interval is set to 3 hours (the morning rush hours) while the distance between source and end node varies from 1 to 8 miles. As it can be seen the proposed lower-bound estimator significantly prunes the search space during the network expansion. The effect of the optimizations becomes larger as the the Euclidean distance between the source and the destination node increases. 6.3 Comparison with the Discrete Time Model In the following set of experiments we compare the CapeCod model approach proposed in this paper to answer the singlefp Query (i.e. find the fastest path between a source and a destination node given a query time interval) and the Discrete Time model approach. Recall that in the Discrete Time model the continuous query time interval is discretized into several time instants and a fastest path query is posed for every time instant. The fastest path among all the resulting fastest paths is returned as an answer. For the time instant fastest path query we use the original A* algorithm [15]. As mentioned in Section 3, the discrete time model lacks accuracy on picking the fastest path and therefore on the resulting travel time. The accuracy of the result depends on the degree of the discretization. The more the discrete time instants the better the accuracy and the worse the query time. On the other hand our method is 100% accurate (since a continuous time models is used). For each one of the two models we pose 100 queries. Regarding the discrete time model, each one of the queries runs multiple times for different degree of discretization. The query time interval for all the queries is set to 2 hours during the rush hours (during which the speed changes), while the Euclidean distance between the source and the destination node is about 7 to 8 miles. We compare the travel time and the query time of the two models. In both cases we use the ratio of the two measurements, i.e. Discrete Time model query time divided by CapeCod model travel time and Discrete Time model query time divided by CapeCod model query time respectively. Figure 10(a) compares the travel time of the two approaches while Figure 10(b) compares the query time for four different degrees of discretization. That is, for the discrete time model we pose a query every (i) 1 hour (ii) 10 minutes (iii) 1 minute and (iv) 10 seconds, within the query time interval. Posing a query every 1 hour results in around 1.27 times worse travel time compared to our method while the query time is better than the query time of our method. While the degree of discretization increases, although the travel time given by the discrete model approaches the travel time given by our model, the query time increases exponential. Posing a query every 10 minutes results in 1.21 times worse travel time accuracy while making the discrete time approach 5 times slower than our approach. For the last degree of discretization, i.e. posing a query every 10 seconds, although the discrete model is accurate enough regarding the travel time, the query time is around 200 times worse than our approach. 7 Conclusions In this paper, we addressed the problem of computing fastest paths over road networks with traffic speed patterns. We proposed the CapeCod patterns to capture reallife speed information. Moreover, we proposed and solved two variations of the fastest path query given a leaving (or arrival) time interval. These queries have direct real-life applications. Our solutions to the queries are novel extensions to the A* algorithm. An interesting and novel contribution is the proposal of a new lower-bound estimator. Our algorithms were experimentally evaluated. The experimental results confirmed that our methods are more accurate and more efficient than straightforward approaches (e.g. the discrete time model). GIS systems like MapQuest can be improved by incorporating our ideas.
10 (a) Accuracy (b) Query Time Ratio Figure 10. CapeCod vs. Discrete Time Model. Travel Time and Query Time comparison for different levels of discretization. This paper opens many interesting and practical issues for future work. Most existing work on spatial queries (knn, RNN, closest pairs, clustering, etc.) considers either the Euclidean distance or the shortest network distance. It is interesting to study the impact on these work if we consider the fastest travel time instead. References [1] I. Chabini. Discrete Dynamic Shortest Path Problems in Transportation Applications. Transportation Research Record, 1645: , [2] V. Chakka, A. Everspaugh, and J. Patel. Indexing Large Trajectory Data Sets With SETI. In Biennial Conf. on Innovative Data Systems Research (CIDR), [3] H. D. Chon, D. Agrawal, and A. E. Abbadi. FATES: Finding A Time dependent Shortest path. In Proceedings of the 4th International Conference on Mobile Data Management, pages Springer-Verlag, [4] Y. Huang, N. Jing, and E. Rundensteiner. Spatial Joins Using R-trees: Breadth-First Traversal with Global Optimizations. In VLDB, pages , [5] B. Jiang. I/O-Efficiency of Shortest Path Algorithms: An Analysis. In ICDE, pages 12 19, [6] N. Jing, Y.-W. Huang, and E. A. Rundensteiner. Hierarchical Optimization of Optimal Path Finding for Transportation Applications. In Proc. of Int. Conf. on Information and Knowledge Management (CIKM), pages , [7] N. Jing, Y.-W. Huang, and E. A. Rundensteiner. Hierarchical Encoded Path Views for Path Query Processing: An Optimal Model and Its Performance Evaluation. TKDE, 10(3): , [8] S. Jung and S. Pramanik. HiTi Graph Model of Topographical Roadmaps in Navigation Systems. In ICDE, pages 76 84, [9] F. Kamoun and L. Kleinrock. Hierarchical Routing for Large Networks: Performance Evaluation and Optimization. Computer Networks, 1: , [10] R.-M. Kung, E. N. Hanson, Y. E. Ioannidis, T. K. Sellis, L. D. Shapiro, and M. Stonebraker. Heuristic Search in Data Base Systems. In Expert Database Systems Workshop (EDS), pages , [11] K. Nachtigall. Time depending shortest-path problems with applications to railway networks. European Journal of Operational Research, 83: , [12] A. Orda and R. Rom. Shortest-Path and Minimum Delay Algorithms in Networks with Time-Dependent Edge- Length. Journal of the Association for Computing Machinery (JACM), 37(3): , [13] A. Orda and R. Rom. Minimum Weight Paths in Time- Dependent Networks. Networks: An International Journal, 21, [14] S. Pallottino and M. G. Scutellà. Shortest Path Algorithms in Transportation Models: Classical and Innovative Aspects. In P. Marcotte and S. Nguyen, editors, Equilibrium and Advanced Transportation Modelling, pages Kluwer Academic Publishers, [15] S. Russell and P. Norvig. Artificial Intelligence: A Modern Approach. Prentice-Hall, Englewood Cliffs, NJ, 2nd edition edition, [16] S. Shekhar, A. Fetterer, and B. Goyal. Materialization Trade-Offs in Hierarchical Shortest Path Algorithms. In SSTD, pages , [17] S. Shekhar, A. Kohli, and M. Coyle. Path Computation Algorithms for Advanced Traveller Information System (ATIS). In ICDE, pages 31 39, [18] S. Shekhar and D.-R. Liu. CCAM: A Connectivity- Clustered Access Method for Networks and Network Computations. TKDE, 9(1): , [19] K. Sung, M. Bell, M. Seong, and S. Park. Shortest paths in a network with time-dependent flow speeds. European Journal of Operational Research, 121(1):32 39, [20] J. L. Zhao and A. Zaki. Spatial Data Traversal in Road Map Databases: A Graph Indexing Approach. In Proc. of Int. Conf. on Information and Knowledge Management (CIKM), pages , 1994.
Data Structures for Moving Objects
Data Structures for Moving Objects Pankaj K. Agarwal Department of Computer Science Duke University Geometric Data Structures S: Set of geometric objects Points, segments, polygons Ask several queries
Asking Hard Graph Questions. Paul Burkhardt. February 3, 2014
Beyond Watson: Predictive Analytics and Big Data U.S. National Security Agency Research Directorate - R6 Technical Report February 3, 2014 300 years before Watson there was Euler! The first (Jeopardy!)
A hierarchical multicriteria routing model with traffic splitting for MPLS networks
A hierarchical multicriteria routing model with traffic splitting for MPLS networks João Clímaco, José Craveirinha, Marta Pascoal jclimaco@inesccpt, jcrav@deecucpt, marta@matucpt University of Coimbra
Routing in packet-switching networks
Routing in packet-switching networks Circuit switching vs. Packet switching Most of WANs based on circuit or packet switching Circuit switching designed for voice Resources dedicated to a particular call
Incremental Routing Algorithms For Dynamic Transportation Networks
UCGE Reports Number 20238 Department of Geomatics Engineering Incremental Routing Algorithms For Dynamic Transportation Networks (URL: http://www.geomatics.ucalgary.ca/research/publications/gradtheses.html)
The Trip Scheduling Problem
The Trip Scheduling Problem Claudia Archetti Department of Quantitative Methods, University of Brescia Contrada Santa Chiara 50, 25122 Brescia, Italy Martin Savelsbergh School of Industrial and Systems
Scaling Spatial Alarm Services on Road Networks
Scaling Spatial Alarm Services on Road Networks Kisung Lee, Ling Liu, Shicong Meng, Balaji Palanisamy DiSL, College of Computing, Georgia Institute of Technology, Atlanta, USA {kisung.lee, lingliu, smeng,
Path Selection Methods for Localized Quality of Service Routing
Path Selection Methods for Localized Quality of Service Routing Xin Yuan and Arif Saifee Department of Computer Science, Florida State University, Tallahassee, FL Abstract Localized Quality of Service
Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows
TECHNISCHE UNIVERSITEIT EINDHOVEN Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows Lloyd A. Fasting May 2014 Supervisors: dr. M. Firat dr.ir. M.A.A. Boon J. van Twist MSc. Contents
Broadband Networks. Prof. Dr. Abhay Karandikar. Electrical Engineering Department. Indian Institute of Technology, Bombay. Lecture - 29.
Broadband Networks Prof. Dr. Abhay Karandikar Electrical Engineering Department Indian Institute of Technology, Bombay Lecture - 29 Voice over IP So, today we will discuss about voice over IP and internet
Approximation Algorithms
Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms
Cpt S 223. School of EECS, WSU
The Shortest Path Problem 1 Shortest-Path Algorithms Find the shortest path from point A to point B Shortest in time, distance, cost, Numerous applications Map navigation Flight itineraries Circuit wiring
6.852: Distributed Algorithms Fall, 2009. Class 2
.8: Distributed Algorithms Fall, 009 Class Today s plan Leader election in a synchronous ring: Lower bound for comparison-based algorithms. Basic computation in general synchronous networks: Leader election
2.3 Convex Constrained Optimization Problems
42 CHAPTER 2. FUNDAMENTAL CONCEPTS IN CONVEX OPTIMIZATION Theorem 15 Let f : R n R and h : R R. Consider g(x) = h(f(x)) for all x R n. The function g is convex if either of the following two conditions
Vector storage and access; algorithms in GIS. This is lecture 6
Vector storage and access; algorithms in GIS This is lecture 6 Vector data storage and access Vectors are built from points, line and areas. (x,y) Surface: (x,y,z) Vector data access Access to vector
An Optimization Approach for Cooperative Communication in Ad Hoc Networks
An Optimization Approach for Cooperative Communication in Ad Hoc Networks Carlos A.S. Oliveira and Panos M. Pardalos University of Florida Abstract. Mobile ad hoc networks (MANETs) are a useful organizational
A Comparison of General Approaches to Multiprocessor Scheduling
A Comparison of General Approaches to Multiprocessor Scheduling Jing-Chiou Liou AT&T Laboratories Middletown, NJ 0778, USA [email protected] Michael A. Palis Department of Computer Science Rutgers University
Chapter 15: Dynamic Programming
Chapter 15: Dynamic Programming Dynamic programming is a general approach to making a sequence of interrelated decisions in an optimum way. While we can describe the general characteristics, the details
KEYWORD SEARCH OVER PROBABILISTIC RDF GRAPHS
ABSTRACT KEYWORD SEARCH OVER PROBABILISTIC RDF GRAPHS In many real applications, RDF (Resource Description Framework) has been widely used as a W3C standard to describe data in the Semantic Web. In practice,
Indexing the Trajectories of Moving Objects in Networks
Indexing the Trajectories of Moving Objects in Networks Victor Teixeira de Almeida Ralf Hartmut Güting Praktische Informatik IV Fernuniversität Hagen, D-5884 Hagen, Germany {victor.almeida, rhg}@fernuni-hagen.de
Mining Mobile Group Patterns: A Trajectory-Based Approach
Mining Mobile Group Patterns: A Trajectory-Based Approach San-Yih Hwang, Ying-Han Liu, Jeng-Kuen Chiu, and Ee-Peng Lim Department of Information Management National Sun Yat-Sen University, Kaohsiung, Taiwan
BRAESS-LIKE PARADOXES FOR NON-COOPERATIVE DYNAMIC LOAD BALANCING IN DISTRIBUTED COMPUTER SYSTEMS
GESJ: Computer Science and Telecommunications 21 No.3(26) BRAESS-LIKE PARADOXES FOR NON-COOPERATIVE DYNAMIC LOAD BALANCING IN DISTRIBUTED COMPUTER SYSTEMS Said Fathy El-Zoghdy Department of Computer Science,
On the k-path cover problem for cacti
On the k-path cover problem for cacti Zemin Jin and Xueliang Li Center for Combinatorics and LPMC Nankai University Tianjin 300071, P.R. China [email protected], [email protected] Abstract In this paper we
AI: A Modern Approach, Chpts. 3-4 Russell and Norvig
AI: A Modern Approach, Chpts. 3-4 Russell and Norvig Sequential Decision Making in Robotics CS 599 Geoffrey Hollinger and Gaurav Sukhatme (Some slide content from Stuart Russell and HweeTou Ng) Spring,
root node level: internal node edge leaf node CS@VT Data Structures & Algorithms 2000-2009 McQuain
inary Trees 1 A binary tree is either empty, or it consists of a node called the root together with two binary trees called the left subtree and the right subtree of the root, which are disjoint from each
Determination of the normalization level of database schemas through equivalence classes of attributes
Computer Science Journal of Moldova, vol.17, no.2(50), 2009 Determination of the normalization level of database schemas through equivalence classes of attributes Cotelea Vitalie Abstract In this paper,
How To Balance In A Distributed System
6 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 11, NO. 1, JANUARY 2000 How Useful Is Old Information? Michael Mitzenmacher AbstractÐWe consider the problem of load balancing in dynamic distributed
Functional Optimization Models for Active Queue Management
Functional Optimization Models for Active Queue Management Yixin Chen Department of Computer Science and Engineering Washington University in St Louis 1 Brookings Drive St Louis, MO 63130, USA [email protected]
Comparison of Non-linear Dimensionality Reduction Techniques for Classification with Gene Expression Microarray Data
CMPE 59H Comparison of Non-linear Dimensionality Reduction Techniques for Classification with Gene Expression Microarray Data Term Project Report Fatma Güney, Kübra Kalkan 1/15/2013 Keywords: Non-linear
A SOCIAL NETWORK ANALYSIS APPROACH TO ANALYZE ROAD NETWORKS INTRODUCTION
A SOCIAL NETWORK ANALYSIS APPROACH TO ANALYZE ROAD NETWORKS Kyoungjin Park Alper Yilmaz Photogrammetric and Computer Vision Lab Ohio State University [email protected] [email protected] ABSTRACT Depending
Oracle Database 10g: Building GIS Applications Using the Oracle Spatial Network Data Model. An Oracle Technical White Paper May 2005
Oracle Database 10g: Building GIS Applications Using the Oracle Spatial Network Data Model An Oracle Technical White Paper May 2005 Building GIS Applications Using the Oracle Spatial Network Data Model
A Tool for Generating Partition Schedules of Multiprocessor Systems
A Tool for Generating Partition Schedules of Multiprocessor Systems Hans-Joachim Goltz and Norbert Pieth Fraunhofer FIRST, Berlin, Germany {hans-joachim.goltz,nobert.pieth}@first.fraunhofer.de Abstract.
Offline sorting buffers on Line
Offline sorting buffers on Line Rohit Khandekar 1 and Vinayaka Pandit 2 1 University of Waterloo, ON, Canada. email: [email protected] 2 IBM India Research Lab, New Delhi. email: [email protected]
Cost Models for Vehicle Routing Problems. 8850 Stanford Boulevard, Suite 260 R. H. Smith School of Business
0-7695-1435-9/02 $17.00 (c) 2002 IEEE 1 Cost Models for Vehicle Routing Problems John Sniezek Lawerence Bodin RouteSmart Technologies Decision and Information Technologies 8850 Stanford Boulevard, Suite
Social Media Mining. Data Mining Essentials
Introduction Data production rate has been increased dramatically (Big Data) and we are able store much more data than before E.g., purchase data, social media data, mobile phone data Businesses and customers
Statistical Forecasting of High-Way Traffic Jam at a Bottleneck
Metodološki zvezki, Vol. 9, No. 1, 2012, 81-93 Statistical Forecasting of High-Way Traffic Jam at a Bottleneck Igor Grabec and Franc Švegl 1 Abstract Maintenance works on high-ways usually require installation
Fairness in Routing and Load Balancing
Fairness in Routing and Load Balancing Jon Kleinberg Yuval Rabani Éva Tardos Abstract We consider the issue of network routing subject to explicit fairness conditions. The optimization of fairness criteria
5.1 Bipartite Matching
CS787: Advanced Algorithms Lecture 5: Applications of Network Flow In the last lecture, we looked at the problem of finding the maximum flow in a graph, and how it can be efficiently solved using the Ford-Fulkerson
8.1 Min Degree Spanning Tree
CS880: Approximations Algorithms Scribe: Siddharth Barman Lecturer: Shuchi Chawla Topic: Min Degree Spanning Tree Date: 02/15/07 In this lecture we give a local search based algorithm for the Min Degree
Shareability and Locality Aware Scheduling Algorithm in Hadoop for Mobile Cloud Computing
Shareability and Locality Aware Scheduling Algorithm in Hadoop for Mobile Cloud Computing Hsin-Wen Wei 1,2, Che-Wei Hsu 2, Tin-Yu Wu 3, Wei-Tsong Lee 1 1 Department of Electrical Engineering, Tamkang University
Computing Many-to-Many Shortest Paths Using Highway Hierarchies
Computing Many-to-Many Shortest Paths Using Highway Hierarchies Sebastian Knopp Peter Sanders Dominik Schultes Frank Schulz Dorothea Wagner Abstract We present a fast algorithm for computing all shortest
International journal of Engineering Research-Online A Peer Reviewed International Journal Articles available online http://www.ijoer.
RESEARCH ARTICLE ISSN: 2321-7758 GLOBAL LOAD DISTRIBUTION USING SKIP GRAPH, BATON AND CHORD J.K.JEEVITHA, B.KARTHIKA* Information Technology,PSNA College of Engineering & Technology, Dindigul, India Article
How to Design the Shortest Path Between Two Keyword Algorithms
Multi-Approximate-Keyword Routing in GIS Data Bin Yao Mingwang Tang Feifei Li [email protected], {tang,lifeifei}@cs.utah.edu Department of Computer Science and Engineering, Shanghai JiaoTong University
Load Balancing and Switch Scheduling
EE384Y Project Final Report Load Balancing and Switch Scheduling Xiangheng Liu Department of Electrical Engineering Stanford University, Stanford CA 94305 Email: [email protected] Abstract Load
The LCA Problem Revisited
The LA Problem Revisited Michael A. Bender Martín Farach-olton SUNY Stony Brook Rutgers University May 16, 2000 Abstract We present a very simple algorithm for the Least ommon Ancestor problem. We thus
Chapter 20: Data Analysis
Chapter 20: Data Analysis Database System Concepts, 6 th Ed. See www.db-book.com for conditions on re-use Chapter 20: Data Analysis Decision Support Systems Data Warehousing Data Mining Classification
Risk Mitigation Strategies for Critical Infrastructures Based on Graph Centrality Analysis
Risk Mitigation Strategies for Critical Infrastructures Based on Graph Centrality Analysis George Stergiopoulos a, Panayiotis Kotzanikolaou b, Marianthi Theocharidou c, Dimitris Gritzalis a, a Information
Lecture 10: Regression Trees
Lecture 10: Regression Trees 36-350: Data Mining October 11, 2006 Reading: Textbook, sections 5.2 and 10.5. The next three lectures are going to be about a particular kind of nonlinear predictive model,
QoSIP: A QoS Aware IP Routing Protocol for Multimedia Data
QoSIP: A QoS Aware IP Routing Protocol for Multimedia Data Md. Golam Shagadul Amin Talukder and Al-Mukaddim Khan Pathan* Department of Computer Science and Engineering, Metropolitan University, Sylhet,
KEYWORD SEARCH IN RELATIONAL DATABASES
KEYWORD SEARCH IN RELATIONAL DATABASES N.Divya Bharathi 1 1 PG Scholar, Department of Computer Science and Engineering, ABSTRACT Adhiyamaan College of Engineering, Hosur, (India). Data mining refers to
International Journal of Advance Research in Computer Science and Management Studies
Volume 3, Issue 11, November 2015 ISSN: 2321 7782 (Online) International Journal of Advance Research in Computer Science and Management Studies Research Article / Survey Paper / Case Study Available online
Router Group Monitoring: Making Traffic Trajectory Error Detection More Efficient
Router Group Monitoring: Making Traffic Trajectory Error Detection More Efficient Bo Zhang Guohui Wang Angela Yun Zhu T. S. Eugene Ng Department of Computer Science Rice University Abstract Detecting errors
Efficient Algorithms for Masking and Finding Quasi-Identifiers
Efficient Algorithms for Masking and Finding Quasi-Identifiers Rajeev Motwani Stanford University [email protected] Ying Xu Stanford University [email protected] ABSTRACT A quasi-identifier refers
MapReduce and Distributed Data Analysis. Sergei Vassilvitskii Google Research
MapReduce and Distributed Data Analysis Google Research 1 Dealing With Massive Data 2 2 Dealing With Massive Data Polynomial Memory Sublinear RAM Sketches External Memory Property Testing 3 3 Dealing With
Spatial Data Warehouse and Mining. Rajiv Gandhi
Spatial Data Warehouse and Mining Rajiv Gandhi Roll Number 05331002 Centre of Studies in Resource Engineering Indian Institute of Technology Bombay Powai, Mumbai -400076 India. As part of the first stage
Load Balancing by MPLS in Differentiated Services Networks
Load Balancing by MPLS in Differentiated Services Networks Riikka Susitaival, Jorma Virtamo, and Samuli Aalto Networking Laboratory, Helsinki University of Technology P.O.Box 3000, FIN-02015 HUT, Finland
R-trees. R-Trees: A Dynamic Index Structure For Spatial Searching. R-Tree. Invariants
R-Trees: A Dynamic Index Structure For Spatial Searching A. Guttman R-trees Generalization of B+-trees to higher dimensions Disk-based index structure Occupancy guarantee Multiple search paths Insertions
Oracle8i Spatial: Experiences with Extensible Databases
Oracle8i Spatial: Experiences with Extensible Databases Siva Ravada and Jayant Sharma Spatial Products Division Oracle Corporation One Oracle Drive Nashua NH-03062 {sravada,jsharma}@us.oracle.com 1 Introduction
On Characterizing BGP Routing Table Growth Tian Bu, Lixin Gao, and Don Towsley University of Massachusetts, Amherst, MA 01003
On Characterizing BGP Routing Table Growth Tian Bu, Lixin Gao, and Don Towsley University of Massachusetts, Amherst, MA 0003 Abstract The sizes of the BGP routing tables have increased by an order of magnitude
CSE 326, Data Structures. Sample Final Exam. Problem Max Points Score 1 14 (2x7) 2 18 (3x6) 3 4 4 7 5 9 6 16 7 8 8 4 9 8 10 4 Total 92.
Name: Email ID: CSE 326, Data Structures Section: Sample Final Exam Instructions: The exam is closed book, closed notes. Unless otherwise stated, N denotes the number of elements in the data structure
InfiniteGraph: The Distributed Graph Database
A Performance and Distributed Performance Benchmark of InfiniteGraph and a Leading Open Source Graph Database Using Synthetic Data Objectivity, Inc. 640 West California Ave. Suite 240 Sunnyvale, CA 94086
Online Scheduling for Cloud Computing and Different Service Levels
2012 IEEE 201226th IEEE International 26th International Parallel Parallel and Distributed and Distributed Processing Processing Symposium Symposium Workshops Workshops & PhD Forum Online Scheduling for
IN THIS PAPER, we study the delay and capacity trade-offs
IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 15, NO. 5, OCTOBER 2007 981 Delay and Capacity Trade-Offs in Mobile Ad Hoc Networks: A Global Perspective Gaurav Sharma, Ravi Mazumdar, Fellow, IEEE, and Ness
A Partition-Based Efficient Algorithm for Large Scale. Multiple-Strings Matching
A Partition-Based Efficient Algorithm for Large Scale Multiple-Strings Matching Ping Liu Jianlong Tan, Yanbing Liu Software Division, Institute of Computing Technology, Chinese Academy of Sciences, Beijing,
How To Provide Qos Based Routing In The Internet
CHAPTER 2 QoS ROUTING AND ITS ROLE IN QOS PARADIGM 22 QoS ROUTING AND ITS ROLE IN QOS PARADIGM 2.1 INTRODUCTION As the main emphasis of the present research work is on achieving QoS in routing, hence this
FUZZY CLUSTERING ANALYSIS OF DATA MINING: APPLICATION TO AN ACCIDENT MINING SYSTEM
International Journal of Innovative Computing, Information and Control ICIC International c 0 ISSN 34-48 Volume 8, Number 8, August 0 pp. 4 FUZZY CLUSTERING ANALYSIS OF DATA MINING: APPLICATION TO AN ACCIDENT
Applied Algorithm Design Lecture 5
Applied Algorithm Design Lecture 5 Pietro Michiardi Eurecom Pietro Michiardi (Eurecom) Applied Algorithm Design Lecture 5 1 / 86 Approximation Algorithms Pietro Michiardi (Eurecom) Applied Algorithm Design
CMSC 858T: Randomized Algorithms Spring 2003 Handout 8: The Local Lemma
CMSC 858T: Randomized Algorithms Spring 2003 Handout 8: The Local Lemma Please Note: The references at the end are given for extra reading if you are interested in exploring these ideas further. You are
CHAPTER 3 CALL CENTER QUEUING MODEL WITH LOGNORMAL SERVICE TIME DISTRIBUTION
31 CHAPTER 3 CALL CENTER QUEUING MODEL WITH LOGNORMAL SERVICE TIME DISTRIBUTION 3.1 INTRODUCTION In this chapter, construction of queuing model with non-exponential service time distribution, performance
Efficiently Identifying Inclusion Dependencies in RDBMS
Efficiently Identifying Inclusion Dependencies in RDBMS Jana Bauckmann Department for Computer Science, Humboldt-Universität zu Berlin Rudower Chaussee 25, 12489 Berlin, Germany [email protected]
Effective Data Mining Using Neural Networks
IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, VOL. 8, NO. 6, DECEMBER 1996 957 Effective Data Mining Using Neural Networks Hongjun Lu, Member, IEEE Computer Society, Rudy Setiono, and Huan Liu,
Measuring the Performance of an Agent
25 Measuring the Performance of an Agent The rational agent that we are aiming at should be successful in the task it is performing To assess the success we need to have a performance measure What is rational
VEHICLE ROUTING PROBLEM
VEHICLE ROUTING PROBLEM Readings: E&M 0 Topics: versus TSP Solution methods Decision support systems for Relationship between TSP and Vehicle routing problem () is similar to the Traveling salesman problem
A Road Timetable TM to aid vehicle routing and scheduling
Computers & Operations Research 33 (2006) 3508 3519 www.elsevier.com/locate/cor A Road Timetable TM to aid vehicle routing and scheduling Richard Eglese a,, Will Maden a, Alan Slater b a Department of
Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams
Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams André Ciré University of Toronto John Hooker Carnegie Mellon University INFORMS 2014 Home Health Care Home health care delivery
Load Balancing. Load Balancing 1 / 24
Load Balancing Backtracking, branch & bound and alpha-beta pruning: how to assign work to idle processes without much communication? Additionally for alpha-beta pruning: implementing the young-brothers-wait
EFFICIENT EXTERNAL SORTING ON FLASH MEMORY EMBEDDED DEVICES
ABSTRACT EFFICIENT EXTERNAL SORTING ON FLASH MEMORY EMBEDDED DEVICES Tyler Cossentine and Ramon Lawrence Department of Computer Science, University of British Columbia Okanagan Kelowna, BC, Canada [email protected]
INTERNATIONAL JOURNAL OF COMPUTER ENGINEERING & TECHNOLOGY (IJCET)
INTERNATIONAL JOURNAL OF COMPUTER ENGINEERING & TECHNOLOGY (IJCET) International Journal of Computer Engineering and Technology (IJCET), ISSN 0976 6367(Print), ISSN 0976 6367(Print) ISSN 0976 6375(Online)
Cloud Storage and Online Bin Packing
Cloud Storage and Online Bin Packing Doina Bein, Wolfgang Bein, and Swathi Venigella Abstract We study the problem of allocating memory of servers in a data center based on online requests for storage.
Use of a Web-Based GIS for Real-Time Traffic Information Fusion and Presentation over the Internet
Use of a Web-Based GIS for Real-Time Traffic Information Fusion and Presentation over the Internet SUMMARY Dimitris Kotzinos 1, Poulicos Prastacos 2 1 Department of Computer Science, University of Crete
Indexing Spatio-Temporal archive As a Preprocessing Alsuccession
The VLDB Journal manuscript No. (will be inserted by the editor) Indexing Spatio-temporal Archives Marios Hadjieleftheriou 1, George Kollios 2, Vassilis J. Tsotras 1, Dimitrios Gunopulos 1 1 Computer Science
The Classical Architecture. Storage 1 / 36
1 / 36 The Problem Application Data? Filesystem Logical Drive Physical Drive 2 / 36 Requirements There are different classes of requirements: Data Independence application is shielded from physical storage
Principles of Data Mining by Hand&Mannila&Smyth
Principles of Data Mining by Hand&Mannila&Smyth Slides for Textbook Ari Visa,, Institute of Signal Processing Tampere University of Technology October 4, 2010 Data Mining: Concepts and Techniques 1 Differences
On the Traffic Capacity of Cellular Data Networks. 1 Introduction. T. Bonald 1,2, A. Proutière 1,2
On the Traffic Capacity of Cellular Data Networks T. Bonald 1,2, A. Proutière 1,2 1 France Telecom Division R&D, 38-40 rue du Général Leclerc, 92794 Issy-les-Moulineaux, France {thomas.bonald, alexandre.proutiere}@francetelecom.com
Support Vector Machines with Clustering for Training with Very Large Datasets
Support Vector Machines with Clustering for Training with Very Large Datasets Theodoros Evgeniou Technology Management INSEAD Bd de Constance, Fontainebleau 77300, France [email protected] Massimiliano
Efficient Iceberg Query Evaluation for Structured Data using Bitmap Indices
Proc. of Int. Conf. on Advances in Computer Science, AETACS Efficient Iceberg Query Evaluation for Structured Data using Bitmap Indices Ms.Archana G.Narawade a, Mrs.Vaishali Kolhe b a PG student, D.Y.Patil
CROSS LAYER BASED MULTIPATH ROUTING FOR LOAD BALANCING
CHAPTER 6 CROSS LAYER BASED MULTIPATH ROUTING FOR LOAD BALANCING 6.1 INTRODUCTION The technical challenges in WMNs are load balancing, optimal routing, fairness, network auto-configuration and mobility
Introduction to LAN/WAN. Network Layer
Introduction to LAN/WAN Network Layer Topics Introduction (5-5.1) Routing (5.2) (The core) Internetworking (5.5) Congestion Control (5.3) Network Layer Design Isues Store-and-Forward Packet Switching Services
Clustering and scheduling maintenance tasks over time
Clustering and scheduling maintenance tasks over time Per Kreuger 2008-04-29 SICS Technical Report T2008:09 Abstract We report results on a maintenance scheduling problem. The problem consists of allocating
