# Quantum Annealing for Vehicle Routing Problem with weighted Segment

Toufan Diansyah Tambunan(1), Andriyan Bayu Suksmono, Ian Joseph Matheus
Edward, Rahmat Mulyawan  School of Electrical Engineering and Informatics
Institut Teknologi Bandung (ITB).
Bandung, Indonesia
<EMAIL_ADDRESS>
###### Abstract

Quantum annealing technologies aim to solve computational optimization and
sampling problems. QPU (Quantum Processing Unit) machines such as the D-Wave
system use the QUBO (Quadratic Unconstrained Binary Optimization) formula to
define model optimization problems for quantum annealing. This machine uses
quantum effects to speed up computing time better than classical computers. We
propose a vehicle routing problem that can be formulated in the QUBO model as
a combinatorial problem, which gives the possible route solutions increases
exponentially. The solution aims to optimize the vehicle’s journey to reach a
destination. The study presents a QUBO formulation to solve traffic congestion
problems on certain roads. The resulting route selection by optimizing the
distribution of the flow of alternative road vehicles based on the weighting
of road segments. Constraints formulated as a condition for the level of road
density. The road weight parameter influences the cost function for each road
choice. The simulations on the D-Wave quantum annealer show optimal results on
the route deployment of several vehicles. So that each vehicle will be able to
go through different road options and reduce road congestion accurately. This
solution provides an opportunity to develop QUBO modeling for more complex
vehicle routing problems for road congestion.

###### Index Terms:

quantum annealing, traffic flow, route, optimization, QUBO

##  I Introduction

The development of quantum annealing is designed to solve combinatorial
optimization problems [1], which allows finding solutions in a way that is
better than classical computers. The quantum annealing technology was first
developed for public and commercial by D-Wave Systems. This system exploits
the advantages of quantum mechanisms such as entanglement, superposition and
implements quantum bits (qubits) for the computational process in sampling and
optimization problems [2]. The existence of quantum effects inspires the
annealing process to avoid local minima of the cost function by tunneling the
effect through the barrier that separates local minima (William, 2019). The
optimization approach is based on the observation that the cost function of
the optimization problem can be seen as the energy of the physical system, and
the energy barrier can be traversed by thermal hopping, also known as
tunneling. The optimization required to avoid the local minima trap can be an
advantage of exploring the low energy configuration of quantum mechanics using
superposition and tunneling. The quantum annealing mechanism works on this
idea and has been introduced as an algorithm that can solve optimization
problems such as finding the ground states of a spin Hamiltonian [1]. Quantum
computers (such as D-Wave) have proven to be an advantage for solving various
NP-hard problems. The way that a quantum annealer tries to solve problems is
very similar to how optimization problems are solved using (classical)
simulated annealing [3]. The energy landscape is constructed through
multivariate functions so that the ground state corresponds to the solution of
the problem.

The quantum annealer machine can solve optimization problems by modeling
expressed in the form of QUBO (quadratic unconstrained binary optimization)
[5]. This model belongs to a pattern matching technique that can be used in
machine learning and optimization to minimize the quadratic polynomial over
binary $\\{0,1\\}$ variables [14]. The QUBO model is similar to the Ising
model in that the underlying schema of the model can be depicted in a graph
with qubits as vertices and couplers as edges connecting qubits. The variables
representing the qubits and the interactions between the qubits represent the
costs associated with each pair of qubits. Quantum annealing research related
to optimization has been carried out, including in graph partition problems
[11], jobs scheduling optimization [8], application of solutions for max
clique cases on graphs [13], finding Hadamard matrices with QAM [15],
optimization for the traveling-salesman problem [4],regulation of road density
on traffic flow problems [10], road traffic research [16] and [18] by
optimizing traffic lights to reduce road congestion.

This paper presents a QUBO formulation for traffic flow problems to find
alternative routes for vehicles on the road. This problem is part of the route
finding solution on vehicles that requires a combinatorial solution. Here we
show that while our current work is an extension of the previous study by
Neukart et al., we approach it differently. In the previous work [10, 7],
minimizing traffic congestion was achieved by assigning the most optimal route
to each vehicle to reduce overlapping routes in each vehicle itinerary with
those in other vehicle routes. In our traffic flow model, the vehicle’s route
is affected by the weight assigned to each road segment. Congestion on road
conditions is influenced by the number of vehicles, with the following
definitions:

  1. 1.

