0% found this document useful (0 votes)
28 views

Towards Real Time Multi-Robot Routing Using Quantum Computing Technologies

Uploaded by

pembazak
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views

Towards Real Time Multi-Robot Routing Using Quantum Computing Technologies

Uploaded by

pembazak
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

Towards Real Time Multi-robot Routing using Quantum

Computing Technologies

James Clark* Tristan West Joseph Zammit


STFC Hartree Centre Ocado Technology Ocado Technology
[email protected] [email protected] [email protected]

Xiaohu Guo Luke Mason Duncan Russell


STFC Hartree Centre STFC Hartree Centre Ocado Technology
[email protected] [email protected] [email protected]

ABSTRACT VRP require that the problem is solved in real time. In this paper,
In this paper, we investigate the potential for current quantum we are investigating the potential solutions with Quantum Com-
computing technologies to provide good solutions to the NP-hard puting technologies.
problem of routing multiple robots on a grid in real time. A hybrid Quantum Computers are a class of devices that can perform
quantum-classical approach has been presented in detail. Classi- computation by taking advantage of quantum mechanical effects
cal computation is used to generate candidate paths, while quan- such as entanglement and superposition. These devices operate on
tum annealing is used to select the optimal combination of paths. qubits [7], which are like classical bits but they can be in a superpo-
This second process is generally the most time consuming when sition of both 0 and 1 — this means the qubit may show properties
performed clasically. The performance is benchmarked classically of both 0 and 1 at the same time.
and on a D-Wave 2000Q with up to 200 robots and has shown that Currently, there are two main types of quantum computers: circuit-
producing valid solutions for the problem of multi-robot routing model and quantum annealing. However, additional models [13]
is achievable with the current quantum annealing technology. The for quantum computation are being researched. Circuit-model quan-
current limitations of using quantum annealing are also discussed. tum computers operate on qubits with quantum gates, which per-
form transformations on a small number of qubits which are de-
CCS CONCEPTS fined by unitary matrices. These quantum gates are analogous to
logic gates in traditional electronic circuits. Circuit-model quan-
• Computing methodologies → Robotic planning; Optimiza-
tum computers have been proven to be universal and have theoret-
tion algorithms; • Computer systems organization → Quan-
ical proofs of ‘quantum speedup’ for certain applications [19]. Cur-
tum computing; • Hardware → Quantum technologies; • Soft-
rent commercial computers have from 10 to 50 qubits. Applications
ware and its engineering → Software performance;
of circuit-model quantum computers include: integer factorization
ACM Reference Format: (Shor’s Algorithm) [20], search algorithm (Grover’s Algorithm) [8],
James Clark, Tristan West, Joseph Zammit, Xiaohu Guo, Luke Mason, and Dun- simulation of quantum systems [10], and finding approximate re-
can Russell. 2019. Towards Real Time Multi-robot Routing using Quantum sults of optimization problems (Quantum Approximate Optimiza-
Computing Technologies. In Proceedings of HPC Asia 2019. ACM, New York,
tion Algorithm) [5].
NY, USA, 9 pages. https://doi.org/10.1145/nnnnnnn.nnnnnnn
Quantum annealing, however, takes a different approach. Quan-
tum annealing evolves a time-dependent Hamiltonian, slowly (via
1 INTRODUCTION the adiabatic theorem) [6], with the final state encoding a solution
Multi-robot routing is a well studied combinatorial optimization to the input problem. ‘Slowly’ in this context is still measured in
problem[4]. There are similar applications in other areas, such as microseconds.
the multiple traveling salesman problem (TSP) and the vehicle rout- Although the current available quantum annealers have around
ing problem (VRP), which can be applied to surveillance, search 2000 qubits, quantum annealers are not universal quantum com-
and rescue, transportation and component assembly. Solving these puters [12]. This means that quantum annealers cannot be used to
problems is computationally expensive and they have been proven run all types of quantum algorithms.
to be NP-hard[14]. Many applications of robot routing, TSP, and A typical application of quantum annealing is as a metaheuris-
* Corresponding tic to find the global minimum of an objective function. This can
author.
be formulated as a quadratic unconstrained binary optimization
Permission to make digital or hard copies of part or all of this work for personal or (QUBO) problem and is shown in Equation (1) [16]. x is a vector of
classroom use is granted without fee provided that copies are not made or distributed length L, which represents a list of binary variables and the L × L
for profit or commercial advantage and that copies bear this notice and the full citation
on the first page. Copyrights for third-party components of this work must be honored. matrix Q describes how the variables are related to each other.
For all other uses, contact the owner/author(s).
HPC Asia 2019, January 2019, Guangzhou, China
© 2019 Copyright held by the owner/author(s).
ACM ISBN 978-x-xxxx-xxxx-x/YY/MM. min f (x) = x T Qx (1)
x 1, ...,x L ∈x
DOI: 10.1145/3293320.3293333
HPC Asia 2019, January 2019, Guangzhou, China J. Clark et al.

