Denunciar

•0 gostou•10 visualizações

•0 gostou•10 visualizações

Baixar para ler offline

Denunciar

Summary of the paper Synthesis of Quantum Circuits with an Island Genetic Algorithm. Made by: Jesus Urbaneja. Tohoku University Student. IMAC-U program.

Quantum inspired evolutionary algorithm for solving multiple travelling sales...eSAT Publishing House

519 visualizações•4 slides

- 1. Synthesis of Quantum Circuits with an Island Genetic Algorithm Fernando T. Miranda, Pedro Paulo Balbi, and Pedro C.S. Costa
- 2. Synthesis of Quantum Circuits with an Island Genetic Algorithm ● The focus of the paper is finding a unitary decomposition based on the circuit model of computation. ● From a specific gate set, the goal of this work is to find an equivalent circuit, through the evolutionary search, for a given unitary U. Objective Function Given a unitary matrix U we search for the quantum circuit that produces this matrix with the greatest possible fidelity
- 3. Trace fidelity: This function quantifies the fidelity of the quantum circuit with respect to the target unitary. Ua : unitary given Ut : the target unitary n: number of qubits needed to describe Ua Tr(.): trace operation of a given matrix However, by the Solovay-Kitaev theorem, we know that the ideal solution cannot be achieved Notice: when Ua = Ut, f = 1. f ∊ [0,1]
- 4. Chromosome Representation Each item from left-to-right represents a column of the circuit. ({1: (‘H’, -1, None)}, {1: (‘X’, 0, None)}, {2: (‘X’, 1, None)}, {1: (‘X’, 0, None)}) Target qubit - Operation - Controlled-qubit - Parameter Here, the absence of control is indicated by -1 and the absence of parameter is indicated by None. The indices are mapped from top to bottom, with 0 indicating the first qubit.
- 5. Chromosome Representation Each chromosome is made up of B unitary blocks, each one being a circuit itself. Types of blocks Non-controlled block: single column block (depth = 1) without any control points. Controlled-block: single column block (depth = 1) with 1 or more control points. Helper Block: predefined block with depth greater than 1.
- 6. Chromosome Representation (example) Non-controlled Blocks Controlled Blocks Helper Block
- 7. Evolutionary Algorithm Classical Genetic Algorithms present the problem of premature convergence: ● Due to the lack of continuous parameters to guide search. ● The exchange of genetic material tends to make individuals too similar. ● Reaching almost always a local maximum. To overcome this problem an Island Model concept was adopted.
- 8. Island Model In this type of model, different populations (sets of individuals) evolve independently at first. Later, they exchange genetic material in a process called migration. This model is a parallel version of an ordinary GA, where there is a exchange of information among different populations. ● Each population may follow different evolutionary path. ● This increases diversity and the effectiveness of the search.
- 9. Island Model (first step) ● g : number of populations. ● p : number of chromosomes of each population. ● Individuals are created with a number of blocks between 4 and 15 by randomly generating each one of its blocks. ○ First, a block type is randomly chosen. For non-controller and controlled blocks, gates and their positions are chosen uniformly at random. ○ For helper blocks, the type of helper and the control wire is chosen uniformly at random.
- 10. After that, evolution will proceed in the following way: The first step occurs in isolation within each population ● We pick the leader (individual with the highest fitness) of each population. ● For every individual in the population a new offspring is created: offspring = leader[:nl] + individual[:ni] ● Then, a single mutation is applied to the offspring ○ if fitness(individual) < fitness(offspring): replace individual by offspring ○ else: discard(offspring) nl = max(1, floor(Bl x rl)) ni = max(1, floor(Bi x ri)) number of blocks in leader / individual
- 11. 1st Crossover (example) rl = 0.3 ri = 0.7 nl = max(1, floor(4 x rl)) = 1 ni = max(1, floor(3 x ri)) = 2 leader individual
- 12. Crossover between Populations ● This operator has a vital role in providing genetic variability to the evolutionary process. It happens as follow: ● For an individual l in population_i: ○ Pick individual m from population_j; { i ≠ j } ■ Create an offspring with min(B(l),B(m)) number of blocks ○ if fitness(l) < fitness(offspring): replace individual by offspring ○ else: discard(offspring) number of blocks of l / m Each block of the offspring will be selected from the homologous position of individuals l or m, with equal probability.
- 13. Mutation First, each individual will mutate but the block where the mutation happens is randomly chosen. The mutation mechanism for each type of block is described as follow: ● Non controlled block ● Controlled block Random shuffling: randomly reassigns the control, target, and gates present to new positions on the wire. Removal of Control points: only available when there is more that one control point. Gate change: pick a gate and change its operator. If both random shuffling and gate change are available only one is applied. replace the unitary by a random gate ● Random shuffling ● removal of control point ● gate change
- 14. Mutation ● Helper blocks Examples of Mutation: randomly pick a sub-block, and mutate it according to its type
- 15. Stop Criterion The algorithm is interrupted when the equation below is smaller or equal to 1x10^(-6). This criterion is checked after the 2nd crossover process Where f was defined previously as the trace fidelity function.
- 16. The whole process is summarized in this graph
- 17. Parameters for experiment rl = 0.7 ri = 0.3 g = 20 p = 30 Maximum number of iterations: 10^4 Block sizes: 4 to 15 Quantum gate set available: {H,S,CNOT,X,X^(1/2),T} including the complex conjugate of the gates T, S, and X^(1/2). They also added extra gates like the one provided by IBM Quantum Experience.
- 18. Results Hadamard Coin for the Quantum Walker ε < 1x10^(-6) Found in less than 600 iterations Eliminating redundancies like HH = I or ZZ = I
- 19. Results Toffoli Gate ε < 1x10^(-6) Found in less than 1250 iterations Eliminating redundancies like
- 20. Results Fredkin Gate ε < 1x10^(-16) Found in less than 5000 iterations Eliminating redundancies like
- 21. Conclusions ● The implementation was able to find the solutions in a number of iterations that were either smaller or comparable to other analogous works. ● However, it doesn’t consider the cost of implementation for each gate. ● One important limitation of the present work relates to the maximum number of qubits allowed: unitaries with 10 or more qubits will make the search considerably slower, due to the exponential usage of memory. But this can be relatively easy to remedy by making use of sparse data structures. ● The size of the unitary seems to affect the number of iterations until a solution is found. The bigger the longer it takes. ● As we pointed out before, the solutions presented redundant circuit segments. ● A faster convergence can be achieved by introducing more high-level components into the search space. ● This work provided the proof-of-principle that the island GA can be used for circuit synthesis, regardless of the practical quantum device used.