University Halle-Wittenberg Institute of Computer Science

Size: px
Start display at page:

Download "University Halle-Wittenberg Institute of Computer Science"

Transcription

1

2 University Halle-Wittenberg Institute of Computer Science Subpath-Optimality of Multi-Criteria Shortest Paths in Time- and Event-Dependent Networks Annabell Berger, Matthias Müller-Hannemann Technical Report 2009/1

3

4 University Halle-Wittenberg Institute of Computer Science Subpath-Optimality of Multi-Criteria Shortest Paths in Time- and Event-Dependent Networks Annabell Berger, Matthias Müller-Hannemann may 2009 Technical Report 2009/1

5 Institute of Computer Science Faculty of Natural Sciences III Martin-Luther-University Halle-Wittenberg D Halle, Germany WWW: All rights reserved. L A T E X-Style: designed by Winfried Geis, Thomas Merkle, University Stuttgart adapted by Paul Molitor, Halle Permit granted by University Stuttgart [25/05/2007]

6 Subpath-Optimality of Multi-Criteria Shortest Paths in Time- and Event-Dependent Networks Annabell Berger, Matthias Müller-Hannemann We consider the problem of finding all Pareto-optimal (s, t)-paths in discrete time-dependent graphs with respect to several criteria. Label setting or label correcting algorithms can be used to compute all Pareto-optima in static multi-dimensional weighted digraphs. These are generalizations of the wellknown algorithms for the single criterion shortest paths problem. Their correctness is based on the subpath-optimality. Unfortunately, this property vanishes in the classical notions of time-dependent networks. Therefore, Kostreva et al. (1993), Getachew et al. (2000) and Hamacher et al. (2006) solved the multi-criteria time-dependent problem only for special cases. We give some new definitions for discrete time-dependent graphs which differ in some aspects from previous works. These new notions allow us to establish the subpath-optimality in discrete time-dependent graphs. Our concept can be interpreted as an implicit time expansion. Furthermore, we extend this concept to event-dependent graphs. This is useful for many practical applications in which weights of paths do not only depend on time but also on other attributes. 1 Introduction This note considers the problem of finding optimal discrete time-dependent (s, t)-paths with respect to several criteria. An (s, t)-path is called Pareto-optimal if no other (s, t)-path is better or equal in each component and strictly better in one component. In the classical setting, time-dependent digraphs consist of edges whose multi-dimensional non-negative weights depend on time. The earliest start time is the earliest permitted time point to start in s. In this model waiting times may be integrated at vertices. This is the time which has to waited when reaching a node before a further adjacent arc can be traversed. We call this the discrete time-dependent (s, t)-pareto-path problem with earliest start time τ 0. Many real world problems depend on the time of day or seasons. Applications range from route planning and logistics to biology. In individual route planning, for example, the path to work by car with smallest travel time during peak hours may require detours while the travel time in the evening hours might be smaller when using main roads. In train networks the current time determines the type of a train which is available for departing to a certain destination. Hence, different travel times exist for a trip between two neighbored stations depending on the point of time. Passengers want to travel quickly, cheaply, with only a small number of transfers and high probability to arrive at a destination without missing a planned train. All these criteria depend on the type of trains and the waiting times in transfer

7 A. Berger and M. Müller-Hannemann: Subpath-Optimality 2 stations which are provided from a timetable. Thus, paths can depend on more attributes than just on time. To give another example, in food webs some organisms exist only for a part of a year because birds change their habitats or some mammals hibernate. The metabolism of a huge amount of organisms depends on the temperature and therefore on the time of year. Hence, the existence of shortest paths that represent food chains with smallest loss of energy depend on time. Static Subpath Optimality The discrete time-dependent (s, t)-pareto-path problem is related to the well-studied shortest path problem in a positively weighted digraph. Several well-known algorithms like Dijkstra s algorithm [Dij59], the Bellman-Ford-Moore algorithm [Bel58, For56, Moo59] or the Floyd- Warshall algorithm [Flo62, War62] are used to determine optimal solutions for the latter problem. All of these algorithms construct new paths by concatenating shortest paths and incident edges or shortest paths with shortest paths. The correctness of these algorithms is based on the substructure property also known as Bellman s optimality principle: Each subpath of a shortest path is a shortest path. This property can also be found in a multi-criteria static scenario where the problem can be solved by label-setting or labelcorrecting algorithms. They generalize the above named algorithms. A survey is provided in [EG02]. A multiple label version of Dijkstra s algorithm is given by [Mar84], dynamic programming is used by [CM85] and a label correcting algorithm with multiple labeling appeared in [BSS89]. The correctness of all these approaches is again based on the substructure property: Each subpath of a Pareto-optimal path is Pareto-optimal. The necessity of this condition is obvious. Review of Previous Work If we want to use these types of algorithms for finding Pareto-optimal paths in a time-dependent graph we also need a substructure property. Since the Sixties the literature has been considering the problem of finding time-dependent (s, t)-paths that start at time τ 0 in s with minimum travel time. Multiple denotations are used to specify this problem. Halsey and Cook [CH66] consider the problem in view of dynamic programming and reestablish the principle of optimality from Bellman [Bel57] to compute shortest routes with dynamic programming. The subpath optimality for paths which start in a vertex v and end in destination t is hidden in their formulation. They already use the property that only subpaths with the same start time τ at a vertex v (which end in destination t) may be compared to decide optimality. Dreyfus [Dre69] gives a short overview how to use Dijkstra s approach to solve the problem of finding a shortest (s, t)-travel time with start time τ. Hidden in his formulation is the fact that he only considers shortest (s, t)-distances which consist of shortest (s, i)-distances. Hence, the correctness of Dijkstra s algorithm is fulfilled. Orda and Rom [OR90, OR91] call time-dependent paths traversal paths and the travel time of such paths delay of traversal paths. They solve the substructure problem in restricting the set of all shortest time-dependent (s, t)-paths at earliest start

8 A. Berger and M. Müller-Hannemann: Subpath-Optimality 3 time τ 0 to a subset of paths which possess the property that each (s, i)-subpath is shortest. In the set of all shortest time-dependent (s, t)-paths at start time τ 0 such a path always exist. Note, that the problem of finding one optimal solution is solved in such a way but one cannot find all shortest paths between two vertices. A multitude of papers consider different variants of time-dependent shortest path problems, see for example [ZM93, AOSS03, BJ04, Del08, DMS08]. To the best of our knowledge there exists only three published papers which are concentrating on the substructure property problem in multi-criteria time-dependent paths. All three define the problem for finding Pareto-optimal paths for special cases and find particular solutions. Kostreva and Wiecek find in [KW93] that all (s, i)-subpaths of a Pareto-optimal (s, t)-path are Pareto-optimal under nondecreasing arc cost assumptions and FIFO-property. That means they assume that a weight for an arc cannot decrease for later time points. For many applications such assumptions are not valid. Consider, for example, the travel time for a train between two stations without intermediate stops in a train network. This time can vary over a time period. Furthermore, Kostreva and Wiecek find the substructure property in backward direction. That means that each (i, t)-subpath of a Pareto-optimal (s, t)-path is Pareto-optimal in the set of all (i, t)-paths which start at the same time τ at i. Getachew, Kostreva and Lancaster [GKL00] generalize these results by replacing the non-decreasing arc-cost assumption by lower and upper bounds on the cost. On the set of arcs they determine a multi-dimensional weight-function which consists in each component of the minimum weight of all time-dependent weights on each arc. In each step of their query algorithm (forward dynamic programming) the set of time-dependent subpaths is partitioned into two sets of vertices. They can show that each subpath of a Pareto-optimal path is Pareto-optimal in one of these sets. This interesting approach generalizes static algorithms in which one of the two partitions is the empty set. Unfortunately, this approach ignores waiting times at vertices. That means each arcs of a path is traversed directly after traversing the previous arc. Hamacher, Ruzika and Tjandrab find in [HRT06] that all (i, t)-subpaths of a Pareto-optimal (s, t)-path with respect to two criteria are Pareto-optimal. Furthermore, they distinguish between four different problems with constant or variables departure times in s or arrival times in t. For all four cases, they give algorithms which are based on backward dynamic programming. Searching paths from destination t to origin s is usually not directly applicable in time-dependent digraphs because one does not know in advance the relevant specific arrival times at the destination. Our Contribution We overcome all these problems in using modified definitions for paths in timedependent digraphs. Furthermore, we generalize the problem to event-dependent digraphs. The first difference is that we use event-based definitions for paths where time-based definitions occur only as a

