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

beneﬁts 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 ﬂow problem, and devise a number of solution methodologies

to ﬁnd 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 eﬃciency of

the proposed methods and their applicability in real-world settings.

Keywords: Truck platooning, itinerary planning, concave minimum cost ﬂow, 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 diﬀerent forms of platooning, truck platooning

has attracted signiﬁcant attention recently, as trucks are likely the early adopters of the

technology due to their operational characteristics such as long distance and relatively ﬁxed

travel routes (Muratori et al.,2017). Upon successful implementation, truck platooning

can produce a variety of beneﬁts 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 traﬃc congestion (Shladover et al.,2012,Vander Werf et al.,2002). Although the

technology is still at the stage of ﬁeld 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 diﬀerent 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 oﬄine (pre-trip), or an online (real-time) perspective.

The scheduled platoon planning problem with ﬂexible 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 ﬂeets. 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 ﬁnding 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 ﬂeet, inﬂexibility of forming

platoons at diﬀerent links, simpliﬁed 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 ﬂeets traveling in large-scale

real-world networks.

In contrast, this paper considers the scheduled platoon planning problem without these

restrictions. Speciﬁcally, 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 ﬂow 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 eﬃciency 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 signiﬁcantly

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 prespeciﬁed 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 eﬃcient approximation algorithm along with its corresponding

approximation bounds.

Although we present our work in an oﬄine, pre-trip setting, the proposed algorithms,

particularly the heuristic and the approximation algorithm, are eﬃcient 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 diﬀerent tests scenarios. Lastly, Section 7concludes the

paper.

2. Model

Consider a network and a ﬂeet of trucks of diﬀerent classes/brands traveling from their origins

to their destinations. Each truck has its own travel time window that speciﬁes 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 ﬂeet

considering the savings achieved from platooning. The energy-minimizing route speciﬁes

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 deﬁne 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 deﬁned 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 deﬁned 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 ﬁgure 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 speciﬁes 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 reﬁne 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 simpliﬁed

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 deﬁne 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 ﬁndings from

previous studies and ﬁeld 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 ﬁnding 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 ﬂow

conservation for each truck k, where the binary decision variable xk

lis deﬁned to take the

value 1 if truck ktraverses the spatio-temporal link land the value 0 otherwise. Constraint

1c deﬁnes yc

las the sum of trucks of class cpassing through link l. Finally, constraint 1d

speciﬁes the decision variable xk

lto be binary.

As formulated, P1 belongs to the family of multi-commodity ﬂow 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

eﬃciently 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 diﬀerentiable and the

diagonal elements of its Hessian matrix are ﬁnite, we can show that the following function

glis strongly convex (Murray and Ng,2010):

gl=fl+MΦ

5

Where Φ is a strictly convex function deﬁned on the same domain as fl, where Φ : [0,1] →IR,

and Φ(0) = Φ(1) = 0. In addition, in the above deﬁnition Mis a suﬃciently 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 ﬁxing

the integer variables; however the composition of the master problem in OA is diﬀerent from

that of GBD. More speciﬁcally, in OA, the master problem is generated by substituting the

nonlinear convex function by its ﬁrst-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 ﬁxing the binary integer

variables ¯xk

