Printer Friendly

Least Expected Time Paths in Stochastic Schedule-Based Transit Networks.

1. Introduction

The routing problem in a schedule-based transit network involves scheduling decisions made by a traveler, for example, accessing to a stop (station), walking between stops, waiting to board, traveling in-vehicle, alighting, and egressing. These decisions guide the traveler from an origin to a destination with minimum travel costs, such as number of transfers, total travel time, walking time, and waiting time. The decisions of the traveler are not only constrained by the network configuration, that is, transit routes (lines), but also constrained by the schedules of transit vehicles. However, due to the stochastic and time-varying nature of vehicle travel time, as well as the effects of the arrival of a transit vehicle at upstream stop on its arrivals at downstream stops, the arrival times of transit vehicles usually do not follow their schedules. Therefore, the determination of robust routing decisions can greatly affect the quality of the routing service provided under uncertain conditions.

Along with the stochasticity of vehicle travel times and the relationship between vehicle arrival times on the same transit route, there might also exist overlaps between transit routes in the network. Therefore, the arrival times of transit vehicles would be not only stochastic but also fully stochastically correlated. The routing problem with stochastically correlated link travel times has been investigated intensively in highway networks [1-6]. However, its counterpart in transit networks, where vehicle arrival times are considered as stochastically correlated, has not been addressed, while existing works in literature assumed vehicle arrival times to be deterministic [7-13] or statistically independent [14]. The main issue when designing a routing algorithm in a schedule-based transit network with correlated vehicle arrival times is to model the stochastic correlation of vehicle arrival times. This issue is related to the question of how to incorporate the correlation of vehicle arrival times into the routing process, in which not only constraints on transit routes but also constraints on vehicle arrival times are taken into account:

(i) A time-dependent model is proposed for stochastic schedule-based transit networks where the correlation of all vehicle arrival times is presented as a scenario. The graph model captures travelers' decisions, namely, boarding, traveling in-vehicle, alighting, walking, and time constraints of these decisions in each scenario.

(ii) A new dominance condition for paths is established with respect to number of transfers and travel times over a set of possible scenarios. Then a formal proof that Bellman's principle of optimality is valid with nondominated paths is presented. This theoretical establishment enables the use of pretrip online information to reduce uncertainties for more robust LET paths.

(iii) An exact link-based routing algorithm is proposed for efficiently determining LET paths, based on Bellman's principle of optimality. The results from experiments, which are conducted using data from a real-size bus network in Ho Chi Minh City, show that the running time of the proposed algorithm is feasible for online applications. Also, LET paths are shown to be robust in the presence of unknown scenarios.

The remaining of the paper is organized as follows. We present related researches on the routing problem in transit networks in Section 2. In Section 3, we define components used to develop the algorithm for our routing problem. Then we propose the solution algorithm for determining the LET path in Section 4. Various experiments are conducted, and their results are discussed in Section 5. Finally, the conclusion is given in Section 6.

2. Related Work

A transit routing algorithm in literature has been built on the notion of path [7, 8, 15] or hyperpath [16-18]. A path consists of fixed decisions made by a traveler at stops, which are determined before he/she leaves the origin. In contrast, a hyperpath represents routing strategies in which the traveler is allowed to change his/her decision at each intermediate stop, depending on the previous decisions and what are likely to happen in the future. Routing based on hyperpath was shown to make better travel costs under uncertainty but requires the incorporation of online information and high computational complexity [19].

Treatment for the routing problem in a transit network can be different, depending on the type of transit services, that is, either headway-based [15-17] or schedule-based [7, 8, 11,12]. In the former, transit services are represented by transit routes, and arrival/departure times of transit vehicles are not explicitly considered. This results in an approximation in calculating boarding times and in-vehicle travel times. In the latter, transit services are explicitly specified in terms of trips (runs), in which arrival/departure times of transit vehicles at stops are considered. Meanwhile the routing algorithm in a headway-based transit network can employ shortest path algorithms, for example, Dijkstra's algorithm [20], which are the same as those used for highway networks. A schedule-based transit network requires a time-dependent network presentation where routing processes of travelers are not only constrained by the network topology but also constrained by scheduled arrival/departure times of transit vehicles. Therefore, modeling transit services is the first and important task in solving the routing problem in a schedule-based transit network. As classified by Nuzzolo and Crisalli [21], the representation of a schedule-based transit network can be one of the three forms: the diachronic (time-expanded) network [9, 10, 13], the dual network [22], and the mixed line-based/database supply model (time-dependent model) [11, 23, 24].

In the context where transit services are insufficiently reliable, headways and arrival/departure times of transit vehicles are commonly modeled as random variables with well-known forms of probability distribution, for example, exponentially distributed headways [25,26], Gaussian distributed headways [27,28], and Gaussian distributed scheduled times [14]. Along with the stochasticity of transit services, the uncertainty in travelers' perceptions on different types of travel costs can be also regarded as a source of stochasticity in a transit routing problem [8,27, 28]. In these works, random weights for different travel cost components, such as transfer penalty, walking time, and waiting time, were incorporated into the routing process.

The routing problem in transit networks has been investigated with various assumptions on many aspects, such as capacity limitation, congestion and overcrowding issues, vehicle capacity, and boarding failures [29]. Nuzzolo and Crisalli [21] investigated various routing models for low-and high-frequency schedule-based transit networks. In the former, for example, in regional bus or railway networks, routing processes are based on arrival/departure times of transit vehicles [30, 31]. In the latter, typically in urban areas, travelers usually have a large number of options at stops to reach their destination. In this case, arrivals of travelers at stops do not rely heavily on vehicle arrival/departure times but are significantly affected by vehicle congestion, which are defined in literature as situations in which a traveler cannot board the first arriving vehicle and has to wait for next vehicles. Vehicle congestion can be modeled implicitly as increasing discomfort functions [11,12, 32] or explicitly with vehicle capacity or set availability constraints [33-35].

3. Network Modeling

In this section, we define components used to develop the algorithm for determining LET paths in stochastic schedule-based transit networks.

3.1. Stochastic Schedule-Based Transit Network. We consider transit network B = (S, R, T, Q, C), where S is the set of stops and R is the set of routes. A route, r [member of] R, is a fixed sequence of stops through which transit vehicles run periodically with fixed trips and defined by a set

[S.sub.r] = {[S.sup.k.sub.r] : k = 1, ..., [K.sub.r]} [subset or equal to] S, (1)

where [S.sup.k.sub.r] is the kth stop and [K.sub.r] is the number of stops on route r. Let [I.sub.r] be the number of trips of route r over a set of time intervals T = {0, [sigma], 2[sigma], ..., T[sigma]}, where [sigma] is unit of time and T is the last time interval. The universal stochastic scenario set Q is a set of all known possible scenarios in the network such that

[summation over (q [member of] Q)] [p.sup.q] = 1, (2)

where [p.sup.q] is the occurrence probability of scenario q [member of] Q. Each scenario q can be defined by a set of stop times

[mathematical expression not reproducible], (3)

where [[theta].sup.q.sub.rik] [member of] T denotes the stop time (scheduled arrival time of a transit vehicle) at the kth stop of the ith trip on route r in scenario q and C is the universal set of all stop times in all possible scenarios such that

[mathematical expression not reproducible]. (4)

In the context of transit networks, there might exist overlaps among routes. A scenario presents a stochastic correlation of not only stop times on the same route but also stop times on routes sharing the same physical links. The probability of a scenario happening is the full joint probability of all stop times taking place, and stop times are known for each scenario a priori. This allows us explicitly to take into account delays resulting from transfer failures due to late arrivals and their effects on the total travel time in each scenario.

For example, consider the transit network shown in Figure 1 with S = {A, B, C} and R = {1, 2, 3}. In this network, there are three routes in which routes 1 and 2 provide services from stop A to stop B with [S.sup.1.sub.1] = [S.sup.1.sub.2] = A and [S.sup.2.sub.1] = [S.sup.2.sub.2] = B, and route 3 provides services from stop B to stop C with [S.sup.1.sub.3] = B and [S.sup.2.sub.3] = C. The stop times of transit vehicles in the network are shown in Table 1 with T = {0, ..., 16}, Q = {[q.sub.1], [q.sub.2], [q.sub.3]}, and C = {[C.sub.1], [C.sub.2], [C.sub.3]} in which each of the routes has two trips and each scenario q [member of] Q has an occurrence probability of [p.sup.q] = 1/3.