9 A. Berger and M. Müller-Hannemann: Subpath-Optimality 4 special case. That means that we consider concrete events at their concrete time points and not only the event time. A departure event can stand for one departure time and its unique corresponding next vertex which is arrived. An arrival event stands for one arrival time and its unique corresponding previous vertex which departed to this vertex. For example, a departure event in a train network means that a train departs at a departure time to the next station without stops. A further train which departs at the same time at the same station to another station corresponds to a different departure event. Note that our event-based view does not change the space to represent a discrete time-dependent problem since every individual event must be encoded anyway in some form. While periodic timetables may allow a more compact representation, non-periodic timetables as well as on-line timetables, which are updated by dynamic delays, have to represent each event individually. Comparing subpaths makes only sense when both start and end with the same events. Thus, our crucial idea is to restrict the comparison of subpaths to those with matching events at the start and at the end whenever we want to determine the Pareto-optimality of subpaths for an (s, t)-query. This modification is enough to present a very simple theorem which provides us the substructure property for multi-criteria time-dependent paths, and with our generalization also for event-dependent paths. Using this theorem we immediately obtain a generalization of the well-known labeling algorithms for determining Pareto-optimal paths in event-dependent digraphs without any further assumptions. Our approach has several advantages in comparison to time-expanded models which are frequently used to model such problems [?]: Time-expanded graph models build explicitly a graph where each event is represented as a vertex. In contrast, our approach does not require such an explicit representation. We use an implicit representation where event-dependent arcs and vertices can be computed on-the-fly as needed. Our approach is very flexible. We can add additional optimization criteria without a need to change the underlying graph model. Likewise, we can easily specialize our approach to specific applications. For example, if in a certain scenario it suffices to consider so-called greedy paths (i.e. paths which always take the first possible departure on each arc), we obtain more efficient versions of the search algorithm. Overview In Section 2, we present and motivate our new definition for time-dependent paths. We prove the substructure property of time-dependent paths in subsets of all time-dependent subpaths. Afterwards, in Section 3, we extend our approach to so-called event-dependent paths and present a basic version of a label setting algorithm which makes use of the proven substructure property of event-dependent paths.

10 A. Berger and M. Müller-Hannemann: Subpath-Optimality 5 2 The Time-Dependent Pareto-Optimal Path Problem In this section, we give a formal definition of the problem. We first present the classical model and discuss its limitations. Afterwards, we present our new model and establish the subpath optimality. Let G = (V, A) be a digraph and T N. In the classical model, one assigns to each arc a = (v, u) A and departure time τ T in v a travel time ttime(a, τ) R + which defines the time period needed to traverse arc a. Waiting in any vertex is described by wait : V T R + and can be limited to a minimum waiting time minwait(v, τ) and maximum waiting time maxwait(v, τ) in v V at time τ T. A timedependent path P st (τ 0 ) = ((v 0, τ 0, τ 0),, (v k, τ k, τ k )) is a sequence of 3-tuples (v i, τ i, τ i ), each consisting of a vertex and a time pair, from vertex v 0 =: s to v k =: t with earliest start time start s (time) := τ 0, τ i+1 = τ i + ttime((v i, v i+1 ), τ i ) and τ i = τ i + wait(v i, τ i ) [HRT06]. Furthermore, we assign to each arc a i A and departure time τ a weight function w(a, τ) R k +, which represents vector-valued costs in the objective function. One component of w can carry the travel time ttime but this is not required. Moreover, we map to each vertex v V and departure time τ the wait cost function wwait(v, τ) R k + whose components can consist of the waiting time, be constant zero, or include further waiting costs. Hence, the weight of a time-dependent path P st (τ 0 ) is the sum of the weights of its arcs (v i, v i+1 ) at time τ i plus the sum of the wait cost wwait(v i, τ). Now one can formulate the problem of finding all optimal time-dependent paths P from origin s to destination t at earliest start time start s (time) := τ 0. We use the concept of Pareto-optimality to decide the optimality of a path. A time-dependent path P st (τ) is called Pareto-optimal if there exists no other path P st(τ) which is equal or better in each component of its weight and better in at least one component. To compute such solutions with a Dijkstra-like label correcting algorithms a substructure property is required. That means the correctness of such algorithms is based on the property that each subpath of a Pareto-optimal time-dependent path is Pareto-optimal, too. This property seems to be broken. Consider the following example. Example 2.1. We consider an example with two optimization criteria. In the digraph shown in Figure 1, there exist two time-dependent paths from vertex 1 to vertex 4 at earliest start time start 1 (time) := 1 if we respect the restriction on waiting times at vertex 3. With respect to the weights on these arcs the lefthand-side path ( ) dominates the right-hand-side path (1 3 4). However, the right-hand-side subpath from 1 to 3 dominates the left-hand-side subpath from 1 to 3. So the left-hand-side Pareto-optimal path has a subpath which is not Pareto-optimal. On the other hand Hamacher and Ruzika [HRT06] proved the substructure property in backward direction. That means that each subpath P vi,v k (τ i ) of a Pareto-optimal path P v1,v k (τ 0 ) is a Paretooptimal path compared with all paths P v i,v k (τ i ). This holds because only a subset of all time-dependent

11 A. Berger and M. Müller-Hannemann: Subpath-Optimality 6 4 time table arc (3,4) dep(time) 3 4 arr(time) 4 5 weights (1,0) (2,1) arr(time)=3 (1,0) 3 arr(time)=4 minwait(3):=0/ maxwait(3):=0 dep(time)=2 2 (1,0) arr(time)=2 (1,0) dep(time)=1 1 dep(time)=1 start(time)=1 Figure 1: Time-dependent paths. paths from v i to v k which start with the same vertex-time pair is compared. In our Example 2.1, the two subpaths from 3 to 4 will be not compared because they possess different arrival times at vertex 3. We next show that the same idea can be used in forward direction and furthermore for all timedependent subpaths. If we only consider subpaths which start and end at the same departure and arrival times, we get the substructure property. We only need a new kind of definition for time-dependent paths. We assign to each arc a = (v, u) A and departure time dep v (time) T at v an arrival time arr u (time) T which defines the point of time when we arrive at vertex u if we depart in v at dep v (time) and traverse arc a. We define for all v V a set of departure times Dep v (time) and arrival times Arr v (time) which correspond to departure times dep v (time) of out-going arcs and to arrival times arr v (time) of in-going arcs. Note that different departure events at a vertex v are possible for one constant departure time dep v (time) T. They depart at the same time in v but traverse different arcs. In our definition we define departure times and arrival times with respect to an (s, t)-query. For an (s, t)-query we ignore all arrival events at s, but introduce an artificial arrival time start s (time) which can be interpreted as the earliest possible start time. Furthermore, we define one artificial departure time end t to specify a unique end of all paths which reach destination t. Definition 2.1. Time-dependent vertices v t are tuples which consist of an arrival time arr v (time) Arr v (time) and a departure time dep v (time) Dep v (time) for a vertex v V respecting the bound on the waiting time at v, i.e., with minwait(arr v (time), dep v (time)) dep v (time) arr v (time) maxwait(arr v (time), dep v (time)).

12 A. Berger and M. Müller-Hannemann: Subpath-Optimality 7 Time-dependent arcs a t are tuples which consist of a departure time dep v (time) in v V and the corresponding arrival time arr u (time) in u V by traversing the arc (v, u) A. We define a weight-function w which assigns to each time-dependent vertex v T a k-dimensional vector w(v t ) R k and to each time-dependent arc a t a k-dimensional vector w(a t ) R k. Now we are able to define time-dependent paths with respect to an (s, t)-query at an earliest start time start s (time). Definition 2.2. Let s V be the origin and t V be the destination of a query at earliest start time start s (time). A time-dependent path P T is an alternating sequence of time-dependent vertices and time-dependent arcs, with time-dependent vertices on its ends. We call two time-dependent paths comparable if their first time-dependent vertices possess an identical arrival time arr s (time) and their last time-dependent vertices possess an identical departure time dep v (time). In this definition we define time-dependent paths from each vertex v V to each u V with respect to an (s, t)-query. We distinguish between two notions for time-dependent paths. If we focus on the origin v and the destination u of a path, we call it time-dependent (v, u)-path. On the other hand, if we focus on starting and ending events of a path we denote a time-dependent path which starts with the time-dependent vertex v T = (arr v (time), dep v (time)) and ends with the time-dependent vertex u T = (arr u (time), dep u (time)) as P arrv(time),dep u(time). Note that a single time-dependent vertex v T = (arr v (time), dep v (time)) is already a time-dependent path P arrv(time),dep v(time). In our definition all time-dependent (s, t)-paths which start not earlier than start s (time) are comparable because they possess identical arrival times arr s (time) := start s (time) and identical departure times dep t (time) := end t. For all other vertices only a subset of (v, u)-paths is comparable. Time-dependent paths cannot consist of two identical time-dependent vertices. The reason is that traversing an arc takes time and it follows that an event cannot be visited twice. We define the weight of a time-dependent path P T as w(p T ) := w(v T ) + v T V T a T A T w(a T ). Hamacher et al. [HRT06] distinguish four different types of problems with constant or variable arrival times at t and constant or variable earliest start times at s. Our definition includes all these cases. If we want to consider different possible earliest start times at origin s (that means we have an earliest start time interval) we use the lower bound of the query interval as the earliest start time. The set of departure events in s is restricted to those with departure times of at most the upper bound of the interval. The difference between one earliest start time or an earliest start time interval will only be important for the number of time-dependent (s, t)-paths but not for the construction of them. A time-dependent path P arrv(time),dep u(time) is called Pareto-optimal if there does not exist