The condition of the number of vehicles sharing the lane segment at a certain
time.

  2. 2.

Minimization of the number of overlapping segments on the route of each
vehicle.

  3. 3.

A cost function is obtained from the number of vehicles sharing lanes in one
lane segment.

The cost value will affect the density level of the selected road segment to
avoid traffic jams.

This model can then be used as a property of the road conditions in real
terms. The property of road conditions can be the assumed distance between
points, or the density level of the segment, or other parameters that
determine segment selection. This problem is often encountered in the case of
traffic management in several vehicles heading to the same endpoint and
potentially congestion at the intersection.

To solve a problem using the D-Wave quantum annealer, we must define it as a
QUBO problem or an equivalent Ising function defined on logical variables. We
embed the logical problem in the physical architecture of the quantum annealer
by mapping logical variables and qubits. The final step consists of performing
an annealing process and obtaining the results. The D-Wave quantum annealer
has some limitations, such as the maximum number of physical qubits available
(with 2.048 qubits in its most recent computer, the D-Wave 2000Q system). This
limitation imposes a restriction on the size of the logical problem that can
be embedded into the quantum annealer machine.

##  II Methods

###  II-A Quantum Annealing with D-Wave Systems

QA (quantum annealing) is implemented in hardware to manipulate a collection
of quantum bit (qubit) states according to a time-dependent Hamiltonian Ising
model. In the workings of D-Wave systems [6], the annealing mechanism works
using the Hamiltonian Ising model concept, which represents the following
notation.

$\small
H=-\frac{A(s)}{2}{\left(\sum_{i}{\widehat{\sigma}}_{x}^{(i)}\right)}+\frac{B(s)}{2}{\left(\sum_{i}h_{i}{\widehat{\sigma}}_{z}^{(i)}+\sum_{i>j}J_{i},j{\widehat{\sigma}}_{z}^{(i)}{\widehat{\sigma}}_{z}^{(j)}\right)}$
(1)

Where $\sigma$ is the pauli matrix for the $q$ qubit operations, while $h$ and
$j$ are the qubit bias and coupling strengths. Hamiltonian notation [17]
consists of the initial Hamiltonian equation (equation in the first part) to
the final Hamiltonian (at the end of the equation). The initial Hamiltonian is
the system’s initial state with the lowest energy. In this initial state, all
qubits are in the superposition state 0 and 1. The initial Hamiltonian is also
known as the tunneling Hamiltonian, while the final Hamiltonian is a classic
condition of the problem. Then the system will go to the final Hamiltonian
condition, where the lowest-energy position in the final Hamiltonian is the
solution to the problem being solved. The final state, in this case, is the
condition of the classical system, which is influenced by qubit biases and
coupling strengths. This situation is also known as the Hamiltonian Ising
problem. The optimal solution is found in the annealing process in the
Hamiltonian problem. Finding solutions for QA on the D-Wave system [17] is
done by creating Binary Quadratic Models (BQM), then mapping the problem
modeling in the form of Ising model or quadratic unconstrained binary
optimization (QUBO). The Ising model or QUBO form is used to formulate BQM,
consisting of objective and constraint function components. QUBO maps the
problem in the form of a boolean variable so that it can maximize the
objective function in a linear expression [9]. QUBO formula for problem
optimization:

$Obj(x,Q)=x^{T}\cdot Q\cdot x$ (2)

where $x$ is a vector of binary variables of size $N$, and $Q$ is an $N\times
N$ (upper-triangular) matrix that expresses the relationship between
variables. The optimization search on the objective function is the same as
the minimal function on the Ising model problem [6]. The $x$ values in the
QUBO and Ising models represent different ways. The following optimization
function defines the matrix Q in the upper-triangular form[12]:

$f(x_{1},...,x_{n})=\sum_{i=1}^{n}Q_{i,i}{x_{i}}+\sum_{1\leq i<j\leq
n}Q_{i,j}{x_{i}}{x_{j}}$ (3)

The diagonal representation of the matrix $Q_{i,i}$is a linear coefficient
value, while the top (non-zero) of the $Q$ matrix is a quadratic coefficient.
Furthermore, from the resulting QUBO Matrix, the binary variable value will be
searched, which in combination can give the most minimal objective function
equation results. This model is adopted on the workings of quantum annealing
with the application of qubits, couplers, and entanglements on the D-Wave
systems. The objective function in D-Wave BQM is a problem to be optimized
(minimum cost). Meanwhile, the function constraints are limitations that the
solution must meet according to the rules of the problem.

