Content uploaded by Mojtaba Abdolmaleki
Author content
All content in this area was uploaded by Mojtaba Abdolmaleki on Nov 19, 2019
Content may be subject to copyright.
Itinerary Planning for Cooperative Truck Platooning
Mojtaba Abdolmalekia, Mehrdad Shahabia, Yafeng Yina,∗, Neda Masouda
aDepartment of Civil and Environmental Engineering, University of Michigan, AnnArbor, MI 48109,
United States
Abstract
A cooperative truck platoon is a set of virtually linked trucks driving with a small intra-
vehicle gap enabled by connected and automated vehicle technologies. One of the primary
benefits of truck platooning is energy savings due to the reduction of aerodynamic drag
on the platooned vehicles. The focus of this paper is on scheduling travel itineraries of
a given set of trucks to maximize platooning opportunities and the corresponding energy
savings. By constructing a time-expanded network, we formulate the problem as a mini-
mum concave-cost network flow problem, and devise a number of solution methodologies
to find the optimal or high-quality solutions. The solution methodologies include an outer
approximation algorithm for solving a mixed-integer convex minimization reformulation of
the problem, a dynamic-programming-based heuristic scalable to large-scale instances, and
a fast approximation algorithm with guaranteed performance for a restrictive version of the
problem. All the proposed algorithms are examined and benchmarked on medium to large
networks under various test scenarios. The numerical results demonstrate the efficiency of
the proposed methods and their applicability in real-world settings.
Keywords: Truck platooning, itinerary planning, concave minimum cost flow, outer
approximation, approximation algorithm;
1. Introduction
Cooperative vehicle platooning has been introduced as a promising element of next gener-
ation transportation systems. Rendered by connected and automated vehicle technologies,
a platoon is formed when a convoy of vehicles are virtually tethered together and travel on
a road with small inter-vehicle gaps. Among different forms of platooning, truck platooning
has attracted significant attention recently, as trucks are likely the early adopters of the
technology due to their operational characteristics such as long distance and relatively fixed
travel routes (Muratori et al.,2017). Upon successful implementation, truck platooning
can produce a variety of benefits such as improved fuel economy (Bonnet and Fritz,2000,
Browand et al.,2004,Davila,2013,Shida et al.,2010) and safety (Wang et al.,2012), while
mitigating traffic congestion (Shladover et al.,2012,Vander Werf et al.,2002). Although the
technology is still at the stage of field experiments, transportation decision makers in many
countries have created a road map that consists of regulatory and technological steps needed
to gradually launch the technology to the market. For example, the European Union has
∗Corresponding author. E-mail address: yafeng@umich.edu (Y. Yin).
recently announced a timeline anticipating multi-brand truck platooning to hit European
highways before 2025.
Given the limited market penetration of trucks, systematic itinerary planning is necessary
in order to place trucks in spatio-temporal proximity of each other. The success of truck
platooning relies on scheduling trucks’ itineraries so that trucks of different types, speeds,
paths, and departure times are synchronized to form platoons at platoonable locations such
as less-congested freeway segments. An optimized itinerary makes certain that the energy
saving from truck platooning is realized while various operational restrictions such as on-time
arrival or detour length are not violated. Such a scheduled platoon planning problem can
typically be investigated either from an offline (pre-trip), or an online (real-time) perspective.
The scheduled platoon planning problem with flexible routing decisions was initially
proposed by Larson et al. (2013), which considered a piecewise concave energy consumption
function for platoon members and proposed a fast heuristic that can handle large fleets. This
work was then followed by a few studies that formulated the problem as an integer linear
program and solved it with exact solution algorithms (e.g., Larsson et al.,2015,Larson et al.,
2016,Nourmohammadzadeh and Hartmann,2016,Sokolov et al.,2017). Recently, Boysen
et al. (2018) considered a general concave cost function to schedule single-brand trucks with
identical paths to form platoons. They formulated the problem as finding the optimal clique
decomposition of an interval graph, and proved that the general case is NP-hard. They
further proposed a cubic algorithm in the number of trucks.
The existing literature falls short in two major areas. First, the majority of the proposed
models lack well-structured optimization properties, yielding weak performance when solving
large problems (in terms of the number of trucks and the network size). Second the non-
compact nature of the adopted modeling frameworks in the literature has made it necessary
to employ restrictive assumptions, such as having a single-brand fleet, inflexibility of forming
platoons at different links, simplified energy consumption function and network topology,
or limited speed choices for trucks. As such, the scheduled platooning planning problem
remains unsolvable for realistic instances that comprise of large fleets traveling in large-scale
real-world networks.
In contrast, this paper considers the scheduled platoon planning problem without these
restrictions. Specifically, we simultaneously optimize the departure time, routing, and speed
of trucks to form platoons that minimize their total fuel consumption without violating
the travel window of individual trucks. We cast the platooning problem as a concave-cost
minimum cost flow problem, and show that this problem under certain nonrestrictive condi-
tions can be reformulated as an equivalent Mixed Integer Nonlinear Program (MINLP). We
propose a hybrid outer approximation/local search solution algorithm to solve the problem.
In addition, we prove several efficiency properties for our local search, and demonstrate the
superior performance of the proposed approach as compared to existing methods in the liter-
ature(Larsson et al.,2015,Larson et al.,2016,Nourmohammadzadeh and Hartmann,2016,
Sokolov et al.,2017). Despite the superior performance of our proposed hybrid outer ap-
proximating/local search algorithm, its computational complexity grows exponentially in the
size of the problem, limiting its application to small- to medium-sized instances. For large-
scale problems, we propose a fast dynamic-programming-based heuristic, which significantly
improves upon the solution quality of a heuristic proposed by Larson et al. (2013).
We then shift our attention to a special case of the problem considered by several previous
2
studies(Larsson et al.,2015,Larson et al.,2016,Nourmohammadzadeh and Hartmann,2016,
Sokolov et al.,2017,Larson et al.,2013). In this special case, the energy consumption for a
platoon of trucks is a piece-wise concave function, with two pieces on the number of trucks
in the platoon. Trucks traverse along paths with minimum energy consumption (hereinafter
referred to as energy shortest paths) with prespecified link speeds, and can wait at interme-
diate nodes as long as doing so does not compromise their travel windows. We recognize
this special case as a well-known network design problem, namely the “Pairwise Distance
Preservers”, and propose an efficient approximation algorithm along with its corresponding
approximation bounds.
Although we present our work in an offline, pre-trip setting, the proposed algorithms,
particularly the heuristic and the approximation algorithm, are efficient enough to support
online, real-time decision making. The rest of the paper is organized as follows: Section
2presents our model formulation, followed by the discussion of the outer approximation
algorithm in Section 3. Section 4introduces the dynamic-programming-based heuristic while
Section 5discusses the approximation algorithm. Section 6demonstrate the performance of
the proposed solution algorithms in different tests scenarios. Lastly, Section 7concludes the
paper.
2. Model
Consider a network and a fleet of trucks of different classes/brands traveling from their origins
to their destinations. Each truck has its own travel time window that specifies its earliest
departure and latest arrival times as well as its origin and destination (OD). It is assumed
that each vehicle reports its OD, travel time window and class to a central controller before
its departure. The controller minimizes the total energy consumption for the truck fleet
considering the savings achieved from platooning. The energy-minimizing route specifies
the departure times and route and speed choices along the route, while respecting the time
window of individual trucks in the system.
We assume there are Cclasses of trucks and define the set {Kc⊆K: 1 ≤c≤C}to
represent trucks in class c, where Kis the set of all trucks. For each truck k∈Kc, we use
TED
kand TLA
kto denote its earliest departure and latest arrival times, respectively.
We formulate the problem in a time-expanded network. Given a physical network, S
represents the set of all physical nodes. To construct the time-expanded counterpart of the
physical network, we discretize the time horizon into time intervals of length δtto get the
set T={t1, t2, . . . , tr}, where ti∈Trepresents the ith ordered time interval. In the time-
expanded network G,N(G) and E(G) represent the set of all nodes and links, respectively.
A node ni∈N(G) is defined as a tuple (ti, si), where tiis the time interval a truck may be
located at node si∈S. Subsequently, a link l∈E(G) is defined as (ni, nj)=(ti, si, tj, sj),
where tiis the time interval one has to leave node siin order to arrive at node sjduring
time interval tjby following a certain speed on the physical link (si, sj). We discretize the
speed range into a set of disjoint intervals Vfor trucks. Without loss of generality, in this
paper we consider three speed intervals of low, medium, and high. We use speed intervals
to generate the links on graph G, as demonstrated for the simple case of a one-dimensional
physical network in Figure 1. As this figure demonstrates, a truck traversing the same link
3
Figure 1: Constructing time-expanded network
starting from the same time interval may have multiple links associated with it, depending
on its choice of traveling speed.
The above procedure yields a time-expanded network that contains all feasible itineraries
for each truck to traverse the network, where an itinerary specifies a truck’s departure time,
and physical route and speed choices at each physical link. A pre-processing procedure
proposed by Masoud and Jayakrishnan (2017a) can be applied to refine the link set by
eliminating a subset of infeasible links (i.e., links traveling on which would make it impossible
for a truck to complete its trip within its travel window). We denote Gkas the simplified
spatio-temporal sub-network for truck k. A route in this network corresponds to a feasible
itinerary for truck k.
2.1. Concave Cost Multicommodity Flow Formulation
Let us define function fl(Yl) to represent the energy consumption cost function of link l,
where Yl= (y1
l, y2
l, ..., yC
l) and yc
lis the number of trucks in class cpassing through link. The
function flis increasing with the number of trucks yc
l. As these vehicles traverse the same
physical link at the same time and with the same speed, the trucks belonging to the same
class are eligible to form a platoon on the physical link. Considering the decreasing trend of
marginal energy consumption with the number of trucks, and consistent with findings from
previous studies and field experiments, we assume the function flto be concave. For example,
Larson et al. (2013), Larsson et al. (2015), Larson et al. (2016), Nourmohammadzadeh and
Hartmann (2016), and Sokolov et al. (2017) consider a concave piece-wise linear function.
With the above considerations, the platooning planning problem becomes equivalent to
the problem of finding a route for each individual truck to traverse its time-expanded network
Gkso that the summation of flover all links l∈L(G), i.e., the network energy consumption,
is minimized. As such, we can formulate the following optimization problem (Model P1):
4
Min z=X
l∈L
fl(Yl) (1a)
s.t. X
(ti,si):
l=(ti,si,t,s)∈E(Gk)
xk
l−X
(tj,sj):
l=(t,s,tj,sj)∈E(Gk)
xk
l=dk
s,∀k:Gk\l6=∅,∀(t, s)∈N(Gk) (1b)
yc
l=X
k∈Kc
xk
l;∀1≤c≤C, ∀l∈E(G) (1c)
xk
l∈ {0,1},∀k∈K, ∀l∈E(Gk) (1d)
where
dk
s=
−1 If s=O(k)
1 If s=D(k)
0 Otherwise
(1e)
The objective 1a is to minimize the total energy consumption. Constraint 1b ensures flow
conservation for each truck k, where the binary decision variable xk
lis defined to take the
value 1 if truck ktraverses the spatio-temporal link land the value 0 otherwise. Constraint
1c defines yc
las the sum of trucks of class cpassing through link l. Finally, constraint 1d
specifies the decision variable xk
lto be binary.
As formulated, P1 belongs to the family of multi-commodity flow problems with concave
objective function. The formulation enjoys the unimodularity property and can be solved
via a nonlinear programming solver. The following lemma formalizes this statement.
Lemma 1. A solution to the continuous relaxation of problem P1 solves P1.
Proof. First, note that we can substitute the auxiliary variable yc
lwith Pk∈cxk
l, resulting
in only decision variables xk
lbeing subject to the assignment constraints 1b. Since the
objective function is concave, the solution to the relaxed version of P1 is an extreme point
of the feasible region. On the other hand, dk
sis integer and the assignment constraints
satisfy unimodularity conditions, indicating that every extreme point of the feasible region
is integer.
2.2. Convex Minimization Reformulation
The concave minimization nature of the formulation in Model P1 prevents a commercial
nonlinear solver from solving large-scale instances of the problem, necessitating specialized
algorithms, such as the piece-wise linear approximation by Magnanti and Stratila (2004), to
efficiently solve it. In this section, we reformulate P1 as a convex minimization problem that
facilitates the development of an outer approximation algorithm in Section 3.
Making use of the fact that the decision variable xk
lis binary (indicating that xk
l=
xk
ln,∀n∈IR+), and further assuming that the function flis twice differentiable and the
diagonal elements of its Hessian matrix are finite, we can show that the following function
glis strongly convex (Murray and Ng,2010):
gl=fl+MΦ
5
Where Φ is a strictly convex function defined on the same domain as fl, where Φ : [0,1] →IR,
and Φ(0) = Φ(1) = 0. In addition, in the above definition Mis a sufficiently large positive
number. The basic idea is to augment the original objective with a strictly convex function.
By further introducing a continuous variable Qlin this section, we reformulate P1 into
the following convex mixed integer nonlinear program(MINLP) (Model P2):
Min z=X
l∈L
Ql(2a)
s.t. X
(ti,si):
l=(ti,si,t,s)∈E(Gk)
xk
l−X
(tj,sj):
l=(t,s,tj,sj)∈E(Gk)
xk
l=dk
s,∀k:Gk\l6=∅,∀(t, s)∈N(Gk) (2b)
yc
l=X
k∈Kc
xk
l;∀1≤c≤C, ∀l∈E(G) (2c)
gl(y1
l, y2
l, ..., yC
l)≤Ql,∀l∈E(G) (2d)
xk
l∈ {0,1},∀k∈K, ∀l∈E(Gk) (2e)
where
dk
s=
−1 If s=O(k)
1 If s=D(k)
0 Otherwise
(2f)
This reformulation enjoys desirable mathematical properties that make it amenable to
decomposition algorithms, such as outer approximation. The discussion regarding our ap-
proach for solving P2 is provided in the next section.
3. Outer Approximation
Decomposition techniques such as outer approximation (OA) and generalized Benders’ de-
composition (GBD) have been widely employed to solve MINLPs. Both techniques belong to
the family of decomposition and cutting plane methods, separating the original MINLP into
a nonlinear program (NLP) subproblem and a relaxed version of the original problem known
as the master problem. In both GBD and OA, the nonlinear subproblem is achieved by fixing
the integer variables; however the composition of the master problem in OA is different from
that of GBD. More specifically, in OA, the master problem is generated by substituting the
nonlinear convex function by its first-order linear, or in some cases second-order quadratic,
approximation. In GBD, the master problem is constructed by the integer space projection
of Lagrange cuts according to the dual information of the subproblem. In both methods, the
solution of the master problem provides a lower bound, while the upper bound is achieved
by solving the subproblem. The algorithm cycles between the subproblem and the master
problem until the gap between the upper and lower bounds meets the convergence criterion.
Given the convexity of the formulation, both methods converge at the global optimal solution
of the original problem. Additional property of OA and GBD MP is shown in Proposition
2in the Appendix. In this paper, we consider an OA algorithm for solving P2 due to some
special properties related to the subproblem and master problem shown below.
6
Proposition 1. In model P2 the NLP subproblem for OA has a closed form solution.
Proof : The solution of the NLP subproblem is achieved by fixing the binary integer
variables ¯xk
l. Once the integer variables are fixed, the optimal value of the continuous
variable Qlis obtained via the following equation:
¯
Ql=gl(X
k∈K1
¯xk
l,X
k∈K2
¯xk
l, ..., X
k∈KC
¯xk
l) (3)
3.1. Master Problem
The master problem is a mixed integer linear program achieved by sequentially approx-
imating the nonlinear constraint 2d with its sub-gradient inequalities at any given integer
point ¯xkh
l. In particular, given a feasible integer solution at every iteration h∈H, a linear
OA cut in the form of equation 4c is generated to linearly approximate the convex constraint
2d. Equation 4c is responsible for cutting off those solutions that do not belong to the lin-
ear approximation of the feasible region at every iteration, until the desired convergence is
reached. As mentioned earlier, the lower bound for the OA algorithm is achieved by solving
the master problem. In addition, following Fletcher and Leyffer (1994) we add Equation 4d
to ensure that either the solution of the master problem remains at most less than the
upper bound, or else the solution to the master problem becomes infeasible, at which point
the solution becomes -optimal and the algorithm terminates. Following this approach, the
master problem need not be solved to optimality as long as a new feasible integer solution
for the master problem is obtained. Below, the master problem (OA-MP) is presented:
Min z=X
l∈L
Ql(4a)
s.t. X
(ti,si):
l=(ti,si,t,s)∈E(Gk)
xk
l−X
(tj,sj):
l=(t,s,tj,sj)∈E(Gk)
xk
l=dk
s,∀k:GkTl6=∅,
∀(t,s)∈N(Gk)(4b)
gl(¯y1h
l,¯y2h
l, ..., ¯yCh
l) + X
k∈K
∇gl(¯y1h
l,¯y2h
l, ..., ¯yCh
l)(xk
l−¯xkh
l)≤Ql,∀l∈E(G),
∀h∈H(4c)
X
l∈L
Ql≤UB −(4d)
xk
l∈ {0,1},∀k∈K,
∀l∈E(Gk)(4e)
In the above formulation ¯ych
lis defined as follows:
¯ych
l=X
k∈Kc
¯xkh
l,∀1≤c≤C, ∀l∈E(G),∀h∈H(5)
3.2. Strengthening Master Problem Solution
The integer points provided by OA-MP are responsible for providing the OA lower bound
and generating the new sets of cuts for the next iteration. Generally, the performance of the
algorithm heavily depends on the quality of the integer solution provided by OA-MP. While
the above formulation of OA-MP can be handled by off-the-shelf optimization solvers such as
7
CPLEX, its continuous relaxation is still weak and can be further strengthened to improve
the quality of the integer solutions returned by OA-MP. Toward this end, we reformulate
constraint 4c as follows:
gl(¯y1h
l,¯y2h
l, ..., ¯yCh
l) + ∇gl(¯y1h
l,¯y2h
l, ..., ¯yCh
l)(xk
l−¯xkh
l)≤Ql,∀l∈E(G),∀h∈H, ∀k∈K(6)
Equation 6is the disaggregated version of constraint 4c, which has a tighter continuous
relaxation. Note that replacing equation 4c with 6does not change the feasible integer space
of the original OA-MP, but the continuous variables generated through two formulations
are not the same. However, according to Fletcher and Leyffer (1994) OA-MP is responsible
for generating a new integer variable at every iteration and the continuous variables are
optimized through the subproblem.
3.3. Local Search
Reformulating the problem P1as a convex optimization problem P2comes at the cost of
losing some of the structural properties of the original problem, such as the unimodularity
of the constraint set as described in Lemma 1. In this section, we utilize the concavity
of the original problem to further improve the quality of the OA-MP integer solutions by
solving a sequence of linear programs that are computationally inexpensive. We should first
point out that both P1and P2have the same objective function values at the extreme
points of the feasible region. Additionally, due to the fact that the original problem P1is
a concave minimization problem, the first-order Taylor expansion of the objective function
at any point, ¯x, is an over-estimator of the objective function. Therefore, any solution xto
the linear program 7has an objective value z(x) satisfying z(x)≤z(¯x), a reduction in the
objective function value.
Min z=X
l∈L
(gl(¯y1h
l,¯y2h
l, ..., ¯yCh
l) + X
k∈K
∇gl(¯y1h
l,¯y2h
l, ..., ¯yCh
l)(xk
l−¯xkh
l)) (7a)
s.t. X
ti,si:
l=(ti,si,t,s)∈L
xk
l−X
tj,sj:
l=(t,s,tj,sj)∈L
xk
l=dk
s,∀k:Gk\l6=∅,∀s∈N(G) (7b)
In the above formulation, the objective, 7a, is the first order Taylor approximation of the
function at point xaround the point ¯x. Constraints 7b reflect the flow balance constraints
as in the original problem.
Note that the solution x∗to the optimization problem 7is not necessarily locally optimal
of P1. However, after solving a series of optimization problems 7where x∗is replaced with ¯x,
we can guarantee that we are sufficiently close to a local optimal. Therefore, following this
procedure, we can iteratively improve our solution locally until we reach a locally optimal
solution. In practice, we only need a few iterations, even in large-scale networks. Theorem
1will provide further insight on how the property of the objective function will impact the
number of iterations required to find a locally optimal solution. For a platooning problem
with a single class of trucks, the objective function on each link will be a one-dimensional
concave function, which makes the algorithm easier to analyze.
8
Theorem 1. For the single-class platooning problem, if we are given a feasible solution ~x (as
a vector whose elements are the variables xk
l) to the optimization problem 1, we can obtain a
locally optimal solution with an objective value less than or equal to z(x)in O(P4+E(G)2)
number of operations in the number of trucks for an arbitrary small , where Pis the maxi-
mum number of vehicles that can pass through a link of the time-expanded network without
violating their travel window constraints, and |E(G)|is the number of edges in the time-
expanded network.
Proof. See Appendix II.
Algorithm 1 Outer Approximation
Procedure OA(,H)
Initialize: Set LB=−∞, UB=+∞
Find an initial assignment ¯xk1
lby finding a shortest path for every truck k
while h≤H and OA-MP is feasible do
1: OA Subproblem :
1.1: Calculate the subproblem objective function by equation 3
1.2: Update the OA upper bound if ¯
Ql≤UB.
2: OA Master Problem:
if OA-MP objective (equation 4d)≥UB-then
OA-MP is infeasible, terminate the OA algorithm;
end if
2.1: Add the OA inequalites (equation 6);
2.2: Find a feasible solution of OA-MP (equations. 4a,6,4b,4e);
2.3: Locally improve the solution of OA-MP by solving linear programs 7;
2.4: Increment h;
end while
4. Dynamic-Programming-Based Heuristic
We have investigated the exact algorithm for the scheduled platoon planning problem. How-
ever, as the size of the problem (both in network and fleet size) grows, the number of variables
and constraints of the problem increases exponentially, making it difficult to apply the pro-
posed exact algorithm. In this section, we devise a dynamic-programming-based heuristic
to find high-quality solutions in a reasonably faster manner, which is particularly useful for
solving large-scale instances in real time. It is worth mentioning that by applying the dy-
namic programming on a time expanded network we can implicitly ensure the time window
constraints will be satisfied (Masoud and Jayakrishnan,2017b,Abdolmaleki et al.,2019),
while by using the ESTAM method we can avoid introducing redundant variables and solve
the problem efficiently (Masoud and Jayakrishnan,2017a).
9
The core idea of our heuristic is to use a dynamic programming (DP) algorithm to
iteratively find in the time-expanded network a hypothetical path that yields the maximum
platoon savings along its links. Specifically, we aim to find a path pand force each truck kto
pass through the overlap of its restricted subgraph Gkand path p. Once truck kjoins path p,
the platoons on the overlapping links will be updated, rewarding truck kenergy savings from
platooning. Note that path pdoes not necessarily contain the origins and destinations for all
of the trucks, and platoon savings can be still achieved if a vehicle subgrapgh only partially
overlaps with path p. In this section. We devise a DP algorithm that approximately finds
the path pthat results in maximum platoon savings. Before introducing the algorithm, we
further note that since different trucks have different allowable speed profiles for each link,
there is no guarantee that the overlap of path pwith subgraph Gkis a connected path. It
may be a union of subpaths of p, as demonstrated in Figure 2. In this figure, the red dashed
track is the hypothetical path pwhile the green one is the restricted subgraph of a truck who
has to start its trip at time t= 1 and finish at time t= 7, and its allowable speed profile
does not allow it to follow the hypothetical path pover its entire path.
Figure 2: The discontinuity of the overlap of path pand the restricted subgraph of a truck Gk
Let us define a state in our DP algorithm as a spatio-temporal node (ti, si). Furthermore,
let V(ti, si) be the maximum savings for the system that can be achieved by following a
path from an arbitrary node to spatio-temporal node (ti, si). The goal is to find the path
p= argmax(t,s)∈N(G)V(t, s).
We define two tensors, Gand K, to ensure the feasibility of the optimal path and facilitate
the retrieval of the maximum-savings path after its cost is found. Each element of the tensor
10
G(t, s) is a state (t0, s0) that precedes state (t, s) in the optimal path to the state (t, s).
Each element of the tensor K(t, s, i) is the indicative vector of the set of trucks that have
contributed to energy savings along the optimal path to the state (t, s) at the link that lies
isteps prior to the link (G(t, s), t, s) on the optimal path.
The net energy savings for a set of trucks Upassing through t0, s0, t, sequal the pla-
tooning energy savings for the set of trucks in Uforming a platoon on link lfrom (t0, s0) to
(t, s), less the excess energy consumption of potential detours that the trucks in Uhave to
take to pass through the segment t0, s0, t, s. Each component is elaborated on as follows.
To compute the platooning energy savings for the set Upassing through l, we can subtract
the energy consumption for the set Uto pass through the link l,fl(U), from the total energy
consumption for the set Uof trucks to pass through t0, s0, t, sindependently, without
platooning. To compute the excess energy consumption caused by the detour that the truck
khas to take to pass through l,ul
d(k), we subtract the energy consumption of the energy-
minimizing path for the truck kthat includes the node (t0, s0) (in the absence of any platoon
savings) from the energy consumption of the alternative energy-minimizing path that places
kon the segment t0, s0, t, salong the way to its destination. The excess energy consumption
imposed by detours for the set Ucan then be obtained by summing up ul
d(k) over all the
vehicles in the set U.
Let wt0, s0, t, sdenote the net energy savings for the link t0, s0, t, s. We compute
wt0, s0, t, sas the difference between the maximum net energy savings achieved alongside
an optimal path in the time-expanded network whose last link is t0, s0, t, sand the maximum
net energy savings achieved alongside the optimal path whose last node is (t0, s0). Note that
wt0, s0, t, scan be computed as the maximum net energy savings for the link t0, s0, t, s
among all the possible choices of U. The set Ucan be found as a subset of the trucks that
can pass through the link t0, s0, t, sgiven the values for the tensors Gand K. Lemma 2
shows how we can efficiently compute the value of w(ti, si).
Lemma 2. We can compute w(ti, si)with QC
i=1 rioperations for a concave energy consump-
tion function, where riis the number of trucks of class ithat can pass through the link
t0, s0, t, sgiven the values for the tensors Gand K.
Proof. For each class c∈ {1,2, . . . , C}, we sort the trucks k∈Kcbased on their correspond-
ing excess energy consumption imposed by detours as:
Kl
c={k1, k2, . . . , kr}
Where k1has the minimum excess energy consumption among trucks in Kl
c. For any subset
of trucks U1⊆Kl
cwhere we have ki/∈U1, kj∈U1, ul
d(ki)< ul
d(ki) we can substitute the
trucks kiand kjto get a new combination with a higher net energy savings, U2, because
the platooning energy savings for the sets U1and U2are the same while the excess energy
consumption imposed by detour has been decreased by ul
d(kj)−ul
d(kj). Keeping this obser-
vation in mind, we can conclude that the overlap of the optimal subset U∗with any set Kl
cis
a set of consecutive trucks U∗TKl
c={k1, k2, . . . , kr∗}, which always have the truck k1if it
is not the empty set. That being said, the number of all possible such sets can be computed
as the product QC
i=1 ri. Computing the net energy savings for all of these special sets results
in finding the subset U∗with maximum net energy savings on link l.
11
Note that in reality, the number of classes may not exceed three or four types, and for
the single-class fleet case we can find the w(ti, si) in linear time.
To initialize the DP process, we set the value of V(t, s) with states {(t, s) : t= 0}equal
to zero. Next, we traverse the states in the topological order of nodes to find the value
function for each state. The Bellman equation displayed in (8) describes how we update
the value function at each step. The set Nd(t, s) in this equation contains all nodes in the
time-expanded subgraph that directly are connected to node (t, s).
V(tj, sj) = max
(t0,s0)∈Nd(t,s):t0≤t(w(ti, si, tj, sj) + V(ti, si)) (8)
Note that after enforcing a trip to pass through subpaths of p, we can partially capture
the remaining flexibility of the trip by introducing new trips that connect the fixed portions
of the original trip. As such, we first introduce the sets Akas the union of the two nodes
so
kand sd
kin addition to the end points of subpaths on the optimal path p,pi
k, that truck
kpasses through. Next, we sort these fixed nodes that lie on truck k’s path based on their
time component, and for any consecutive pair of these nodes that are not readily connected
through one of the subpaths pi
k, we introduce a new (dummy) truck with those end points
as its Origin and destination. We iteratively run the DP process until the optimal value
for the dynamic programming equals 0, i.e., we cannot achieve any additional saving from
platooning. Algorithm 2prsents the psuedo code for the DP-based heuristic described above:
Algorithm 2 Heuristic Algorithm
Stop = 0;
while Stop 6= 1 do
Stop = 1
for k∈the set of all the trips in the system do
Generate the restricted subnetwork for trip kfollowing the procedure in 2.1;
end for
Run the DP process introduced above
let fbe the optimal value of the dynamic programming.
if f > 0then
Stop = 0
end if
for k∈set of all the trucks in the system do
Identify the set Akand the consecutive endpoints of Akthat are not connected by one
of the subpaths pi
k. For each one of them, define a new truck with those endpoints as
its OD pair.
Delete kfrom the set of trucks.
end for
end while
12
5. Approximation Algorithm
In this section, we propose a linear-programming-based approximation algorithm for a special
case of the scheduled platoon planning problem. Compared with the general case discussed
above, we herein assume the energy consumption function for a platoon of trucks travelling
through a link is a piecewise linear concave function with two pieces on the number of trucks
in the platoon. More specifically, it postulates that the leading in a platoon does not save any
energy while the following trucks, irrespective of their position in the platoon, experience
an energy saving factor of 0 ≤α≤1, e.g., α= 0.1, compared to their original energy
consumption (Larson et al.,2013). This function can be viewed as an approximation to the
general concave function considered above, and is particularly valid when all trucks are of
the same type forming single-brand platoons, as known in the literature. We also assume
that the objective of trucks is to travel along energy-minimizing paths, given a pre-specified
link speed. However, they can wait at intermediate nodes as long as doing so does not
compromise their travel windows.
This special case, considered by several previous studies (Larson et al.,2013,Larsson
et al.,2015,Larson et al.,2016), deserves special attention. First, it remains a reasonable
simplification to the general scheduled platoon planning problem as the assumptions are not
overly restrictive. The simplification makes the model parameters much easier to calibrate or
specify, yielding a model particularly appropriate for a sketch or strategic planning exercise
to obtain the ballpark estimate of the benefit of truck platooning. Second, the problem
possesses an interesting structure that allows us to cast it as the well-known problem of
Pairwise Distance Preservers in the network design literature; we thus devise a very efficient
approximation algorithm with approximation bounds.
5.1. Model
To form the restricted sub-network of a truck k,Gk, we modify the pre-processing proce-
dure proposed in Masoud and Jayakrishnan (2017a) by discarding the links that do not lie
on any energy-minimizing path that connects the origin of the truck to its destination and
satisfies their travel time window constraints.
Following the model presented in section 2.1, the trip itinerary for every truck kcan be
demonstrated by a path in the time-expanded network G. This path will start at the node
no
k= (TED
k, O(k)) and ends at the node nd
k= (TLA
k, D(k)). Note that if a truck departs at a
time interval t1later than TED
k, the first part of the path can be modeled as staying at the
physical node O(k) from the time interval TED
kto the time interval t1. The same applies to
a truck that finishes their itinerary sooner than the time interval TLA
k. Finally, the objective
is to find a directed path for each truck in its restricted time-expanded network to minimize
the total energy cost.
Note that every directed path from no
kto nd
kin Gkis an energy shortest path, because
GKis the restricted network of the truck k, which only contains links that lie on energy-
minimizing paths. Because for each link in the time-expanded network we have a unique
prespecified speed, we can denote by e(si, sj) the unique amount of energy required to pass
through the link l= (ti, si, tj, sj). As such, the total energy consumption in the absence of
13
any platoon savings is constant and is given as below:
X
l=(ti,si,tj,sj)∈E(G)X
k∈K
xk
le(si, sj) = X
k∈KX
l=(ti,si,tj,sj)∈E(G)
xk
le(si, sj) = X
k∈K
e(so
k, sd
k) (9)
As assumed previously, platooning yields zero saving for the leading truck and the same
percentage of energy savings for the following trucks regardless of their position in the pla-
toon. The total energy consumption can thus be written as in Equation 10.
X
l=(ti,si,tj,sj)∈E(G)
[X
k∈K
(1 −α)xk
le(si, sj) + X
l=(ti,si,tj,sj)∈E(G)
α yle(si, sj)] (10)
where ylis a binary variable indicating whether there exists at least one truck passing through
link l. The first term is a factor (1 −α) of the total energy consumption without platooning.
This term essentially captures the total energy consumption of all following trucks, plus
(1 −α) of the leading trucks’ consumption. The second term captures the remaining α
factor of the energy consumption of the leading trucks. (Note that a single truck could be
viewed as the leader of a one-member platoon.) Given the first term is constant, Model P1
reduces to the following optimization problem:
Min z=X
l=(ti,si,tj,sj)∈L
yle(si, sj) (11a)
s.t. X
ti,si:
l=(ti,si,t,s)∈L
xk
l−X
tj,sj:
l=(t,s,tj,sj)∈L
xk
l=dk
s
∀k:GkTl6=∅,
∀(t,s)∈N(Gk)(11b)
xk
l≤yl∀l∈E(G),∀k:GkTl6=∅(11c)
xk
l∈ {0,1},∀k∈K,
∀l∈E(Gk)(11d)
yl∈ {0,1},∀l∈E(G)(11e)
where
xk
l=1 If ktravels on l
0 Otherwise (11f)
dk
s=
−1 If s=O(k)
1 If s=D(k)
0 Otherwise
(11g)
Viewing the link energy consumption of a truck e(si, sj) as a link cost, the above formu-
lation essentially finds, in the time-expanded network G, a sub-network Hthat contains, for
each truck k, a directed path in Gkfrom its origin to destination while minimizing the sum
of all link costs in H. Below we further connect the problem with the Pairwise Distance
Preserver problem.
Definition 1. Given a directed graph G= (V, E ), with non-negative edge costs c:E→R+,
and a collection of node pairs P⊆V×V, we say a subgraph Hof Gis a Pairwise Distance
Preserver of Gif it minimizes the total link costs, Pe∈E(H)c(e), while the distance from sto
tin His the same as that in G.
14
It is trivial to observe that finding the optimal solution to the platooning problem is
equivalent to finding the Pairwise Distance Preservers in the undirected counterpart of the
time-expanded network, and the set of unions of OD pairs is the set Pin definition 1.
Hardness for distance preservers can be established by applying the technique in Elkin and
Peleg (2000) for proving hardness of the client-server spanner problem.
In addition, the objective function 11a can be equivalently written as maximizing the
total fuel consumption savings, which is αtimes the total energy consumption of all following
trucks (without platooning). After dropping the coefficient α, the new objective function
can be presented as in 12a.
Max z=X
l=(ti,si,tj,sj)∈L
(X
k:l∈Gk
xk
l−yl)e(si, sj) (12a)
s.t. X
ti,si:
l=(ti,si,t,s)∈L
xk
l−X
tj,sj:
l=(t,s,tj,sj)∈L
xk
l=dk
s
∀k:GkTl6=∅,
∀(t,s)∈N(Gk)(12b)
xk
l≤yl∀l∈E(G),∀k:GkTl6=∅(12c)
xk
l∈ {0,1},∀k∈K,
∀l∈E(Gk)(12d)
yl∈ {0,1},∀l∈E(Gk)(12e)
Keeping in mind that in the platoon planning problem we are designing a sharing system
where we are interested to measure the total savings, the objective function 11a does not
provide a proper index of the system performance, while the objective function 12a is the
total savings achieved by the system. Below we will develop an approximation algorithm to
solve the Pairwise Distance Preservers formulation of the problem, and provide bounds on
the quality of the solution.
5.2. LP relaxation
The Pairwise Distance Preserver problem and a closely related problem, the Directed Steiner
Forest problem, have been shown to have tight integrality gap for their LP relaxations
(Chlamt´aˇc et al.,2017). Below we propose an LP-relaxation-based approximation algorithm.
In the literature, in addition to such an LP relaxation approach, another decomposition
approach is often used to solve the Pairwise Distance Preservers problem. However, as we
illustrate with an example in Appendix III, most of the decomposition structures previously
investigated in the literature are not suitable to approximate the objective function 12a.
For our LP relaxation, we follow the work of Bodwin and Williams (2016) by relaxing
the integrality of the variables yland xl. The relaxed variables ylcan be interpreted as the
capacity of the link land the relaxed variables xlas the flow associated with trucks passing
through the link.
15
Max z=X
l=(ti,si,tj,sj)∈L
(X
k:l∈Gk
xk
l−yl)e(si, sj) (13a)
s.t. X
ti,si:
l=(ti,si,t,s)∈L
xk
l−X
tj,sj:
l=(t,s,tj,sj)∈L
xk
l=dk
s
∀k:GkTl6=∅,
∀s∈N(Gk)(13b)
xk
l≤yl∀k:GkTl6=∅,
∀l∈E(Gk)(13c)
5.3. Approximation algorithm
The core idea of the approximation algorithm is the same as the one described in section 4
for our DP algorithm. However, here we use the linear programming relaxation 13 to modify
the restricted subgraphs of the trucks in the system.
After solving the LP relaxation problem, we first construct a prioritized subgraph G∗
k
for each truck kfrom the union of links lwith xk
l>0 in the subgraph Gk. Doing so
avoids forming greedy platoons, which may eliminate the possibility of forming a globally
optimal platooning schedule (See Section 5.4 for an illustration of this phenomenon). After
forming the subgraphs G∗
k, we assign non-negative weights to the edges of the original graph
to establish the new time-expanded network G∗. If the edge l= (ti, si, tj, sj)∈Lis in rl
number of subgraphs G∗
k, we assign the weight pl= (rl−1)e(si, sj) to the edge l. The weight
plrepresents the potential of link lfor saving energy because rltrucks can potentially pass
through it and form a platoon.
After forming the weighted graph G∗we try to find the longest path in G∗and denote
it by p. Note that forcing all trucks to pass through the overlap of their subgraph G∗
kand p
will result in maximum platoon savings on a spatio-temporal path. Furthermore, note that
the overlap of G∗
kand pis a subpath p1of the path p. Then, for each truck kwhose subgraph
G∗
khas a nonempty overlap with p, we delete kfrom the set of trucks and add two other
trucks, k1and k2. The origin of the truck k1is the same as that of k, and the destination of
k1is the node with the smallest timestamp that lies on the overlap of truck k’s subnetwork
with p. Analogously, the origin for truck k2is the node with the largest timestamp that lies
on the overlap of truck k’s subnetwork with the path p, and the destination of k2is the same
as that of truck k. This approach allows us to take advantage of the remaining flexibility of
truck k’s trip—the part of the trip that is not intersecting with p.
Before going any further we provide the pseudo code for our proposed approximation
algorithm as follows:
16
Algorithm 3 Approximation Algorithm
Stop = 0;
while Stop 6= 1 do
Stop = 1
for k∈the set of all trucks in the system do
Generate the energy shortest path subnetwork for truck kfollowing the procedure
described in Section 5.1;
end for
Solve the LP relaxation proposed in Section 5.2
Modify the restricted subgraphs based on the optimal solution to the LP relaxation to
obtain the subgraphs G∗
k.
Form the weighted directed graph G∗from the subgraphs G∗
k.
Let fbe the weight of the longest path in G∗.
if f > 0then
Stop = 0
end if
for k∈the set of all trucks in the system do
Identify the overlap of the path pand G∗
k. Define two new trucks, k1and k2, as
described earlier in section 5.3.
Delete kfrom the set of trucks.
end for
end while
Theorem 2. The approximation algorithm has a |K|-approx guarantee. Where Kis the
number of trucks in the system.
Proof. It is sufficient to prove that there exists a path that obtains at least 1
|K|of the total
savings in the optimal solution. We first generalize the notion of savings to the continuous
relaxation setting. To do so, we follow the definition of the savings in a link lin the binary
optimization problem and compute the total savings as Pk:l∈Gkxk
l−ylα e(si, sj). For
the sake of simplicity and without loss of generality, we set α= 1. We introduce a new
variable slto denote the savings on link l, and let s∗
ldenote the energy cost of link lon the
energy-minimizing path in the LP relaxation problem. Now, denote the optimal solution to
the LP by (x∗, y∗). We introduce rlas the number of trucks with xk∗
l>0 and r∗
lfor the
corresponding value at the optimal solution to the LP. For any link-based solution, (x∗, y∗),
there exists an equivalent path-based solution f∗where fk∗
pis the flow on path pfor truck k.
Let us assume we choose one of the trucks with equal probability 1
|K|and a path for truck
kwith fk∗
p>0, and force all other trucks to pass through the overlap of their restricted
subgraph and the path p. Note that this overlap is a subpath of p. As such, we can compute
the probability that a link lis being taken in the resulting randomized path by the summation
over all different |K|scenarios of choosing any of the |K|trucks. Moreover, the savings we
can obtain if we pass through lis the unique value (r∗
l−1) e(si, sj) and does not depend on
17
which scenario result in picking l. Putting it together, we can compute the expected savings
for a given link las follows:
E[sl] = 1
|K|
|K|
X
k=1
xl∗
k(r∗
l−1) e(si, sj) = (r∗
l−1)e(si, sj)
|K|
|K|
X
k=1
xl∗
k
As y∗
l≥0, we have:
≥r∗
l−1
|K|(
|K|
X
k=1
xl∗
k−y∗
l)e(si, sj)
≥r∗
l−1
|K|s∗
l≥1
|K|s∗
l
Summing up over all links l∈E(G) yields:
X
l∈E(G)
E[sl]≥1
|K|X
l∈E(G)
s∗
l
Moreover, the savings in the LP relaxation formulation is an upper bound on the savings
for the integer programming formulation, so the proof is complete.
It is trivial to observe that the approximation algorithm will obtain the optimal solution
for the two-truck case.
5.4. Role of LP relaxation
This subsection compares the performance of the approximation algorithm without LP relax-
ation versus that with LP relaxation. With an illustrative example, we show that the greedy
longest path algorithm provides 1
kof the optimal savings, while the longest path equipped
with the LP relaxation provides the optimal solution.
Definition 2. We define a strip quadrilateral SQnto be a graph that is obtained by adding
two new vertices, say xi, yi, for each pair of adjacent vertices (u, v)∈Pn+1, the simple path of
length n, and replacing the edge (u, v)by the union of four edges (u, xi),(xi, yi),(v, yi),(u, v)
on u, v.
Introducing SQ∗
n, the weighted directed graph is obtained from SQnwhere in each quadri-
lateral (u, xi, yi, v) the weight of the edges (u, v) and (u, xi) is 1 and the weight of the two
other edges is k. Moreover, all the edges in the underlying directed path Pn+1 are directed
from one of the endpoints of Pn+1 to the other one. The other edges are directed towards
their corresponding yivertex of the quadrilateral they belong. Figure 3demonstrates the
structure for SQ∗
n. Now, let us consider the case where we have 2n+ 1 trips. The first
trip is between the two endpoints of the strip quadrilateral. Moreover, for any quadrilateral
(u, x, y, v) in SQ∗
nwe have two associated trips, one from uto yand the other from xto y.
We also consider the weight of an edge as the spatial distance represented by that edge. Also,
note that for the trips that have length k, the choice of a shortest spatial route is unique,
while for the trips with length k+ 1 there are two choices for the spatial shortest route. The
18
origins and destinations have been depicted in Figure 3. To avoid unnecessary complexity,
we have not depicted the time dimension for these trips. However, we can assume that all
these trips are completely flexible, meaning that their corresponding time window does not
put any restriction on their route choice. For a value of nsatisfying n=k+ 1, applying the
greedy algorithm without the LP relaxation to solve 12 yields a solution where the flexible
trips are forced to pass through their overlap with the Pn+1. This results in a total savings
of n. However, if the flexible trips choose their other route, the total savings will be nk. It
is not hard to see the solution to the LP relaxation is the optimal solution in this case and
obtains the optimal nk savings using our LP modified greedy algorithm.
Figure 3: The spatial graph SQ∗
nof an illustrative example
6. Numerical Experiments
In this section, we discuss the results of a series of numerical experiments conducted to ex-
amine the performance of the proposed OA, DP-based heuristic and LP-relaxation approxi-
mation algorithm methods. The OA algorithm is implemented in GAMS/CPLEX platform.
We use MATLAB for implementing the DP and approximation algorithm. The Computa-
tional tests are conducted on a 3.4GHz Dell Optiplex 990 Pentium i7-2600 computer with
8GB RAM on the 64-bit version of the Windows 10 operating system. This numerical sec-
tion is divided into three different sections. In the first part, we study the computational
performance of the proposed OA algorithm on a small- to medium-sized network, followed
by the second section which compares all three methods in terms of the achieved energy
savings while changing the flexibility of truck travel schedules. Finally the last section is
dedicated to the DP algorithm where we test the algorithm in realistic settings.
6.1. Outer Approximation
In this section we benchmark the OA algorithm against the linearization algorithm proposed
by Magnanti and Stratila (2004) and also highlights the performance improvement as a
result of implementing the local search after solving OA-MP. Throughout this subsection,
we assume the objective function is characterized as fl(xk
l)=(Pl∈E(G)xl)(1/k), which is a
concave function. However, since xl=xk
l, owing to the fact that xlis a binary variable, we
can rewrite the function as fl(xk
l) = (Pl∈E(G)xk
l)(1/k). This seemingly minor modification
converts the new function to the family of norm functions, which are convex (proof provided
in Lemma 3in the appendix). We set k= 1.06 to replicate the results achieved through an
19
empirical study by Zabat et al. (1995). Similar to Larsson et al. (2015), we adopt the Hanan
grid as the test network in this section (Hanan,1966). In a Hanan grid, the edge weight
is equal to the Euclidean distance between the nodes. Furthermore, we consider four fleet
sizes, namely 25, 50, 100 and 150.
Figure 4: Time Comparison
For every fleet size we generate 20 random networks, and then compare the computational
time of OA and the pieces-wise linear approximation (PC-LA) proposed by Magnanti and
Stratila (2004). Both OA and PC-LA are solved with an optimality gap of 10%. For the
former, we set 30 iterations as the maximum number of iterations and the maximum CPU
time of 1,200 seconds is set for the latter. Figure 4presents the time comparison between
these two methods. It shows that the increase in the number of trucks would result in
an increase in computational time for both methods. OA requires less time on average to
achieve the desired optimally gap than the PC-LA method. We should point out that for
the cases of the number of trucks equal to 150, the maximum CPU time of 1200 seconds
is reached for the PC-LA method and therefore the solution reported does not reach the
desired optimiality gap of 10%.
In order to highlight the importance of implementing the local search within the OA
algorithm we design a set of studies to confirm the improvements in lowering the best upper
bound when the local search is applied. In particular, the upperbound improvement is
calculated according to relative difference between the OA upperbound without and with
the local search. Similar to the previous tests, for every fleet size, 20 networks are randomly
generated and the OA algorithm is applied with and without the local search. The results
illustrated in Figure 5clearly show the importance of applying the local search within the
OA-MP in order to improve the quality of the integer solutions. We can also conclude that
the improvement in the upper-bound solution tends to increase with the increase in the
number of trucks, as expected. Finally, Figure 6shows the trajectory of the OA upper
bound for 30 iterations, where the upper bounds achieved with the local search are clearly
better that the case without the local search.
20
Figure 5: Local Search Improvement
Figure 6: OA Upper Bound for 150 trucks w/o Local Search (LS)
6.2. Sensitivity Analysis of Schedule Flexibility
The goal of this subsection is twofold: First, we compare the achieved fuel savings between
the DP-based heuristic, OA, and approximation algorithm. Second, we examine the impact
of flexibility of trucks’ schedules on the potential fuel savings. All three algorithms are tested
on the Hanan grid against two scenarios of truck schedule flexibility. In the first scenario,
a flexible schedule allows trucks to take detours or stay at an intermediate node while in
the second scenario trucks mostly follow their energy-minimizing paths between their origins
and destinations. For each scenario we generate 20 sample spatio-temporal networks and
report the average performance of these three methods. It is worth pointing out that both
DP and approximation algorithm significantly outperform the OA algorithm across the tests
conducted in this section in terms of computational performance, as the solution time for
both approximation algorithm and DP algorithms is a fraction of a second.
The results illustrated in Figures 7and 8confirm our intuition that flexible schedules
21
Figure 7: Fuel Consumption Savings for Flexible Schedule
Figure 8: Fuel Consumption Savings for Inflexible Schedule
22
create more platooning opportunities and thus yield more savings. In the case of inflexible
schedules, the difference between the achieved savings through approximation algorithm
and OA algorithms is small while such difference tends to be larger in the case of flexible
schedules.
6.3. Dynamic Programming Algorithm
This subsection is concerned with the performance of the proposed DP algorithm. Specifi-
cally, we first compare the fuel savings between OA and DP algorithms, and then benchmark
the results against the heuristic proposed by Larson et al. (2014) in solving the problem on
the Germany highway network up to 10,000 trucks. The network consists of 647 nodes, 695
edges and 12 origins/destinations (Figure 9). The right panel of Figure 10 compares the
percentage of savings in fuel consumption achieved by OA and DP. While the former yields
more savings, the latter shows a reasonably good performance. The results imply that the
achieved savings from DP is lower than the OA. However, its performance is robust against
increasing the number of vehicles. Moreover, the DP solution time is only slightly affected by
the increase in fleet size, which makes the it appealing for application in real-time settings.
This is shown in the left panel of Figure 10, where DP manages to solve the problem with up
to 10,000 trucks and outperforms substantially the method proposed by Larson et al. (2013,
2014).
23
Figure 9: Germany Network
Figure 10: Dynamic Programming Algorithm Performance
24
7. Conclusion
In this paper we proposed a new modeling framework for the general scheduled platoon
planning problem. The proposed framework spans a variety of methods including optimiza-
tion, and heuristic and approximation algorithms. We developed a mathematical model
with a number of appealing properties that enable us to leverage outer approximation cuts,
strengthened further with a local search to improve the solution quality. The local search
builds on the initial solution provided by the outer approximation algorithm through in-
troducing a series of linear programs to facilitate the process of finding a locally optimal
solution. Unlike many other local search approaches, we proved that the proposed local
search terminates in a polynomial number of operations in the inputs to the problem.
Although the proposed outer approximation method significantly improves on solution
time and quality and enables scheduled planning for a medium network, it is not suitable for
real-time implementation in large-scale networks that demand high-quality solutions within
a short period of time. Therefore, we devise a dynamic-programming-based heuristic that
can provide a solution of reasonable quality in a timely fashion. Lastly, we study a simplified
platoon planning problem, which has been studies previously in the literature and is par-
ticularly suitable for providing ballpark estimates of truck platooning benefits. We connect
this problem with the well known “Pairwise Distance Preservers problem”, and present an
approximation algorithm that demonstrates superior performance against the performance
of previously proposed methods in the literature. Finally, we demonstrate the performance
of all algorithms against each other as well as the methods proposed in the literature using
a number of of synthetic and real instances.
The framework presented in this paper provides a foundation for addressing other issues
related to truck platooning such as optimal platoon formation and behavioral platoon sta-
bility (Sun and Yin,2019). Our future work can take into account the uncertainty arising
in travel schedules as well as the transportation network.
Acknowledgement
The work described in this paper was partly supported by research grants from the National
Science Foundation (CNS-1837245) and the USDOT Tier-1 University Transportation Center
Freight Mobility Research Institute (FMRI).
References
Mojtaba Abdolmaleki, Neda Masoud, and Yafeng Yin. Vehicle-to-vehicle wireless power
transfer: Paving the way toward an electrified transportation system. Transportation
Research Part C: Emerging Technologies, 103:261–280, 2019.
Greg Bodwin and Virginia Vassilevska Williams. Better distance preservers and additive
spanners. In Proceedings of the twenty-seventh annual ACM-SIAM symposium on Discrete
algorithms, pages 855–872. Society for Industrial and Applied Mathematics, 2016.
Christophe Bonnet and Hans Fritz. Fuel consumption reduction in a platoon: Experimental
results with two electronically coupled trucks at close spacing. Technical report, SAE
Technical Paper, 2000.
25
Nils Boysen, Dirk Briskorn, and Stefan Schwerdfeger. The identical-path truck platooning
problem. Transportation Research Part B: Methodological, 109:26–39, 2018.
Fred Browand, John McArthur, and Charles Radovich. Fuel saving achieved in the field test
of two tandem trucks. 2004.
Eden Chlamt´aˇc, Michael Dinitz, Guy Kortsarz, and Bundit Laekhanukit. Approximating
spanners and directed steiner forest: Upper and lower bounds. In Proceedings of the
Twenty-Eighth Annual ACM-SIAM Symposium on Discrete Algorithms, pages 534–553.
SIAM, 2017.
Arturo Davila. Report on fuel consumption. SARTRE, Deliverables, 2013.
Michael Elkin and David Peleg. The hardness of approximating spanner problems. In Annual
Symposium on Theoretical Aspects of Computer Science, pages 370–381. Springer, 2000.
Roger Fletcher and Sven Leyffer. Solving mixed integer nonlinear programs by outer ap-
proximation. Mathematical programming, 66(1-3):327–349, 1994.
Maurice Hanan. On steiner’s problem with rectilinear distance. SIAM Journal on Applied
Mathematics, 14(2):255–265, 1966.
Jeffrey Larson, Christoph Kammer, Kuo-Yun Liang, and Karl Henrik Johansson. Coordi-
nated route optimization for heavy-duty vehicle platoons. In Intelligent Transportation
Systems-(ITSC), 2013 16th International IEEE Conference on, pages 1196–1202. IEEE,
2013.
Jeffrey Larson, Kuo-Yun Liang, and Karl H Johansson. A distributed framework for coor-
dinated heavy-duty vehicle platooning. IEEE Transactions on Intelligent Transportation
Systems, 16(1):419–429, 2014.
Jeffrey Larson, Todd Munson, and Vadim Sokolov. Coordinated platoon routing in a
metropolitan network. In 2016 Proceedings of the Seventh SIAM Workshop on Combi-
natorial Scientific Computing, pages 73–82. SIAM, 2016.
Erik Larsson, Gustav Sennton, and Jeffrey Larson. The vehicle platooning problem: Com-
putational complexity and heuristics. Transportation Research Part C: Emerging Tech-
nologies, 60:258–277, 2015.
Thomas L Magnanti and Dan Stratila. Separable concave optimization approximately equals
piecewise linear optimization. In International Conference on Integer Programming and
Combinatorial Optimization, pages 234–243. Springer, 2004.
Neda Masoud and R Jayakrishnan. A decomposition algorithm to solve the multi-hop peer-
to-peer ride-matching problem. Transportation Research Part B: Methodological, 99:1–29,
2017a.
Neda Masoud and R Jayakrishnan. A real-time algorithm to solve the peer-to-peer ride-
matching problem in a flexible ridesharing system. Transportation Research part B:
Methodological, 106:218–236, 2017b.
26
Matteo Muratori, Jacob Holden, Michael Lammert, Adam Duran, Stanley Young, and Jeffrey
Gonder. Potentials for platooning in us highway freight transport. Technical report,
National Renewable Energy Lab.(NREL), Golden, CO (United States), 2017.
Walter Murray and Kien-Ming Ng. An algorithm for nonlinear optimization problems with
binary variables. Computational Optimization and Applications, 47(2):257–288, 2010.
Abtin Nourmohammadzadeh and Sven Hartmann. The fuel-efficient platooning of heavy
duty vehicles by mathematical programming and genetic algorithm. In International Con-
ference on Theory and Practice of Natural Computing, pages 46–57. Springer, 2016.
M Shida, T Doi, Y Nemoto, and K Tadakuma. A short-distance vehicle platooning system:
2nd report, evaluation of fuel savings by the developed cooperative control. In Proceedings
of the 10th International Symposium on Advanced Vehicle Control (AVEC), pages 719–723,
2010.
Steven E Shladover, Dongyan Su, and Xiao-Yun Lu. Impacts of cooperative adaptive cruise
control on freeway traffic flow. Transportation Research Record, 2324(1):63–70, 2012.
Vadim Sokolov, Jeffrey Larson, Todd Munson, Josh Auld, and Dominik Karbowski. Maxi-
mization of platoon formation through centralized routing and departure time coordina-
tion. Transportation Research Record: Journal of the Transportation Research Board,
(2667):10–16, 2017.
Xiaotong Sun and Yafeng Yin. Behaviorally stable vehicle platooning for energy savings.
Transportation Research Part C: Emerging Technologies, 99:37–52, 2019.
Joel Vander Werf, Steven E Shladover, Mark A Miller, and Natalia Kourjanskaia. Effects of
adaptive cruise control systems on highway traffic flow capacity. Transportation Research
Record, 1800(1):78–84, 2002.
Le Yi Wang, Ali Syed, George Yin, Abhilash Pandya, and Hongwei Zhang. Coordinated
vehicle platoon control: Weighted and constrained consensus and communication network
topologies. In 2012 IEEE 51st IEEE Conference on Decision and Control (CDC), pages
4057–4062. IEEE, 2012.
Michael Zabat, Nick Stabile, Stefano Farascaroli, and Frederick Browand. The aerodynamic
performance of platoons: A final report. 1995.
Appendix I
Proposition 2. In model P2, the OA and GBD cuts coincide.
Proof : The Benders’ cuts for the GBD master problem are generated while assuming
that the optimal value of the continuous variables are fixed as ¯
Ql. Therefore, the following
equation would serve as the master problem Benders’ cut for model P2:
wl≥¯
Ql+λl(gl(X
k∈K1
xk
l,X
k∈K2
xk
l, ..., X
k∈KC
xk
l)−¯
Ql) (14)
27
In addition, by writing the KKT conditions of the NLP subproblem we can easily conclude
that the optimal Lagrangian multipliers, λl, associated with the constraint 2e are equal to
1. Therefore, equation 14 would reduce to the following equation:
wl≥gl(X
k∈K1
xk
l,X
k∈K2
xk
l, ..., X
k∈KC
xk
l)≥gl(X
k∈K1
¯xk
l,X
k∈K2
¯xk
l, ..., X
k∈KC
¯xk
l)
+X
k∈K
∇gl(X
k∈K1
¯xk
l,X
k∈K2
¯xk
l, ..., X
k∈KC
¯xk
l)(xk
l−¯xk
l)(15)
The right-hand side of equation 15 is the sub-gradient approximation of the convex function
which is equivalent to OA cuts and therefore the proof is complete.
Lemma 3. Every Norm function, F(x) = kxkp,∀p≥1is convex.
Proof. Assume x1and x2are two points that belong to the domain of F(x) and λas a
positive number between zero and one.
F(λx1+ (1 −λ)x2) = kλx1+ (1 −λ)x2k
≤ kλx1k+k(1 −λ)x2k(from triangular inequality)
=λkx1k+ (1 −λ)kx2k
which is the definition of a convex function and the proof is complete.
Appendix II
Appendix II: Proof of Theorem 1
We prove theorem 1in three separate steps. First, we introduce a class of functions
as well-bent functions. Then, we prove the statement of the theorem is true for the class
of well-bent objective functions. Finally, we prove every concave objective function can be
approximated by a function in the class of well-bent functions.
Let us fix an > 0 to take any arbitrary value greater than 0.
Definition 3. We call a function well-bent if there exists a θ > 0that satisfies the following
condition for any n∈N:
f0(n+ 1) −f0(n)>θ
n1+or f0(n+ 1) −f0(n) = 0 (16)
Lemma 4. Theorem 1holds if the energy consumption for each link, fl(.),∀l∈E(G), is in
the class of well-bent functions.
Proof. Let us denote by ~x and ~y two consecutive solutions to the optimization problem
described in 7. If the gradient of the objective function zat both ~x and ~y are equal. Then,
both optimization problems will result in the same solution ~y, and this concludes the proof.
As such, we can assume ∇z(~x)6=∇z(~y). In this case, we prove that if we can improve
the objective function by solving the optimization problem 7, we can improve it by at least
28
O(1
P4+|E(G)|2). i.e. z(~x)−z(~y)>κ
P4+|E(G)|2, for some constant κ > 0. Concavity of the
objective function in optimization problem 7yields:
∇z(~x)T.(~y −~x)<0 (17)
Moreover, in the single-brand case the total energy consumption can be separated over
links as follows:
z(~x) = X
l
fl(X
k
xk
l)
As such, we can write the difference in the gradient of zat ~x and ~y as:
∇z(~x)− ∇z(~y) = (f0
l1(X
k
xk
l1)−f0
l1(X
k
yk
l1), . . . , f 0
lm(X
k
xk
lm)−f0
lm(X
k
yk
lm))
Taking the inner product with the vector ~x −~y, we get:
(∇z(~x)− ∇z(~y))T(~x −~y) = X
l
[f0
l(X
k
xk
l)−f0
l(X
k
yk
l)][X
k
xk
l−X
k
yk
l] (18)
As the funtions fl(.) are concave we can conclude:
[f0
l(X
k
xk
l)−f0
l(X
k
yk
l)][X
k
xk
l−X
k
yk
l]≤0∀l∈E(G) (19)
As we have ∇z(~x)6=∇z(~y), there should be a link li∈E(G) with f0(Pkxk
li)6=f0(Pkyk
li).
The function fli(.) being concave and well-bent yields:
[f0
li(X
k
xk
li)−f0
li(X
k
yk
li)][X
k
xk
li−X
k
yk
li]<−θ
P1+(20)
From 18,19, and 20 we have:
(∇z(~y)− ∇z(~x))T(~y −~x)≤−θ
P1+(21)
Summing 17 and 21 yields:
∇z(~y)T(~y −~x)≤−θ
P1+(22)
Now, let us denote by η∗the solution to:
argmax0≤η≤1η|∇z(η~x + (1 −η)~y)(~y −~x)≤−θ
2P1+
Note that η∗is well defined, since the η= 0 would satisfy the condition stated above.
Doing so, we can consider two cases:
29
•η∗= 1: As such, ∇z(~x)(~y −~x)≤−θ
2P1+. In this case, we can overestimate the function
fat point ~y by the first-order Taylor approximation of zat point ~x:
z(~y)≤z(~x) + ∇z(~x)(~y −~x) (23)
However, as η∗= 1, we have:
z(~x) + ∇z(~x)(~y −~x)≤z(~x)−θ
2P1+(24)
Which concludes the proof in this case.
•η∗<1: As the gradient of the function zis continuous, using the intermediate value
theorem we have:
∇z(η∗~x + (1 −η∗)~y)(~y −~x) = −θ
2P1+(25)
Combining 25 with 22 yields:
(∇z(y)− ∇z(η∗~x + (1 −η∗)~y))(~y −~x)≤−θ
2P1+
Using Cauchy-Schwarz inequality we can derive:
k∇z(~y)− ∇z(η∗~x + (1 −η∗)~yk2k~y −~xk2≥θ
2P1+
Moreover, the maximum euclidean distance between any two basic feasible solutions
in the optimization problem 7is at most P|E(G)|. i.e. k~y −~xk2≤P|E(G)|. As such,
we have:
k∇z(y)− ∇z(η∗~x + (1 −η∗)~yk2≥θ
2P1+P|E(G)|(26)
That being said, the function zhas a finite Hessian, so there exists an Msuch
that k∇2f(x)k2≤M. It is well known that for the concave function zwe have
k∇f(x)− ∇f(y)k2≤Mkx−yk2, using this fact together with 26 we can conclude:
k~y −(η∗~x + (1 −η∗)~y)k2≥θ
2M P 1+P|E(G)|
Using the upperbound on the maximum distance of two basic feasible solutions we get:
|η∗| ≥ θ
2M P 1+(P|E(G)|)2(27)
We can underestimate the function zat the point yby the first-order Taylor approxi-
mation from the value of the function at point η∗~x + (1 −η∗)~y:
z(~y)≤z(η∗~x + (1 −η∗)~y) + ∇z(η∗~x + (1 −η∗)~y)(y−(η∗~x + (1 −η∗)~y))
30
We can rewrite the expression in RHS to get:
≤z(η∗~x + (1 −η∗)~y) + ∇z(η∗~x + (1 −η∗)~y)(~y −~x)η∗
Using 25 and 27 we can simplify further to get:
≤z(η∗~x + (1 −η∗)~y) + −θ
2P1+
θ
2M P 1+(P|E(G)|)2(28)
From 17 we have z(x)> z(η∗~x + (1 −η∗)~y). Combining this fact with the inequality
in 28 concludes the proof.
Lemma 5. Any concave function flcan be approximated by a well-bent function.
Proof. Given function fl, we fix a ζ > 0 and define function glas a well-bent function that
approximates function flbased on the solution to the differential equation below:
gl(0) = fl(0)
g0
l(0) = f0
l(0) (29a)
g0
l(x) = f0
l(x) If f0
l(x)−g0
l(x−1) <ζ
x1+
g0
l(x−1) If f0
l(x)−g0
l(x−1) ≥ζ
x1+
∀x∈N(29b)
g0
l(x)=(dxe − x)g0
l(bxc)+(x− bxc)g0
l(dxe)∀x /∈N(29c)
By Packard’s existence and uniqueness theorem for differential equations for a given P
there should exist a unique solution to the system of differential equations 29. However, if
we define the difference function h(x) = fl(x)−gl(x) we have:
h(0) = 0
h0(0) = 0
|h0(x)|<max ζ
x1+, ζ
(30a)
Using the fundamental theorem of calculus we have:
h(a) = ˆa
0
h0(x)dx =ˆ1
0
h0(x)dx +ˆa
1
h0(x)dx < ζ +ˆa
1
ζ
x1+dx < ζ(1 + 1
) (31)
If we choose ζ=δ
1+ 1
fl(1), we can approximate the function flwithin a factor of 1 −δ
by the function gl. i.e., for any arbitrary awe have |fl(a)−gl(a)| ≤ (1 −δ)fl(x). Which
concludes the proof.
Using lemma 5, we can solve the optimization problem 1substituting the functions fl
with the functions gl. Then, we can claim that the objective value at the solution ~
x∗∗, when
fls are replaced with gls, is within 1 −δfactor of the objective value for the solution to the
original optimization problem ~x.
31
Appendix III
Example 2
There are two main approaches to dealing with a Pairwise Distance Preservers problem in
the literature. The first is to use the LP relaxation approach that we used in this paper; the
second is to find a good decomposition structure that not only can decompose the original
network of these structures, but more importantly, is able to find decomposition blocks
with extreme properties in an acceptable polynomial time. One of the handy decomposition
structures used in many Steiner type problems, especially a distance preservers problem,
is the family of junction tree algorithms: trees with an in and out branching. Example 2
shows that there exists a graph that does not contain any junction tree with the savings at
least 1
k2of the total savings as a subgraph. This shows why junction trees might not be a
good decomposition structure for the savings perspective of the Pairwise Distance Preservers
problem.
Definition 4. A junction tree is defined as a collection of paths, all passing through the
same node v.
Definition 5. We define a twisting path T Pninductively to be a union of n simple directed
paths. While T P1is the simple path of length 1, we can obtain T Pnfrom T Pn−1by adding
a new path whose overlap with all the other paths is exactly 1. Moreover, the overlap of the
new path with any other path is prior to all the other overlaps on those paths if we consider
the directed ordering of edges.
Figure 11 demonstrates T P3. If we consider the paths that generate T Pnas the trips in
a network its easy to see that all junction trees in this network are the union of two paths.
As such, the highest weight for junction trees in T Pnis 1. However, the total number of
overlaps equals n
2. While, as described in Bodwin and Williams (2016), the junction tree
approach or any other decomposition approach requires junction trees with higher weight
compared to the total savings.
p1
p2
p3
Figure 11: The spatial graph T P3
32