13 A. Berger and M. Müller-Hannemann: Subpath-Optimality 8 a further comparable path ˆP arrv(time),dep u(time) with weight w( ˆP arrv(time),dep u(time)) which is better or equal to w(p arrv(time),dep u(time)) for each component and better for at least one component. We say P arrv(time),dep u(time) is not dominated by another comparable (v, u)-path. If a path P arrv(time),dep u(time) dominates another comparable path ˆP arrv(time),dep u(time) we denote it by w(p arrv (time),dep u (time)) < dom w( ˆP arrv (time),dep u (time)). Note that we can compare all time-dependent (s, t)-paths because they are comparable with our definitions. To determine Pareto-optimal (v, u)-paths with v, u s, t we compare only a subset of timedependent (v, u)-paths. This is a further important difference to previous papers. Theorem 2.1. Let P arrv (time),dep u (time) be a Pareto-optimal time-dependent path in the set of all comparable time-dependent (v, u)-paths. Then each time-dependent subpath P arrv (time),dep u (time) is Paretooptimal in the set of all comparable time-dependent (v, u )-paths. Proof. Assume there exists a Pareto-optimal time-dependent path ˆP arrv (time),dep u (time) which is comparable to P arrv (time),dep u (time) but w( ˆP arrv (time),dep u (time)) < dom w(p arrv (time),dep u (time)). Then we can construct a new time-dependent (v, u)-path ˆP arrv(time),dep u(time) in deleting P arrv (time),dep u (time) in P arrv(time),dep u(time) and including ˆP arrv (time),dep u (time). It follows w( ˆP arrv(time),dep u(time)) = w(p arrv(time),dep v (time)) + w( ˆP arrv (time),dep u (time)) + w(p arru (time),dep u (time)) w(p arrv (time),dep v (time)) w(p arru (time),dep u (time)) < dom w(p arrv (time),dep v (time)) + w(p arrv (time),dep u (time)) + w(p arru (time),dep u(time)) w(p arrv (time),dep v (time)) w(p arru (time),dep u (time)) = w(p arrv (time),dep u (time)). The time-dependent path ˆP arrv (time),dep u (time) dominates P arrv (time),dep u (time) in contradiction to our assumption.

14 A. Berger and M. Müller-Hannemann: Subpath-Optimality 9 3 The Event-Dependent Pareto-Optimal Path Problem - A Generalization In many applications the weights of paths depend not only on time but on other attributes, e.g., in train networks the kind or number of a special train which traversed an arc. In such cases the substructure property from the previous chapter will be destroyed. Consider the following example in a train network. Example 3.1. See Figure 2. In train networks, vertices correspond to stations and arcs to elementary connections between two stations without intermediate stops. We want to determine Pareto-optimal (1, 5)- paths at earliest start time 1 with respect to a weight function which assigns in the first component for each event-dependent arc a e = (dep v, arr u ) the travel times arr u (time) dep v (time) and for each eventdependent vertex v e = (arr v, dep v ) the waiting times dep v (time) arr v (time). In the second component it assigns to each event-dependent arc a e = (dep v, arr u ) and to each time-dependent vertex the number of transfers. We set transfers(a e ) := 0 for an event-dependent arc, and transfers(v e ) := 0 for an event-dependent vertex v e = (arr v, dep v ), if dep v (train) = arr v (train), and transfers(v e ) := 1, if dep v (train) arr v (train). Obviously, the left-hand-side path which changes at station 3 from train 1 to train 2 is a Pareto-optimal one. The second path is the one which starts with train 3 and changes to train 2 at station 3. Both possess a travel time of 4 and one transfer. 5 arr(time)=5 train 2 arr(time)=6 train 4 dep(time)=5 4 arr(time)=5 train 3 < Transfer train 3->train 4 Transfer > train 1->train 2 train 3->train 2 train 1->train 3 dep(time)=4 3 arr(time)=3 train 1 dep(time)=4 arr(time)=4 minwait(3):=0/ maxwait(3):=1 dep(time)=2 2 train 3 arr(time)=2 train 1 dep(time)=1 dep(time)=1 1 start(time)=1 Figure 2: Train network: Two criteria travel time and number of transfers. If we compare all (1, 3)-paths with same departure time then the path of train 3 dominates all of them. So both Pareto-optimal (1, 5)-paths possess non Pareto-optimal subpaths. Clearly, the substructure property is not fulfilled even if we compare subpaths whose ends are the same departure times. The reason for this problem is that the weights on the time-dependent vertices at station 3 depend

15 A. Berger and M. Müller-Hannemann: Subpath-Optimality 10 not only of the time but also on the train numbers. We save our property with new definitions for such problems. We extend the definitions of time-dependent paths to event-dependent paths. Let G = (V, A) be a digraph and T N. We assign to each arc a = (v, u) A and departure event dep v at v an arrival event arr u which defines the event which arrives vertex u if we depart in v with departure event dep v and traverse arc a. In our Example 3.1, a departure event dep s := (1, 3) represents exactly one event which departs at time dep v (time) = 1 in v, travels on the arc a = (1, 3) A with train number dep v (train) = 3 and arrives at the corresponding arrival event arr u = (4, 3) at arr u (time) = 4 and train number arr u (train) = 3. For time-dependent paths an event consists only of the attribute time. Therefore, all departure events with the same departure time at a vertex v will be considered as equal events. We define for all v V a set of departure events Dep v and arrival events Arr v. A tuple of an event can be adapted for special situations. That means, we can use this concept also in static graphs with train dependencies without time dependencies. Note that different departure events at a vertex v are possible for one constant departure time dep v (time) N. They depart at the same time in v but travel to different vertices or with different trains. Waiting in any vertex can be limited to minimum and maximum waiting times minwait(dep v, arr v ), maxwait(dep v, arr v ) R + which have to be respected between different events in v. In a train network waiting times ensure the possibility to transfer from one train to the next. The following definitions for event-dependent vertices and arcs are given with respect to an (s, t)-query for an earliest start time start s (time) at s. For an (s, t)-query we ignore all arrival events at s, but introduce as before an artificial arrival event start s with an earliest start time start s (time) N. Furthermore, we define one artificial departure event end t to make paths comparable at destination t. Definition 3.1. Let s V be the origin, t V be the destination of a query and start s (time) an earliest start time in s. Event-dependent vertices v t are tuples which consist of an arrival event arr v Arr v and a departure event dep v Dep v for a vertex v V under attention of respective minimum and maximum waiting times minwait, maxwait at v. Event-dependent edges a t are tuples which consist of a departure event in v V and the corresponding arrival event in u V by traversing the edge (v, u) A. We define a weight-function w which assigns to each event-dependent vertex v T a k-dimensional vector w(v t ) R k and to each event-dependent arc a t a k-dimensional vector w(a t ) R k. Now we are able to define event-dependent paths with respect to an (s, t)-query at an earliest start event start s. Definition 3.2. An event-dependent path P T is an alternating sequence of event-dependent vertices and edges with event-dependent vertices on its ends. We call two event-dependent paths comparable if their first event-dependent vertices possess an identical arrival event and their last event-dependent vertices

16 A. Berger and M. Müller-Hannemann: Subpath-Optimality 11 possess an identical departure event. If we want to consider different possible earliest start times in origin s that means we have a earliest start time interval we use the lower bound of the query interval as the earliest start event and define maxwait(start s, arr s ) := length(interval). If there does not exist an query interval the maximum waiting time is infinity. So we can include several special cases in our formulation. Hence, the set of departure events in s is restricted to those with departure times of at most the upper bound of the interval. The difference of one earliest start time or an earliest start time interval will only be important for the number of event-dependent (s, t)-path but not for the construction of them. We define the weight of a event-dependent path P T as w(p T ) := w(v T ) + v T V T a T A T w(a T ). With these definitions all observations with respect to time-dependent paths immediately translate to event-dependent paths. Theorem 3.1. Let P arrv,dep u be a Pareto-optimal event-dependent path in the set of all comparable event-dependent (v, u)-paths. Then each event-dependent subpath P arrv,dep u is Pareto-optimal in the set of all comparable event-dependent (v, u )-paths. Proof. Identical to the proof of Theorem 2.1. Let us reconsider Example 3.1. The two (1, 3)-subpaths which start with trains 1 and 3 and change to train 2 cannot be dominated from paths with the same departure time because they possess a different departure event at station 3. The theorem provides us an approach how to use the well-known shortest path algorithms to compute event-dependent Pareto-optimal paths. We present a Dijkstra-like algorithm as an example. See Algorithm 1. In each iteration it uses an event-dependent Pareto-optimal subpath which ends with a departure event dep v. This departure event has a unique corresponding event-dependent arc a T A T on the underlying arc (v, u). Now it constructs multiple labels in attaching departure events at u V under consideration of minimum and maximum waiting times. In our formulation this means that we attach to an event-dependent Pareto-optimal path P starts,dep v the suitable event-dependent arc (dep v, arr u ) and feasible event-dependent vertices u T = (arr u, dep u ) V T at vertex u V. We construct a data structure for a label L which consists of 1. a departure event dep v, 2. a list l w of weights w R k + for event-dependent paths P starts,dep v,