Quantum annealing has already been applied to many different Start

fields, including : traffic flow optimization [18], circuit fault diag-


Get target destination
nosis [2], modeling of exotic materials [15], training of deep neural from job generator
networks [1], and in the field of computational biology [17]. In or-
der to create near term applications, a hybrid quantum-classical Generate candidate routes
approach [1, 18, 21, 22] has to be used.
In this paper, we explore how current quantum computing hard- Construct matrix Q
(from Equation (1))
ware can be used to produce solutions to the problem of routing based on the constraints
robots on a grid. This problem is more difficult than the traffic
flow optimization problem [18] due to the additional constraint Solve QUBO problem
that robots should not collide. The contributions of this paper are
the formulation of the robot routing problem as a Quadratic Un- Decode result and vali-
date potential solution
constrained Binary Optimization problem and a demonstration of
how an iterable hybrid quantum-classical approach can be used to
produce a good set of routes for the robots. We also provide an
overview of the state of the art decomposing solver for quantum Yes
Any collisions? Retry Module
annealing, and identify the areas which need to be improved for
real time multi-robot routing.

No
2 FORMULATION OF A MULTI-ROBOT Stop
ROUTING PROBLEM USING QUANTUM
ANNEALING Figure 1: Process of routing multiple robots with a quantum
A multi-robot routing problem is specified by a set of n robots at annealer. Orange boxes are classical processes, purple boxes
a location R = {r 1 , r 2 , . . . , r n } and a set of n target destinations use a quantum process.
D = {d 1 , d 2 , . . . , dn }. Each point r i and point di is located on a
N × M grid defined by G = {д1 , д2 , . . . , дN ×M }, i.e. R ⊂ G and
D ⊂ G. Each robot visits its associated target destination via one
of many possible routes within G and each route has a cost which is
2.1 Path Generation
dependent on the distance the robot travels and if the robot makes The candidate routes are generated with a modified A∗ algorithm,
a change in direction (a turn) in its chosen route. The goal for the which punishes changing direction, to minimize turns. The A∗ al-
multi-robot routing problem is to find a route of minimum cost for gorithm is a best-first search algorithm, commonly used for path
each robot to travel from its location r i to its target destination finding [9]. In this case, both the robot’s position r i and target des-
di , while avoiding collisions with all other robots and cells marked tination di are passed to the A∗ implementation, which generates
out of bounds. In general, there are many possible routes that each a number of different routes. {j 1 , j 2 , . . . , jn } are used to represent
robot can take, but a smaller number of optimal or near-optimal the number of candidate routes per robot. A binary variable, qi j
routes. The optimal cost for a route that a single robot takes is where i is the robot index and j is the candidate route index, repre-
equal to the Manhattan distance, plus the cost of a single turn (if sents whether or not the route was taken by the robot i. qi j is set
required). to 1 if the route is chosen or 0 if the route is not chosen. In order
Routing robots with a quantum annealer currently requires a to reduce the number of binary variables, initially only four candi-
hybrid quantum-classical approach, where some computation is date routes are generated per robot, however if there is a collision,
performed classically on a traditional computer and difficult com- the number of routes for the colliding robots has to be increased to
putation is offloaded to the quantum annealer. Generating simple increase the chance that there is a non-colliding route. The details
optimal routes for a single robot is relatively computationally inex- are shown in Section 2.4. Figure 2 shows an example of the differ-
pensive, classically, but determining which combination of these ent paths that can be generated for a single robot, while avoiding
routes is optimal when avoiding collisions can be expensive. This out of bounds points.
approach is based on the traffic optimization work done by Neukart
et al. [18]. Figure 1 shows the main steps of the algorithm to route 2.2 Multi-robot Routing QUBO Problem with
multiple robots, with classical steps in orange and quantum steps Constraints
in purple.
After generating paths for all robots, the multiple robot routing op-
The robot staring positions and target destinations, along with
timization problem can be expressed by a QUBO, shown in Equa-
any additional information required to complete the job, are cre-
tion (3), where the choice of each possible path is represented by
ated via a job generator. This mimics a warehouse queue.
a binary variable, stored in q (Equation 2), each grid point дkt for
The main areas in which robot routing differs from traffic opti-
each time step t, and a weighting factor λ.
mization are: candidate route generation, constraints for building
the QUBO problem, and the post-processing. q = {q 11 , q 12 , . . . , q 1j1 , q 21 , . . . , q 2j2 , qn 1 , . . . , qnjn } (2)
Towards Real Time Multi-robot Routing using Quantum Computing Technologies HPC Asia 2019, January 2019, Guangzhou, China