###  II-B QUBO Formulation for Routing Optimization

The objective of the traffic flow for vehicle routing optimization problem is
to minimize the time for a given set of cars to travel between their
individual sources and destinations. We used the simplifying assumption that
the time to traverse a street is proportional to a function of the number of
cars currently occupying the street. Thus, we minimize the total time for all
cars by minimizing overall road segments’ congestion. Congestion on an
individual road segment is determined by a quadratic function of the number of
cars traversing it in a specific road segment. To optimize the traffic flow,
we minimize the number of overlapping road segments between assigned routes
for each car. We formulate an optimization problem by giving three possible
routes for each car and a choice of car routes that minimize congestion on all
road segments. We require that each car must be assigned one of three route
options. At the same time, this option can minimize the total congestion on
all specified routes. It is important to emphasize that each car is proposed
three alternative routes in this example, which may not be the same set of 3
routes for all cars.

Figure 1: illustration of vehicle route optimization problem from point A to B

The road conditions in Fig.1 show vehicle traffic from point A to point B,
consisting of 9 nodes and 12 edges. Each vehicle is given three choices of
alternative routes, but only one route is chosen by a vehicle as a road
solution that can be passed. The choice of route will have a minimum of 4
segments to pass from point A to point B. Vehicles are represented by variable
$i=\\{1,2,3,...,n\\}$, and route choices are given for each vehicle with three
choices of route $j=\\{1,2,3\\}$. The combination of each route choice from
the vehicle will be modeled in the form of a variable $q_{i,j}$ which
represents qubits. Each vehicle will pass through a selection of segments
$S=\\{s_{1},s_{2},s_{3},...,s_{m}\\}$, according to the route chosen from
point A to reach the destination at point B. In this case, weight is added to
the segment, which has a value of $s_{m}\geq 1$.

TABLE I: Combination of qubits (Q) of route choices (j) vehicles (i) that will
traverse the segment (S).
---

The weights on the segments have different values and can be assumed as
parameters of distance, road priority, or other importance. If the road
segment is selected, it will be worth 1 (true); while not selected, it will be
worth 0 (false).

$w_{ij}=\sum_{m=0}^{11}s_{m},{q_{ij}(m)=1}$ (4)

The accumulated segment $s_{m}$ that are selected on the vehicle route
$q_{ij}$ will be weighted $w_{ij}$, which means the sum of the weights of each
segment passed by the vehicle. The vehicle’s weight on the choice of road
route $w_{ij}$ will affect the use of the QUBO matrix in the cost function of
this case. The condition that must be met from this problem is that each
vehicle must choose exactly one route, which will be used as a constraint
component in the QUBO model. Simulations that refer to previous research
problems (Neukart, 2019), the use of $n$ = 4 vehicles, it takes 12 qubits of
variables to be able to represent the flow of vehicles (each vehicle has $j$=3
alternative routes). Each segment ($s_{m}$) can be crossed by several possible
vehicle routes ($q_{ij}$) and will be accumulated to calculate the density
level of the segment $s_{m}$. The following table describes the combination of
route options for each vehicle (qubit $Q$) that traverses the road segment
$s_{m}$.

The development of this research is by adding a weight parameter ($w_{ij}$) on
each road segment which can be used as a parameter of distance, road priority,
or other interests. The weighting of the road segment will affect the cost
calculation. From what was previously only influenced by the density of
vehicles in a segment ($s_{m}$), the weight ($w_{ij}$) of the road segment
will also affect it. The following equation is the cost function for the road
segment traversed by the vehicle.

$cost(s_{m})=\left(\sum_{q_{ij}\in B_{s_{m}}}{w_{ij}q_{ij}}\right)^{2}$ (5)

The configuration of the route choice for each vehicle can form an overall
cost function equation by accumulating the weight $w_{ij}$ on each segment
which is the route of choice for the vehicle $q_{ij}$. The number of segments
that overlap with other vehicles is minimized to optimize vehicle traffic. So,
three alternative routes are proposed for each vehicle different from other
vehicles. The cost function of each segment $cost(s_{m})$ is calculated from
the number of vehicles using that segment. The cost value will affect the
density level of the selected road segment to avoid congestion. Alternative
vehicle routes are selected based on the least cost value.

