Abstract
Evolutionary systems (ES) include software applications that solve problems using heuristic methods instead of the deterministic ones. The classical computing used for ES development involves random methods to improve different kinds of genomes. The mappings of these genomes lead to individuals that correspond to the searched solutions. The individual evaluations by simulations serve for the improvement of their genotypes. Quantum computations, unlike the classical computations, can describe and simulate a large set of individuals simultaneously. This feature is used to diminish the time for finding the solutions. Quantum Petri Nets (QPNs) can model dynamical systems with probabilistic features that make them appropriate for the development of ES. Some examples of ES applications using the QPNs are given to show the benefits of the current approach. The current research solves quantum evolutionary problems using quantum genetic algorithms conceived and improved based on QPN. They were tested on a dynamic system using a Quantum Discrete Controlled Walker (QDCW).
Keywords:
quantum computing; genetic algorithms; Petri nets; quantum Petri nets; software development, analysis and verification MSC:
68Q12
1. Introduction
The current research concerns applications, such as urban vehicle traffic, airplane traffic, weather, markets, electric power networks, fluids networks, telecommunications and data transmission, etc., that have stochastic behaviors. There are some entities that have to be controlled or managed to behave according to the required specifications.
Quantum computers have different capabilities compared to classical computers and their use should cover the domains where these differences would lead to significant benefits. The authors of [1] review the quantum algorithms that have been discovered and reveal their features that outperform classical algorithms.
According to [2], tools are needed to create and debug quantum computers and their programs. These tools can help to elucidate hidden issues and drive towards design with the best chance for overall success.
The current approach developed methods that can sustain the heuristic search of evaluated solutions that exceed specified thresholds. The previously conceived ES methods are modified according to the features provided by the quantum algorithms.
The general objective in simulating a quantum system is to determine its structure or behavior, given knowledge of its components and the environment in which it exists.
In [2] the quantum computers are partitioned in three categories:
- Analogue quantum computers that directly manipulate the interactions between qubits without breaking the operations in logic gates.
- Digital noisy intermediate-scale quantum computers that use primitive gate operations on physical qubits.
- Fully error-corrected quantum computers that enable noisy physical qubits to emulate stable logical qubits.
The QPNs (Quantum Petri Nets) can be used to model the quantum software applications, to analyze their structure and to verify their behaviors [3]. After the simulations of the QPN models, the implementation of the quantum applications is expected to be achieved (compiled) without difficulties.
This article shows the links between quantum algorithms and their corresponding QPN models. These can sustain the quantum processor configuration and quantum program conception, verification and debugging.
The two directions for solving the problems concern the contraption of methods that use quantum computation methods implemented on classical computers and to create new concepts that allow the finding of the ES solutions using the quantum computers.
1.1. Current Research State of the Field
1.1.1. Quantum Algorithms
Quantum Computing (QC) is recommended to be used in applications where it outperforms the classical computation. Some reviews ([4,5]) present as main QC directions: breaking cryptosystems [6], unstructured search problems, finding accurate approximate solutions to optimization problems, finding the minimum of an unsorted list of integers, determining a graph connectivity, solving linear equations, quantum annealing, etc.
The search in an unstructured database is obtained in [7] using a function , with , for , where . The problem consists of finding j. The exponential speedup of the search compared to the classical computation is an undoubted benefit.
Shor’s algorithm solves the factorization problem [8]. It is given with . The request is the finding of the smallest integer r such that . Again, the algorithm’s exponential search determines its use in many applications, such as the use of QC in cryptography [6,9].
The inverse transform of a matrix introduced in [10] is used for solving linear equations of the form , where A is a Hermitean matrix and b a given unit vector. QC solves such problems that appear in many practical applications with exponential speedup.
Hybrid methods involving quantum and classical computers can be used as Variational Quantum Eigensolver [11,12]. The eigenvalues and eigenvectors of a Hamiltonian are used to transform a system iteratively to a desired specified one.
Quantum annealing is an optimization method for combinatorial problems where the superposition is used for avoiding the focalization in local minimums [13].
Quantum walk opens ways for algorithm construction that solves search problems on a graph [14].
According to [15], the classical random walk concept has been used as a computational framework for designing classical algorithms for complex problems, while quantum variants provide a speed-up in computational power for various algorithms with distinct elements in spatial search or graph connectivity. A quantum walker following a unitary operation for evolution is named a unitary quantum walker, while one that does not meet this condition is a non-unitary quantum walker. The non-unitary evolution of a quantum system is implemented/defined by adding some qubits to the quantum system followed by a unitary transformation. The result is obtained by discarding the extra qubits. Both kinds of walker have benefits in practical applications.
An example is the optimization of a search based on random walks that require the reduction of the number of necessary repetitions [16,17].
Some quantum walker approaches tackle the Quantum Discrete Random Walkers (QDRWs) in an infinite space or finite space [18]. Other researchers studied the quantum continuous random walkers (in an infinite space) [19,20]. They are widely used in practical applications [5]. An application of quantum discrete walker ranking in grid nodes is given in [21].
The reference [22] contains some variants of Quantum Discrete Walker (QRW) approaches and different variants of generalized coin tossing. In [23], two entangled coins were used to control the walker’s move in a one-dimension space.
One goal in walker problems is the reducing of the hitting time and the diminishing of mixing time [24].
Quantum walk can be used for search of element distinctness (e.g., find two equal elements) [25].
The comprehensive review [26] divides the quantum walker approaches as Schrodinger and combinatorial. To be noted is the decoherence definition as a physical phenomenon that typically arises from the interaction of quantum systems and their environment. This interaction can be used for quantum process control as it will be seen further for controlling the walker moves.
Quantum Approximate Optimization Algorithm (QAOA) uses the mapping of the objective function to Hamiltonian that brings the problem into Hilbert space [27,28,29]. The expectation value of the Hamiltonian is improved by using quantum mechanical techniques in the Hilbert space. QAOA can be extended by adding constraints. A relevant problem is the so called MaxCut where a graph with V vertices and E edges has to be cut in such a manner that it maximizes the number of edges crossing the cut.
In conclusion, the main quantum walk research directions and their practical applications focus on the hitting times, the quantum amplification control and the marked element detection.
1.1.2. Evolutionary Systems
Evolutionary Algorithms (EAs) are applied to problems where pure stochastic algorithms fail or find it difficult to solve due to the high number of dimensions or function complexities [30]. Their main utilizations cover the domains of variable optimization, new structural design and improvement. EAs include: evolutionary strategies, genetic algorithms, genetic programming, genetic improvement, grammatical evolution, linear genetic programming, Cartesian genetic programming, differential evolution and gene expression evolution.
The evolutionary systems implemented on classical computers are often used for solving problems concerning:
- Combinatorial requirements,
- Optimization of system parameters,
- Dynamic behavior optimizations,
- Algorithm synthesis such as for controlling plants or for reacting to events produced by their environments.
Related to the use of QC in EA, some questions arise: What are the benefits of using QC in EA? What are the modifications required for application of QC in EA? Where and how can Quantum Evolutionary Algorithms (QEAs) be applied in practical applications? References [31,32] offer some answers to these.
The use of QC in EAs led to three main development directions: quantum inspired evolutionary algorithms ([33,34,35,36,37,38,39,40,41,42,43,44,45,46]), quantum evolutionary algorithms ([47,48,49,50,51,52,53]) and hybrid quantum-classic evolutionary algorithms ([54,55,56]).
Successfully detailed implementations at the Quantum Logic Circuit (QLC) level are developed and deeply analyzed in [57,58].
Some QEA used animal behaviors for searching the solutions [39,59,60]. Remarkable are the characteristics of the systems that can be approached: they could have various complexities, including non-linear, non-convex, multi-modality, non-differentiable functions and large-scale dimensionality.
Quantum control based on machine learning in an open quantum system is another direction of QC application development [61].
Closest to the view point of quantum state superposition, created by QC, is the Particle Swarm Optimization (PSO) method [62].
Analyzing the QEAs, it can be concluded that the genotypes are coded based on the quantum superposition fulfilling the Hilbert condition. The genotypes are initialized to meet some diversity requirements and covering the search domain. The individual (i.e., genotypes) are improved using unitary transformation matrix. The individual improvements can be based on a single (usually the best) individual or combining features from two individuals (i.e., crossover). Some evolution methods need genotype (or individual) repair mechanisms. There are improvements consisting of the search step adaptations, usually related to the generation iterations. It is difficult to prove the benefits of using the quantum vector representation instead of classical ones. There would be clear benefits if it can be proved that the number of searches and evaluations is smaller in the case of quantum description. The comparisons based on experiments of different QEA methods for solving particular problems can be supposed to be biased to particular characteristics.
The approaches of discrete oriented quantum random walker problems were used to show the benefits of the QPN models.
As our main contributions should be mentioned: the manner of QPN definition, their properties, analysis and verification methods. The Quantum Genetic Algorithms (QGAs) were adapted using the QPNs. They were experimented and tested on a dynamic system. A new kind of quantum discrete random walker model, based on QPN, was used for testing the QGAs. A new quantum fitness method was conceived for this purpose.
2. Materials and Methods
2.1. Quantum State versus Classical State
The classical bits take values in the domain . They are used to compose the digital information. A number of r bits can cover a domain of values.
The quantum replacement of the classical bit is the qubit denoted here : where the complex numbers and satisfy the relation and represent their quantum state.
The qubit can be represented on Bloch sphere (Figure 1). It can be described using the angles by the relation:
with and .
Figure 1.
Qubit representation on Bloch sphere.
Joining a number of g qubits leads to a quantum register modeled by qubit vectors of the form:
The initialization and measurement (i.e., collapse) in quantum computers are performed on qubits. These refer to the V vectors.
The qubits (similar to the bits) can be coded at the computational level by state vectors. The content of a register composed of g (length) qubits can store information using state vectors from the set with . These vectors compose a system of axes used for representing the data in quantum computation.
A quantum register content can be described by the superposed state vector in a Hilbert space () at the computational base:
with complex numbers from the set fulfilling the relation: . These coefficients are named amplitudes and they represent the probability distribution of the quantum state. The value provides the probability of the quantum process to be in the quantum state . This conception of storing the quantum information based on the quantum state amplitudes (i.e., the coefficients ) can sustain the opposite behavior manners named quantum interference.
In conclusion, the Hilbert space has the base spanning in .
Let and be two vectors in Hilbert space. Then:
A is a matrix that generates transformation of superposed quantum state. , where is the conjugate transpose of A. A is a so-called unitary matrix. This property of A grants that the transformation with , is a valid one.
While requires complex coefficients, V involves only complex coefficients. These coefficients are linked by the relations:
The conversion of V to can always be performed, while the reversal (i.e., from to V) can be done only for some particular (pure) states.
2.2. Quantum Systems versus Classic Dynamic Systems
Let be a quantum vector and a vector with real number elements in the classic system theory. The relation between the quantum vector and the classic vector is set in the current approach by for all . As it can be seen, the values () correspond to the system probabilities to be in the quantum states ().
Denoting with the vector provided by at a discrete time , a classic dynamic system can be described by . If U is a unitary matrix, the walker’s position, provided by X, remains in Hilbert space (i.e., on the circle domain).
If is a Hilbert vector, then is a Hilbert vector as well that extends the position with the entity orientation.
A quantum system can model an un-oriented walker, while can model an oriented one. The un-oriented walker has the state equivalent to X, while the oriented walker has the state equivalent to . The matrices A and have to be unitary for the walker system to remain in the Hilbert space.
2.3. Quantum Computation
Unlike the classical computation that uses logical gates, the processing of quantum information is performed by quantum processors composed of quantum logical gates. A quantum logic gate acting on a qubit is a matrix. For example, the Hadamard (or diffusion) matrix:
acting on the qubit , provides that verifies the quantum coefficients (i.e., Hilbert) condition.
A single quantum logic gate acts on a qubit, while multiple quantum gates, composing a quantum logic circuit act on a register (vector) of qubits, performing an operation of the form . Any such transformation of information has to fulfill the quantum coefficient condition that is met if the corresponding matrix A is unitary.
According to [63], a single qubit quantum gate can be applied to a register of r qubits on a single qubit of a quantum vector. If the qubit is in the k position, the full quantum gate matrix H is described by:
where I is the identity matrix.
For qubits (), the application of H on the middle qubit leads to the matrix which is a matrix of size.
Figure 2 represents a quantum logic circuit that acts on a vector, composed of 3 qubits, performing an increment operation detailed by the AND and exclusive OR operations.
Figure 2.
Representation of a quantum vector and quantum operations.
2.4. Quantum Petri Nets
A quantum program involves modifications of the information stored in a set of quantum registers by the quantum gate circuits that link them. This can be modeled by Quantum Petri Nets (QPNs) [3]. Figure 3 shows an example of a QPN model that is used for their definition.
Figure 3.
Quantum Petri net model.
Other QPN formal definitions and modeling methods can be found in [64,65]. These show the connections between Petri nets, quantum physics and category theory. The monoidal categories are used for constructing a net theory. In [65], the definitions of QPNs were enriched with formal construction of the reachability graphs.
Figure 4 shows a QPN modeling a quantum logic circuit that sequentially applies the mappings (i.e., gate operations) , , to the qubits , and |, respectively, performing the operations .
Figure 4.
Quantum Petri net model of Figure 2 representation.
For the QPNs (see Figure 4), the following notations and concepts are used:
- is a net with two kinds of disjoint node sets,
- a finite place set ,
- a finite transition set ,
- is the flow relation,
- describes the transition t input place set,
- describes the transition t output place set.
QPN model shown in Figure 4 corresponds to QLC represented in Figure 2 if the following relations are added.
The Toffoli (CCNOT) gate that is applied to the 3 qubits has the correspondent matrix operator:
The matrix operator for CNOT gate applied to the two qubits is:
The NOT (Pauli-X) gate matrix operator, applied to last one qubit is:
The last two matrices are transformed, using the relation (7), resulting the mappings assigned to transitions:
and
There are two referential systems denoted by V and that store in parallel the information in the QPN places. The quantum logic circuits (i.e., the mappings ) act on the V level (i.e., qubit registers) modifying the coefficient values , while the mappings act at the (computational) level modifying the amplitudes . For each value V there is the transformation (5) denoted by that converts the V vector in vector. For some pure states of the transformation and the revers transformation (conversion) can be performed.
Some quantum algorithms use and have defined mapping , even if at the low level they are implemented by mappings on quantum logic circuits (QLC). This requires the synthesis of QLCs that perform the mappings . Other quantum algorithms have defined operations only at the qubit level. The conversion from V to is always defined by the transformation of the type .
Related to QPN states, the following are specified:
- Any place has assigned a pair of natural numbers , with specifying the dimensions of the tokens (i.e., vectors) and , respectively,
- is the place quantum state set,
- is the first part of the token that can be set in a place ;
- is the second part of the token set in the place ,
- The marking of a place is ,
- When the token is missing in a place p, the place marking is (i.e., the empty set meaning nothing or the lack of information);
- The system quantum superposed state QS isand it is given byor
2.5. Transition Admissibility and Execution
The QPN places can store two kinds of tokens (V token and token) and its transitions can execute two kinds of mappings ( and ) depending on the available tokens in their input places.
Any output arc of a transition has assigned a mapping denoted , and a mapping with and tokens in , that transforms the information stored in its input places (i.e., Hilbert and V vectors) and sets the new token (i.e., and V vectors) in its output place according to:
or its counterpart
When one of them is missing, the Equation (5) is used for transformation.
A transition is enabled for the execution of its assigned and/or mappings if and only if it has in its input places the corresponding tokens, respectively.
The execution of an enabled transition mapping involves the atomic logical extraction of the tokens from its input places and the injection of the tokens in its output places. When a mapping is executed, it is followed by the conversion and set of the tokens in the output places if the mapping is not available or allowed.
An enabled transition is executed at a moment in the time interval with 0 and real numbers; where is a very short estimated (specified) moment in time.
The start and the end of a quantum program involve:
- init, a method that initializes the places with quantum vectors with amplitudes from the matrixwith an environment matrix of QS size and complex elements fulfilling the Hilbert space condition;
- end, a method that stops the quantum process by collapsing the current QS, extracts the information from places (i.e., the final state ) and sets it to an environment matrixwhere is a matrix of size with the elements in .
2.6. Definition of QPNs
The definition of is:
where:
- N = (P, T, F) is a net;
- is a vector containing the maximum estimated delays assigned to transitions;
- is a vector containing the sizes of the vectors (, ) set in the corresponding places;
- is the set of mappings (i.e., pair ) assigned to arcs linking the transitions with places; when one of them is missing, it is denoted by ,
- is a matrix with initialized values (i.e., the initial quantum superposed states);
- init is the initialization method;
- end is the stop method;
- is a matrix storing the values of the final quantum superposed state (i.e., the result matrix).
There are some differences concerning the QPNs related to classical PNs:
- The same token set in a place can be used for enabling and execution of more than one transition.
- There are non-reversible transitions (that correspond to non-reversible quantum logic circuit) and reversible transitions that correspond to reversible quantum logic gates.
- Once a non-reversible transition is executed (it extracts the tokens from its input place set), no further transition can be enabled with the extracted tokens.
- The transition assessment is performed in iterations that have no duration.
- When some transitions are enabled, they are executed even if the tokens from their input place sets have already disappeared.
- If more than one transition set tokens concurrently (simultaneously) in a place, this situation leads to conflict and has to be avoided.
2.7. Analysis and Verification of QPN Models
The need of the analysis and the verification of the quantum programs behaviors is obviously in the development process, as it is known from many procedures. Petri nets can sustain these by some popular methods. In the current approach, Petri nets-based language and the reachability graphs are used.
2.7.1. Petri Net Based Language
Using the notations: ‘*’ for sequence, ‘+’ for alternative, ‘&’ for concurrence and ‘#’ for closing a loop, the behavior of a PN can be described. For example:
- describes the sequential execution of the transitions and ;
- describes the alternative for execution of the transition or ;
- describes the concurrent execution;
- describes a loop .
Details of their use are provided in [3].
2.7.2. Reachability Graphs
In [3] were used the reachabilty graphs that include the states and the transitions that lead to them. Some transitions are concurrently executed, changing the system states simultaneously. Some examples of their use are provided further.
2.8. QPN Model Examples
2.8.1. Reversible Transitions and Entangled Places
Figure 5 displays a QPN model that could execute a sequence of two reversible transitions. A reversible transition should be accepted to become initially enabled even if the token in one of its input places is missing (denoted here by ).
Figure 5.
QPN model of a sequence of reversible transitions.
The transition concurrently executes the relations:
where the unitary matrices and fulfill the relation .
After , the transition concurrently executes the relations:
where the unitary matrices and fulfill the relation .
The places and are entangled, if the transitions and are assigned with and (i.e., zero delays). These lead to instantaneous maintenance of the relations and .
2.8.2. Qubit Rotations and While Loops
The QPN shown in Figure 6 describes the rotation of the qubit stored in the place by the mapping assigned to . The rotation with an angle can be determined using the circle representation displayed on Figure 7. Supposing that the rotation angle is given by a qubit , the angle is given by . Performing this calculus offline, the mapping assigned to that achieves the rotation is:
Figure 6.
QPN model of a while loop.
Figure 7.
Polar plot for representation of qubit.
The repetition of the loop until a specified state is achieved, is a more difficult task. In the current proposal the method introduced by [66] is considered to be used. As a consequence, it is supposed that a loop can be admittedly executed with a specified robustness. The measurement performed at each iteration, for predicate condition of exiting the loop, diminishes the qubits state with a value smaller than a specified and accepted one.
The QPN model displayed in Figure 6 executes the sequence:
The while loop is determined by that executes:
This involves the weak measurement of (see details in [66]) that ends the loop execution when the condition is not met.
The QPN example displayed in Figure 8 corresponds to a mapping that rotates the qubit stored in the place with an angle given by the control qubit stored in the place , resulting the qubit injected in the place . This requires the synthesis of a QLC that performs the unitary transformation .
Figure 8.
QPN model of a qubit rotation depending on another one.
Let be the above given by defined in (21) with . This sets in the result of the rotation of according to the amplitudes of .
Another possibility to implement the model displayed in Figure 8 is to assign the vectors , and to the QPN places. If the mapping assigned to transition is , this manner of multiplication leads to increasing the dimension of the vector set in to .
If , then the mapping can be correctly defined by , where I is the corresponding identity matrix. can be defined to perform an increment circular shift:
Similarly, a matrix can be defined, which performs a decrement circular shift.
The problem can be extended for the case when and the previous places model vectors of qubits. If and perform the rotations of two independent qubits, the matrix:
achieves the rotation of a quantum vector (i.e., register) of two qubits.
2.8.3. Quantum Discrete Random Walker on a Circle
The chosen examples concern the Quantum Discrete Random Walker (QDRW) that moves on a circle or on a sphere (see Figure 9). They can be oriented or un-oriented. The specified 8 discrete positions on the circle can be coded with three qubits composing a vector or by referring to the quantum states for each position .
Figure 9.
QDRW movement space.
The walker random moves are decided by throwing a coin that can be modeled by Hadamard matrix (Equation (6)).
The QDRW model on a circle can be described in the Hilbert space by the equation:
where denotes the shift operator applied to its argument and is the clock tick. SH moves the walker to the right if the decision operator (i.e., the coin) provides “+” and to the left if the result is negative. SH is implemented by a permutation matrix (that has only one ‘1’ on each column or line) that performs the walker evolution. achieves a positive move (i.e., increase the position), while determines a negative move (decrease the position value).
Denoting by , the application of H to a qubit provides:
Denoting with , the probability of the QDRW to be in the position at a moment is .
The probability that QDRW follows a trajectory described by the sequence is .
The probability that QDRW hits a target during a discrete time interval is given by .
The oriented Quantum Discrete Random Walker (QDRW) QPN model is represented in Figure 10. Its state is described in the Hilbert space by the equation:
with and the complex coefficients needed for orientation fulfilling the Hilbert condition, and complex numbers from the set fulfilling the relation: in any moment .
Figure 10.
QPN of oriented QDRW on a circle.
The place models the QDRW oriented toward increasing the position (i.e., state , while the place corresponds to its orientation toward decreasing the position (i.e., ). Throwing the coin (i.e., applying the operator H) determines the change of orientations that affect the moves performed by shift operators. The QDRW dynamics is achieved by the mappings assigned to transitions.
The model executes the sequence: . The implementation requires three qubits for the walker’s position and one for the orientation.
The mappings assigned to transitions are:
The probability that QDRW be in a specified position at a time moment is given by the sum of the probabilities given by values stored in the places and :
where and are the elements of the vectors and , respectively. These probabilities are displayed in Figure 11.
Figure 11.
Probabilities of oriented QDRW on a circle.
For the QPN analysis of oriented QDRW on a circle its reachability graph is constructed as can be seen in Table 1. Instead of the quantum state, QRS is used here.
Table 1.
Reachability graph of QPN from Figure 10.
2.8.4. Quantum Random Walker on a Sphere
Figure 9 represents the sphere (like the Earth globe) used for the walker’s move and Figure 12 shows its surface displayed on two dimensions. The walker initial position is .
Figure 12.
Sphere surface deployment on two dimensions.
The system composed of oriented QDRW moving on a sphere is described in the Hilbert space:
with the vectors and describing the position on axes X and Y, respectively. The walker state is extended with its orientation on the both axes: and .
The action of the coin vector that modifies the walker orientation is given by the matrix G (according to [67]):
The oriented QDRW movements are given by the formula:
where the square brackets are used for describing the construction of vectors.
For this problem is conceived the QPN model displayed in Figure 13. The places , , and model walkers states () oriented to the right, left, up and down, respectively.
Figure 13.
QPN model of oriented QDRW on a sphere.
The place meanings are displayed in Table 2. The initial state is: .
Table 2.
Place meanings of QPN from Figure 13.
The model executes the sequence: . The implementation requires three qubits for X walker’s position, another three qubits Y and two qubits for the walker orientations on X and Y.
The mappings assigned to the transitions are:
- ; ; ; ; ;
- ; ; ; ; ;
- ; ; ; ; ;
- ; ; ; ; ;
- ; ;
- ; ;
- ; ;
- ; ;
For the QPN analysis of oriented QDRW on a sphere, its reachability graph is displayed in Table 3.
Table 3.
Reachability graph of QPN from Figure 13.
The probability of the oriented QDRW to be at the moment in the position and is given by the coefficients of the vectors and at the moment :
The needed information required for these calculations is stored in the places , , and . The results of simulation can be seen in Figure 14.
Figure 14.
Probability representation of oriented QDRW moves on a sphere.
2.9. Quantum Discrete Controlled Walker (QDCW)
The previous oriented walker’s randomness (given by the generalized coin) is replaced by a matrix denoted by that influences its move directions. The QDCW move equation becomes:
with
and G the previous diffusion matrix. The angles and determine the move directions. Again, the shift operator SH determines the QDCW moves toward these angles.
The control problem consists of the application of that leads the QDCW from a given initial state (i.e., position and orientation) to some specified target points or region.
2.10. Classic and Quantum Computers Connection
The quantum algorithms are not executed independently, but in collaboration with classic implemented algorithms.
Figure 15 shows a composition of an Object Enhanced Time Petri Net (OETPN, see [68]) model that interacts with a QPN model. OETPN receives demands from operator through the classic place and interacts with QPN through the interface (classic-quantum place) . This provides the information used for the first steps of the quantum program. OETPN receives the quantum computation results through the interface (quantum-classic place) .
Figure 15.
Classic-quantum application structure.
According to [32] a qubit observation or measurement can be modeled by the wave function collapse as:
where is a random number in the range used for the assessing of x.
QPN is initialized by the transition in the pure state that is switched by in the desired initial state V or state in using the information provided by . The mapping(s) of applies the QLC operations. If the exit condition is not fulfilled, the quantum calculations are repeated after the reaching of the inserted by the transition . When the exit condition is reached, the transition sets the measured value of by collapsing on specified axis.
Approximately measurements are required to get the results with the precision . This means to repeat the quantum process with the same initialization values. OETPN can request to repeat the QPN execution by reloading the initial condition, until the expected statistical results are obtained.
The places do not necessarily independently represent the quantum processor qubits that are described by the entire QPN marking. The QPN places describe the quantum program state. All the transitions’ mappings are implemented at the lower level by QLCs.
2.11. Quantum Evolutionary Systems (QES)
The extension of classical ES to Quantum Evolutionary Systems (QES) concerns the replacing of the genes of classical genomes with qubits. This makes the description of an infinite number of individuals in the same instantiation of the model possible. The classical genetic operators have to be adapted to the new form of information encryption.
The individual evaluation, which in the classical computation requires the separate simulation of each of them, can be performed simultaneously. The reading of evaluations performed with different parameters can extract the information for individual selection and further on for their improvement.
Quantum control is an effective tool to drive the quantum system to a given target state and thus manipulate the dynamics of a quantum system [61]. The main goal is to control a multilevel system from an initial state to a given target state. This can solve problems related to quantum control strategies based on supervised machine learning to suppress the quantum noise in an open quantum system.
Quantum approach can be used in GA by:
- Quantum Inspired Genetic Algorithms (QIGA) where the simulation and improvement are implemented on classical computers;
- Hybrid Classic Quantum GA (HCQGA) where the simulations are performed by QC, but the improvements are determined by tasks implemented on classical computers;
- CQGA (Complete Quantum Genetic Algorithm) where the individual simulations and improvements are performed by tasks implemented completely on QC.
2.12. Quantum Genetic Algorithms
Genetic Algorithms contain:
- The genome specification that is used for construction of the genotypes,
- The individual evaluation that consists of modeling the individual behaviors and assessing their performances,
- The individual selection for reproduction,
- The individual improvements that are performed randomly based on the previous generation performance and the use of some genetic operators,
- The stopping criteria that uses either a number of tested generations reaching a performances over a desired threshold, or just the execution is exceeding a specified duration or a specified number of generations without relevant improvements.
Figure 16 shows the evolutionary process performed by a GA. It executes the sequence where K represents the number of iterations performed until the result is obtained.
Figure 16.
OETPN model of an evolutionary process.
Generally, the ESs need to properly solve the evaluations of individuals and their improvement. Both of them should be adapted to the problems, otherwise the targets are not reached. Due to the problem complexities, there are no clear and proven rules for the general construction of fitness functions and individual evolution operators. There are two main approaches for individual evolution (i.e., improvements) of QGAs: one uses only the mutation and the other uses the crossover before performing the mutation. The first approach uses the best individual from the previous generation as a target for random genotype improvement, while the second selects the individuals for evolution according to their performances and randomly interchanges the two individual genotypes.
For achieving the solution, in [69], the authors propose a QGA implementation that does not need the crossover involving two individuals. The justification is that all the individuals are simulated simultaneously. More recently, [57] includes and justifies the use of crossover.
The current approach concerns the control of the Quantum Discrete Walker with the model shown in Figure 13. The individuals of GA determine the mappings assigned to transitions and . The Classic GA (CGA) problem usually involves the finding in each intersection (node and/or time) of the walker directions such that it reaches the targets avoiding the traps. Due to the fact that the walker can start from different initial points, the search should be repeated from all of them.
For the Quantum Discrete Controlled Walker (QDCW), the problem can be defined in two manners: one solves only the change of direction and the other performs the move length (i.e., ) in the chosen direction.
The efficiency of QGA is significantly better than the conventional genetic algorithm [49]. The classic Genetic Algorithm (CGA) has to execute (simulate) many individuals for their assessment one by one. QC (quantum computing) has the advantage that it can simulate simultaneously a large number of individuals. QC uses quantum variables that can cover by superposition the entire search domain. QGAs (Quantum Genetic Algorithms) have to represent the individuals by quantum vectors. The individual modifications fulfill the Hilbert condition by using mappings involving unitary matrices.
The transition of the model shown in Figure 16 creates in the place the genotypes pool using the initial information stored in the place . The genotype V is used for the construction of the individual . For the walker control problem, the solution is obtained by replacing the previous G matrix (Equation (30)) with , where is a unitary matrix that has the role to diminish the randomness and to lead the walker toward the targets. The genes are and that, for implementation reasons, are changed in the vector describing the quantum individual genotype.
The execution of the mapping assigned to transition evaluates the individuals using the model displayed in Figure 13. The walkers described by are equally initialized to occupy the entire walker’s space:
The individual performances are set in the place . The transition selects the individuals for evolution setting them in , linking their genotypes with the performances. For improvement, the best individuals from the previous generation are stored in . The transition performs the individual improvement (i.e., population evolution). The evolution continues until a stop condition is fulfilled, and then the transition is executed, providing the final results in the place .
In conclusion, all the possible initial states of the controlled system are evaluated simultaneously based on the walker’s superposition. The transitions and can perform their activities in parallel for the current population.
Problems of optimal control of the QDCW can be defined in two manners. One consists of the application of control signals at each tick for direction modification, and the other one involves the syntheses of an environment that leads to a kind of deflectors set in each intersection. The deflectors direct the QDCW towards the desired targets avoiding the undesired traps. The current approach concerns the first manner.
The QPN model of the QDCW that solves the first approach is shown in Figure 17. As can be seen, the parallel simulations of QDCW, the controller (replacing in each moment of time the former ) and the individual evaluation (i.e., fitness) is governed by the Clepsydra ticks that will stop the execution when the experiment duration expires.
Figure 17.
Quantum individual evaluation.
QDCW can discretely move on a sphere with the above presented structure. It has to reach some target points avoiding some trap points .
Figure 18 shows the QDCW problem with initial walker state , and . The sequence represents an obtained (by CGA) optimal trajectory.
Figure 18.
Representation of the targets and traps of the QDCW problem solved by a classic GA.
The walker state is described by superposition of the composed vectors:
QDCW movement for 8 clock ticks is represented by the sequence:
2.12.1. Fitness Functions
For the classic GA, an efficient fitness function is constructed based on assessing the trajectory cost on each point. When QDCW reaches a point with the probability , the cost to be in that position is:
The cost of the QDCW at a moment of time is:
The move performance is assessed with the formula:
with a specified real value considered acceptable for the walker to be in a target point.
As a consequence, if the sequence includes points and such that (i.e., is precedent to ), then
Moreover, when the walker hits a target point with a probability greater than , its move is not assessed further.
For a quantum approach of QGA, the current research used the following quantum fitness function. Let be the composed vector providing the information related to the walker’s position (i.e., the amplitude to be there) and its density matrix. The diagonal elements of this matrix i = 0, provide the probability of the walker to be in the position .
The set is used to denote the positions when the walker is not on or , while (meaning degenerated) denotes the case when the positions are simultaneously target and trap.
Let the values and be calculated by the formulas:
They will be used to assess the probabilities of QDCW to be in the mentioned partition. Obviously evaluates the probability of QDCW to be in the current moment of time in the mentioned partition, but the individual evaluation needs the assessment of its entire trajectory. The evaluation is given by a dynamic quantum fitness function composed of two parts moving toward positive and negative (respectively) depending on the superposition of QDCW. has orientation (stored by one qubit) and position (stored by 16 qubits).
The orientation is given by:
where is given by the formula (21) with the angle , and H is the Hadamard matrix.
Denoting by ) and , the quantum fitness function is calculated by:
It can be seen that:
- If , moves equally toward positive and negative,
- If , moves more toward positive than negative,
- If , moves more toward negative than positive.
The performance is given by:
with () the amplitudes of .
All the individuals and their assessments are simulated simultaneously during the specified time horizon (see the model represented in Figure 17). It continues with Grover’s algorithm that provides the best individual and its fitness.
2.12.2. Controller Genome
Regarding Figure 17, the first manner has to find the value of and the unitary matrix U that modify the control signals according to the formula:
The matrix is constructed based on the relation (25).
The controller’s genome is: where the vectors and correspond to the value of .
changes the QDCW orientation according to the relation:
In conclusion, the GA has the task of finding the angles that lead to maximum performance. For the current problem, an individual genome is denoted by
The population of the generation w is:
where is the population dimension. The individual implementation requires qubits, allowing the simultaneous simulation of the entire population. Another 8 qubits are needed for implementing the QDCW.
2.12.3. Genetic Operators
The individual (genotype) improvement introduced in [49] is used for the purpose of avoiding the premature convergence problem that leads to loss of individual diversity in early generations. For the gene improvement the direction (i.e., positive or negative) and the amplitude should be found. The direction can be chosen by comparing the best performance from the previous generation with the current individual performance. The amplitude of the search in [49] is dynamically adapted by diminishing it at each new generation.
The rotation direction is chosen based on a determinant , where the elements are provided by a qubit from the previous generation best individual and the current individual that has to be improved The direction of the rotation angle for improvement toward the best individual is given by . The direction is not determined if .
Let be the best individual from the previous generation and an individual of the current generation. If their fitness functions are and , respectively, the improvement of consists of applying the rotation improvement vector . Let and be the maximum and minimum accepted rotation angle, respectively.
If an adaptation of the rotation angle in the generation w of the maximum z generations is used, the function for an individual improvement becomes as in Algorithm 1.
| Algorithm 1 Function |
| Require: |
| Ensure: is improved |
| for all do |
| if then |
| else |
| end if |
| end for |
| return |
The coefficient v was added for convergence adjustment.
The quantum crossover operator introduced in [57] was developed and applied in the current research. It works simultaneously on the entire population of dimension (assumed even) at the generation w. It is split into two equal parts, and . After ordering according to the chosen fitness function, it is randomly copied in and . The crossover operator (consisting of swapping the second parts of two individuals’ genotypes) is applied simultaneously to all the individuals, and so the population is given by Algorithm 2.
| Algorithm 2 Function |
| Require: |
| Ensure: is genetically improved |
| * parallel |
| * randomly |
| for all do |
| * swap the last halves of and |
| end for |
| return |
The classical mutation operator acts on a genotype, randomly choosing a gene and randomly switching its value. The quantum mutation operator acts on the entire population, simultaneously rotating all the qubits with random angles.
2.12.4. Quantum Inspired Genetic Algorithms
QIGA needs a different kind of genome [48] that can be stored in the vector V according to Equation (4). Usually, all the individuals have the initial genotypes:
The individual genotype modification is performed by a unitary transformation (given by (21)) with , where is a function that generates random values. The transformation in an iteration k acts on a qubit of V:
The individual’s qubits can be rotated with the same or using different rotation angles for each qubit. The individual is obtained by a transformation .
The individual assessment is performed by the simulation of the QPN model. Their selection for reproduction is performed by the classical roulette wheel.
Based on Figure 16, the QIGA is constructed by detailing the mappings (as in Algorithm 3). The following notations are used:
- z is the maximum accepted number of generation/iterations,
- w is the current iteration,
- the population dimension,
- is the population in the generation w,
- are the best individual of the previous generation and its fitness function.
| Algorithm 3 QIGA |
| Require: the initial best individual and its performance |
| Ensure: the best individual of the last population and its performance |
| while do |
| for all do |
| (Figure 17) |
| end for |
| for all do |
| end for |
| Find |
| end while |
| return |
The crossover operation can lead the GA search to conserve a part of the path if and where some individuals perform better [59]. This involves the modification of the previous algorithm by replacing with and .
2.12.5. Hybrid Classic Quantum Genetic Algorithms (HCQGAs)
HCQGAs perform the individual improvement implemented in CC and the individual evaluations in QC using an architecture similar to those presented in Figure 15.
The algorithm implemented on CC constructs the population and sends it for the evaluation on QC. QC parallelly and simultaneously evaluates all the individuals and provides the best individual with its score.
The individuals evaluation is performed by partitioning the QDCW positions related to the partitions: , , and corresponding to the case when the positions are neutral (i.e., neither on target or trap) zone, on target zone, on trap zone and on degenerated zone if it is on a target and a trap (simultaneously) zone, respectively. The inclusions in these four sets can be coded by two qubits, and the degree of walker inclusion is proposed to be assessed by three qubits. The QDCW simulation, its control (i.e., ) and assessment (i.e., ) are run simultaneously.
The quantum system evolves in the Hilbert space:
where provides the information related to the performance given by the current QDCW position. Similar to the walker state (i.e., orientation and position on X and Y), the individual assessment is given by the position inclusion in an assessment partition and the corresponding degrees.
The HCQGA is composed of two parts: Classic Component of GA and Quantum Component of GA. The algorithms they execute are presented in Algorithm 4 and Algorithm 5.
| Algorithm 4 Classic Component of GA |
| Require: |
| Ensure: the best individual of population and its performance |
| while do |
| if w<z then |
| for all do |
| end for |
| end if |
| end while |
| return |
| Algorithm 5 Quantum Component of GA |
| Require: and model |
| Ensure: the best individual of population and its performance |
| while do |
| for all do |
| end for |
| Find |
| set |
| end while |
The methods set and get were used for the description of communication between classic and quantum computers.
For QDCW simulation, another 3 qubits are required for the clepsydra.
The QLC has to be endowed with the necessary quantum gates for the mappings implementation.
The use of the quantum genetic operators and would lead to complete quantum genetic algorithm.
2.12.6. Complete Quantum Genetic Algorithm (CQGA)
This is implemented completely on a quantum computer that executes Algorithm 6.
| Algorithm 6 CQGA |
| Require: |
| Ensure: is the best found solution |
| ; |
| while do |
| parallel (Figure 17) |
| end while |
| return measure |
3. Results
The QDRW models were tested on a software company simulator, but all the genetic algorithms were tested by simulation using Java language. For QPN, a framework can be found at “https://github.com/dahliajanabi/QPN”.
For experimentation of the proposed methods, the previously presented QDRW was modified to the move control of a Quantum Discrete Controlled Walker (QDCW).
3.1. Classic GA Solution of Walker Move Control
The quantum QDCW model is similar to the QPN displayed in Figure 13. The classic walker model has the same graph (Figure 13), but the guards and mappings have to be modified according to Object Enhanced Time Petri Nets (see reference [68] for details). For this case, the transitions and perform the rotations and the transitions and perform the move to the next positions. Unlike the quantum case, the classic walker can be in only one place or , because the superposition is not used in the classic computation.
The classic computation deterministic walker has the model:
with and describing the orientation on axes X and Y, respectively. The initial condition is . The control matrix has the argument with .
The GA genome is a vector of rotations for .
The usual mutation and crossover genetic operations were performed and the obtained results are presented in Figure 18 for the initial state , with orientation , and . The best individual genotype is , and the resulting best trajectory is: .
3.2. Application of QIGA for QDCW
For QDCW model, the mappings assigned to transitions and (that correspond to generalized coin throw) in the QDRW model have to be replaced with control values applied to qubit registers. The qubit register is composed of two qubits for orientation, three qubits for X and another three qubits for Y.
The probabilities of the best individual obtained by QIGA are represented in Figure 19.
Figure 19.
The representation of the probabilities of the best individual for QIGA.
The evolution of the solution search is given in Table 4. The maximum values and were obtained at different moments on time.
Table 4.
Search evolution of QIGA.
3.3. Application HQCGA for QDCW Control
The values provided by the quantum fitness function where transformed into classic values using the formula:
where represents the conversion in the base 10 of .
The probabilities of the best individual obtained by HCQGA are represented in Figure 20.
Figure 20.
The representation of the probabilities of the best individual for HCQGA.
The evolution of the solution search is given in Table 5.
Table 5.
Search evolution of HCQGA.
3.4. Complete Implemented QGA for QDCW Control
The probabilities of the best individual obtained by CQGA are represented in Figure 21.
Figure 21.
The representation of the probabilities of the best individual for CQGA.
The evolution of the solution search is given in Table 6.
Table 6.
Search evolution of CQGA.
4. Discussion
Modeling with QPNs can sustain all the phases of quantum software development. They help the understanding of the quantum complex problems and their use facilitate the quantum software conception. QPN can be used for description at the qubit level, or at a higher-level modeling complex mappings. The Petri net-based language can be used for analysis of classic programs as well as quantum programs. Because quantum programs are expected to be used in tandem with classic programs, the Petri nets are useful for constructing a bridge between quantum computers and classic computers, successfully showing their concurrent cooperation. The reachability graph can be used for the classic program and for the quantum program as well. The development based on QPN provides the mappings that lead to the QLC structure required for quantum program implementation. The QPN places show the necessary quantum registers and their dimensions. The transitions have assigned matrices that have to be implemented by QLCs.
The current approach concerns the control of dynamic systems where statistic features are relevant. This kind of applications require fitness functions assessing the temporal behaviors as they were introduced here.
The classic discrete walker has a deterministic behavior, so its optimal control leads to a deterministic solution. QDCW has a stochastic behavior described by superposition and so its optimal control is described by superposition too. Both walkers are controlled by changing their orientations.
The classic controller genome is a time variable vector , while the quantum controller genome is composed of the initial orientation function and a matrix U for this function correction.
QIGA and HCQGA use similar individual evolution algorithms (genotypes improvement). Their results are close to each other. CQGA uses quantum crossover and mutation and these lead to a different solution, slightly with lower performance than the previous GAs.
Author Contributions
Conceptualisation, T.S.L.; Experiments design, O.P.C.; Test and verification, E.M.D.-P.; Implementation, D.A.-J. All authors have read and agreed to the published version of the manuscript.
Funding
This research received no external funding.
Institutional Review Board Statement
Not applicable.
Informed Consent Statement
Not applicable.
Data Availability Statement
Not applicable.
Conflicts of Interest
The authors declare no conflict of interest.
Abbreviations
The following abbreviations are used in this manuscript:
| QC | Quantum Computation or Computer |
| CC | Classic Computation or Computer |
| PN | Petri Net |
| OETPN | Object Enhanced Time Petri Net |
| QPN | Quantum Petri Net |
| QDRW | Quantum Discrete Random Walker |
| ME | Mobile Entity |
| EA | Evolutinary Algorithm |
| QEA | Quantum Evolutionary Algorithm |
| PSO | Particle Swarm Optimization |
| QME | Quantum Mobile Entity |
| GA | Genetic Algorithm |
| CGA | Classic Genetic Algorithm |
| QGA | Quantum Genetic Algorithm |
| QIGA | Quantum Inspired Genetic Algorithm |
| HCQGA | Hybrid Classic Quantum Genetic Algorithm |
| CQGA | Complete Quantum Genetic Algorithm |
| QAOA | Quantum Approximate Optimization Algorithm |
| ES | Evolutionary System |
| QES | Quantum Evolutionary System |
References
- Bacon, D.; van Dam, W. Recent Progress in Quantum Algorithms. Commun. ACM 2010, 53, 84–93. [Google Scholar] [CrossRef]
- Grumbling, E.; Horowitz, M. (Eds.) Quantum Computing. Progress and Prospects. A Consensus Study Report of The National Academies of Sciences, Engineering, and Medicine; The National Academies Press: Washington, DC, USA, 2019. [Google Scholar] [CrossRef]
- Letia, T.S.; Durla Pasca, E.M.; Al-Janabi, D.M. Quantum Petri Nets. In Proceedings of the 25th International Conference on System Theory, Control and Computing (ICSTCC), Iasi, Romania, 20–23 October 2021. [Google Scholar] [CrossRef]
- Cho, C.-H.; Chen, C.-Y.; Chen, K.-C.; Huang, T.-W.; Hsu, M.-C.; Cao, N.-P.; Zeng, B.; Tan, S.-G.; Chang, C.-R. Quantum computation: Algorithms and Applications. Chin. J. Phys. 2021, 72, 248–269. [Google Scholar] [CrossRef]
- Montanaro, A. Quantum algorithms: An overview. npj Quantum Phys. 2015, 2, 15023. [Google Scholar] [CrossRef]
- Mavroeidis, V.; Vishi, K.; Zych, M.D.; Jøsang, A. The Impact of Quantum Computing on Present Cryptography. Int. J. Adv. Comput. Sci. Appl. 2018, 9, 3. [Google Scholar] [CrossRef]
- Grover, L.K. Quantum mechanics helps in searching for a needle in a haystack. Phys. Rev. Lett. 1997, 79, 325–328. [Google Scholar] [CrossRef]
- Shor, P.W. Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer. SIAM J. Comput. 1997, 26, 1484–1509. [Google Scholar] [CrossRef]
- Rossi, M.; Asproni, L.; Caputo, D.; Rossi, S.; Cusinato, A.; Marini, R.; Agosti, A.; Magagnini, M. Using Shor’s algorithm on near term Quantum computers: A reduced version. arXiv 2021, arXiv:2112.12647v1. [Google Scholar] [CrossRef]
- Harrow, A.W.; Hassidim, A.; Lloyd, S. Quantum algorithm for linear systems of equations. Phys. Rev. Lett. 2009, 103, 150502. [Google Scholar] [CrossRef] [PubMed]
- McClean, J.R.; Romero, J.; Babbush, R.; Aspuru-Guzik, A. The theory of variational hybrid quantum-classical algorithms. arXiv 2015, arXiv:1509.04279v1. [Google Scholar] [CrossRef]
- Jethwani, D.; Le Gall, F.; Singh, S.K. Quantum-Inspired Classical Algorithms for Singular Value Transformation. arXiv 2012, arXiv:1910.05699. [Google Scholar] [CrossRef]
- Titiloye, O.; Crispin, A. Quantum annealing of the graph coloring problem. Discret. Optim. 2011, 8, 376–384. [Google Scholar] [CrossRef]
- Apers, S.; Gilyén, A.; Jeffery, S. A Unified Framework of Quantum Walk Search. arXiv 2019, arXiv:1912.04233v1. [Google Scholar] [CrossRef]
- Kadian, K.; Garhwal, S.; Kumar, A. Quantum walk and its application domains: A systematic review. Comput. Sci. Rev. 2021, 41, 100419. [Google Scholar] [CrossRef]
- Shenvi, N.; Julia Kempe, J.; Whaley, K.B. Quantum random-walk search algorithm. Phys. Rev. A 2003, 67, 052307. [Google Scholar] [CrossRef]
- Potocek, V.; Gabris, A.T.; Kiss, T.; Jex, I. Optimized quantum random-walk search algorithms on the hypercube. Phys. Rev. A 2008, 79, 012325. [Google Scholar] [CrossRef]
- Godsil, C.; Zhan, H. Discrete-time quantum walks and graph structures. J. Comb. Theory Ser. A 2019, 167, 181–212. [Google Scholar] [CrossRef]
- Portugal, R. Quantum Walks and Search Algorithms; Springer: Berlin/Heidelberg, Germany, 2013. [Google Scholar] [CrossRef]
- Kendon, V. How to Compute Using Quantum Walks. In Proceedings of the QSQW 2020, EPTCS 315, Marseille, France, 20–24 January 2020; pp. 1–17. [Google Scholar] [CrossRef][Green Version]
- Chawla, P.; Roopesh Mangal, R.; Chandrashekar, C.M. Discrete-time quantum walk algorithm for ranking nodes on a network. Quantum Inf. Process. 2020, 19, 158. [Google Scholar] [CrossRef]
- Li, M.; Liu, C.; Li, K.; Liao, X.; Li, K. Multi-task allocation with an optimized quantum particle swarm method. Appl. Soft Comput. J. 2020, 96, 106603. [Google Scholar] [CrossRef]
- Panahiyan, S.; Fritzsc, S. One-dimensional quantum walks driven by two-entangled-qubit coins. Phys. Lett. A 2020, 384, 126673. [Google Scholar] [CrossRef]
- Zhou, W. Review on Quantum Walk Algorithm. J. Phys. Conf. Ser. 2021, 1748, 032022. [Google Scholar] [CrossRef]
- Ambainis, A. Quantum walk algorithm for element distinctness. SIAM J. Comput. 2007, 37, 210–239. [Google Scholar] [CrossRef]
- Venegas-Andraca, S.E. Quantum walks: A comprehensive review. Quantum Inf. Process. 2012, 11, 1015–1106. [Google Scholar] [CrossRef]
- Choi, J.; Kim, J. A Tutorial on Quantum Approximate Optimization Algorithm (QAOA): Fundamentals and Applications. In Proceedings of the International Conference on Information and Communication Technology Convergence (ICTC), Jeju Island, Korea, 19–21 October 2019. [Google Scholar] [CrossRef]
- Dong, Y.; Meng, X.; Lin, L.; Kosut, R.; Whaley, K.B. Robust Control Optimization for Quantum Approximate Optimization Algorithms. IFAC PapersOnLine 2020, 53, 242–249. [Google Scholar] [CrossRef]
- Bengtsson, A.; Vikstål, P.; Warren, C.; Svensson, M.; Gu, X.; Kockum, A.F.; Krantz, P.; Križan, C.; Shiri, D.; Svensson, I.M.; et al. Improved success probability with greater circuit depth for the quantum approximate optimization algorithm. Phys. Rev. Appl. 2020, 14, 034010. [Google Scholar] [CrossRef]
- Sloss, A.N.; Gustafson, S. 2019 Evolutionary Algorithms Review, Neural and Evolutionary Computing (cs.NE). arXiv 2019, arXiv:1906.0887. [Google Scholar] [CrossRef]
- Sofge, D.A. Prospective algorithms for quantum evolutionary computation. In Proceedings of the Second Quantum Interaction Symposium (QI-2008), Saarbrcken, Germany, 22–30 November 2008. [Google Scholar] [CrossRef]
- Lahoz-Beltra, R. Quantum Genetic Algorithms for Computer Scientists. Computers 2016, 5, 24. [Google Scholar] [CrossRef]
- Han, K.-H.; Kim, J.-W. Quantum-Inspired Evolutionary Algorithm for a Class of Combinatorial Optimization. IEEE Trans. Evol. Comput. 2002, 6, 6. [Google Scholar] [CrossRef]
- Patvardhan, C.; Bansal, S.; Srivastav, A. Quantum-Inspired Evolutionary Algorithm for difficult knapsack Problems. Memetic Comp. 2015, 7, 135–155. [Google Scholar] [CrossRef]
- Zhang, R.; Wang, Z.; Zhang, H. Quantum-Inspired Evolutionary Algorithm for Continuous Space Optimization Based on Multiple Chains Encoding Method of Quantum Bits, Hindawi. Math. Probl. Eng. 2014, 2014, 620325. [Google Scholar] [CrossRef]
- Kuo, S.-Y.; Chou, Y.-H. Entanglement-Enhanced Quantum-Inspired Tabu Search Algorithm for Function Optimization; IEEE: Piscataway, NJ, USA, 2017. [Google Scholar] [CrossRef]
- Konara, D.; Sharma, K.; Sarogi, V.; Bhattacharyya, S. A Multi-Objective Quantum-Inspired Genetic Algorithm (Mo-QIGA) for Real-Time Tasks Scheduling in Multiprocessor Environment; Elsevier: Amsterdam, The Netherlands, 2018. [Google Scholar]
- Agrawal, R.K.; Kaur, B.; Agarwal, P. Quantum inspired Particle Swarm Optimization with guided exploration for function optimization. Appl. Soft Comput. J. 2021, 102, 107122. [Google Scholar] [CrossRef]
- Zamani, H.; Nadimi-Shahraki, M.H.; Gandomi, A.H. QANA: Quantum-based avian navigation optimizer algorithm. Eng. Appl. Artif. Intell. 2021, 104, 104314. [Google Scholar] [CrossRef]
- Vaze, R.; Deshmukh, N.; Kumar, R.; Saxena, A. Development and application of Quantum Entanglement inspired Particle Swarm Optimization. Knowl.-Based Syst. 2021, 219, 106859. [Google Scholar] [CrossRef]
- Zouache, D.; Abdelaziz, F.B. A cooperative swarm intelligence algorithm based on quantum-inspired and rough sets for feature selection. Comput. Ind. Eng. 2017, 115, 26–36. [Google Scholar] [CrossRef]
- Ganesan, V.; Sobhana, M.; Anuradha, G.; Yellamma, P.; Devi, O.R.; Prakash, K.B.; Naren, J. Quantum inspired meta-heuristic approach for optimization of genetic algorithm. Comput. Electr. Eng. 2021, 94, 107356. [Google Scholar] [CrossRef]
- Dey, S.; Siddhartha Bhattacharyya, S.; Maulik, U. Quantum inspired genetic algorithm and particle swarm optimization using chaotic map model based interference for gray level image thresholding. Swarm Evol. Comput. 2014, 15, 38–57. [Google Scholar] [CrossRef]
- Nezamabadi-pour, H. A quantum-inspired gravitational search algorithm for binary encoded optimization problems. Eng. Appl. Artif. Intell. 2015, 40, 62–75. [Google Scholar] [CrossRef]
- Cao, B.; Fan, S.; Zhao, J.; Yangd, P.; Muhammade, K.; Tanveer, T. Quantum-enhanced multiobjective large-scale optimization via parallelism. Swarm Evol. Comput. 2020, 57, 100697. [Google Scholar] [CrossRef]
- Bhatia, M.; Sood, S.K.; Kaurc, S. Quantum-based predictive fog scheduler for IoT applications. Comput. Ind. 2019, 111, 51–67. [Google Scholar] [CrossRef]
- Li, M.; Shang, Y. Generalized exceptional quantum walk search. New J. Phys. 2020, 22, 123030. [Google Scholar] [CrossRef]
- Han, K.-H.; Kim, J.-H. Genetic quantum algorithm and its application to combinatorial optimization problem. In Proceedings of the Congress on Evolutionary Computation, Kraków, Poland, 16–19 July 2000; pp. 1354–1360. [Google Scholar]
- Wang, H.; Liu, J.; Zhi, J.; Fu, C. The Improvement of Quantum Genetic Algorithm and Its Application on Function Optimization. Math. Probl. Eng. 2013, 2013, 730749. [Google Scholar] [CrossRef]
- Haipeng, K.; Ni, L.; Yuzhong, S. Adaptive double chain quantum genetic algorithm for constrained optimization problems. Chin. J. Aeronaut. 2015, 28, 214–228. [Google Scholar] [CrossRef]
- Rizk, Y.; Awad, M. A quantum genetic algorithm for pickup and delivery problems with coalition formation. Procedia Comput. Sci. 2019, 159, 261–270. [Google Scholar] [CrossRef]
- Ajagekar, A.; You, F. Quantum computing for energy systems optimization: Challenges and opportunities. Energy 2019, 179, 76–89. [Google Scholar] [CrossRef]
- Hilali-Jaghdam, I.; Ishak, A.B.; Abdel-Khalek, S.; Jamal, A. Quantum and classical genetic algorithms for multilevel segmentation of medical images: A comparative study. Comput. Commun. 2020, 162, 83–93. [Google Scholar] [CrossRef]
- Kaveh, M.; Kamalinejad, H.; Arzani, H. Quantum evolutionary algorithm hybridized with Enhanced colliding bodies for optimization. Structures 2020, 28, 1479–1501. [Google Scholar] [CrossRef]
- Ajagekar, A.; Humble, T.; You, F. Quantum computing based hybrid solution strategies for large-scale discrete-continuous optimization problems. Comput. Chem. Eng. 2020, 132, 106630. [Google Scholar] [CrossRef]
- Wang, L.; Tang, F.; Wu, H. Hybrid genetic algorithm based on quantum computing for numerical optimization and parameter estimation. Appl. Math. Comput. 2005, 171, 1141–1156. [Google Scholar] [CrossRef]
- Ibarrondo, R.; Gatti, G.; Sanz, M. Quantum Algorithm with Individuals in Multiple Registers. arXiv 2022, arXiv:2203.15039v1. [Google Scholar]
- Ardelean, S.M.; Udrescu, M. Graph coloring using the reduced quantum genetic algorithm. PeerJ Comput. Sci. 2022, 8, e836. [Google Scholar] [CrossRef]
- Zhang, J.; Kang, M.; Li, X.; Liu, G. Bio-Inspired Genetic Algorithms with Formalized Crossover Operators for Robotic Applications. Front. Neurorobot. 2017, 11, 56. [Google Scholar] [CrossRef] [PubMed]
- Ghosh, M.; Dey, N.; Mitra, D.; Chakrabarti, A. A Novel Quantum Algorithm for Ant Colony Optimization. IET Res. J. 2021, 3, 13–29. [Google Scholar] [CrossRef]
- Zeng, Y.X.; Shen, J.; Hou, S.C.; Gebremariam, T.; Li, C. Quantum control based on machine learning in an open quantum system. Phys. Lett. A 2020, 384, 126886. [Google Scholar] [CrossRef]
- Wang, D.; Tan, D.; Liu, L. Particle swarm optimization algorithm: An overview. Soft. Comput. 2017, 22, 387–408. [Google Scholar] [CrossRef]
- Kelly, A. Simulating Quantum Computers Using OpenCL. arXiv 2018, arXiv:1805.00988. [Google Scholar]
- Abramsky, S. Petri Nets, Discrete Physics, and Distributed Quantum Computation. In Concurrency, Graphs and Models; Lecture Notes in Computer Science; Springer: Berlin/Heidelberg, Germany, 2008; Volume 5065. [Google Scholar] [CrossRef]
- Schmidt, H.W. How to Bake Quantum into Your Pet Petri Nets and Have Your Net Theory Too, Computer Science > Software Engineering. arXiv 2021, arXiv:2106.03539. [Google Scholar] [CrossRef]
- Anres-Martinez, P.; Heunen, C. Weakly measured while loops: Peeking at quantum states. Quantum Sci. Technol. 2022, 7, 025007. [Google Scholar] [CrossRef]
- Kempe, J. Quantum random walks—An introduction overview. arXiv 2003, arXiv:quant-ph/0303081v1. [Google Scholar]
- Letia, T.S.; Al- Janabi, D. Object Enhanced Time Petri net models. In Proceedings of the 2018 IEEE International Conference on Automation, Quality and Testing, Robotics (AQTR), Cluj-Napoca, Romania, 24–26 May 2018. [Google Scholar] [CrossRef]
- Udrescu, M.; Prodan, L.; Vladutiu, M. Implementing Quantum Genetic Algorithms: A Solution Based on Grover’s Algorithm. In Proceedings of the 3rd Conference on Computing Frontiers, Ischia, Italy, 3–5 May 2006; pp. 71–82. [Google Scholar]
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).