of this function dependents on the binary variables for the candi-


date routes that travel through the grid point. The first part of the
(∑ )2
cost function α q i j ∈д t qi j ensures a higher cost if multiple
k
routes are at the same grid point at the same time (i.e. there is a
(∑ )2
collision). The second section β q ∈д t +1 q i j performs a ‘look-
ij k
ahead’ to see what routes use this grid point during the next time
step. This will stop robots from swapping positions to avoid colli-
sions between each time step. Finally, the last part of the cost func-
(∑ )2
tion γ q i j ∈д t − 1 qi j looks at the previous time step and adds a
k
penalty if there was a robot at that grid point, this is to stop robots
Figure 2: Four paths that are generated for a robot, traveling following each other too closely. The contribution of each part of
between the red and green points. Out of bounds points are the cost function can be controlled by the coefficients α, β, and γ .
marked with gray boxes. The cost function will contribute to the diagonal and off diagonal
coefficients of matrix Q.

2 2.3 Validating Chosen Routes and Collisions


∑∑ ( ) ∑ ∑
f (q) = cost(дkt ) + λ *. q − 1+/ (3) The next stage of the algorithm is to decode the result and check
ij
k t i , j - for invalid solutions. The result that is returned from the quantum
The coefficients of the binary variables qi j are the coefficients annealer is a bitstring with either 1 or 0, each value representing
in the matrix Q from Equation (1). the candidate routes qi j . For example, for 3 robots with 4 routes
Once the QUBO problem has been created classically, it can be each:
solved with the quantum annealer.
To explain the derivation in Equation (3), we examine it in two
parts. Equation (4) represents the constraint for ensuring a robot 001000011000
i has exactly one path assigned to it where the linear coefficients
contribute to the diagonal coefficients in Q and the quadratic co-
efficients contribute to the off-diagonals. This uses the binary rule can be decoded as robot 1 taking route 1, 3, robot 2 taking route
qi2j = qi j to simply the expression [18]. This is repeated for all 2, 4, and robot 3 taking route 3, 1. The number of routes per robot
robots. and total number of robots is tracked for decoding purposes.
After the bitstring is decoded, the solution is validated by en-
2 suring each robot has one route. If any robot has 0 or multiple
∑ji
*. qi j − 1+/ = − qi 1 − qi 2 − · · · − qi ji routes, the solution is marked as invalid. This is checking that the
,j =0 - constraint in Equation (4) is not broken.
(4)
+ 2qi 1qi 2 + 2qi 1qi 3 + · · · + 2qi ji qi (ji −1) The next stage of validation is to check the number of collisions
that the solution has. Collision detection is completed by checking
+1
the chosen routes pairwise and ensuring that no two robots share
After all the candidate routes are generated, each grid point will the same cell or swap positions at any point in time. If there are
have a record of the candidate routes that travel through it and any violations are found in this process, the solution is marked as
which time step this occurs. invalid.