$1=\left(\sum_{j=1}^{3}{q_{ij}}\right)^{2}$ (6)
$0=\left(\sum_{j=1}^{3}{q_{ij}-1}\right)^{2}$ (7)
$0=(-q_{i1}-q_{i2}-q_{i3}+2q_{i1}q_{i2}+2q_{i1}q_{i3}+2q_{i2}q_{i3}+1)$ (8)

The constraint function in the above equation will get 0 when the condition is
true when only one vehicle route option is active ($q_{ij}$ is 1). The problem
of vehicle traffic flow is defined by a condition rule where each vehicle
($i$) must take exactly one route choice ($j$) only. So that in the
combination of choices, each vehicle will only be worth $(1)$, which means
that there is only one binary variable $q$ selected.

Figure 2: Constraint matrix for $n$=4 vehicles (12 qubits)

The QUBO formula for the vehicle route selection optimization problem model is
obtained from combining the cost function components (equation 5) of each
segment with the constraint function (equation 7).

$Obj=\sum_{s_{m}\in S}\left(\sum_{q_{ij}\in
B_{s_{m}}}{w_{ij}q_{ij}}\right)^{2}+K\sum_{i=1}^{n}\left(\sum_{j=1}^{3}q_{ij}-1\right)^{2}$
(9)

In this objective function, the parameter $K$ is added, the Lagrange parameter
or called the scaling parameter. This parameter $K$ is used to ensure a valid
priority solution on the condition that all constraints must be met (optimal
objective value). In the next section, the QUBO model (Fig.3) consisting of a
cost and constraint matrix will be processed by quantum annealing using access
with Leap programming to the D-Wave annealer machine.

##  III Experiment & Results

The annealing process results will obtain the form of a binary qubit
combination for the solution with the lowest energy. Each qubit combination
will represent the route choice for each vehicle. Then check the value of the
most optimal cost function of the route choice against the energy value
generated from the annealing process. Experiment with quantum annealing for
simulations on 3, 4, and 5 vehicles with the same path segment shape (12
edges). This scenario is carried out on a cost calculation model that has used
segment weighting or without weighting. Finding the optimal vehicle route
using quantum annealing is as follows:

  1. a.

Identify the problem by mapping the number of vehicles, road segments, and
optimization conditions (cost) to be achieved.

  2. b.

Create QUBO modeling consisting of cost and constraint functions.

  3. c.

Create a representation of the QUBO matrix used for BQM execution on the
D-Wave annealer.

  4. d.

BQM execution on Leap will result in a binary combination of qubits for the
solution with the lowest energy.

  5. e.

The mapping of the solution results in qubits becoming an alternative route
for each vehicle.

The next step is to compare the results of route determination using quantum
annealing and manual route selection. Then the scenario is carried out on a
cost calculation model that has used segment weighting or normal conditions.
Cost in normal conditions (original) refers to previous research (Neukart et
al., 2017), which only depends on road density. As for the use of constraints,
you can use the same matrix model with the addition of an adjusted number of
sizes (e.g., $12\times 12$ matrix for $n=4$ vehicles and $15\times 15$ matrix
for $n=5$ vehicles).

Figure 3: QUBO Matrix for $n=4$ vehicles (with weighting segments)

The execution of the annealing process is carried out on a D-Wave machine
using 50 sampling times and $num_{r}eads=50$. These results (Fig.4) get the
lowest energy (E=-1184) value in the choice of vehicle route combination with
the lowest cost value. The combination of route segments generated from QA
processing on D-Wave provides a more optimal cost value compared to SA on Neal
or with manual calculations (random).

Figure 4: Output annealing process for vehicle routing on D-Wave Leap at $n=4$
vehicles (sample=50)

The selection of the optimal route is carried out in the case of the number of
vehicles $n=3$, $n=4$, and $n=5$. These results indicate the effect of
alternative routes generated by considering the segment weighting parameter
factors. The experiment uses a cost calculation model on the original QUBO
(density) and the updated model (density, weight) with segment weighting. The
cost calculation is based on the combined output of the vehicles produced
using Leap (QA). In the original model, the route selection will be more
accessible in the distribution of vehicles on the road segment. The choice of
routes can vary and result in a better cost value. Meanwhile, the route
optimization with the road segment weighting model will influence the route
selection of the vehicle with a smaller weight. The road segment weight model
allows overlapping vehicles to select a specific road segment, ensuring that
all vehicles have exactly one route (valid result). In sampling the solution
with the lowest energy, it is also possible to obtain incomplete route results
for each vehicle (not valid result). So it’s necessary to post-processing the
results of QA execution obtained from D-Wave Leap to be sorted based on the
following conditions.

  1. a.

