In most cases, when network operators or service providers design and control their networks in real-world settings, they first formulate an optimization problem corresponding to the desired communication network with the required parameters and then solve the problem using a computer. These problems are mainly integer optimization problems whose complexities require high computational resources. To solve these problems on classic computers, the GNU linear programming kit (GLPK) package can be used (as was the approach of [
13]). This kit is intended to solve linear programming (LP), integer LP, and mixed-integer LP programming. Since the main result of the decision-making logic of a routing process is the recommended path to be followed, an integer variable may be assigned to each connection between each connected node. If the variable takes the value of 1, which means the path is taken. In other cases, the variable will be 0 if that way is not optimal to reach the desired objective. Primary objectives could involve minimizing battery costs for remote nodes, maximizing the throughput for each involved node, or minimizing the number of jumps (which have advantageous impacts on latency). When the number of nodes increases, the LP problem can become so big that classic computers struggle to find the optimal route. This happens because the number of combinations between nodes is so significant that the variable numbers scale rapidly, meaning that high computational resources are needed to land on a solution. This will be true for future 6G communication networks, which are expected to provide global coverage and space–air–ground–sea [
14]. Considering the multiple requirements that 6G will need to address simultaneously, quantum computers and quantum algorithms could play even more significant roles in such optimization problems.
2.1. Quantum Optimization Algorithms
Quantum computation takes advantage of the properties of quantum mechanics to tackle optimization problems radically differently. Ideally, due to the superposition of quantum states, quantum computers can process all the data simultaneously to find the solution that optimizes the objective function. In contrast, present-day “near-term” quantum computing or “noisy intermediate-scale quantum” (NISQ) technology implement at most 50–100 qubits, and while they might be able to perform tasks that exceed the capabilities of classical computers, they also exhibit noise-related inaccuracies that complicate the demonstration of the advantages of practical quantum computers and limit the sizes of quantum circuits [
15]. One of the goals in the NISQ era is to extract the maximum quantum computational power from current devices while developing techniques that will suit the “long-term” goal of fault-tolerant quantum computations. Consequently, new classes of algorithms have been developed for this kind of system. Most of the current NISQ algorithms are based on a hybrid quantum-classic arrangement, such as the variational quantum eigensolver (VQE) and QAOA [
16].
VQE was introduced in 2014 [
17] for chemistry applications and quantum mechanics to estimate the ground state energy of a molecule using shallow depth circuits. The ground state of energy is equivalent to finding the minimum eigenvalue and/or eigenvector of a matrix (Hamiltonian), which characterizes the molecule. Apart from being applicable in these fields, it has spread up its functionality to optimization problems; one can also use the VQE for optimizing a cost function by encoding it as a matrix whose ground state (minimum eigenvector) corresponds to the optimal solution of the problem. This idea also lies at the heart of QAOA.
Since these algorithms require a smaller circuit (a few quantum gates), it better preserves the coherent evolution of the system, allowing a higher probability of successful results, also beneficial for the available systems with just a few noisy qubits.
QAOA is a variational quantum algorithm (quantum–classical hybrid algorithm) due to its implementation through quantum circuits that depend on a set of variational parameters (
,
). It was introduced by Farhi and Goldstone in 2014 [
11] to solve the problem of finding out a cut whose size was at least the size of any other cut (MaxCut) on a regular graph. This algorithm is characterized by a lower bound for the ratio between the result obtained by the algorithm and the optimal cost (the “approximation ratio”) and depends on an integer
. The quality of the approximation improves as
is increased, and the depth of the quantum circuit grows linearly
times the number of constraints. In fact, in [
11], QAOA always found a cut that was at least 0.6924 times the size of the optimal cut.
QAOA uses a unitary U(
,
) characterized by the parameters (
,
) to prepare a quantum state
. The goal of the algorithm is to find optimal parameters (
,
), such that the quantum state
encodes the optimal solution to the problem [
18].
To summarize, QAOA’s principle is to extract (measure) the quantum solution prepared by a quantum state in a variational quantum circuit. Then, a classical optimizer is used to tune the circuit parameters and minimize the measured expectation value.
Figure 1 graphically represents this principle of operation.
2.2. Single-Objective Quantum Routing Optimization
Since communication networks consist of nodes and links; one of the main objectives is to find the minimum cost (in terms of battery consumption) to transmit the traffic from an origin node to a destination node. A network is represented by a graph
, where
V is the set of vertices (nodes),
E is the set of links (weights), and the link from node
i to node
j is expressed as
.
Figure 2 shows an example of a network. If node 1 is the source node and node 4 is the destination node, then the problem consists of finding the shortest path from node 1 to node 4 depending on the requirements, constraints, and/or objectives.
Generally, this kind of problem can be formulated as a cost (objective) function (
1), which is minimized or maximized according to constraints (
2) and (
3) and variables’ bound (
4) since they involve seeking the best configuration among a set of parameters to achieve the desired objectives. In this example, the cost values are not representative of a real scenario and take values from 1 to 10, implying a higher value and bigger battery cost. This simplification is made because the goal is not to accurately define a cost function but to test QAOA and elaborate supremacy predictions on routing problems. The following equations can be found in [
13].
For this example, the problem formulation is presented below:
One common model that is suitable for solving combinatorial optimization problems in quantum computers is the quadratic unconstrained binary optimization, or QUBO for short. QUBO can embrace many models in combinatorial optimization; QUBO models were shown to be equivalent to the Ising model, which plays a crucial role in physics and particle interactions [
19].
A formal definition of the QUBO model is given by:
where
is a vector of binary decision variables,
Q is a square matrix of quadratic coefficients, and
is a vector of linear coefficients.
Before solving our problem with QAOA, it should be cast in QUBO form. Although our problem includes additional constraints, it can be effectively reformulated as a QUBO model by introducing quadratic penalties (
P) into the objective function (
10).
Arbitrarily choosing
P to be equal to 27, the
Q matrix and
vector are given by:
As mentioned before, the cost function can be mapped to a Hamiltonian in order to find the ground state energy of the system that is equivalent to the optimal solution. QAOA is defined by the problem Hamiltonian (
) (
13), which contains the cost function, and the mixer Hamiltonian (
) [
18], defined as the sum of single Pauli
X-operators on all qubits (
14).
To define the
by Pauli
Z-operators, the objective function should be formulated as the Ising spin model:
The small, single-objective, four-node example (
Figure 2) is represented by its corresponding variational quantum circuit based on
and
(
) in
Figure 3. The initial prepared state is the equal superposition state through Hadamard (H) gates. The iterations required to reach the optimal results depend on the quantum system used. It was tested on “ibm_perth”, a seven-qubit IBM Quantum System, and 59 iterations were necessary using COBYLA as a classical optimizer to find
, and
.
It is quite simple to note that the optimum path for minimizing costs would be 1–2–3–4, resulting in 11 (
).
Figure 4 shows the probabilities results according to the possible paths and
and
values. As expected, the
state has the higher probability that corresponds with the
where
.
While this small example may seem simple (this specific case took five qubits) when the number of nodes increases, the problem becomes classically intractable. Note that while a bigger network could not be solved on available quantum computer hardware because of the number of qubits required; this does not mean that larger problems cannot be solved. It depends on the number of available qubits. Furthermore, it must be mentioned that despite the QAOA result being 11, identical to the classical solution, in more complex problems by its nature, QAOA might provide only a good approximate near-optimum solution.
Additionally, to test how the algorithm performs according to the number of QAOA layers, simulations with 500 shots were executed and
. The theoretical accuracy provided by QAOA improves with higher values of
as was already anticipated in
Section 2.1.
Figure 5 illustrates how the probability of obtaining the right solution increases with higher values of
. However, it turns out that for implementation on a real device, this improvement is not remarkable because the depth of the quantum circuit has a negative impact on the noise level.
Furthermore, Algorithm 1 below, shows the pseudocode of the algorithm proposed for the routing when following the steps to programming the single target routing problem.
Algorithm 1: Routing Optimization using QAOA. |
- 1:
from pyqubo import Design the network graph: - 2:
, - 3:
len - 4:
forin range(len()) do - 5:
Constraint - 6:
end for - 7:
Constraint - 8:
Constraint - 9:
Constraint Create the problem Hamiltonian and mixer Hamiltonian: Create the QAOA circuit according to the linear and quadratic coefficients of : - 10:
- 11:
- 12:
Circuit (): - 13:
circ = QuantumCircuit() Initial state (H gates): - 14:
for qubit in range() do - 15:
circ.h() - 16:
end for Problem Hamiltonian: - 17:
for qubit in range()) do - 18:
circ.rz() - 19:
end for - 20:
for key in ) do - 21:
circ.rzz() - 22:
end for Mixer Hamiltonian: - 23:
for qubit in range() do - 24:
circ.rx() - 25:
end for - 26:
circ.measure(range(), range()) - 27:
Compute the expectation values according to the measurement results. - 28:
Optimize classically to find and , with scipy.optimize. - 29:
Repeat the process until and optimum are found.
|
2.3. Multi-Objective Quantum Routing Optimization
When different performance metrics need to be considered in communication networks, the optimization problem becomes multi-objective. In this regard, those metrics could be to reduce the cost to provide a better quality of service, improve the throughput, or minimize the number of hops taking care of the network’s latency. If only one parameter is considered in the link, the other parameters will probably not follow the requirements for a determined service. As a result, multi-objective problems are purposed to obtain solutions satisfying the multiple criteria for each scenario.
Solving multi-objective problems does require more computation power than single-objective problems. In addition, multi-objective problems do not have global optima. If one objective is optimized, it is likely that the others will not be. Equilibrium needs to be found to cover all the requirements desired; each equilibrium point is known as a Pareto optimal point.
From heuristics, there are multiple ways to find Pareto’s solutions. The parameterized lexicographic method is presented in this paper. This method needs to order objectives by importance. The optimization will have as many stages as objectives formulated. The first stage will solve the first objective without including any other one. The second stage will solve the second objective, including a margin constraint inherited from the first stage. The third stage will include inherited constraints from the first and second and so on. For example, if minimizing the battery cost is the most important objective, the cost result obtained from the first stage will have a deviation from the optimum allowed in the second stage. This deviation is parameterized using slack parameters . If an objective wants to be minimized, the slack parameter of the inherited constraint, will be higher than 1 (allowing its increase from the optimal) and if maximized lower than 1, (allowing its decrease from the optimal).
This subsection presents a practical case of multi-objective routing optimization using QAOA and the lexicographic method. Note that before solving our problem with QAOA, it should be cast in QUBO form as outlined previously in
Section 2.2; the same steps presented in the pseudocode were followed, not included here for brevity. This case included six nodes following the scheme shown in
Figure 6. Three parameters were optimized: i) the battery cost, ii) the available throughput for the served nodes, and iii) the number of hops from the origin to the destiny. The battery cost and the number of hops were minimized, and the throughput maximized. Since the number of qubits available was not enough, the problem was simulated on IBM Quantum first. In addition, it was executed on IBM Cloud through Qiskit Runtime [
20] available on IBM Quantum systems and IBM Cloud. Qiskit Runtime is an architecture and programming service offered by IBM that allows users to optimize workloads and efficiently execute them on quantum systems. Runtime works based on programming via primitives such as Sampler, Estimator, and in our case, QAOA. The system used was imb_algiers, which has 27 qubits.
The first objective of the lexicographic approach was to minimize the battery cost, according to (
1). All the constraints (
2), (
3), and (
4), shown in
Section 2.2 were added to the model. Following the same procedure, the solution gave the path 1–3–5–6, offering services to four nodes, which meant three hops. The total battery cost was 4, and the throughput obtained was 4.
Once the battery cost was optimized, the solution found was added as an inequity constraint with the alpha parameter, giving some clearance to the cost while optimizing the throughput. This parameter in this example was set to
. Equation (17) was the added constraint to the model in this second step
The next objective was the throughput, calculated as the sum of the throughput values for all of the nodes served. The objective is shown in Equation (
18). As was done with cost, a simplification was also made to the calculus of the throughput values for each path, not being the ones used representative of a real scenario. In this case, higher values are better since this objective wants to be maximized.
The results changed, increasing the throughput to 10 and the cost to 7. In addition, the number of hops increased to 4. The path taken was 1–3–4–5–6. This means a sacrifice for both cost and hops to increase the throughput. Since multi-objective optimization does not have a correct result, this result is as valid as the one obtained in the first stage, and the final decision is made by the decision-maker.
As was done with the cost, an alpha parameter was added to the model, giving clearance to the throughput in the minimization of the last objective, the hops. This parameter was fixed to
. The reason for this parameter being that small was due to the tiny size of the problem, which required big clearances to change from one solution to another. This means that Equation (
19) needed to be included in the model. Equation (17) was also added to the constraints for the last step of the multi-objective optimization process, the minimization of the number of hops.
The last objective, the number of hops, was minimized. The objective is shown in Equation (
20).
All constraints in (
2), (
3), (
4), (17), and (
19) were added to the model.
The result obtained for the hops was 3, the cost was also reduced to 4, but throughput decreased to 4. This gave the same result as the one obtained in the first stage of the optimization, following the path 1–3–5–6.
The first step of the lexicographic method only considered minimizing the cost. As a result, even though only three hops were performed, throughput was not really good. When maximizing throughput, the cost was slightly increased and so were the hops. Finally, for this particular case, the solution taking into account the three objectives was equivalent to the solution that we would obtain from only considering the cost objective. The result-deriving process was forced to showcase the operation of the method. However, other combinations of alpha parameters or a change in the order of the objectives would change the results. Problems of a bigger size, which unfortunately could neither be run on a QC nor simulated, will be more dependent on changes of alpha, altering the final result upon small variations of alpha. The final results obtained from this method can be summarized in
Table 1.