2
* ∑ + 2.4 Solution for Colliding Robots
cost(дkt ) = α .. qi j // +
If a robot has a collision with the original candidate routes, the
,qi j ∈дk -
t
chosen routes from the quantum annealer are invalid. By fixing the
2
number of routes for non-colliding robots to 1 (the chosen route),
* ∑ +
β .. qi j // + (5) we can use the ‘spare’ binary variables to generate extra routes
t +1 for the robots that had collisions. The new problem can then be
,qi j ∈дk -
2
solved with the quantum annealer. Given enough candidate routes
* ∑ + for colliding robots, a valid solution may be found. The drawback to
γ .. qi j // this method is that non-colliding robots are not given the chance
t −1
,qi j ∈дk - to change their path which may result in a suboptimal solution.
In order to avoid collisions, we use a cost function (Equation (5)) Figure 3 shows an overview of constructing a new problem based
that operates on each grid point at each point in time, дkt . The value on a previously found invalid solution.
HPC Asia 2019, January 2019, Guangzhou, China J. Clark et al.

Receive an invalid so- • D-Wave solver (Wrapper for communicating with the D-
lution with collisions
Wave API or local solver)
• Post processing (Performs validation and collision detection)
Restrict the route choices for • Retry module (Retries the problem, if necessary)
non-colliding robots to the
choice in the invalid solution
3.4 Software and Solver Details
Generate additional routes The software used to program the D-Wave 2000Q is shown in Ta-
for colliding robots ble 1.

Construct matrix Q Table 1: Software versions used

Pass problem to solver Software Version


Python 2.7.14
Figure 3: Process of taking an invalid solution and attempt- dwave-qbsolv 0.2.7*
ing to find a valid solution dwave-cloud-client 0.4.1
dwave-system 0.3.1
dimod 0.6.10
3 REAL-TIME MULTI-ROBOT ROUTING * with modifications
USING QUANTUM ANNEALING
3.1 A Note About Embedding qbsolv was modified to return the total time spent running on
Embedding is the process of mapping the structure of a problem on the QPU, in addition to the result.1
to the structure of the quantum annealer. The embedding process The solvers used in the Results section are shown in Table 2.
can be handled manually or by a library call. In this case, the de- The yield refers to the percentage of qubits and couplers that can
composing solver qbsolv will handle embedding the problem. The be used, as compared to the maximum of 2048 qubits and 6016
current hardware available has limited connectivity between the couplers.
qubits, so chains of physical qubits are created to represent highly
connected logical qubits. The largest fully connected graph (clique) Table 2: Different solvers used to obtain results
that can fit on the D-Wave 2000Q has 64 elements.
Solver Details
3.2 Running Large Problems with qbsolv DW_2000Q_2 99% Yield (2040 qubits 5967 couplers)
In order to run large problems (problems that do not fit on the Classical solver built in to qbsolv, run-
qbsolv
quantum annealing hardware), a decomposing solver must be used. ning on an Intel Xeon Gold 6142
qbsolv is a decomposing solver for QUBO problems, developed by
D-Wave. qbsolv can use a classical solver locally or use a remote
quantum annealer [3]. 4 RESULTS
The algorithm for qbsolv involves using a hybrid quantum-classical Due to the non-determinism of quantum annealing, the quantum
approach to solving the large problem. First, a random solution is annealer may not return identical results when an identical prob-
created. Next, an iterative approach is taken: the importance of the lem is run multiple times. To account for this in our evaluation, the
variables is ranked and a subproblem (subQUBO) that can fit on same problem was run multiple times. For comparing the perfor-
the quantum annealer is created based on the importance ranking. mance the average compute time was noted, and when checking
The subQUBO is then solved using the annealer. The result from the quality of the solution the best solution was taken.
the subQUBO is used to update the global solution and the iterative As the path generation was not the focus of this project, the
part of the process is repeated until the global solution no longer performance for the pathing part of code was not investigated in
improves. The approach uses a classical tabu search for local areas detail. The pathing for each robot is independent, which may be
with the quantum annealer performing a global search [3, 18]. parallelised to improve performance.
Some of the terms used in the results are described below:
3.3 Implementation • QUBO Construction — time spent constructing the QUBO
The algorithm was implemented using the cloud API provided by problem.
D-Wave to access a D-Wave 2000Q quantum annealer. • Classical Solver — time spent in the qbsolv library when
The code was split in to different classes, roughly following the running on a classical processor.
different computational steps described previously: • QPU Solver — time spent in the qbsolv library when using a
• Problem generator (Generate problems for a warehouse queue) quantum annealer as a solver. This includes embedding the
• Path generator (Generates candidate paths for the robots) problem, communication to the cloud API, and waiting in
• QUBO generator (Applies the constraints to the robots and the job queue.
candidate paths) 1 Available at github.com/jameshclrk/qbsolv
Towards Real Time Multi-robot Routing using Quantum Computing Technologies HPC Asia 2019, January 2019, Guangzhou, China