Check the sampling solution with the lowest energy whether there is exactly
one route for each vehicle.

  2. b.

If the solution is satisfied, calculate the cost and map the solution from the
qubit value to the vehicle route notation.

  3. c.

If the solution is not satisfied, look for a sampling solution with a complete
route with the lowest energy requirements and the highest probability of
occurrence. This solution is chosen and then mapped the qubit values into
vehicle routes.

An example of mapping the results of optimizing vehicle route selection for
Fig.4 is C1=$Q_{11}$, C2=$Q_{22}$, C3=$Q_{32}$, and C4=$Q_{42}$ (with a total
Cost value = 88). Quantum annealer (D-Wave Leap) execution on different
sampling numbers will give different possible results but the lowest cost
value. The accumulation of vehicles will begin to occur at the number of
vehicles $n=5$. Queues of vehicles will accumulate in specific segments, such
as on segments S0 and S2 (according to Fig.1). Because naturally, the route
choice will prioritize the small value road weight according to the QUBO
model.

Figure 5: Comparison of QA routing valid result (based on the number of
sampling execution)

Solving the vehicle routing problem using QA in each iteration can always
provide an optimal solution. It can be seen from the comparison of using a
sampling size of 50, 100, or 500 iterations (see Fig.5). However, the QUBO
model in the problem requires process adjustments to reselect the solution
from each iteration sample that meets valid requirements (each vehicle gets
exactly one route). This valid solution will provide certainty for each route
to get the least cost value. The annealing process represents the energy level
produced to combine all vehicle routes with the least cost value (low road
density). However, adding the weight of the road segment in the QUBO model
makes it possible to have a low density in the road segment. The comparison
between each iteration’s cost and energy values on the D-Wave Leap shows the
effect of the lowest energy generated by the optimal route with the lowest
cost value. Figure 6 shows that from a series of reasonable solutions, the
most optimal cost value for the choice of vehicle route is related to the
lowest energy value.

Figure 6: The effect of Cost and Energy values for the optimal vehicle route
solution. The result of Cost-1 is based on the density, while Cost-2 is based
on the density and weight of the segment.

Observations on the QUBO model with segment weighting will provide a different
route selection solution from the original unweighted model. The accumulation
of vehicles is caused by the route selection mechanism in the QUBO model,
which prefers the segment with the lowest total weight. The experiments
presented in Table II show that the effect of the QUBO model executed on the
D-Wave quantum annealer provides a more optimal cost value than manual
calculations. Compared to the manual calculation in Table II for the case of 4
vehicles, the QA cost value is about 11.11% more optimal. While in the case of
5 vehicles, the QA cost is about 28.68% more optimal than the manual cost
calculation.

TABLE II: The results of vehicle route optimization using QA with road segment
weighting
---

Vehicle route mapping shows a significant increase in cost value to the number
of vehicles. As Fig.1 shows, the road route only has two forks (S0 and S2),
resulting in vehicle accumulation (especially in the case of n=5 vehicles).
There is an average increase in road density of about 67.30% on the route
optimization results for $n=4$ and $n=5$ vehicles (see Table-II, density
results QA with weighting). It means that about 3 to 4 vehicles simultaneously
pass through the selected route for the same road segment. The proposed QUBO
model only searches for the optimal segment selection based on a combination
of minimal segment weights, possibly resulting in overlapping vehicle routes.

Figure 7: The results of road density in experiments with 4 and 5 vehicles,
show that there has been an accumulation of vehicles (in the QA results with
weights) on several lanes which are influenced by the weight parameter.

##  IV Conclusions

The research shows that QUBO can develop a vehicle route optimization model to
be executed using a D-Wave quantum annealer by choosing the lowest energy as a
route solution with the optimal Cost function value. The QUBO model with road
segment weighting gives significant results for the route selection of each
vehicle. Simulations carried out on five vehicles show that there is a
possibility of increasing the density of the segment, which may cause
congestion. Adding weight parameters ($w_{ij}$) to the road segment provides
an overview of the QUBO model simulation that is as close as possible to the
real conditions of searching for routes on the road. In this case, the
weighting segments parameter can assume distance, road capacity, the priority
of road types, and other interests.