l. Once the integer variables are ﬁxed, 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 oﬀ 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 Leyﬀer (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 deﬁned 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 oﬀ-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 Leyﬀer (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 ﬁrst

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 ﬁrst-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 ﬁrst order Taylor approximation of the

function at point xaround the point ¯x. Constraints 7b reﬂect the ﬂow 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 suﬃciently 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 ﬁnd 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 ﬁnding 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 ﬂeet size) grows, the number of variables

and constraints of the problem increases exponentially, making it diﬃcult to apply the pro-

posed exact algorithm. In this section, we devise a dynamic-programming-based heuristic

to ﬁnd 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 satisﬁed (Masoud and Jayakrishnan,2017b,Abdolmaleki et al.,2019),

while by using the ESTAM method we can avoid introducing redundant variables and solve

the problem eﬃciently (Masoud and Jayakrishnan,2017a).

9

The core idea of our heuristic is to use a dynamic programming (DP) algorithm to

iteratively ﬁnd in the time-expanded network a hypothetical path that yields the maximum

platoon savings along its links. Speciﬁcally, we aim to ﬁnd 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 ﬁnds

the path pthat results in maximum platoon savings. Before introducing the algorithm, we

further note that since diﬀerent trucks have diﬀerent allowable speed proﬁles 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 ﬁgure, 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 ﬁnish at time t= 7, and its allowable speed proﬁle

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 deﬁne 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 ﬁnd the path

p= argmax(t,s)∈N(G)V(t, s).

We deﬁne 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 diﬀerence 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 eﬃciently 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 ﬁnding 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 ﬂeet case we can ﬁnd 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 ﬁnd 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 ﬂexibility of the trip by introducing new trips that connect the ﬁxed portions

of the original trip. As such, we ﬁrst 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 ﬁxed 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, deﬁne 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 speciﬁcally, 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-speciﬁed

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

simpliﬁcation to the general scheduled platoon planning problem as the assumptions are not

overly restrictive. The simpliﬁcation 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 beneﬁt 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 eﬃcient

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

satisﬁes 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 ﬁrst 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 ﬁnishes their itinerary sooner than the time interval TLA

k. Finally, the objective

is to ﬁnd 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

prespeciﬁed 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 ﬁrst 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 ﬁrst 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 ﬁnds, 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.

Deﬁnition 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 ﬁnding the optimal solution to the platooning problem is

equivalent to ﬁnding 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 deﬁnition 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 coeﬃcient α, 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 ﬂow 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 ﬁrst 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 ﬁnd 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 ﬂexibility 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. Deﬁne 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 suﬃcient to prove that there exists a path that obtains at least 1

|K|of the total

savings in the optimal solution. We ﬁrst generalize the notion of savings to the continuous

relaxation setting. To do so, we follow the deﬁnition 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 ﬂow 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 diﬀerent |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.

Deﬁnition 2. We deﬁne 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 ﬁrst

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 ﬂexible, 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 ﬂexible

trips are forced to pass through their overlap with the Pn+1. This results in a total savings

of n. However, if the ﬂexible 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 modiﬁed 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 diﬀerent sections. In the ﬁrst 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 ﬂexibility 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 modiﬁcation

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 ﬂeet

sizes, namely 25, 50, 100 and 150.

Figure 4: Time Comparison

For every ﬂeet 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 conﬁrm the improvements in lowering the best upper

bound when the local search is applied. In particular, the upperbound improvement is

calculated according to relative diﬀerence between the OA upperbound without and with

the local search. Similar to the previous tests, for every ﬂeet 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 ﬂexibility of trucks’ schedules on the potential fuel savings. All three algorithms are tested

on the Hanan grid against two scenarios of truck schedule ﬂexibility. In the ﬁrst scenario,

a ﬂexible 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 signiﬁcantly 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 8conﬁrm our intuition that ﬂexible schedules

21

Figure 7: Fuel Consumption Savings for Flexible Schedule

Figure 8: Fuel Consumption Savings for Inﬂexible Schedule

22

create more platooning opportunities and thus yield more savings. In the case of inﬂexible

schedules, the diﬀerence between the achieved savings through approximation algorithm

and OA algorithms is small while such diﬀerence tends to be larger in the case of ﬂexible

schedules.

6.3. Dynamic Programming Algorithm

This subsection is concerned with the performance of the proposed DP algorithm. Speciﬁ-

cally, we ﬁrst 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 aﬀected by

the increase in ﬂeet 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 ﬁnding 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 signiﬁcantly 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 simpliﬁed

platoon planning problem, which has been studies previously in the literature and is par-

ticularly suitable for providing ballpark estimates of truck platooning beneﬁts. 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 electriﬁed 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 ﬁeld 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 Leyﬀer. 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.

Jeﬀrey 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.

Jeﬀrey 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.

Jeﬀrey Larson, Todd Munson, and Vadim Sokolov. Coordinated platoon routing in a

metropolitan network. In 2016 Proceedings of the Seventh SIAM Workshop on Combi-

natorial Scientiﬁc Computing, pages 73–82. SIAM, 2016.

Erik Larsson, Gustav Sennton, and Jeﬀrey 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 ﬂexible ridesharing system. Transportation Research part B:

Methodological, 106:218–236, 2017b.

26

Matteo Muratori, Jacob Holden, Michael Lammert, Adam Duran, Stanley Young, and Jeﬀrey

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-eﬃcient 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 traﬃc ﬂow. Transportation Research Record, 2324(1):63–70, 2012.

Vadim Sokolov, Jeﬀrey 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. Eﬀects of

adaptive cruise control systems on highway traﬃc ﬂow 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 ﬁnal 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 ﬁxed 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 deﬁnition 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 ﬁx an > 0 to take any arbitrary value greater than 0.

Deﬁnition 3. We call a function well-bent if there exists a θ > 0that satisﬁes 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 diﬀerence 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 deﬁned, 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 ﬁrst-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 ﬁnite 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 ﬁrst-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 ﬁx a ζ > 0 and deﬁne function glas a well-bent function that

approximates function flbased on the solution to the diﬀerential 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 diﬀerential equations for a given P

there should exist a unique solution to the system of diﬀerential equations 29. However, if

we deﬁne the diﬀerence 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 ﬁrst is to use the LP relaxation approach that we used in this paper; the

second is to ﬁnd a good decomposition structure that not only can decompose the original

network of these structures, but more importantly, is able to ﬁnd 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.

Deﬁnition 4. A junction tree is deﬁned as a collection of paths, all passing through the

same node v.

Deﬁnition 5. We deﬁne 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