• Embedding — time spent embedding (and unembedding) a


350 QUBO Construction
problem in qbsolv.
• Communication — time spent sending a job to the remote Classical Solver
300
quantum annealer and waiting in the job queue. Collision Detection
250

Execution Time (s)


• Quantum Annealing — time spent accessing the quantum
annealer, including time to: program the machine, perform
the annealing cycle, read the state of the qubits, and post- 200
process the data read from the qubits.
150
4.1 Test cases for routing multiple robots 100
The test cases used for testing the implementation involve n robots
operating on an N ×M grid. Each robot starts at location r i is given 50
a destination di to travel to, where it may remain at for period of
time. Each grid point can hold a maximum of one robot at each
0
possible moment in time. Some points on the grid may be marked 0 50 100 150 200
as out of bounds. Each robot is randomly assigned its starting po- Number of Robots
sition.
The robots are allowed to move by one grid point each time Figure 5: The execution time as the number of robots grows,
step and only in the X or Y direction. If a robot has to change on a fixed grid size (50 × 50)
direction, there is a turning cost. For this problem, the turning cost
is implemented by remaining stationary for one time step before
Figure 6 shows how these areas of the code grow as the number
continuing.
of robots increases. Both the solver and QUBO construction are
Figure 4 shows an example problem on a small grid. In reality
growing at a similar rate, but the collision detection grows faster –
the problems may be on a larger grid with a large number of robots.
this means eventually the collision detection will dominate when
the density of robots on a grid becomes sufficiently large.
d2

d3 20000 QUBO Construction n3


Classical Solver
r1 Collision Detection
Growth of Execution Time

15000
r2

d1
10000
r3

5000

Figure 4: Example problem definition


0 n2

The test cases were solved using the algorithm described in Sec- 0 50 100 150 200
tion 2. Number of Robots

4.2 Classical Solver Figure 6: The growth of execution time as the number of
The results shown in this section relate to the classical solver that is robots grows, on a fixed grid size (50 × 50), as compared to 1
included with the qbsolv library, as an alternative to the quantum robot
annealing hardware in order to benchmark the time to solution.
The current bottlenecks for running this problem are the path In order to see how out of bounds cells can impact performance,
generation, QUBO construction, followed by the solver. As the test cases with differing numbers of out of bounds cells were cre-
number of robots increases, the collision detection execution time ated. The results are shown in Figure 7. The execution time for the
starts to dominate as the number of robots increases. solver doesn’t seem to be affected by the increase, while the col-
Figure 5 shows the execution time for the QUBO construction, lision detection seems to have a slight increase in execution time.
solver and collision detection for a varying number of robots on The QUBO construction has the most drastic performance degrada-
a fixed grid size. With a smaller number of robots, the solver is tion when a large proportion of cells are marked as out of bounds
the slowest part of the code but the QUBO construction quickly – the execution time for QUBO construction currently depends on
dominates the run time of the code. the length of the candidate routes. When candidate routes have to
HPC Asia 2019, January 2019, Guangzhou, China J. Clark et al.

avoid a large number of out of bounds cells, they may become very
long. QPU Solver
3000
Quantum Annealing
2500 Communication
Embedding

Execution Time (s)


QUBO Construction
Classical Solver 2000
8
Collision Detection
1500
Execution Time (s)

6
1000

4 500

0
2 50 100 150 200
Number of Robots

0 Figure 8: Execution time of the solver QPU version of the


0 cells 4 cells 10% of cells
Number of cells out of bounds code with a breakdown of what components make up the
execution time.
Figure 7: The execution time for different parts of the code
for changing numbers of out of bounds cells more subQUBOs to the quantum annealer. For the test cases that
were run, qbsolv with the quantum annealer seems to scale signif-
icantly better than qbsolv’s internal classical solver.
4.3 Quantum Solver
This section shows the results of using the quantum annealer to
find solutions to the multi-robot routing problem. 7
Much like the classical solver, the path generation and QUBO
Growth of Execution Time