17 A. Berger and M. Müller-Hannemann: Subpath-Optimality 12 Algorithm 1 Label-Setting Event-Dependent Input: Origin s, destination t, earliest start time start s (time) Output: Set of all event-dependent Pareto-optimal (s, t)-paths. 1: create empty priority pq 2: for departure events dep v do 3: if v s then 4: construct label L depv with empty list l w 5: else 6: construct label L starts with respect to the earliest start time start s (time), minwait(s, start s ) and maxwait(start s, s) 7: pq. insert(l starts ) 8: end if 9: end for 10: while pq. empty() do 11: L depv pq. extract-min() //key is the smallest departure time dep v (time) 12: determine the corresponding arrival event arr u to L depv //each departure event belongs to exactly one arrival event 13: compute with respect to minwait u and maxwait u all possible departure events dep u at vertex u 14: for these departure events dep u do 15: if label L depu pq then 16: pq. insert(l depu ) and store a flag that L depu is in pq 17: end if 18: for weights stored in L depv.l w do 19: w(p starts, dep u ) w(p starts, dep v ) + w(dep v, arr u ) + w(arr u, dep v ) 20: if w(p starts, dep u ) not dominated in L depu.l w then 21: L depu.l w. insert (w (P starts, dep u )) 22: end if 23: end for 24: delete dominated weights in label L depu.l w 25: end for 26: end while 3. a list l p of predecessor departure events dep u for event-dependent paths P starts,dep v. Note that one label can contain the weights of several (s, v)-paths with the common ending departure event dep v. We extract one label from the priority-queue with respect to the minimum departure time dep v (time) of its departure event dep v. Hence, the number of departure events in our timetable is the upper bound of the number of elements which have to be handled in the priority queue. Furthermore, our label L contains all comparable (s, v)-paths. Theorem 3.2. Algorithm 1 computes all Pareto-optimal (s, t) paths with earliest start time start s (time). The straight-forward correctness of this algorithm is based on the substructure property. The investment seems to be similarly to computing Pareto-optimal paths in time-expanded graphs where each departure and arrival event is identified with exactly one vertex. We propose a new notion of such graphs as event-dependent graphs to distinguish different dependencies. So a time-dependent graph will only consist of vertices which correspond to one departure or arrival time. On a second view we realize some advantages to work in event-dependent graphs. If we want to determine Pareto-optimal event-dependent

18 A. Berger and M. Müller-Hannemann: Subpath-Optimality 13 paths with respect to different weight-functions we can use the same graph model and compare in a label correcting algorithm only subpaths with ends at equal events with respect to our dependencies. E.g., if one problem is time-dependent then we can compare subpaths with equal departure times in the same ending vertex. If in our problem paths depend on the train number, we compare only paths with the same departure time and train number in the same ending vertex. In both cases we can use the same search graph. Furthermore, we can search for a subset of Pareto-optimal paths. We denote paths which take the first possible departure time on each arc as greedy paths. For many applications it is sufficient to determine only this subset. After consideration in previous work in one-criteria problems this approach was chosen intuitively very often. In this case a computation in an event-dependent graph is quite more efficient as the determination in an event-expanded graph. But keep in mind that optimization of greedy paths is not always the best kind of modelling. Consider the problem of finding a time-dependent Paretooptimal path with two optimizing arc-weights and vertex-weights: the first is the earliest arrival time and the second is the travel time of the path. Imagine there are two possibilities to travel from s to t after the earliest start time am. One train departs at am and arrives in t at am. Another train departs at am and arrives in t at am. The first one possesses the earliest arrival time and the second one a smaller travel time. If you only consider greedy paths you cannot find the important second solution with shortest travel time. The substructure property often depends on a special weight function. Sometimes it is possible to compare subpaths with different ending departure events in a vertex. Such a situation has been successfully exploited in [DMS08]. 4 Conclusions In this paper, we have reviewed several previous attempts to solve multi-criteria shortest path problems in time-dependent networks which are restricted to special cases. We have shown how to establish the subpath-optimality of Pareto-optimal subpaths by carefully chosen new definitions of time-dependent paths. This approach also directly extends to event-dependent paths which represent a very powerful model to encode many requirements in concrete applications. Our approach enables us to use label-setting and label-correcting algorithms for all problem variations without any further assumptions. In this paper, we sketched only the basic variant of a label-setting algorithm. However, it is straightforward to enhance this basic version by standard techniques like goal-directed search or dominance by early results [DMS08]. References [AOSS03] R. K. Ahuja, J. B. Orlin, Pallottino S., and M. G. Scutellà, Dynamic shortest paths minimizing travel times and costs, Networks 41 (2003), 205.

19 A. Berger and M. Müller-Hannemann: Subpath-Optimality 14 [Bel57] R.E. Bellman, Dynamic programming, Princeton University Press, Princeton, N.J., [Bel58], A generalization of dynamic programming for pareto optimization in dynamic networks, Quaterly of Applied Mathematics 16 (1958), [BJ04] G.S. Brodel and R. Jacob, Time-dependent networks as models to achieve fast exact time-table queries, Proceedings of ATMOS workshop 2003, vol. 92, 2004, pp [BSS89] J. Brumbaugh-Smith and D. Shier, An empirical investigation of some bicriterion shortest path algorithms, European Journal of Oerational Research 43 (1989), no. 2, [CH66] K.L. Cook and E. Hasley, The shortest route through a network with time-dependent internodal transit times, Journal of Mathematical Analysis and Applications 14 (1966), [CM85] H. Corley and I. Moon, Shortest paths in networks with vector weights, Journal of Optimization Theory and Applications 46 (1985), no. 1, [Del08] D. Delling, Time-dependent sharc-routing, ESA 08: Proceedings of the 16th annual European symposium on Algorithms (Berlin, Heidelberg), vol. 5193, Springer-Verlag, 2008, pp [Dij59] E. W. Dijkstra, A note on two problems in connexions with graphs, Numerische Mathematik 1 (1959), [DMS08] Y. Disser, M. Müller-Hannemann, and M. Schnee, Multi-criteria shortest paths in timedependent train networks, WEA 08:, vol. 5038, 2008, pp [Dre69] S.E. Dreyfus, An appraisal of some shortest-path algorithms, Operations Research 17 (1969), [EG02] M. Ehrgott and X. Gandibleux (eds.), Multi criteria optimization. state of the art annotated bibliographic surveys, Kluwer, Boston, [Flo62] R. W. Floyd, Algorithm 97 (shortest path), Communications of the ACM 5 (1962), 345. [For56] L. R. Ford, Network flow theory, Paper P-923. The Rand Corporation, [GKL00] T. Getachew, M. Kostreva, and L. Lancaster, A generalization of dynamic programming for pareto optimization in dynamic networks, RAIRO Operations Research 34 (2000), no. 1, [HRT06] H. W. Hamacher, S. Ruzika, and S. A. Tjandra, Algorithms for time-dependent bicriteria shortest path problems, Discrete Optimization 3 (2006), no. 3,

20 A. Berger and M. Müller-Hannemann: Subpath-Optimality 15 [KW93] M. Kostreva and M. Wiecek, Time dependency in multi objective dynamic programming, Journal of Mathematical Analysis and Applications 173 (1993), no. 1, [Mar84] E. Martins, On a multicriteria shortest path problem, European Journal of Operational Research 16 (1984), no. 2, [Moo59] E. F. Moore, The shortest path through a maze, In: Proceedings of the International Symposium on the Theory of Switching. Havard University Press 2 (1959), [OR90] A. Orda and R. Rom, Shortest-path and minimum-delay algorithms in networks with timedependent edge-length, Journal of the ACM 37 (1990), [OR91] A. Orda and R. Rom, Minimum weight paths in time-dependent networks, Networks 21 (1991), [War62] S. Warshall, A theorem on boolean matrices, Journal of the ACM 9(1) (1962), [ZM93] A.K. Ziliaskopoulos and H. S. Mahmassani, A time-dependent shortest path algorithm for realtime intelligent vehicle highway system applications, Transportation Research Record No (1993).

21 Information about the Author(s) Annabell Berger Institut für Informatik Universität Halle Halle, Germany WWW: Matthias Müller-Hannemann Institut fďż r Informatik Universität Halle Halle, Germany muellerh@informatik.uni-halle.de WWW:

Time Dependent Contraction Hierarchies Basic Algorithmic Ideas

Time Dependent Contraction Hierarchies Basic Algorithmic Ideas Time Dependent Contraction Hierarchies Basic Algorithmic Ideas arxiv:0804.3947v1 [cs.ds] 24 Apr 2008 Veit Batz, Robert Geisberger and Peter Sanders Universität Karlsruhe (TH), 76128 Karlsruhe, Germany

More information

Bicriterial Delay Management

Bicriterial Delay Management Universität Konstanz Bicriterial Delay Management Csaba Megyeri Konstanzer Schriften in Mathematik und Informatik Nr. 198, März 2004 ISSN 1430 3558 c Fachbereich Mathematik und Statistik c Fachbereich

More information

Algorithms for a Special Class of State-Dependent Shortest Path Problems with an Application to the Train Routing Problem