In this network, a traveler, who starts from origin stop A at time t = 0, has two choices of routes to reach destination stop C, namely, [mathematical expression not reproducible]. With Assumption (4), the choices of trips for the earliest arrival time at stop C in different scenarios are shown in Table 2. In particular, if the traveler uses the choice of routes [p.sub.1], his/her expected arrival time at stop C equals (11 + 12 + 16)/3 = 13. In this case, the choice of trips for [p.sub.1] can be interpreted that, at stop B, the traveler transfers to trip 1 of route 3 successfully in scenarios [q.sub.1] and [q.sub.2] but misses this trip in scenario [q.sub.3]. This leads to a later arrival time, that is, 16 instead of 10, at stop C, which contributes to the expected arrival time of the choice of routes [p.sub.1]. Similarly, we have the expected arrival time at stop C of the choice of routes [p.sub.2] that equals 12.66. Note that transfer failures might spread over several later trips, depending on scenario.

In this paper, the following assumptions are adopted:

(1) Actual travel times of transit vehicles between stops on a given route are nonnegative; that is,

[[theta].sup.q.sub.rik] < [[theta].sup.q.sub.ri,k+1], [for all]r, i, k, q. (5)

(2) Actual arrival times of transit vehicles for later trips cannot be earlier than those of earlier trips; that is,

[[theta].sup.q.sub.rik] < [[theta].sup.q.sub.r,i,1+k], [for all]r, i, k, q. (6)

(3) Arrival times of transit vehicles in different scenarios are statistically independent.

(4) Vehicle capacity, overcrowding, and fare issues are not considered. In other words, it is assumed that passengers always board any arriving transit vehicle successfully.

(5) There is a similar perception for passengers on different time components, such as waiting time, walking time, and in-vehicle time.

Assumptions (1) and (2) are expected to be valid in practice where it is conventional that transit vehicles serving trips on the same route keep away from each other at certain distance and their travel times are always positive. Assumption (3) is equivalent to the assumption used in the routing problem in highway network with correlated link travel times [4-6]; that is, link travel times in different scenarios are stochastically independent. Assumptions (4) and (5) have been widely adopted in literature, for example, [14, 18, 19, 25, 26].

3.2. Time-Dependent Model. A time-dependent graph model (similar to [24]) is used to present the transit network as a directed graph whose arcs model travelers' decisions, namely, boarding, traveling in vehicles, alighting, and walking.

Let G = (N, A, T) denote the graph modeling the transit network B, where the set of nodes N and the set of arcs A are defined as

(i) N = ([[union].sub.r[member of]R] [N.sub.r]) [union] [N.sub.S],

(ii) A = ([[union].sub.r[member of]R] [A.sub.r]) [union] [A.sub.B] [union] [A.sub.D] [union] [A.sub.W],

in which subsets of N and A are defined as follows:

[N.sub.S] is the set of stop nodes--anode [V.sub.s] [member of] [N.sub.S] represents the location of stop s [member of] S.

[N.sub.r] is the set of route nodes associated with route r [member of] R--anode [V.sup.r.sub.s] [member of] [N.sub.r] represents a transfer point where route r [member of] R visits stop s [member of] [S.sub.r].

[A.sub.B] is the set of boarding arcs--arc <u, v> [member of] [A.sub.B], where u [equivalent to] [V.sub.s] [member of] [N.sub.S] and v [equivalent to] [V.sup.r.sub.s] [member of] [N.sub.r], represents the action of a traveler boarding an arriving vehicle of route r at stop s.