Future work may consider handling vehicle queues in limited segment lane
conditions or overlapping vehicle routes on the same segment. The QUBO model
can be proposed to handle constraints for vehicle queues, limit road capacity,
traffic conditions and more varied road intersections. The current model
development experiment results require $3^{n}$ qubit parameters in the routing
optimization solution for n vehicles. For the increasing number of vehicles,
it is necessary to handle the execution of quantum annealing by hybrid
processing on a D-Wave computer. The simulation in this study can be an
initial reference for further development of real vehicle traffic datasets,
for example, for vehicle routing on online taxi services (car or bike).

## References

  * [1] Tadashi Kadowaki and Hidetoshi Nishimori  “Quantum annealing in the transverse Ising model”  In _Physical Review E_ 58.5 APS, 1998, pp. 5355
  * [2] Edward Farhi, Jeffrey Goldstone, Sam Gutmann and Michael Sipser  “Quantum computation by adiabatic evolution”  In _arXiv preprint quant-ph/0001106_ , 2000
  * [3] Tadashi Kadowaki  “Study of optimization problems by quantum annealing”  In _arXiv preprint quant-ph/0205020_ , 2002
  * [4] Roman Martoňák, Giuseppe E Santoro and Erio Tosatti  “Quantum annealing of the traveling-salesman problem”  In _Physical Review E_ 70.5 APS, 2004, pp. 057701
  * [5] Endre Boros, Peter L Hammer and Gabriel Tavares  “Local search heuristics for quadratic unconstrained binary optimization (QUBO)”  In _Journal of Heuristics_ 13.2 Springer, 2007, pp. 99–132
  * [6] Andrew Lucas  “Ising formulations of many NP problems”  In _Frontiers in physics_ 2 Frontiers, 2014, pp. 5
  * [7] Rajko Horvat, Goran Kos and Marko Ševrović  “Traffic flow modelling on the road network in the cities”  In _Technical Gazette_ 22.2, 2015, pp. 475–486
  * [8] Davide Venturelli, D Marchand and Galo Rojo  “Job shop scheduling solver based on quantum annealing”  In _Proc. of ICAPS-16 Workshop on Constraint Satisfaction Techniques for Planning and Scheduling (COPLAS)_ , 2016, pp. 25–34
  * [9] Mark Lewis and Fred Glover  “Quadratic unconstrained binary optimization problem preprocessing: Theory and empirical analysis”  In _Networks_ 70.2 Wiley Online Library, 2017, pp. 79–97
  * [10] Florian Neukart et al.  “Traffic flow optimization using a quantum annealer”  In _Frontiers in ICT_ 4 Frontiers, 2017, pp. 29
  * [11] Hayato Ushijima-Mwesigwa, Christian FA Negre and Susan M Mniszewski  “Graph partitioning using quantum annealing on the d-wave system”  In _Proceedings of the Second International Workshop on Post Moores Era Supercomputing_ , 2017, pp. 22–29
  * [12] Fred Glover, Gary Kochenberger and Yu Du  “A tutorial on formulating and using QUBO models”  In _arXiv preprint arXiv:1811.11538_ , 2018
  * [13] Guillaume Chapuis, Hristo Djidjev, Georg Hahn and Guillaume Rizk  “Finding maximum cliques on the d-wave quantum annealer”  In _Journal of Signal Processing Systems_ 91.3 Springer, 2019, pp. 363–377
  * [14] Christos Papalitsas et al.  “A QUBO model for the traveling salesman problem with time windows”  In _Algorithms_ 12.11 Multidisciplinary Digital Publishing Institute, 2019, pp. 224
  * [15] Andriyan Bayu Suksmono and Yuichiro Minato  “Finding hadamard matrices by a quantum annealing machine”  In _Scientific reports_ 9.1 Nature Publishing Group, 2019, pp. 1–12
  * [16] Hasham Hussain et al.  “Optimal control of traffic signals using quantum annealing”  In _Quantum Information Processing_ 19.9 Springer, 2020, pp. 1–18
  * [17] Corporate Headquarters  “D-Wave Problem-Solving Handbook”, 2021
  * [18] Daisuke Inoue et al.  “Traffic signal optimization on a square lattice with quantum annealing”  In _Scientific reports_ 11.1 Nature Publishing Group, 2021, pp. 1–12