Algorithms for a Special Class of State-Dependent Shortest Path Problems with an Application to the Train Routing Problem Algorithms fo Special Class of State-Dependent Shortest Path Problems with an Application to the Train Routing Problem Lunce Fu and Maged Dessouky Daniel J. Epstein Department of Industrial & Systems Engineering

More information

A new bidirectional algorithm for shortest paths

A new bidirectional algorithm for shortest paths A new bidirectional algorithm for shortest paths Wim Pijls Henk Post Econometric Institute Report EI 2008-25 November 14, 2008 Abstract For finding a shortest path in a network the bidirectional A* algorithm

More information

CMPS 6610 Fall 2018 Shortest Paths Carola Wenk

CMPS 6610 Fall 2018 Shortest Paths Carola Wenk CMPS 6610 Fall 018 Shortest Paths Carola Wenk Slides courtesy of Charles Leiserson with changes and additions by Carola Wenk Paths in graphs Consider a digraph G = (V, E) with an edge-weight function w

More information

Time-Dependent SHARC-Routing

Time-Dependent SHARC-Routing Time-Dependent SHARC-Routing Daniel Delling 1 1 Universität Karlsruhe (TH), 76128 Karlsruhe, Germany Email:delling@ira.uka.de Abstract In recent years, many speed-up techniques for Dijkstra s algorithm

More information

Single Source Shortest Paths

Single Source Shortest Paths CMPS 00 Fall 017 Single Source Shortest Paths Carola Wenk Slides courtesy of Charles Leiserson with changes and additions by Carola Wenk Paths in graphs Consider a digraph G = (V, E) with an edge-weight

More information

Minimum time and minimum cost path problems. in street networks with periodic traffic lights

Minimum time and minimum cost path problems. in street networks with periodic traffic lights Università di Pisa - Dipartimento di Informatica Technical Report 13/99 - revised May 2001 - Forthcoming in Transportation Science Minimum time and minimum cost path problems in street networks with periodic

More information

Algorithms: Lecture 12. Chalmers University of Technology