construction are bottlenecks when running on the QPU. Each of 6


these stages are identical to the classical solver. However, the solver
stage of the code is drastically slower. This is mainly due to the 5 n2
overhead of using a cloud API with a job queue for the remote
QPU. When considering only the time spent on the QPU (time 4
spent accessing the quantum hardware, including programming,
annealing, and post-processing), the quantum solver can require 3
less time to run. However, this is not a fair comparison as the prob-
2
lem has to be embedded on to the QPU. The performance of the QPU Solver
solver is heavily dependent on the connectivity of the graph of the 1 Quantum Annealing
original problem.
qbsolv will solve ‘small’ problems classically, even when asking 25 50 75 100 125 150 175 200
to use a quantum annealer as a solver. As a result, we do not show
Number of Robots
the problem with less than 5 robots in the results for the quantum
solver. Figure 9: Scaling of the QPU solver time and QPU access time
The execution time for the QPU solver with a breakdown of as the number of robots increases, on a fixed grid (50 × 50),
the execution time is shown in Figure 8. The communication time compared to 5 robots
clearly dominates, as mentioned previously. The next largest sec-
tion of the execution time is spent embedding the problem. The As the number of subQUBOs increases, the number of calls to
most intensive part of the embedding happens once, which is find- use the remote solver increases. This means that the execution time
ing the largest clique that fits on the current D-Wave solver. There for the communication, embedding, and annealing increases lin-
is also an embedding and unembedding cost for each subQUBO, early as the number subQUBOs increases, as shown in Figure 10.
which explains the growth as the problem size increases. Each data point is a unique run with a problem on the quantum
Figure 9 shows the scaling of the solver and QPU access time annealer. There is a spike at the end of the communication time,
when running the same problems as the classical solver. The scal- which may be the result of a congested job queue. From the results,
ing of the solver does not have a smooth increase, but instead has it appears that the best way to reduce the execution time is to mini-
wild fluctuations. This is because qbsolv needed to run more itera- mize the number of subQUBOs sent to the quantum annealer. This
tions of its algorithm to find a solution, and therefore had to send could be accomplished by a domain specific embedder – which can
Towards Real Time Multi-robot Routing using Quantum Computing Technologies HPC Asia 2019, January 2019, Guangzhou, China

take advantage of knowledge about the problem to decompose the 4.4 Performance of Solutions with Colliding
QUBO problem – or by using a quantum annealer that has higher Robots
connectivity and more qubits.
The aim of generating additional routes for colliding robots was to
get a better solution than with a fixed number of routes for each
QPU Solver Communication robot. A suite of problems was created, with different numbers of
3000 3000
robots, grid sizes, and number of out of bounds cells. This suite was
Time (s)

Time (s)
2000 2000 run with both additional route generation enabled and disabled to
see how the solutions were affected.
1000 1000

250 500 250 500 Without collisions With collisions


Number of QPU Calls Number of QPU Calls

300
Embedding Quantum Annealing 20

Number of Problems
5.0
Time (s)

Time (s)

200
15
100 2.5
250 500 250 500 10
Number of QPU Calls Number of QPU Calls

Figure 10: Scaling of the total execution time of different


5
sections of the code compared to the number of subQUBOs.
0
Figure 11 shows the execution time of the classical solver and Fixed number of Additional routes
routes per robot for colliding robots
the quantum solver when removing communication time. This shows
that if you could minimize the time spent waiting for the cloud
API and in the job queue, the quantum annealing solver would be- Figure 12: Number of valid and invalid solutions found with
come competitive with the classical solver, even with the embed- and without additional route generation.
ding overhead. The embedding process has room for optimization.
Considering the future hardware architecture, where more highly
Figure 12 shows that generating additional routes is useful in
connected graphs can be decomposed with fewer QUBOs or even
finding valid solutions when the fixed number of routes problem
embed natively on to the QPU, Figure 11 also shows the potential
was not able to find a valid solution. There are still a number of
for routing a large number of robots in real time, see ‘Quantum
invalid solutions even after generating additional routes. Figure 13
Annealing’ time.
shows that even though there were invalid solutions, generating
additional routes for collisions tends to outperform the original
300 fixed number of routes solution. There were a number of attempts
QPU Solver: No Communication
where retrying did not result in a better solution or give the same
Quantum Annealing
250 performance. This is due to the non determinism of quantum an-
Classical Solver nealing: the attempt with retrying did not happen to find the so-
Execution Time (s)