[A.sub.r] is the set of in-vehicle arcs of route r [member of] R--arc <u, v> [member of] [A.sub.r], where u [equivalent to] [V.sup.r.sub.s] [member of] [N.sub.r] and v [equivalent to] [V.sup.r.sub.s'] [member of] [N.sub.r], represents the action of a traveler being in-vehicle of route r from stop s to stop s'.

[A.sub.W] is the set of walking arcs--arc <u, v> [member of] [A.sub.W], where u [equivalent to] [V.sub.s] [member of] [N.sub.S] and v [equivalent to] [V.sub.s'] [member of] [N.sub.S], represents the action of a traveler walking from stop s to stop s'.

[A.sub.D] is the set of alighting arcs--arc <u, v> [member of] [A.sub.D], where u [equivalent to] [V.sup.r.sub.s] [member of] [N.sub.r] and v [equivalent to] [V.sub.s] [member of] [N.sub.S], represents the action of a traveler alighting the current vehicle of route r at stop s.

Figure 2 presents the graph model for the transit network as shown in Figure 1. Let [P.sub.ov] denote all paths connecting node o [member of] N and node v [member of] N in graph G or all o-v paths in short. A well-defined o-v path p, defined in Definition 1, in graph G represents a choice of routes when he/she travels from origin stop [S.sub.o] [member of] S to destination stop [S.sub.d] [member of] S within the transit network B.

Definition 1 (well-defined o-v path). Path p = <o [equivalent to] [v.sub.1], ..., [v.sub.n] [equivalent to] v> [member of] [P.sub.ov] is well -defined if o, v [member of] [N.sub.S] and <[v.sub.i], [v.sub.i+1]> [member of] A, i = 1, ..., n - 1, n > 2.

3.3. Arc Time and Transfer Weights. Note that only travelers' decisions are captured in Section 3.2. For modeling constraints on times when the schedules of transit vehicles are taken into account, times are then assigned to arcs as arc weights.

Let [[tau].sup.q.sub.uv] (t) be the time weight on arc <u, v> [member of] A with time t [member of] T at node u in scenario q [member of] Q. Depending on the type of arc <u, v>, the time weight is either boarding penalty, in-vehicle travel time, alighting penalty, or walking time. In particular, [[tau].sup.q.sub.uv] (t) can be assigned according to the four following cases.

Case 1. If <u, v> [member of] [A.sub.B], where [mathematical expression not reproducible], the traveler stands at the kth stop at time t and boards a vehicle of arriving trip of route r. Due to unlimited vehicle capacity assumption, the boarded trip is commonly the first arriving one [24, 36, 37]. For boarding an arriving trip, the traveler must be at the stop before the bus of that trip leaves the stop by at least [[bar.[epsilon]].sup.k.sub.ri] units of time (note that herein a is set to one and will be omitted for convenience in the rest of the paper). The boarding penalty for the first arriving trip if the traveler stands at the kth stop of route r at time t is expressed by

[mathematical expression not reproducible]. (7)

Case 2. If <u, v> [member of] [A.sub.r], r [member of] R, where [mathematical expression not reproducible], the traveler rides on a vehicle serving a certain trip, for example, the ith trip, and travels from the (k - 1)th stop to kth stop on route r. The time weight on arc <u, v> is therefore the in-vehicle travel time of the ith trip from the (k - 1)th to kth stop. The in-vehicle travel time of the ith trip from the (k - 1)th stop to kth stop on route r is

[mathematical expression not reproducible], (8)

where the traveler's arrival time t at the (k - 1)th stop is the stop time [[theta].sup.q.sub.ri,k-1] of the vehicle in scenario q.

Case 3. If <u, v> [member of] [A.sub.D], where [mathematical expression not reproducible], the traveler alights from a vehicle serving a trip, for example, the ith trip, at the kth stop of route r. The arc time weight can be expressed by

[mathematical expression not reproducible], (9)

where [[[epsilon].bar].sup.k.sub.ri] is the alighting time for the ith trip at the kth stop on route r.

Case 4. If <u, v> [member of] [A.sub.W], where u [equivalent to] [V.sub.s] and v [equivalent to] [V.sub.s'], the traveler walks from stop s to stop s'. Let [[omega].sub.ss'] be the minimum time required for walking between stops s and s', and the walking time weight is given by

[[tau].sup.q.sub.uv] (t) = [[omega].sub.ss'], u [equivalent to] [V.sub.s], v [equivalent to] [V.sub.s']. (10)

Let [f.sub.uv] be the weight for the number of transfers on arc <u, v>. Note that [f.sub.uv] does not depend on time and scenario. The arc weight for number of transfers equals one if the arc is a boarding arc and zero for otherwise. Therefore,

[mathematical expression not reproducible]. (11)

In summary, Table 3 shows the arc time weights in the example graph model in Figure 2 after applying (7), (8), (9), and (10) with boarding penalty [[bar.[epsilon]].sup.k.sub.ri] = 1 and alighting penalty [[[epsilon].bar].sup.k.sub.ri] = 0. Each arc with symbol "-" at a given time and in a given scenario means the traveler's action associated with that arc is restricted at that time and scenario. For example, considering arc <[V.sub.B], [V.sup.2.sub.B]>, in scenario [q.sub.1], from times 0 to 9 the arc represents the traveler's action of boarding route 2 at stop B with different boarding penalties; that is, from times 0 to 6 the traveler boards trip 1 with penalties from 7 to 1, and from times 7 to 9 the traveler boards trip 2 with penalties from 3 to 1. After time 9 the traveler's boarding action is restricted since no trip of route 2 will arrive at stop B in scenario q1 (see the timetable in Table 1). Note that only walking arcs, that is, <[V.sub.A], [V.sub.B]> and <[V.sub.B], [V.sub.A]>, are available at anytime since travelers can walk freely. For shortest path problems, restricted actions can be set with very large integer weights.

4. Least Expected Time (LET) Path Problem

In Section 3, we propose and explain the graph modeling transit network that captures travelers' actions, namely, boarding, in-vehicle, alighting, and walking, and time constraints associated with travelers' decisions. Below we will study the LET path problem in stochastic schedule-based transit networks using the graph model.

4.1. Problem Definition. The LET path problem in this paper is studied from one origin node o [member of] N for a fixed departure time t to all destination nodes v [member of] N over a scenario set [OMEGA] [subset or equal to] Q. The criteria used for evaluating a path include the number of transfers and the expected total travel time across the set of scenarios [OMEGA].

Let [[tau].sup.q.sub.[lambda]] (u, t) be the travel time on o-u path [lambda], u [member of] N, in scenario q [member of] [OMEGA]. Let us consider o-v path [lambda]' that is expanded from o-u path [lambda] via arc <u, v> [member of] A, denoted by [lambda]' = [lambda] [??] <u, v>. The relationship between travel time on path [lambda]' and that of its subpath [lambda] for departure time t in scenario q is given by

[[tau].sup.q.sub.[lambda]'] (v, t) = [[tau].sup.q.sub.[lambda]] (u, t) + [[tau].sup.q.sub.uv] (t + [[tau].sup.q.sub.[lambda]] (u, t)), (12)

where [[tau].sup.q.sub.uv] (t) is the time weight on arc <u, v> at time t. Depending on the type of arc <u, v>, arc weight [[tau].sup.q.sub.u,v] (t) is determined by one of (7), (8), (9), and (10). When Assumption (3) holds, the expected (mean) travel time of o-v path [lambda]' with departure time t over scenario set [OMEGA], denoted by [T.sub.[lambda]'] (v, t, [OMEGA]), is given by

[T.sub.[lambda]'] (v, t, [OMEGA]) = 1/[[summation].sub.q[member of][OMEGA]] [p.sup.q] [summation over (q [member of] [OMEGA])] [[tau].sup.q.sub.[lambda]'] (v, t) [p.sup.q], (13)

where [p.sup.q] is the occurrence probability of scenario q and [T.sub.[lambda]'] (o, t, [OMEGA]) = 0.

We also have the relationship between the number of transfers on path [lambda]', that is, [f.sub.[lambda]'] (v), and the number of transfers on its subpath [lambda], that is, [f.sub.[lambda]] (u), in the following:

[f.sub.[lambda]'] (V) = [f.sub.uv] + [f.sub.[lambda]] (u), (14)

where weight [f.sub.uv] for the number of transfers on arc <u, v> is given by (11), and [f.sub.[lambda]'] (o) = 0.

From the transit travelers' perspective, it is more useful that we aim to minimize the number of transfers first and then the expected travel time across the scenario set. The LET path is given by Definition 2.

Definition 2 (LET o-v path). The LET o-v path [[lambda].sup.*] with departure time t [member of] T over scenario set [OMEGA] [subset or equal to] Q, [for all]v [member of] N, is given by

[mathematical expression not reproducible]. (15)

4.2. Dominance Condition. A LET o-v path problem with departure time t [member of] T over scenario set [OMEGA] [member of] Q defined in (15) can be solved by enumerating all possible o-v paths [P.sub.ov] and then minimizing the number of transfers and the expected travel time of each o-v path in [P.sub.ov] for departure time t over [OMEGA] using (12) and (14). Such a brute force algorithm is inefficient. We therefore propose a dominance condition by which the optimal LET path is satisfied. First, we define a dominance condition in Definition 3. Then, the LET o-v path for departure time t over scenario set [OMEGA] is found in the set of nondominated o-v paths at time t over [OMEGA] by Proposition 4.

Note that the dominance condition in Definition 3 is not as strict as the one with at least one scenario q [member of] Q such that [[tau].sup.q.sub.[lambda]'] (v, t) < [[tau].sup.q.sub.[lambda]] (v, t). This is because, in the constructed graph described in Section 3.2, there might exist many nondominated paths, which present the same choice of routes and are only different from each other in transfer locations.

Definition 3 (nondominated o-v path). Given a departure time t [member of] T, o-v path [lambda]', [for all]v [member of] N, dominates another o-v path over the scenario set [OMEGA] [subset or equal to] Q, if

[f.sub.[lambda]'] (v) < [f.sub.[lambda]] (v), or [f.sub.[lambda]'] (v) = [f.sub.[lambda]] (v), (16)

[[tau].sup.q.sub.[lambda]'] (v, t) [less than or equal to] [[tau].sup.q.sub.[lambda]] (v, t), [for all]q [member of] [OMEGA]. (17)

Then o-v path [lambda]' is nondominated in [P.sub.ov] for departure time t over scenario set [OMEGA] if [lambda]' is not dominated by any o-v path at time t over [OMEGA].

Proposition 4. Given a departure time t [member of] T and a set of scenarios [OMEGA] [subset or equal to] Q, the LET o-v path at time t over [OMEGA], [for all]v [member of] N, belongs to the set of nondominated o-v paths at time t over [OMEGA].

By Definition 3, the problem of determining nondominated o-d paths can be treated as multicriteria shortest path problem with ([absolute value of (Q)] + 1) independent criteria, namely, number of transfers, as well as travel times corresponding to [absolute value of (Q)] scenarios. Theorem 7 below implies that Bellman's principle of optimality is valid when nondominated paths are defined with respect to their nondominated subpaths. We later develop a forward label-correcting algorithm to solve the LET path problem based on Theorem 7. Note that Theorem 7 is established on the grounds of Lemmas 5 and 6, being only valid when Assumptions (1) and (2) hold.

Lemma 5. For any given arc <u, v> [member of] A, [f.sub.uv] [greater than or equal to] 0, and [[tau].sup.q.sub.uv] (t) [greater than or equal to] 0, [for all]t [member of] T, [for all]q [member of] Q.

Lemma 6. For any given arc <u, v> [member of] A, if [t.sub.1] [less than or equal to] [t.sub.2],

[t.sub.1] + [[tau].sup.q.sub.uv] ([t.sub.1]) [less than or equal to] [t.sub.2] + [[tau].sup.q.sub.uv] ([t.sub.2]), [for all] [t.sub.1], [t.sub.2] [member of] T, [for all]q [member of] Q. (18)

Theorem 7. Given departure time t [member of] T and a set of scenarios Q [subset or equal to] Q, every nondominated o-v path [[lambda].sup.*] is made up from nondominated o-u subpaths, where u is any intermediate node on path [lambda].

4.3. Relationship between Nondominated, LET, and the Fastest Paths

Definition 8 (the fastest o-v path). Given departure time t [member of] T and scenario q [member of] Q, the fastest o-v path [[gamma].sup.*] at time t in scenario q, [for all]v [member of] N, is given by

[mathematical expression not reproducible]. (19)

Proposition 9. Given the fastest o-v path [[gamma].sup.*] at time t in scenario q [member of] Q, [for all]v [member of] N, and a set of nondominated o -v paths at time t over the scenario set Q [subset or equal to] Q, if q [member of] Q, [[gamma].sup.*] belongs to the set of nondominated o-v paths at time t over [OMEGA].

Proposition 10. Given departure time t and two sets of scenarios [OMEGA], [OMEGA]' [subset or equal to] Q, of [OMEGA] [subset or equal to] [OMEGA]' the set of nondominated o-v paths at time t over [OMEGA] is a subset of the set of nondominated o-v paths at time t over [OMEGA]', [for all]v [member of] N.

By Propositions 4,9, and 10, we can establish the relationship between nondominated, LET, and the fastest o-v paths for departure time t over universal scenario set Q and its subset [OMEGA] as shown in Figure 3. By determining the set of nondominated o-v paths over the universal scenario set Q at departure time we can obtain LET o-v path at time t over any subset of Q. The relationship is beneficial when prejourney online information is used to determine these subsets.

4.4. Label-Correcting Algorithm. The algorithm for determining the LET paths is based on the link-based approach, using the optimality condition stated in Theorem 7, which is only valid as Assumptions (1) and (2) hold. Since the proposed approach helps avoid enumerating all possible origin-destination paths, it is feasible in real-time applications. Note that Theorem 7 can be still valid with simple modifications in the dominance condition when other criteria, such as fare and walking distance, are taken into account as long as the arc weights for these criteria are positive and time-independent. Consequently, we can incorporate travelers' weightings on different criteria, such as number of transfers, total travel time, fare, and walking distance, in the routing process.

Nevertheless, one drawback of our approach is that it does not allow taking into account travelers' weightings on different time components, such as boarding time and in-vehicle travel time, since the arc weights for these time components are time-dependent. Several works in literature solved this issue using the path enumeration method [27,28] or the branch and bound method [8]. However, these solution approaches are infeasible for real-time applications, especially in stochastic transit networks herein considering the stochastic correlation among stop times of transit vehicles. Our proposed algorithm is developed as follows.

Given departure time for each node u [member of] N and each o-m path [lambda], the algorithm maintains a vector label

[[LAMBDA].sub.[lambda]] (u) = ([f.sub.[lambda]] (u), [[tau].sup.q.sub.[lambda]] (u, t), [for all]q [member of] Q). (20)

Let L(u) be the set of nondominated labels corresponding to the set of nondominated o-m paths at time t over the set of scenarios Q. According to Theorem 7, each label [[LAMBDA].sub.[lambda]] (u) [member of] L(u) contains the information of nondominated o-m path [lambda] that has potential to be a nondominated origin-destination path at time t over Q when the algorithm terminates, where label [[LAMBDA].sub.[lambda]] (u) is nondominated in L(u) at time t over Q if [lambda] is a nondominated o-m path at time t over Q (see Definition 3).

At each iteration of the algorithm, label [[LAMBDA].sub.[lambda]] (u) is selected from queue X that contains a nondominated candidate path [lambda]. Path [lambda] is expanded via arc <u, v> [member of] A. Depending on the type of arc <u, v>, a temporary label [[LAMBDA].sub.[lambda]'] (v) for path [lambda]' = [lambda][??]<u, v> is constructed with weights calculated by (12) and (14). To determine if a new label [[LAMBDA].sub.[lambda]'] (v) is nondominated, it is compared with the nondominated labels L(v) at node v. Details for the algorithm are presented in Algorithm 1.

Algorithm 1 is equivalent to multicriteria shortest path algorithm for ([absolute value of (Q)] + 1) independent criteria and terminates after a finite number of steps with a set of nondominated paths at each node [38]. The algorithm is computationally intractable as the number of nondominated paths examined by the algorithm grows exponentially in the worst case [39]. However, the experiments in Section 5 show that the number of examined nondominated paths in a typical transit network is much smaller than that of the worst case.

4.5. Illustrative Example. Consider the transit network in Figure 1 and its schedules as shown in Table 1. The time-dependent graph and its arc times are shown in Figure 2 and Table 3, respectively, with boarding penalty [[bar.[epsilon]].sup.k.sub.ri] = 1 and alighting penalty [[[epsilon].bar].sup.k.sub.ri] = 0. Figure 4 shows nondominated vector labels at all nodes in the time-dependent graph for origin node o = [V.sub.A], destination node d = [V.sub.C], and departure time t = 0 over the universal scenario set Q = {[q.sub.1], [q.sub.2], [q.sub.3]} and two nondominated o-d paths:

[mathematical expression not reproducible], (21)

after the termination of the LET-Path Algorithm 1. Each sequence of dashed-line arrows in Figure 4 gives travel times along a nondominated path in the corresponding scenario. Note that each path corresponds to a choice of routes and each sequence of dashed-line arrows corresponds to a choice of trips as shown in Table 2.
ALGORITHM 1: LET-Path search.

Input: the origin o, the destination d, the departure time t, and the
universal set of scenarios Q

Output: the LET o-d path at time t over [OMEGA] [subset or equal to]
Q, where [OMEGA] is the realized scenarios at time t

(1) Create an initial path [[lambda].sub.0] with the origin node o;
(2) L(u) = 0 for all u [member of] N;
(3) Create label [mathematical expression not reproducible];
(4) [mathematical expression not reproducible];
(5) [mathematical expression not reproducible];
(6) while Q [not equal to] 0 do
(7)      Extract and remove a label [[LAMBDA].sub.[lambda]] (u) from
           queue X;
(8)      for v [member of] [GAMMA](u), [GAMMA](u) = {v : <u, v>
           [member of] A} do
(9)        Create a new path [lambda]' = [lambda][??] <u, v>;
(10)       Depending on the type of <u, v>, calculate travel time
             weight [[tau].sup.q.sub.uv] (t), [for all]q [member of]
             Q, using one of (7)-(10), and calculate transfer weight
             [f.sub.uv] using (11);
(11)       Calculate [[tau].sup.q.sub.[lambda]'] (v, t), [for all]q
             [member of] Q, using (12), and calculate
             [f.sub.[lambda]'] (v) using (14);
(12)       Create a new label [[LAMBDA].sub.[lambda]'] (v) with
             [f.sub.[lambda]'] (v), and [[tau].sup.q.sub.[lambda]']
             (v, t), [for all]q [member of] Q;
(13)       if label [[LAMBDA].sub.[lambda]'] (v) is non-dominated in
             L(v) then
(14)         Remove all labels [[LAMBDA].sub.[lambda]"] (v)
               [member of] L(v) dominated by [[LAMBDA].sub.[lambda]']
               (v);
(15)         L (v)= L (v) [union] {[[LAMBDA].sub.[lambda]'] (v)};
(16)         X = X [union] {[[LAMBDA].sub.[lambda]'] (v)};
(17) Let [OMEGA] [subset or equal to] Q be the scenarios realized at
  time t;
(18) Apply (13) and (15) for the set of non-dominated paths L(d) over
  the set of scenarios Q to obtain the LET o-d path;


Table 4 gives the summary of the obtained LET o-d paths with respect to subsets [OMEGA] of Q. As the relationship shown in Figure 3, the set of nondominated o-d paths over Q is the superset of all sets of nondominated o-d paths over [OMEGA] [subset or equal to] Q and also contains the fastest o-d paths when each of scenarios [q.sub.1], [q.sub.2], and [q.sub.3] occurs.

5. Experiments

In this section we conduct large numerical experiments aiming to investigate (1) the average running time of the proposed LET-Path algorithm; (2) the set of nondominated o-d paths; and (3) the robustness of LET paths in the presence of unknown scenarios.

5.1. Experiment Setups. The experiments are conducted on Ho Chi Minh City (HCMC) bus network (Figure 5). The network consists of 1,340 stops, 40 routes, and 1,445 physical links, that is, direct links connecting pairs of consecutive stops on routes. Walking shortcuts are available between stops in a radius of less than 500 meters, and the average walking speed is approximately 2 km/h. Intervals between consecutive trips are 15 minutes and scheduled stop times are generated from 7:00 am to 4:00 pm. The graph model has 5,943 nodes and 13,227 arcs with boarding penalty [[bar.[epsilon]].sup.k.sub.ri] = 1 minute and alighting penalty [[[epsilon].bar].sup.k.sub.ri] = 0 minutes.

The data set for experiments is made up from 500 random user requests (o, d, t) where o-d pairs are generated randomly with the constraint that the distance between origin and destination is at least 5 km, and departure time t is generated from 7:30 am 1:00 pm to make sure that path times are not later than the ending time at 4:00 pm. The experimental environment is 2.6 GHz dual-core Intel Xeon ES405 2.00 Hz, 3 GB RAM, on CentOS under Java Runtime Environment 1.6 (JRE 1.6) and MySQL 5.2 database.

For studying the robustness of the proposed scenario-based approach, we compare the path found by our approach with that of certain equivalence (CE) approximation [5], in which stop times of transit vehicles are deterministic.

The CE approximation replaces every stop time random variable by its expected value over the margin distribution. In particular, the expected stop time for the ith trip at the kth stop on route r over the scenario set Q [subset or equal to] Q is calculated by

E [[X.sup.[OMEGA].sub.rik]] = 1/[[summation].sub.q[member of][OMEGA]] [p.sup.q] [summation over (q [member of] [OMEGA])] [[theta].sup.q.sub.rik] [p.sup.q], (22)

where [X.sup.[OMEGA].sub.rik] is the independent random stop time for the ith trip at the kth stop on route r over [OMEGA]. Thus, the stochastic network with [absolute value of (Q)] scenarios is transformed into a deterministic network with only one scenario.

So far, we assume that exact information on the probability distribution of stop times is not available, and therefore it is impossible to build a sufficient number of scenarios that can precisely describe the uncertainty of schedules. Suppose that q [member of] Q is the unknown scenario that will actually happen and [OMEGA] = Q \ {q} is the set of known scenarios. For a given o-d pair and departure time t, let [[lambda].sup.*] and [[gamma].sup.*] be the LET o-d path at time t over scenarios Q and the fastest o-d path at time t in scenario where paths [[lambda].sup.*] and [[gamma].sup.*] are given by (19) and (15), respectively. Then, when scenario q actually happens, the desired optimal path will be [[gamma].sup.*]. However, since only scenario set [OMEGA] is known, the proposed approach is robust if the expected travel time of path [[lambda].sup.*] does not deviate much from that of path [[gamma].sup.*]. Hence, the robustness of proposed approach is evaluated using the deviation of travel times of paths [[lambda].sup.*] and [[gamma].sup.*] in all unknown scenarios q [member of] Q for all triples (o, d, t). The evaluated criteria (or considered performance metrics) are as follows:

(1) Precision, the ratio between the number of cases in which LET o-d path [[lambda].sup.*] is also the fastest o-d path [[gamma].sup.*] and the number of total cases.

(2) Mean absolute percentage error (MAPE), the average deviation percentage between the actual and expected travel time of the LET o-d path [[lambda].sup.*].

(3) The fastest path mean absolute percentage error (FMAPE), the average deviation percentage between the actual travel time of the fastest o-d path [[gamma].sup.*] and the actual travel time of LET o-d path [[lambda].sup.*].

The metrics Precision, MAPE, and FMAPE are given by

[mathematical expression not reproducible], (23)

where m(x, y) = 1 if x = y and m(x, y) = 0 otherwise, and

[mathematical expression not reproducible], (24)

where N is number of triples (o, d, t) being experimented, and [OMEGA] = Q \ {q}.

5.2. Schedule Generations. To generate scheduled stop times of transit vehicles (or buses), for each time interval t [member of] T and each scenario q [member of] Q, a direct link between two stops s and s is assigned a random integer speed v(s, s', t, q), which follows the normal probability distribution ~ N([mu] = 18, [[sigma].sup.2] = [5.sup.2]) km/h. The number of generated scenarios is [absolute value of (Q)] = 400, which is equivalent to 400 days of tracking trajectories of all buses in the network, and the scenarios are assumed to be uniformly distributed. The stop time for the ith trip at the (k + 1)th stop on route r in scenario q is calculated by

[mathematical expression not reproducible], (25)

where d(s, s') is the travel distance between stops s and s' and stop time [[theta].sup.q.sub.ri(1)] is a perscheduled value at the begining of the trip. Assumption (1) is always true with (25). To make sure Assumption (2) holds, we use the following constraint for each time a new stop time is being calculated by (25):

[[theta].sup.q.sub.r,i+1,k] = max {[[theta].sup.q.sub.rik], [[theta].sup.q.sub.r,i+1,k]}. (26)

Figures 6(a) and 6(b) plot trajectories generated for one trip under 400 scenarios and for all trips in one scenario, respectively.

Note that no stochastic dependency is applied to stop time generations and link speeds independently fluctuate within a range [3, 33] km/h underpinned by the normal distribution ~ N([mu] = 18, [[sigma].sup.2] = [5.sup.2]). However, by (25) and (26), only stop times of trips on the same route or on routes with shared links are correlated which is also observable in practice.

5.3. Results. To give an overview of LET paths found in the experiments, we first examine the impact of different sets of scenarios on LET o-d paths. We conduct the experiments on random subsets of the universal scenario set Q with different numbers of sampled scenarios being 1, 50, ..., 400. Table 5 shows that, due to (15), numbers of transfers of LET o-d paths are always minimized and do not depend on the scenario set. This also implies that the number of transfers of LET o-d path only depends on the topology of the network. Similarly, different subsets of Q do not cause significant impacts on waiting times, as well as travel and walking distances.

For investigating the average running time of LET-Path algorithm, Figures 7 and 8 show the average running time of the LET-Path algorithm and the average number of nondominated paths at all nodes after the termination of algorithm. Note that the algorithm finds nondominated paths from one origin to all nodes. Hence, the running time of the algorithm increases when the number of nondominated paths at each node increases. In particular, as the scenario set increases, by Definition 3 the condition for a path dominated by another path in all scenarios is looser. This results in an increase in the number of nondominated paths. The results also show that the number of nondominated paths generated is not exponential as proved in the worst case, and running times are feasible for real-time applications.

For studying the impact of scenario sets on the number of nondominated o-d paths, Figure 9 shows that the number of nondominated o-d paths is proportional to the size of scenario set. The result also comes from the looser dominance condition when the size of the scenario set increases.

Table 6 compares the robustnesses of scenario-based approach and the certain equivalence approach. The results show that scenario-based approach is superior to the certain equivalence approach in all the evaluated criteria, namely, Precision, MAPE, and FMAPE. In addition, despite a high MAPE (8.52%), which is still less than that of certain equivalence approach (11.59%), the difference between actual travel time of the LET o-d path and that of the fastest o-d path for the same departure time and scenario set is only 1.82%, and in up to 86.58% of queries the LET o-d path is also the fastest o-d path. Although scenario-based approach produces a large error in travel time prediction (8.52%) when the actual scenario is unknown, the travel time of found LET o-d path and the travel time of the fastest path in the actual scenario do not deviate much (1.82%). These results prove that LET o-d paths are robust even when the actual scenario is unknown.

6. Conclusions

The LET path problem, which minimizes the expected travel time between a given origin-destination pair for a given departure time across a set of known scenarios, has been investigated. A dominance condition was established and a formal proof has been provided that Bellman's principle of optimality is valid with the established dominance condition. An exact label-correcting algorithm was developed based on Bellman's principle. Comprehensive computational studies have been conducted using the real-size bus network in Ho Chi Minh City (HCMC, Vietnam). The experimental results show that the running time of LET-Path algorithm is suitable for real-time applications and LET paths are robust. However, scenario-based approach has two major issues:

(1) It is impossible to build a sufficient number of scenarios that can precisely describe the uncertainties due to the lack of information on probability distribution of stop times.

(2) Even if all stop time information is available, the number of scenarios will grow exponentially. In particular, [mathematical expression not reproducible] scenarios are required to present all possible scenarios, which are generated from independent stop times, where L is average number of support points of marginal probability distribution of one stop time.

For the first issue, the computational results from Table 6 proved the robustness of LET paths found by scenario-based approach when unknown scenarios happen. Regarding the second issue, as results shown in Table 5, the number of transfers of a LET path does not depend on the scenario set, but on the network topology, and the average number of transfers is small, that is, approximately 2. In addition, the average size of set of nondominated origin-destination paths over 400 scenarios is less than 6 (Figure 9). That means in average only maximum 2x6 routes make up a nondominated origin-destination path set. Hence, for a given origin-destination pair, we can determine the set of routes that cover nondominated origin-destination paths. Then we can treat these routes as an impact area of the origin-destination pair and generate stop time scenarios for this area instead of the complete network.

Appendix

Proof of Proposition 4. Suppose [[lambda].sup.*] is LET u-v path at time t and over [OMEGA]. According to (15), [mathematical expression not reproducible] is minimum for time t over Q with condition [mathematical expression not reproducible] being minimum. Since [mathematical expression not reproducible] is minimum, there is no o-v path that dominates [[lambda].sup.*] by condition in (16). At the same time, since [mathematical expression not reproducible] is minimum at time t over [OMEGA], for any nondominated o-v path [lambda], there exists at least one scenario q [member of] [OMEGA] such that [mathematical expression not reproducible]. So there is no o-v path that dominates [[lambda].sup.*] by condition (17). By satisfying conditions in (16) and (17), LET o-v path [[lambda].sup.*] belongs to the set of nondominated o-v paths at time t over [OMEGA].

Proof of Lemma 5. According to (11), we have [f.sub.uv] [greater than or equal to] 0, [for all]<u, v> [member of] A. According to (7), (9), and (10), we have [[tau].sup.q.sub.uv] (t) [greater than or equal to] 0, [for all] <u, v> [member of] A, [for all]t [member of] T, [for all]q [member of] Q, in Cases 1, 3, and 4. According to (8), the proof is complete in Case 2 due to Assumption (1).

Proof of Lemma 6. We prove the following possible cases.

Case 1. According to (7), if [t.sub.1] [less than or equal to] [t.sub.2], the boarding trip for arriving time [t.sub.1] is earlier than or at least equals the boarding trip for arriving time [t.sub.2]. Due to Assumption (2), the proof is complete.

Case 2. According to (8), if [t.sub.1] [less than or equal to] [t.sub.2], the trip for stop time [t.sub.1] + [[tau].sup.q.sub.uv] ([t.sub.1]) is earlier than or at least equals that of stop time [t.sub.2] + [[tau].sup.q.sub.uv] ([t.sub.2]). Due to Assumption (2), the proof is complete.

Cases 3 and 4. According to (9) and (10), the proof is trivial.

Proof of Theorem 7. Suppose [[lambda].sup.*] is a nondominated o-v path at time t over [OMEGA], [for all]v [member of] N, and [lambda] is extended from dominated o-u path [lambda] via arc <u, v> [member of] A, as then there exists a nondominated o-u path [lambda]' that dominates [lambda] at time t over [OMEGA]. Suppose [mathematical expression not reproducible]. According to Lemmas 5 and 6, o-v path [??] dominates nondominated o-v path [lambda]. The theorem is proved by contradiction.

Proof of Proposition 9. If o-v path [[gamma].sup.*] is the fastest o-v path at time t in scenario q [member of] [OMEGA], according to (15), there are no other o-v paths [lambda] such that [mathematical expression not reproducible]. This also means no other o-v paths dominate [[gamma].sup.*] at time t over [OMEGA]. Therefore, [[lambda].sup.*] is nondominated o-v path at time t over [OMEGA].

Proof of Proposition 10. For any non-dominated o-v path [lambda] at time t over [OMEGA], there is no other o-v path [lambda]' such that [f.sub.[lambda]'] (v) < [f.sub.[lambda]] (v) and [[tau].sup.q.sub.[lambda]'] (v, t) [less than or equal to] [[tau].sup.q.sub.[lambda]] (v, t), [for all]q [member of] [OMEGA]. Due to [OMEGA] [subset or equal to] [OMEGA]', there is also no other o-v path [lambda]' such that [f.sub.[lambda]'] (v) < [f.sub.[lambda]] (v) and [[tau].sup.q.sub.[lambda]'] (v, t) [less than or equal to] [[tau].sup.q.sub.[lambda]] (v, t), [for all]q [member of] [OMEGA]'. According to Definition 3, the proof is complete.

http://dx.doi.org/10.1155/2016/7609572

Competing Interests

The authors declare that they have no competing interests.

Acknowledgments

This research was supported by Vietnam National Foundation for Science and Technology Development (NAFOSTED) under Grant no. 102.01-2012.01.

References

[1] S. T. Waller and A. K. Ziliaskopoulos, "On the online shortest path problem with limited arc cost dependencies," Networks, vol. 40, no. 4, pp. 216-227, 2002.

[2] B. Y. Chen, W. H. K. Lam, A. Sumalee, and Z.-L. Li, "Reliable shortest path finding in stochastic networks with spatial correlated link travel times," International Journal of Geographical Information Science, vol. 26, no. 2, pp. 365-386, 2012.

[3] W. Dong, H. L. Vu, Y. Nazarathy, B. Q. Vo, M. Li, and S. P. Hoogendoorn, "Shortest paths in Stochastic time-dependent networks with link travel time correlation," Transportation Research Record, no. 2338, pp. 58-64, 2013.

[4] G. H. Polychronopoulos and J. N. Tsitsiklis, "Stochastic shortest path problems with recourse," Networks, vol. 27, no. 2, pp. 133-143, 1996.

[5] S. Gao and I. Chabini, "Optimal routing policy problems in stochastic time-dependent networks," Transportation Research Part B, vol. 40, no. 2, pp. 93-122, 2006.

[6] H. Huang andS. Gao, "Optimal paths in dynamic networks with dependent random link travel times," Transportation Research Part B: Methodological, vol. 46, no. 5, pp. 579-598, 2012.

[7] C. Tong, A schedule-based transit network model [Ph.D. thesis], Monash University, Victoria, Australia, 1986.

[8] S. C. Wong and C. O. Tong, "Estimation of time-dependent origin-destination matrices for transit networks," Transportation Research Part B: Methodological, vol. 32, no. 1, pp. 35-48, 1998.

[9] A. Nuzzolo and F. Russo, "Departure time and path choice models for intercity transit assignment," in Proceedings of the 7th IATBR Conference, Valle Nevado, Chile, June 1994.

[10] F. Schulz, D. Wagner, and K. Weihe, "Dijkstra's algorithm online: an empirical case study from public railroad transport," Journal of Experimental Algorithmics, vol. 5, article 12, 2000.

[11] C. O. Tong and S. C. Wong, "A stochastic transit assignment model using a dynamic schedule-based network," Transportation Research PartB, vol. 33, no. 2, pp. 107-121, 1999.

[12] A. Nuzzolo, F. Russo, and U. Crisalli, "A doubly dynamic schedule-based assignment model for transit networks," Transportation Science, vol. 35, no. 3, pp. 268-285, 2001.

[13] M. Muller-Hannemann and M. Schnee, "Finding all attractive train connections by multi-criteria pareto search," in Algorithmic Methods for Railway Optimization, vol. 4359 of Lecture Notes in Computer Science, pp. 246-263, Springer, Berlin, Germany, 2007.

[14] L. Hame and H. Hakula, "Dynamic journeying in scheduled networks," IEEE Transactions on Intelligent Transportation Systems, vol. 14, no. 1, pp. 360-369, 2013.

[15] R. Dial, "Transit pathfinder algorithm," Highway Research Record, vol. 205, pp. 67-85, 1967.

[16] S. Nguyen and S. Pallottino, "Equilibrium traffic assignment for large scale transit networks," European Journal of Operational Research, vol. 37, no. 2, pp. 176-186, 1988.

[17] H. Spiess and M. Florian, "Optimal strategies: a new assignment model for transit networks," Transportation Research Part B, vol. 23, no. 2, pp. 83-102, 1989.

[18] Q. Li, P. Chen, and Y. Nie, "Finding optimal hyperpaths in large transit networks with realistic headway distributions," European Journal of Operational Research, vol. 240, no. 1, pp. 98-108, 2015.

[19] R. W. Hall, "The fastest path through a network with random time-dependent travel times," Transportation Science, vol. 20, no. 3, pp. 182-188, 1986.

[20] E. W. Dijkstra, "A note on two problems in connexion with graphs," Numerische Mathematik, vol. 1, no. 1, pp. 269-271, 1959.

[21] A. Nuzzolo and U. Crisalli, "The schedule-based approach in dynamic transit modeling: a general overview," in Schedule-Based Dynamic Transit Modeling: Theory and Applications, N. H. M. Wilson and A. Nuzzolo, Eds., chapter 1, pp. 1-24, Springer, 2004.

[22] J. Anez, T. de la Barra, and B. Perez, "Dual graph representation of transport networks," Transportation Research Part B, vol. 30, no. 3, pp. 209-216, 1996.

[23] C. O. Tong and A. J. Richardson, "Estimation of time-dependent origin-destination matrices for transit networks," Transportation Research PartB, vol. 18, pp. 145-161, 1984.

[24] E. Pyrga, F. Schulz, D. Wagner, and C. Zaroliagis, "Towards realistic modeling of time-table information through the time-dependent approach," Electronic Notes in Theoretical Computer Science, vol. 92, pp. 85-103, 2004.

[25] M. Datar and A. Ranade, "Commuting with delay prone buses," in Proceedings of the 11th Annual ACM SIAM Symposium on Discrete Algorithms, pp. 22-29, Society for Industrial and Applied Mathematics, San Francisco, Calif, USA, January 2000.

[26] J. Boyan and M. Mitzenmacher, "Improved results for route planning in stochastic transportation networks," in Proceedings of the Symposium on Discrete Algorithms, Washington, DC, USA, January 2001.

[27] W. Y. Szeto, M. Solayappan, and Y. Jiang, "Reliability-based transit assignment for congested stochastic transit networks," Computer-Aided Civil and Infrastructure Engineering, vol. 26, no. 4, pp. 311-326, 2011.

[28] W. Y. Szeto, Y. Jiang, K. I. Wong, and M. Solayappan, "Reliability-based stochastic transit assignment with capacity constraints: formulation and solution method," Transportation Research--Part C: Emerging Technologies, vol. 35, pp. 286-304, 2013.

[29] Q. Fu, R. Liu, and S. Hess, "A review on transit assignment modelling approaches to congested networks: a new perspective," Procedia--Social and Behavioral Sciences, vol. 54, pp. 1145-1155, 2012.

[30] O. A. Nielsen and R. D. Frederiksen, "Large-scale schedule-based transit assignment further optimization of the solution algorithms," in Schedule-Based Modeling of Transportation Networks, N. H. M. Wilson and A. Nuzzolo, Eds., Kluwer Academic, New York, NY, USA, 2007.

[31] M. Friedrich, "Multi-day dynamic transit assignment," in Schedule-Based Modeling of Transportation Networks, N. H. M. Wilson and A. Nuzzolo, Eds., Kluwer Academic Publisher, 2007.

[32] C. O. Tong and S. C. Wong, "A minimum path algorithms for a schedule-based transit network with a general fare structure," in Schedule-Based Dynamic Transit Modeling: Theory and Applications, N. H. M. Wilson and A. Nuzzolo, Eds., pp. 241-262, Kluwer Academic Publishers, 2004.

[33] Y. Hamdouch and S. Lawphongpanich, "Schedule-based transit assignment model with travel strategies and capacity constraints," Transportation Research Part B: Methodological, vol. 42, no. 7-8, pp. 663-684, 2008.

[34] A. Sumalee, Z. Tan, and W. H. K. Lam, "Dynamic stochastic transit assignment with explicit seat allocation model," Transportation Research Part B: Methodological, vol. 43, no. 8-9, pp. 895-912, 2009.

[35] A. Nuzzolo, U. Crisalli, and L. Rosati, "A schedule-based assignment model with explicit capacity constraints for congested transit networks," Transportation Research Part C, vol. 20, no. 1, pp. 16-33, 2012.

[36] G. S. Brodal and R. Jacob, "Time-dependent networks as models to achieve fast exact time-table queries," Electronic Notes in Theoretical Computer Science, vol. 92, pp. 3-15, 2004.

[37] Y. Disser, M. Muller-Hannemann, and M. Schnee, "Multicriteria shortest paths in time-dependent train networks," in Experimental Algorithms, C. C. McGeoch, Ed., vol. 5038 of Lecture Notes in Computer Science, pp. 347-361, Springer, 2008.

[38] F. Guerriero and R. Musmanno, "Label correcting methods to solve multicriteria shortest path problems," Journal of Optimization Theory and Applications, vol. 111, no. 3, pp. 589-613, 2001.

[39] P. Hansen, "Bicriterion path problems," in Multiple Criteria Decision Making Theory and Application, vol. 177 of Lecture Notes in Economics and Mathematical Systems, pp. 109-127, Springer, Berlin, Germany, 1979.

Dang Khoa Vo, Tran Vu Pham, Nguyen Huynh Tuong, and Van Hoai Tran

Faculty of Computer Science & Engineering, Ho ChiMinh City University of Technology, VNU-HCM, 268 Ly Thuong Kiet Street, Ho Chi Minh City 740500, Vietnam

Correspondence should be addressed to Nguyen Huynh Tuong; htnguyen@hcmut.edu.vn

Received 14 December 2015; Revised 9 February 2016; Accepted 18 February 2016

Academic Editor: Wuhong Wang

Caption: FIGURE 1: A simple transit network.

Caption: FIGURE 2: The graph that models the network shown in Figure 1.

Caption: FIGURE 3: The relationship between nondominated and LET and the fastest o-v paths for departure time t over the universal scenario set Q and its subset [OMEGA].

Caption: FIGURE 4: Illustration of vector labels at nodes in the graph shown in Figure 2 after the termination of LET-Path algorithm. In each vector label, each value at tf is the number of transfers, and each value at each of the scenarios [q.sub.1], [q.sub.2], [q.sub.3] is the travel time of path from origin [V.sub.A] to the current node in that scenario. Each sequence of solid arrows from origin to destination represents o-d path, and each sequence of dashed-line arrows represents the travel times from origin to intermediate nodes along the path in each scenario.

Caption: FIGURE 5: The experimental area of HCMC bus network that consists of 1,340 stops (red), 40 routes (blue), and 1,445 direct stop links.

Caption: FIGURE 6: Illustration of generated stop times.

Caption: FIGURE 7: Average CPU running time of the LET-Path algorithm with different subsets of Q per o-d pair.

Caption: FIGURE 8: Average number of nondominated paths generated by the LET-Path algorithm with different subsets of Q per o-d pair.

Caption: FIGURE 9: Average number of nondominated o-d paths per o-d pair.
TABLE 1: Stop times of trips in the network presented in Figure 1
over three possible scenarios each of which has an occurrence
probability of 1/3.

Route   Trip   Stop   [C.sub.1]   [C.sub.2]   [C.sub.3]

1        1      A         1           1           1
                B         5           5           7
         2      A         4           4           4
                B         7           8           9
2        1      A         1           1           1
                B         7           7           5
         2      A         4           4           4
                B        10           9          11
3        1      B         6           6           6
                C        11          12          10
         2      B        10          10          10
                C        14          14          16

TABLE 2: The choices of trips for the earliest arrival time from
stop A to stop C at time t = 0 in different scenarios in the network
shown in Figure 1 and the schedules shown in Table 1.

Choice      Scenario         Choice of trips        Arrival
of                                                  time
routes

[p.sub.1]   [q.sub.1]   [mathematical expression     11
                           not reproducible]
            [q.sub.2]   [mathematical expression     12
                           not reproducible]
            [q.sub.3]   [mathematical expression     16
                           not reproducible]
[p.sub.2]   [q.sub.1]   [mathematical expression     14
                           not reproducible]
            [q.sub.2]   [mathematical expression     14
                           not reproducible]
            [q.sub.3]   [mathematical expression     10
                           not reproducible]

TABLE 3: Arc time weights with boarding penalty
[[bar.[epsilon]].sup.k.sub.ri] = 1 and alighting penalty
[[[epsilon].bar].sup.k.sub.ri] = 0 in the network shown in Figure 2.

Time       <[V.sub.A], [V.sup.1.sub.A]>

       [q.sub.1]   [q.sub.2]   [q.sub.3]

0          1           1           1
1          3           3           3
2          2           2           2
3          1           1           1
4         --          --          --
5         --          --          --
6         --          --          --
7         --          --          --
8         --          --          --
9         --          --          --
10        --          --          --
11        --          --          --
12        --          --          --
13        --          --          --
14        --          --          --
15        --          --          --
16        --          --          --

Time       <[V.sub.A], [V.sup.2.sub.A]>

       [q.sub.1]   [q.sub.2]   [q.sub.3]

0          1           1           1
1          3           3           3
2          2           2           2
3          1           1           1
4         --          --          --
5         --          --          --
6         --          --          --
7         --          --          --
8         --          --          --
9         --          --          --
10        --          --          --
11        --          --          --
12        --          --          --
13        --          --          --
14        --          --          --
15        --          --          --
16        --          --          --

Time       <[V.sub.B], [V.sup.1.sub.B]>

       [q.sub.1]   [q.sub.2]   [q.sub.3]

0          5           5           7
1          4           4           6
2          3           3           5
3          2           2           4
4          1           1           3
5          2           3           2
6          1           2           1
7         --           1           2
8         --          --           1
9         --          --          --
10        --          --          --
11        --          --          --
12        --          --          --
13        --          --          --
14        --          --          --
15        --          --          --
16        --          --          --

Time       <[V.sub.B], [V.sup.2.sub.B]>

       [q.sub.1]   [q.sub.2]   [q.sub.3]

0          7           7           5
1          6           6           4
2          5           5           3
3          4           4           2
4          3           3           1
5          2           2           6
6          1           1           5
7          3           2           4
8          2           1           3
9          1          --           2
10        --          --           1
11        --          --          --
12        --          --          --
13        --          --          --
14        --          --          --
15        --          --          --
16        --          --          --

Time       <[V.sub.B], [V.sup.3.sub.B]>

       [q.sub.1]   [q.sub.2]   [q.sub.3]

0          6           6           6
1          5           5           5
2          4           4           4
3          3           3           3
4          2           2           2
5          1           1           1
6          4           4           4
7          3           3           3
8          2           2           2
9          1           1           1
10        --          --          --
11        --          --          --
12        --          --          --
13        --          --          --
14        --          --          --
15        --          --          --
16        --          --          --

Time       <[V.sub.C], [V.sup.3.sub.C]>

       [q.sub.1]   [q.sub.2]   [q.sub.3]

0         11          12          10
1         10          11           9
2          9          10           8
3          8           9           7
4          7           8           6
5          6           7           5
6          5           6           4
7          4           5           3
8          3           4           2
9          2           3           1
10         1           2           6
11         3           1           5
12         2           2           4
13         1           1           3
14        --          --           2
15        --          --           1
16        --          --          --

Time   <[V.sup.1.sub.A], [V.sup.1.sub.B]>

       [q.sub.1]   [q.sub.2]   [q.sub.3]

0         --          --          --
1          4           4           6
2         --          --          --
3         --          --          --
4          3           4           5
5         --          --          --
6         --          --          --
7         --          --          --
8         --          --          --
9         --          --          --
10        --          --          --
11        --          --          --
12        --          --          --
13        --          --          --
14        --          --          --
15        --          --          --
16        --          --          --

Time   <[V.sup.2.sub.A], [V.sup.2.sub.B]>

       [q.sub.1]   [q.sub.2]   [q.sub.3]

0         --          --          --
1          6           6           4
2         --          --          --
3         --          --          --
4          6           5           7
5         --          --          --
6         --          --          --
7         --          --          --
8         --          --          --
9         --          --          --
10        --          --          --
11        --          --          --
12        --          --          --
13        --          --          --
14        --          --          --
15        --          --          --
16        --          --          --

Time   <[V.sup.3.sub.B], [V.sup.3.sub.C]>

       [q.sub.1]   [q.sub.2]   [q.sub.3]

0         --          --          --
1         --          --          --
2         --          --          --
3         --          --          --
4         --          --          --
5         --          --          --
6          5           6           4
7         --          --          --
8         --          --          --
9         --          --          --
10         4           4           6
11        --          --          --
12        --          --          --
13        --          --          --
14        --          --          --
15        --          --          --
16        --          --          --

Time       <[V.sup.2.sub.A], [V.sub.A]>

       [q.sub.1]   [q.sub.2]   [q.sub.3]

0         --          --          --
1          0           0           0
2         --          --          --
3         --          --          --
4          0           0           0
5         --          --          --
6         --          --          --
7         --          --          --
8         --          --          --
9         --          --          --
10        --          --          --
11        --          --          --
12        --          --          --
13        --          --          --
14        --          --          --
15        --          --          --
16        --          --          --

Time       <[V.sup.1.sub.B], [V.sub.B]>

       [q.sub.1]   [q.sub.2]   [q.sub.3]

0         --          --          --
1          0           0           0
2         --          --          --
3         --          --          --
4          0           0           0
5         --          --          --
6         --          --          --
7         --          --          --
8         --          --          --
9         --          --          --
10        --          --          --
11        --          --          --
12        --          --          --
13        --          --          --
14        --          --          --
15        --          --          --
16        --          --          --

Time       <[V.sup.2.sub.B], [V.sub.B]>

       [q.sub.1]   [q.sub.2]   [q.sub.3]

0         --          --          --
1         --          --          --
2         --          --          --
3         --          --          --
4         --          --          --
5          0           0          --
6         --          --          --
7          0          --           0
8         --           0          --
9         --          --           0
10        --          --          --
11        --          --          --
12        --          --          --
13        --          --          --
14        --          --          --
15        --          --          --
16        --          --          --

Time       <[V.sup.3.sub.B], [V.sub.B]>

       [q.sub.1]   [q.sub.2]   [q.sub.3]

0         --          --          --
1         --          --          --
2         --          --          --
3         --          --          --
4         --          --          --
5         --          --           0
6         --          --          --
7          0           0          --
8         --          --          --
9         --           0          --
10         0          --          --
11        --          --           0
12        --          --          --
13        --          --          --
14        --          --          --
15        --          --          --
16        --          --          --

Time       <[V.sup.3.sub.C], [V.sub.C]>

       [q.sub.1]   [q.sub.2]   [q.sub.3]

0         --          --          --
1         --          --          --
2         --          --          --
3         --          --          --
4         --          --          --
5         --          --          --
6          0           0           0
7         --          --          --
8         --          --          --
9         --          --          --
10         0           0           0
11        --          --          --
12        --          --          --
13        --          --          --
14        --          --          --
15        --          --          --
16        --          --          --

Time          <[V.sub.A], [V.sub.B]>

       [q.sub.1]   [q.sub.2]   [q.sub.3]

0         --          --          --
1         --          --          --
2         --          --          --
3         --          --          --
4         --          --          --
5         --          --          --
6         --          --          --
7         --          --          --
8         --          --          --
9         --          --          --
10        --          --           0
11         0          --          --
12        --           0          --
13        --          --          --
14         0           0          --
15        --          --          --
16        --          --           0

Time          <[V.sub.B], [V.sub.A]>

       [q.sub.1]   [q.sub.2]   [q.sub.3]

0         11          11          11
1         11          11          11
2         11          11          11
3         11          11          11
4         11          11          11
5         11          11          11
6         11          11          11
7         11          11          11
8         11          11          11
9         11          11          11
10        11          11          11
11        11          11          11
12        11          11          11
13        11          11          11
14        11          11          11
15        11          11          11
16        11          11          11

Time         <[V.sub.B], [V.sub.A]>

       [q.sub.1]   [q.sub.2]   [q.sub.3]

0         11          11          11
1         11          11          11
2         11          11          11
3         11          11          11
4         11          11          11
5         11          11          11
6         11          11          11
7         11          11          11
8         11          11          11
9         11          11          11
10        11          11          11
11        11          11          11
12        11          11          11
13        11          11          11
14        11          11          11
15        11          11          11
16        11          11          11

TABLE 4: Summary of nondominated o-d path sets and LET o-d paths in
the graph shown in Figure 2 with respect to subsets [omega] of Q.

Scenario set                Nondominated        LET o-d path
[OMEGA]                     o-d path set      [[lambda].sub.*]

{[q.sub.1]}              {[[lambda].sub.1]}   [[lambda].sub.1]
{[q.sub.2]}              {[[lambda].sub.1]}   [[lambda].sub.1]
{[q.sub.3]}              {[[lambda].sub.2]}   [[lambda].sub.2]
{[q.sub.1], [q.sub.2]}   {[[lambda].sub.1]}   [[lambda].sub.1]
{[q.sub.1], [q.sub.3]}   {[[lambda].sub.1],   [[lambda].sub.2]
                         [[lambda].sub.2]}
{[q.sub.2], [q.sub.3]}   {[[lambda].sub.1],   [[lambda].sub.2]
                         [[lambda].sub.2]}
{[q.sub.1], [q.sub.2],   {[[lambda].sub.1],   [[lambda].sub.2]
  [q.sub.3]}             [[lambda].sub.2]}

Scenario set             [mathematical
[OMEGA]                  expression not
                         reproducible]

{[q.sub.1]}                    11
{[q.sub.2]}                    12
{[q.sub.3]}                    10
{[q.sub.1], [q.sub.2]}        11.5
{[q.sub.1], [q.sub.3]}         12

{[q.sub.2], [q.sub.3]}         12

{[q.sub.1], [q.sub.2],       12.66
  [q.sub.3]}

TABLE 5: Summary of experimental results of LET paths with different
subsets of Q.

                                         Number of scenarios

                             1        50      100      150      200

Expected travel time       68.10    69.90    70.78    71.18    71.25
  (min)
Travel time standard         0       6.19     6.40     6.41     6.42
  deviation (min)
Number of transfers         1.98     1.98     1.98     1.98     1.98
Waiting time (min) per      6.16     7.63     7.66     7.73     7.72
  transfer
Travel distance (meter)    12,285   12,658   12,845   12,949   12,943
Walking distance (meter)    267      253      252      248      249

                                   Number of scenarios

                            250      300      350      400

Expected travel time       71.54    71.62    71.83    71.92
  (min)
Travel time standard        6.46     6.46     6.52     6.50
  deviation (min)
Number of transfers         1.98     1.98     1.98     1.98
Waiting time (min) per      7.81     7.79     7.78     7.81
  transfer
Travel distance (meter)    12,988   13,008   13,059   13,067
Walking distance (meter)    250      252      254      255

TABLE 6: Comparison of robustnesses of scenario-based (SB) and
certain equivalence (CE) approach.

                          CE          SB

Avg. expected travel   66.63 min   67.82 min
  time of LET paths
Avg. actual travel     72.37 min   68.31 min
  time of LET paths
Precision               66.04%      86.58%
MAPE                    11.59%       8.52%
FMAPE                    8.22%       1.82%
COPYRIGHT 2016 Hindawi Limited
No portion of this article can be reproduced without the express written permission from the copyright holder.
Copyright 2016 Gale, Cengage Learning. All rights reserved.

Article Details
Printer friendly Cite/link Email Feedback
Title Annotation:Research Article
Author:Vo, Dang Khoa; Pham, Tran Vu; Tuong, Nguyen Huynh; Tran, Van Hoai
Publication:Mathematical Problems in Engineering
Date:Jan 1, 2016
Words:11414
Previous Article:Elimination of the Redundancy Related to Combining Algorithms to Improve the PDP Evaluation Performance.
Next Article:Compressive Sensing in Signal Processing: Algorithms and Transform Domain Formulations.
Topics:

Terms of use | Privacy policy | Copyright © 2021 Farlex, Inc. | Feedback | For webmasters |