Algorithms: Lecture 12. Chalmers University of Technology Algorithms: Lecture 1 Chalmers University of Technology Today s Topics Shortest Paths Network Flow Algorithms Shortest Path in a Graph Shortest Path Problem Shortest path network. Directed graph G = (V,

More information

Query Processing in Spatial Network Databases

Query Processing in Spatial Network Databases Temporal and Spatial Data Management Fall 0 Query Processing in Spatial Network Databases SL06 Spatial network databases Shortest Path Incremental Euclidean Restriction Incremental Network Expansion Spatial

More information

The shortest path tour problem: problem definition, modeling, and optimization

The shortest path tour problem: problem definition, modeling, and optimization The shortest path tour problem: problem definition, modeling, and optimization Paola Festa Department of Mathematics and Applications, University of apoli FEDERICO II Compl. MSA, Via Cintia, 86 apoli,

More information

Vehicle Routing and Scheduling. Martin Savelsbergh The Logistics Institute Georgia Institute of Technology

Vehicle Routing and Scheduling. Martin Savelsbergh The Logistics Institute Georgia Institute of Technology Vehicle Routing and Scheduling Martin Savelsbergh The Logistics Institute Georgia Institute of Technology Vehicle Routing and Scheduling Part II: Algorithmic Enhancements Handling Practical Complexities

More information

The Maximum Flow Problem with Disjunctive Constraints

The Maximum Flow Problem with Disjunctive Constraints The Maximum Flow Problem with Disjunctive Constraints Ulrich Pferschy Joachim Schauer Abstract We study the maximum flow problem subject to binary disjunctive constraints in a directed graph: A negative

More information

Minimizing Total Delay in Fixed-Time Controlled Traffic Networks

Minimizing Total Delay in Fixed-Time Controlled Traffic Networks Minimizing Total Delay in Fixed-Time Controlled Traffic Networks Ekkehard Köhler, Rolf H. Möhring, and Gregor Wünsch Technische Universität Berlin, Institut für Mathematik, MA 6-1, Straße des 17. Juni

More information

Chapter 4. Greedy Algorithms. Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved.

Chapter 4. Greedy Algorithms. Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved. Chapter 4 Greedy Algorithms Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved. 1 4.1 Interval Scheduling Interval Scheduling Interval scheduling. Job j starts at s j and

More information

Fly Cheaply: On the Minimum Fuel Consumption Problem

Fly Cheaply: On the Minimum Fuel Consumption Problem Journal of Algorithms 41, 330 337 (2001) doi:10.1006/jagm.2001.1189, available online at http://www.idealibrary.com on Fly Cheaply: On the Minimum Fuel Consumption Problem Timothy M. Chan Department of

More information

Routing. Topics: 6.976/ESD.937 1

Routing. Topics: 6.976/ESD.937 1 Routing Topics: Definition Architecture for routing data plane algorithm Current routing algorithm control plane algorithm Optimal routing algorithm known algorithms and implementation issues new solution

More information

Round-Based Public Transit Routing*

Round-Based Public Transit Routing* Submitted to Transportation Science manuscript (Please, provide the mansucript number!) Authors are encouraged to submit new papers to INFORMS journals by means of a style file template, which includes

More information

CS 241 Analysis of Algorithms

CS 241 Analysis of Algorithms CS 241 Analysis of Algorithms Professor Eric Aaron Lecture T Th 9:00am Lecture Meeting Location: OLB 205 Business Grading updates: HW5 back today HW7 due Dec. 10 Reading: Ch. 22.1-22.3, Ch. 25.1-2, Ch.

More information

The Maximum Flows in Planar Dynamic Networks

The Maximum Flows in Planar Dynamic Networks INTERNATIONAL JOURNAL OF COMPUTERS COMMUNICATIONS & CONTROL ISSN 1841-9836, 11(2):282-291, April 2016. The Maximum Flows in Planar Dynamic Networks C. Schiopu, E. Ciurea Camelia Schiopu* 1. Transilvania

More information

Analysis of Algorithms I: All-Pairs Shortest Paths

Analysis of Algorithms I: All-Pairs Shortest Paths Analysis of Algorithms I: All-Pairs Shortest Paths Xi Chen Columbia University The All-Pairs Shortest Paths Problem. Input: A directed weighted graph G = (V, E) with an edge-weight function w : E R. Output:

More information

Yet another bidirectional algorithm for shortest paths

Yet another bidirectional algorithm for shortest paths Yet another bidirectional algorithm for shortest paths Wim Pijls Henk Post Econometric Institute Report EI 2009-0 5 June, 2009 Abstract For finding a shortest path in a network the bidirectional A* algorithm

More information

Breadth First Search, Dijkstra s Algorithm for Shortest Paths

Breadth First Search, Dijkstra s Algorithm for Shortest Paths CS 374: Algorithms & Models of Computation, Spring 2017 Breadth First Search, Dijkstra s Algorithm for Shortest Paths Lecture 17 March 1, 2017 Chandra Chekuri (UIUC) CS374 1 Spring 2017 1 / 42 Part I Breadth

More information

A Polynomial-Time Algorithm to Find Shortest Paths with Recourse

A Polynomial-Time Algorithm to Find Shortest Paths with Recourse A Polynomial-Time Algorithm to Find Shortest Paths with Recourse J. Scott Provan Department of Operations Research University of North Carolina Chapel Hill, NC 7599-380 December, 00 Abstract The Shortest

More information

Shortest paths with negative lengths

Shortest paths with negative lengths Chapter 8 Shortest paths with negative lengths In this chapter we give a linear-space, nearly linear-time algorithm that, given a directed planar graph G with real positive and negative lengths, but no

More information

Approximate Pareto Curves for the Asymmetric Traveling Salesman Problem

Approximate Pareto Curves for the Asymmetric Traveling Salesman Problem Approximate Pareto Curves for the Asymmetric Traveling Salesman Problem Bodo Manthey Universität des Saarlandes, Informatik Postfach 550, 6604 Saarbrücken, Germany manthey@cs.uni-sb.de arxiv:07.257v [cs.ds]

More information

Single Source Shortest Paths

Single Source Shortest Paths CMPS 00 Fall 015 Single Source Shortest Paths Carola Wenk Slides courtesy of Charles Leiserson with changes and additions by Carola Wenk 1 Paths in graphs Consider a digraph G = (V, E) with an edge-weight

More information

An Õ m 2 n Randomized Algorithm to compute a Minimum Cycle Basis of a Directed Graph

An Õ m 2 n Randomized Algorithm to compute a Minimum Cycle Basis of a Directed Graph An Õ m 2 n Randomized Algorithm to compute a Minimum Cycle Basis of a Directed Graph T Kavitha Indian Institute of Science Bangalore, India kavitha@csaiiscernetin Abstract We consider the problem of computing

More information

Chapter 3 Deterministic planning

Chapter 3 Deterministic planning Chapter 3 Deterministic planning In this chapter we describe a number of algorithms for solving the historically most important and most basic type of planning problem. Two rather strong simplifying assumptions

More information

All-Pairs Shortest Paths

All-Pairs Shortest Paths All-Pairs Shortest Paths Version of October 28, 2016 Version of October 28, 2016 All-Pairs Shortest Paths 1 / 26 Outline Another example of dynamic programming Will see two different dynamic programming

More information

ecompass ecompass TR 023 Robust Routing in Urban Public Transportation

ecompass ecompass TR 023 Robust Routing in Urban Public Transportation Project Number 288094 ecompass eco-friendly urban Multi-modal route PlAnning Services for mobile users STREP Funded by EC, INFSO-G4(ICT for Transport) under FP7 ecompass TR 023 Robust Routing in Urban

More information

Discrete Optimization 2010 Lecture 2 Matroids & Shortest Paths

Discrete Optimization 2010 Lecture 2 Matroids & Shortest Paths Matroids Shortest Paths Discrete Optimization 2010 Lecture 2 Matroids & Shortest Paths Marc Uetz University of Twente m.uetz@utwente.nl Lecture 2: sheet 1 / 25 Marc Uetz Discrete Optimization Matroids

More information

Bidirectional A Search for Time-Dependent Fast Paths

Bidirectional A Search for Time-Dependent Fast Paths Bidirectional A Search for Time-Dependent Fast Paths Giacomo Nannicini 1,2, Daniel Delling 3, Leo Liberti 1, Dominik Schultes 3 1 LIX, École Polytechnique, F-91128 Palaiseau, France {giacomon,liberti}@lix.polytechnique.fr

More information

Time-Expanded vs Time-Dependent Models for Timetable Information

Time-Expanded vs Time-Dependent Models for Timetable Information Time-Expanded vs Time-Dependent Models for Timetable Information Evangelia Pirga Computer Technology Institute & University of Patras Frank Schulz University of Konstanz Dorothea Wagner University of Konstanz

More information

On the Complexity of Partitioning Graphs for Arc-Flags

On the Complexity of Partitioning Graphs for Arc-Flags Journal of Graph Algorithms and Applications http://jgaa.info/ vol. 17, no. 3, pp. 65 99 (013) DOI: 10.7155/jgaa.0094 On the Complexity of Partitioning Graphs for Arc-Flags Reinhard Bauer Moritz Baum Ignaz

More information

Lexicographic Flow. Dexter Kozen Department of Computer Science Cornell University Ithaca, New York , USA. June 25, 2009

Lexicographic Flow. Dexter Kozen Department of Computer Science Cornell University Ithaca, New York , USA. June 25, 2009 Lexicographic Flow Dexter Kozen Department of Computer Science Cornell University Ithaca, New York 14853-7501, USA June 25, 2009 Abstract The lexicographic flow problem is a flow problem in which the edges

More information

Bounds on the Traveling Salesman Problem

Bounds on the Traveling Salesman Problem Bounds on the Traveling Salesman Problem Sean Zachary Roberson Texas A&M University MATH 613, Graph Theory A common routing problem is as follows: given a collection of stops (for example, towns, stations,

More information

Chapter 3 THE TIME-DEPENDENT SHORTEST PAIR OF DISJOINT PATHS PROBLEM: COMPLEXITY, MODELS, AND ALGORITHMS

Chapter 3 THE TIME-DEPENDENT SHORTEST PAIR OF DISJOINT PATHS PROBLEM: COMPLEXITY, MODELS, AND ALGORITHMS Chapter 3 THE TIME-DEPENDENT SHORTEST PAIR OF DISJOINT PATHS PROBLEM: COMPLEXITY, MODELS, AND ALGORITHMS 3.1 Introduction The general time-dependent shortest pair of disjoint paths problem (TD-2SP) can

More information

Fundamental Algorithms 11

Fundamental Algorithms 11 Technische Universität München WS 2013/14 Institut für Informatik Worksheet Scientific Computing in Computer Science 20.01.2014 Fundamental Algorithms 11 Exercise 1 Hypergraphs A hypergraph extends the

More information

Pairing Transitive Closure and Reduction to Efficiently Reason about Partially Ordered Events

Pairing Transitive Closure and Reduction to Efficiently Reason about Partially Ordered Events Pairing Transitive Closure and Reduction to Efficiently Reason about Partially Ordered Events Massimo Franceschet Angelo Montanari Dipartimento di Matematica e Informatica, Università di Udine Via delle

More information

Pairing Transitive Closure and Reduction to Efficiently Reason about Partially Ordered Events

Pairing Transitive Closure and Reduction to Efficiently Reason about Partially Ordered Events Pairing Transitive Closure and Reduction to Efficiently Reason about Partially Ordered Events Massimo Franceschet Angelo Montanari Dipartimento di Matematica e Informatica, Università di Udine Via delle

More information

Timetabling and Robustness Computing Good and Delay-Resistant Timetables

Timetabling and Robustness Computing Good and Delay-Resistant Timetables Timetabling and Robustness Computing Good and Delay-Resistant Timetables Rolf Möhring GK MDS, 24 Nov 2008 DFG Research Center MATHEON mathematics for key technologies Overview The Periodic Event Scheduling

More information

Chapter 4. Greedy Algorithms. Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved.

Chapter 4. Greedy Algorithms. Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved. Chapter 4 Greedy Algorithms Slides by Kevin Wayne. Copyright Pearson-Addison Wesley. All rights reserved. 4 4.1 Interval Scheduling Interval Scheduling Interval scheduling. Job j starts at s j and finishes

More information

1 Matchings in Non-Bipartite Graphs

1 Matchings in Non-Bipartite Graphs CS 598CSC: Combinatorial Optimization Lecture date: Feb 9, 010 Instructor: Chandra Chekuri Scribe: Matthew Yancey 1 Matchings in Non-Bipartite Graphs We discuss matching in general undirected graphs. Given

More information

CS 4407 Algorithms Lecture: Shortest Path Algorithms

CS 4407 Algorithms Lecture: Shortest Path Algorithms CS 440 Algorithms Lecture: Shortest Path Algorithms Prof. Gregory Provan Department of Computer Science University College Cork 1 Outline Shortest Path Problem General Lemmas and Theorems. Algorithms Bellman-Ford

More information

Introduction to Algorithms

Introduction to Algorithms Introduction to Algorithms, Lecture 5 // Introduction to Algorithms 6.46J/.4J LECTURE Shortest Paths I Properties o shortest paths Dijkstra s Correctness Analysis Breadth-irst Pro. Manolis Kellis March,

More information

Solving Elementary Shortest-Path Problems as Mixed-Integer Programs

Solving Elementary Shortest-Path Problems as Mixed-Integer Programs Gutenberg School of Management and Economics Discussion Paper Series Solving Elementary Shortest-Path Problems as Mixed-Integer Programs Michael Drexl and Stefan Irnich Januar 2012 Discussion paper number

More information

Discrete Wiskunde II. Lecture 5: Shortest Paths & Spanning Trees

Discrete Wiskunde II. Lecture 5: Shortest Paths & Spanning Trees , 2009 Lecture 5: Shortest Paths & Spanning Trees University of Twente m.uetz@utwente.nl wwwhome.math.utwente.nl/~uetzm/dw/ Shortest Path Problem "#$%&'%()*%"()$#+,&- Given directed "#$%&'()*+,%+('-*.#/'01234564'.*,'7+"-%/8',&'5"4'84%#3

More information

SUB-EXPONENTIALLY MANY 3-COLORINGS OF TRIANGLE-FREE PLANAR GRAPHS

SUB-EXPONENTIALLY MANY 3-COLORINGS OF TRIANGLE-FREE PLANAR GRAPHS SUB-EXPONENTIALLY MANY 3-COLORINGS OF TRIANGLE-FREE PLANAR GRAPHS Arash Asadi Luke Postle 1 Robin Thomas 2 School of Mathematics Georgia Institute of Technology Atlanta, Georgia 30332-0160, USA ABSTRACT

More information

Robust Network Codes for Unicast Connections: A Case Study

Robust Network Codes for Unicast Connections: A Case Study Robust Network Codes for Unicast Connections: A Case Study Salim Y. El Rouayheb, Alex Sprintson, and Costas Georghiades Department of Electrical and Computer Engineering Texas A&M University College Station,

More information

Extreme Point Solutions for Infinite Network Flow Problems

Extreme Point Solutions for Infinite Network Flow Problems Extreme Point Solutions for Infinite Network Flow Problems H. Edwin Romeijn Dushyant Sharma Robert L. Smith January 3, 004 Abstract We study capacitated network flow problems with supplies and demands

More information

CMPS 2200 Fall Carola Wenk Slides courtesy of Charles Leiserson with small changes by Carola Wenk. 10/8/12 CMPS 2200 Intro.

CMPS 2200 Fall Carola Wenk Slides courtesy of Charles Leiserson with small changes by Carola Wenk. 10/8/12 CMPS 2200 Intro. CMPS 00 Fall 01 Single Source Shortest Paths Carola Wenk Slides courtesy of Charles Leiserson with small changes by Carola Wenk 1 Paths in graphs Consider a digraph G = (V, E) with edge-weight function

More information

Heuristic Search Algorithms

Heuristic Search Algorithms CHAPTER 4 Heuristic Search Algorithms 59 4.1 HEURISTIC SEARCH AND SSP MDPS The methods we explored in the previous chapter have a serious practical drawback the amount of memory they require is proportional

More information

CS 580: Algorithm Design and Analysis

CS 580: Algorithm Design and Analysis CS 580: Algorithm Design and Analysis Jeremiah Blocki Purdue University Spring 2018 Announcement: Homework 1 due soon! Due: January 25 th at midnight (Blackboard) Recap: Graphs Bipartite Graphs Definition

More information

CSC 1700 Analysis of Algorithms: Warshall s and Floyd s algorithms

CSC 1700 Analysis of Algorithms: Warshall s and Floyd s algorithms CSC 1700 Analysis of Algorithms: Warshall s and Floyd s algorithms Professor Henry Carter Fall 2016 Recap Space-time tradeoffs allow for faster algorithms at the cost of space complexity overhead Dynamic

More information

Efficient K-Nearest Neighbor Search in Time-Dependent Spatial Networks

Efficient K-Nearest Neighbor Search in Time-Dependent Spatial Networks Efficient K-Nearest Neighbor Search in Time-Dependent Spatial Networks Ugur Demiryurek, Farnoush Banaei-Kashani, and Cyrus Shahabi University of Southern California Department of Computer Science Los Angeles,

More information

Approximation Algorithms for Re-optimization

Approximation Algorithms for Re-optimization Approximation Algorithms for Re-optimization DRAFT PLEASE DO NOT CITE Dean Alderucci Table of Contents 1.Introduction... 2 2.Overview of the Current State of Re-Optimization Research... 3 2.1.General Results

More information

Reliability and Delay Distributions of Train Connections

Reliability and Delay Distributions of Train Connections Reliability and Delay Distributions of Train Connections Mohammad H. Keyhani, Mathias Schnee, Karsten Weihe, and Hans-Peter Zorn Darmstadt University of Technology, Computer Science, Hochschulstraße 10,

More information

Maximum flow problem (part I)

Maximum flow problem (part I) Maximum flow problem (part I) Combinatorial Optimization Giovanni Righini Università degli Studi di Milano Definitions A flow network is a digraph D = (N,A) with two particular nodes s and t acting as

More information

Delay-Robust Event-Scheduling In Memoriam of A. Caprara

Delay-Robust Event-Scheduling In Memoriam of A. Caprara Delay-Robust Event-Scheduling In Memoriam of A. Caprara A. Caprara 1 L. Galli 2 S. Stiller 3 P. Toth 1 1 University of Bologna 2 University of Pisa 3 Technische Universität Berlin 17th Combinatorial Optimization

More information

The Multiple Traveling Salesman Problem with Time Windows: Bounds for the Minimum Number of Vehicles

The Multiple Traveling Salesman Problem with Time Windows: Bounds for the Minimum Number of Vehicles The Multiple Traveling Salesman Problem with Time Windows: Bounds for the Minimum Number of Vehicles Snežana Mitrović-Minić Ramesh Krishnamurti School of Computing Science, Simon Fraser University, Burnaby,

More information

CSE 431/531: Analysis of Algorithms. Dynamic Programming. Lecturer: Shi Li. Department of Computer Science and Engineering University at Buffalo

CSE 431/531: Analysis of Algorithms. Dynamic Programming. Lecturer: Shi Li. Department of Computer Science and Engineering University at Buffalo CSE 431/531: Analysis of Algorithms Dynamic Programming Lecturer: Shi Li Department of Computer Science and Engineering University at Buffalo Paradigms for Designing Algorithms Greedy algorithm Make a

More information

Design and Analysis of Algorithms

Design and Analysis of Algorithms Design and Analysis of Algorithms CSE 5311 Lecture 21 Single-Source Shortest Paths Junzhou Huang, Ph.D. Department of Computer Science and Engineering CSE5311 Design and Analysis of Algorithms 1 Single-Source

More information

Scheduling with AND/OR Precedence Constraints

Scheduling with AND/OR Precedence Constraints Scheduling with AND/OR Precedence Constraints Seminar Mathematische Optimierung - SS 2007 23th April 2007 Synthesis synthesis: transfer from the behavioral domain (e. g. system specifications, algorithms)

More information

CSE 202 Homework 4 Matthias Springer, A

CSE 202 Homework 4 Matthias Springer, A CSE 202 Homework 4 Matthias Springer, A99500782 1 Problem 2 Basic Idea PERFECT ASSEMBLY N P: a permutation P of s i S is a certificate that can be checked in polynomial time by ensuring that P = S, and

More information

1.225 Transportation Flow Systems Quiz (December 17, 2001; Duration: 3 hours)

1.225 Transportation Flow Systems Quiz (December 17, 2001; Duration: 3 hours) 1.225 Transportation Flow Systems Quiz (December 17, 2001; Duration: 3 hours) Student Name: Alias: Instructions: 1. This exam is open-book 2. No cooperation is permitted 3. Please write down your name

More information

Alternating paths revisited II: restricted b-matchings in bipartite graphs

Alternating paths revisited II: restricted b-matchings in bipartite graphs Egerváry Research Group on Combinatorial Optimization Technical reports TR-2005-13. Published by the Egerváry Research Group, Pázmány P. sétány 1/C, H 1117, Budapest, Hungary. Web site: www.cs.elte.hu/egres.

More information

CSE 591 Foundations of Algorithms Homework 4 Sample Solution Outlines. Problem 1

CSE 591 Foundations of Algorithms Homework 4 Sample Solution Outlines. Problem 1 CSE 591 Foundations of Algorithms Homework 4 Sample Solution Outlines Problem 1 (a) Consider the situation in the figure, every edge has the same weight and V = n = 2k + 2. Easy to check, every simple

More information

From Abstract Models to Executable Models for Multi-Agent Path Finding on Real Robots

From Abstract Models to Executable Models for Multi-Agent Path Finding on Real Robots From Abstract Models to Executable Models for Multi-Agent Path Finding on Real Robots Roman Barták Charles University, Czech Republic with contributions from Ivan Krasičenko, David Nohejl, Věra Škopková,

More information

Enhancing Active Automata Learning by a User Log Based Metric

Enhancing Active Automata Learning by a User Log Based Metric Master Thesis Computing Science Radboud University Enhancing Active Automata Learning by a User Log Based Metric Author Petra van den Bos First Supervisor prof. dr. Frits W. Vaandrager Second Supervisor

More information

Introduction to Algorithms

Introduction to Algorithms Introduction to Algorithms 6.046J/18.401J LECTURE 14 Shortest Paths I Properties of shortest paths Dijkstra s algorithm Correctness Analysis Breadth-first search Prof. Charles E. Leiserson Paths in graphs

More information

Institute of Operating Systems and Computer Networks Algorithms Group. Network Algorithms. Tutorial 3: Shortest paths and other stuff

Institute of Operating Systems and Computer Networks Algorithms Group. Network Algorithms. Tutorial 3: Shortest paths and other stuff Institute of Operating Systems and Computer Networks Algorithms Group Network Algorithms Tutorial 3: Shortest paths and other stuff Christian Rieck Shortest paths: Dijkstra s algorithm 2 Dijkstra s algorithm

More information

Design and Analysis of Algorithms

Design and Analysis of Algorithms Design and Analysis of Algorithms CSE 5311 Lecture 22 All-Pairs Shortest Paths Junzhou Huang, Ph.D. Department of Computer Science and Engineering CSE5311 Design and Analysis of Algorithms 1 All Pairs

More information

Lecture 11. Single-Source Shortest Paths All-Pairs Shortest Paths

Lecture 11. Single-Source Shortest Paths All-Pairs Shortest Paths Lecture. Single-Source Shortest Paths All-Pairs Shortest Paths T. H. Cormen, C. E. Leiserson and R. L. Rivest Introduction to, rd Edition, MIT Press, 009 Sungkyunkwan University Hyunseung Choo choo@skku.edu

More information

CS781 Lecture 3 January 27, 2011

CS781 Lecture 3 January 27, 2011 CS781 Lecture 3 January 7, 011 Greedy Algorithms Topics: Interval Scheduling and Partitioning Dijkstra s Shortest Path Algorithm Minimum Spanning Trees Single-Link k-clustering Interval Scheduling Interval

More information

Selected partial inverse combinatorial optimization problems with forbidden elements. Elisabeth Gassner

Selected partial inverse combinatorial optimization problems with forbidden elements. Elisabeth Gassner FoSP Algorithmen & mathematische Modellierung FoSP Forschungsschwerpunkt Algorithmen und mathematische Modellierung Selected partial inverse combinatorial optimization problems with forbidden elements

More information

Introduction to Algorithms

Introduction to Algorithms Introduction to Algorithms 6.046J/8.40J/SMA550 Lecture 7 Prof. Erik Demaine Paths in graphs Consider a digraph G = (V, E) with edge-weight function w : E R. The weight of path p = v v L v k is defined

More information

DISTRIBUTIVE LATTICES ON GRAPH ORIENTATIONS

DISTRIBUTIVE LATTICES ON GRAPH ORIENTATIONS DISTRIBUTIVE LATTICES ON GRAPH ORIENTATIONS KOLJA B. KNAUER ABSTRACT. Propp gave a construction method for distributive lattices on a class of orientations of a graph called c-orientations. Given a distributive

More information

Vehicle dispatching with time-dependent travel times

Vehicle dispatching with time-dependent travel times European Journal of Operational Research 144 (2003) 379 396 Discrete Optimization Vehicle dispatching with time-dependent travel times Soumia Ichoua a,b, Michel Gendreau a,b, Jean-Yves Potvin a,b, * www.elsevier.com/locate/dsw

More information

Lecture 7: Shortest Paths in Graphs with Negative Arc Lengths. Reading: AM&O Chapter 5

Lecture 7: Shortest Paths in Graphs with Negative Arc Lengths. Reading: AM&O Chapter 5 Lecture 7: Shortest Paths in Graphs with Negative Arc Lengths Reading: AM&O Chapter Label Correcting Methods Assume the network G is allowed to have negative arc lengths but no directed negativelyweighted

More information

Journal of Theoretics Vol.4-3

Journal of Theoretics Vol.4-3 Journal of heoretics Vol.4-3 Development of a Model and Algorithm for ime-dependent Shortest Path Nazar M. Zai Faculty of Computer Science & Information System, University echnology Malalysia, Malaysia

More information

Undirected Graphs. V = { 1, 2, 3, 4, 5, 6, 7, 8 } E = { 1-2, 1-3, 2-3, 2-4, 2-5, 3-5, 3-7, 3-8, 4-5, 5-6 } n = 8 m = 11

Undirected Graphs. V = { 1, 2, 3, 4, 5, 6, 7, 8 } E = { 1-2, 1-3, 2-3, 2-4, 2-5, 3-5, 3-7, 3-8, 4-5, 5-6 } n = 8 m = 11 Undirected Graphs Undirected graph. G = (V, E) V = nodes. E = edges between pairs of nodes. Captures pairwise relationship between objects. Graph size parameters: n = V, m = E. V = {, 2, 3,,,, 7, 8 } E

More information

Combinatorial optimization problems

Combinatorial optimization problems Combinatorial optimization problems Heuristic Algorithms Giovanni Righini University of Milan Department of Computer Science (Crema) Optimization In general an optimization problem can be formulated as:

More information

Algorithm Design Strategies V

Algorithm Design Strategies V Algorithm Design Strategies V Joaquim Madeira Version 0.0 October 2016 U. Aveiro, October 2016 1 Overview The 0-1 Knapsack Problem Revisited The Fractional Knapsack Problem Greedy Algorithms Example Coin

More information

CHAPTER 3 FUNDAMENTALS OF COMPUTATIONAL COMPLEXITY. E. Amaldi Foundations of Operations Research Politecnico di Milano 1

CHAPTER 3 FUNDAMENTALS OF COMPUTATIONAL COMPLEXITY. E. Amaldi Foundations of Operations Research Politecnico di Milano 1 CHAPTER 3 FUNDAMENTALS OF COMPUTATIONAL COMPLEXITY E. Amaldi Foundations of Operations Research Politecnico di Milano 1 Goal: Evaluate the computational requirements (this course s focus: time) to solve

More information

UNIVERSITY OF YORK. MSc Examinations 2004 MATHEMATICS Networks. Time Allowed: 3 hours.

UNIVERSITY OF YORK. MSc Examinations 2004 MATHEMATICS Networks. Time Allowed: 3 hours. UNIVERSITY OF YORK MSc Examinations 2004 MATHEMATICS Networks Time Allowed: 3 hours. Answer 4 questions. Standard calculators will be provided but should be unnecessary. 1 Turn over 2 continued on next

More information

Discrete Optimization 2010 Lecture 3 Maximum Flows

Discrete Optimization 2010 Lecture 3 Maximum Flows Remainder: Shortest Paths Maximum Flows Discrete Optimization 2010 Lecture 3 Maximum Flows Marc Uetz University of Twente m.uetz@utwente.nl Lecture 3: sheet 1 / 29 Marc Uetz Discrete Optimization Outline

More information

An Introduction to Network Flows Over Time

An Introduction to Network Flows Over Time An Introduction to Network Flows Over Time Martin Skutella Abstract We give an introduction into the fascinating area of flows over time also called dynamic flows in the literature. Starting from the early

More information

On max-algebraic models for transportation networks

On max-algebraic models for transportation networks K.U.Leuven Department of Electrical Engineering (ESAT) SISTA Technical report 98-00 On max-algebraic models for transportation networks R. de Vries, B. De Schutter, and B. De Moor If you want to cite this

More information

Contents. Introduction

Contents. Introduction Introduction Contents Chapter 1. Network Flows 1 1.1. Graphs 1 1.2. Shortest Paths 8 1.3. Maximum Flow 17 1.4. Min Cost Flows 22 List of frequently used Symbols 31 Bibliography 33 Index 37 iii i Introduction

More information

Technische Universität München, Zentrum Mathematik Lehrstuhl für Angewandte Geometrie und Diskrete Mathematik. Combinatorial Optimization (MA 4502)

Technische Universität München, Zentrum Mathematik Lehrstuhl für Angewandte Geometrie und Diskrete Mathematik. Combinatorial Optimization (MA 4502) Technische Universität München, Zentrum Mathematik Lehrstuhl für Angewandte Geometrie und Diskrete Mathematik Combinatorial Optimization (MA 4502) Dr. Michael Ritter Problem Sheet 1 Homework Problems Exercise

More information

Multicommodity Flows and Column Generation

Multicommodity Flows and Column Generation Lecture Notes Multicommodity Flows and Column Generation Marc Pfetsch Zuse Institute Berlin pfetsch@zib.de last change: 2/8/2006 Technische Universität Berlin Fakultät II, Institut für Mathematik WS 2006/07

More information

Solutions to the Midterm Practice Problems

Solutions to the Midterm Practice Problems CMSC 451:Fall 2017 Dave Mount Solutions to the Midterm Practice Problems Solution 1: (a) Θ(n): The innermost loop is executed i times, and each time the value of i is halved. So the overall running time

More information

2. A vertex in G is central if its greatest distance from any other vertex is as small as possible. This distance is the radius of G.

2. A vertex in G is central if its greatest distance from any other vertex is as small as possible. This distance is the radius of G. CME 305: Discrete Mathematics and Algorithms Instructor: Reza Zadeh (rezab@stanford.edu) HW#1 Due at the beginning of class Thursday 01/21/16 1. Prove that at least one of G and G is connected. Here, G

More information

Exact Algorithms for Dominating Induced Matching Based on Graph Partition

Exact Algorithms for Dominating Induced Matching Based on Graph Partition Exact Algorithms for Dominating Induced Matching Based on Graph Partition Mingyu Xiao School of Computer Science and Engineering University of Electronic Science and Technology of China Chengdu 611731,

More information

Analysis of Algorithms. Outline. Single Source Shortest Path. Andres Mendez-Vazquez. November 9, Notes. Notes

Analysis of Algorithms. Outline. Single Source Shortest Path. Andres Mendez-Vazquez. November 9, Notes. Notes Analysis of Algorithms Single Source Shortest Path Andres Mendez-Vazquez November 9, 01 1 / 108 Outline 1 Introduction Introduction and Similar Problems General Results Optimal Substructure Properties

More information

P P P NP-Hard: L is NP-hard if for all L NP, L L. Thus, if we could solve L in polynomial. Cook's Theorem and Reductions

P P P NP-Hard: L is NP-hard if for all L NP, L L. Thus, if we could solve L in polynomial. Cook's Theorem and Reductions Summary of the previous lecture Recall that we mentioned the following topics: P: is the set of decision problems (or languages) that are solvable in polynomial time. NP: is the set of decision problems

More information

REVISION SHEET DECISION MATHS 2 DECISION ANALYSIS

REVISION SHEET DECISION MATHS 2 DECISION ANALYSIS REVISION SHEET DECISION MATHS 2 DECISION ANALYSIS The main ideas are covered in AQA Edexcel MEI OCR D2 Before the exam you should know The meaning of the different kinds of node. Be able to construct a

More information

Extended breadth-first search algorithm in practice

Extended breadth-first search algorithm in practice Proceedings of the 9 th International Conference on Applied Informatics Eger, Hungary, January 29 February 1, 2014. Vol. 1. pp. 59 66 doi: 10.14794/ICAI.9.2014.1.59 Extended breadth-first search algorithm

More information

Design and Analysis of Algorithms April 16, 2015 Massachusetts Institute of Technology Profs. Erik Demaine, Srini Devadas, and Nancy Lynch Quiz 2

Design and Analysis of Algorithms April 16, 2015 Massachusetts Institute of Technology Profs. Erik Demaine, Srini Devadas, and Nancy Lynch Quiz 2 Design and Analysis of Algorithms April 16, 2015 Massachusetts Institute of Technology 6.046J/18.410J Profs. Erik Demaine, Srini Devadas, and Nancy Lynch Quiz 2 Quiz 2 Do not open this quiz booklet until

More information