200 lution with the lower cost. This shows that at least one of the ad-
ditional generated routes was selected by the annealer. Increasing
150 the number of additional routes may improve the solution further.

100 5 CONCLUSIONS AND FUTURE WORK


We have shown that it is possible to route multiple robots on a
50 grid using quantum technology with today’s hardware. The per-
formance of the quantum annealing is promising and has potential
0 for routing a large number of robots in real time. However, today
there are performance bottlenecks on both the classical and quan-
0 50 100 150 200
Number of Robots tum part of the hybrid algorithm.
The main bottlenecks on the classical side are creating the QUBO
problem and collision detection. These areas were not optimized
Figure 11: QPU Solver time without communication and and may be improved in our future work.
queuing time, compared with the classical solver time. The bottlenecks for the quantum solver are the communication
time and the embedding time. The communication time could be
HPC Asia 2019, January 2019, Guangzhou, China J. Clark et al.

In future work, we aim to extend the problem definition so that


20 robots are given new destinations after they reach their destina-
tion. This would provide a more realistic simulation of a real world
applications and may highlight different areas that can be improved.
Number of Problems

15
6 ACKNOLEDGEMENTS
The work carried out in this paper was funded via the Bridging for
10
Innovators programme through the Science Technology Facilities
Council.
5
REFERENCES
[1] Steven H Adachi and Maxwell P Henderson. 2015. Application of quantum an-
0 nealing to training of deep neural networks. arXiv preprint arXiv:1510.06356
Beter solutions with Better solutions Equal Performance (2015).
additional routes with a fixed number [2] Zhengbing Bian, Fabian Chudak, Robert Brian Israel, Brad Lackey, William G
for colliding robots of routes per robot Macready, and Aidan Roy. 2016. Mapping constrained optimization problems to
quantum annealing with application to fault diagnosis. Frontiers in ICT 3 (2016),
14.
Figure 13: Generating additional routes for test problems [3] Michael Booth and Steven P. Reinhardt. 2017. Partitioning Optimization Prob-
lems for Hybrid Classical / Quantum Execution TECHNICAL REPORT. Technical
with collisions usually resulted in a better solution. Report. D-Wave Systems Inc.
[4] W. Burgard, M. Moors, C. Stachniss, and F. E. Schneider. 2005. Coordinated
multi-robot exploration. IEEE Transactions on Robotics 21, 3 (June 2005), 376–
386. https://doi.org/10.1109/TRO.2004.839232
[5] Edward Farhi, Jeffrey Goldstone, and Sam Gutmann. 2014. A quantum approxi-
mate optimization algorithm. arXiv preprint arXiv:1411.4028 (2014).
[6] Edward Farhi, Jeffrey Goldstone, Sam Gutmann, and Michael Sipser. 2000. Quan-
reduced by hosting quantum annealing device locally which is ded- tum computation by adiabatic evolution. arXiv preprint quant-ph/0001106
icated to routing robots, however this is expensive and hosting a (2000).
[7] Neil Gershenfeld and Isaac L Chuang. 1998. Quantum computing with molecules.
quantum computer requires experience with extremely cold tem- Scientific American 278, 6 (1998), 66–71.
peratures – the operating temperature for these devices is around [8] Lov K Grover. 1997. Quantum mechanics helps in searching for a needle in a
13 mK. haystack. Physical review letters 79, 2 (1997), 325.
[9] Peter E Hart, Nils J Nilsson, and Bertram Raphael. 1968. A formal basis for the
The time spent on the quantum processor is only a small percent- heuristic determination of minimum cost paths. IEEE transactions on Systems
age of the run time, so our next focus will be on trying to reduce Science and Cybernetics 4, 2 (1968), 100–107.
[10] Matthew B Hastings, Dave Wecker, Bela Bauer, and Matthias Troyer. 2014.
the embedding time. One approach is to cache the largest clique Improving quantum algorithms for quantum chemistry. arXiv preprint
that qbsolv found so that each new problem does not have recom- arXiv:1403.1539 (2014).
pute this. This minimizes the impact of the large embedding cost [11] Mark W Johnson. 2018. Future Hardware Directions of Quantum Annealing. In
Qubits Europe 2018. Retrieved September 12, 2018 from https://www.dwavesys.
at the beginning of the run, as it is cached after the first problem com/sites/default/files/mwj_dwave_qubits2018.pdf
has been executed. [12] Mark W Johnson, Mohammad HS Amin, Suzanne Gildert, Trevor Lanting, Firas
Another solution to reduce the embedding cost is to create a Hamze, Neil Dickson, R Harris, Andrew J Berkley, Jan Johansson, Paul Bunyk,
et al. 2011. Quantum annealing with manufactured spins. Nature 473, 7346
new algorithm which can use domain specific knowledge to de- (2011), 194.
compose the problem. By introducing more knowledge in to the [13] Stephen P Jordan. 2008. Quantum computation beyond the circuit model. arXiv
preprint arXiv:0809.2307 (2008).
decomposing algorithm, we expect that the number of subQUBOs [14] Richard M. Karp. 1972. Reducibility Among Combinatorial Problems. In Proceed-
will be reduced, resulting in lower overall embedding time. If we ings of a symposium on the Complexity of Computer Computations, held March
tailor this algorithm to take advantage of the architecture of the 20-22, 1972, at the IBM Thomas J. Watson Research Center, Yorktown Heights, New
York, USA. 85–103. http://www.cs.berkeley.edu/%7Eluca/cs172/karp.pdf
specific quantum annealer by fitting our problem on to the under- [15] Andrew D King, Juan Carrasquilla, Jack Raymond, Isil Ozfidan, Evgeny An-
lying graph structure of the qubits, we may be able to reduce the driyash, Andrew Berkley, Mauricio Reis, Trevor Lanting, Richard Harris, Fabio
embedding overhead further. Altomare, et al. 2018. Observation of topological phenomena in a programmable
lattice of 1,800 qubits. Nature 560, 7719 (2018), 456.
One of the main issues with the current generation of quantum [16] Gary Kochenberger, Jin-Kao Hao, Fred Glover, Mark Lewis, Zhipeng Lü, Haibo
annealers is the lack on logical qubits available on the device. This Wang, and Yang Wang. 2014. The unconstrained binary quadratic programming
problem: a survey. Journal of Combinatorial Optimization 28, 1 (2014), 58–81.
is due to a limited number of physical qubits and connections be- [17] Richard Y Li, Rosa Di Felice, Remo Rohs, and Daniel A Lidar. 2018. Quantum an-
tween them. In general, the number of logical qubits is much less nealing versus classical machine learning applied to a simplified computational
than the available physical qubits. As the hardware architecture biology problem. NPJ quantum information 4, 1 (2018), 14.
[18] F. Neukart, G. Compostella, C. Seidel, D. von Dollen, S. Yarkoni, and B Parney.
matures, the number of physical qubits is expected to grow. How- 2017. Traffic flow optimization using a quantum annealer. Frontiers in ICT 4
ever, a change of architecture is required to increase the number of (2017), 29.
connections per qubit. D-Wave have recently announced a new ar- [19] Michael A Nielsen and Isaac L Chuang. 2000. Quantum computation and quan-
tum information. Cambridge University Press.
chitecture which increases the number of qubits and the number of [20] Peter W Shor. 1999. Polynomial-time algorithms for prime factorization and
connections [11]. A highly connected architecture will mean that discrete logarithms on a quantum computer. SIAM review 41, 2 (1999), 303–332.
[21] Olawale Titiloye and Alan Crispin. 2011. Graph coloring with a distributed hy-
larger subQUBOs can be run, which should result in fewer calls to brid quantum annealing algorithm. In KES International Symposium on Agent
the QPU, reducing execution time. and Multi-Agent Systems: Technologies and Applications. Springer, 553–562.
Towards Real Time Multi-robot Routing using Quantum Computing Technologies HPC Asia 2019, January 2019, Guangzhou, China

[22] Tony T Tran, Minh Do, Eleanor G Rieffel, Jeremy Frank, Zhihui Wang, Bryan
O’Gorman, Davide Venturelli, and J Christopher Beck. 2016. A hybrid quantum-
classical approach to solving scheduling problems. In Ninth Annual Symposium
on Combinatorial Search.

You might also like