Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Optimization Algorithms on a Quantum Computer A New Paradigm for Technical Computing Richard H. Warren, PhD Optimization.

Similar presentations


Presentation on theme: "1 Optimization Algorithms on a Quantum Computer A New Paradigm for Technical Computing Richard H. Warren, PhD Optimization."— Presentation transcript:

1 1 Optimization Algorithms on a Quantum Computer A New Paradigm for Technical Computing Richard H. Warren, PhD richard.warren@villanova.edu Optimization Algorithms on a Quantum Computer A New Paradigm for Technical Computing Richard H. Warren, PhD richard.warren@villanova.edu © Copyright 2011 Lockheed Martin Corporation

2 Lockheed Martin Buys Quantum Computer In 2011 Lockheed Martin Corp. purchased a quantum computer from D-Wave Systems, a Canadian technology firm. 2

3 3 Lockheed Martin Buys Quantum Computer In 2011 Lockheed Martin Corp. purchased a quantum computer from D-Wave Systems, a Canadian technology firm. Lockheed Martin planned uses: software validation and verification methods

4 4 Lockheed Martin Buys Quantum Computer In 2011 Lockheed Martin Corp. purchased a quantum computer from D-Wave Systems, a Canadian technology firm. Lockheed Martin planned uses: software validation and verification methods complex systems engineering

5 5 Lockheed Martin Buys Quantum Computer In 2011 Lockheed Martin Corp. purchased a quantum computer from D-Wave Systems, a Canadian technology firm. Lockheed Martin planned uses: software validation and verification methods complex systems engineering algorithms and computer science

6 6 Lockheed Martin Buys Quantum Computer In 2011 Lockheed Martin Corp. purchased a quantum computer from D-Wave Systems, a Canadian technology firm. Lockheed Martin planned uses: software validation and verification methods complex systems engineering algorithms and computer science enhanced machine learning

7 Ising Function for Quantum Annealing Quantum bits (qubits) can achieve an optimal state of low energy when super cooled. i and j are qubits 7

8 Ising Function for Quantum Annealing Quantum bits (qubits) can achieve an optimal state of low energy when super cooled. i and j are qubits Inputs: h i = the energy bias for qubit i J ij = the coupling energy between qubits i, j 8

9 Ising Function for Quantum Annealing Quantum bits (qubits) can achieve an optimal state of low energy when super cooled. i and j are qubits Inputs: h i = the energy bias for qubit i J ij = the coupling energy between qubits i, j Output: s i = the state of qubit i, either 0 or 1 9

10 Quantum Machine Hardware Qubit is a loop of superconducting wire made of niobium 10

11 Quantum Machine Hardware Qubit is a loop of superconducting wire Coupling between qubits is magnetic wiring 11

12 Quantum Machine Hardware Qubit is a loop of superconducting wire Coupling between qubits is magnetic wiring Temperature is close to 0 degrees kelvin 12

13 Quantum Machine Hardware Qubit is a loop of superconducting wire Coupling between qubits is magnetic wiring Temperature is close to 0 degrees kelvin Quantum machine has 128 qubits arranged in blocks of 8 qubits. All qubits in a block are coupled. Limited coupling between qubits in different blocks. 32 qubits were inoperative. – Result: Maximum number of qubits that can be logically coupled is 13 13

14 Adiabatic Quantum Optimization Physics inspired approach Hamiltonian changes over time – After the computation is complete Non-zero probability the system is in its lowest energy state which encodes a global minimization of the problem being solved 14

15 Programming Minimization Problem 1.Convert variables to binary 0, 1 15

16 Programming Minimization Problem 1.Convert variables to binary 0, 1 2.Design objective function 16

17 Programming Minimization Problem 1.Convert variables to binary 0, 1 2.Design objective function 3.Convert constraints to penalty functions 17

18 Programming Minimization Problem 1.Convert variables to binary 0, 1 2.Design objective function 3.Convert constraints to penalty functions 4.Combine object function & penalty functions into one expression that has only linear and quadratic terms 18

19 Programming Minimization Problem 1.Convert variables to binary 0, 1 2.Design objective function 3.Convert constraints to penalty functions 4.Combine object function & penalty functions into one expression that has only linear and quadratic terms 5.Map #4 to quantum machine hardware 19

20 Programming Minimization Problem 1.Convert variables to binary 0, 1 2.Design objective function 3.Convert constraints to penalty functions 4.Combine object function & penalty functions into one expression that has only linear and quadratic terms 5.Map #3 to quantum machine hardware 6.Interface to quantum machine through processor, such as MATLAB or Python 20

21 Programming Minimization Problem (cont’d) s i are the variables – Hardware limited to 13 fully coupled variables Hamiltonian = at most 13 X 13 matrix for full coupling – Diagonal elements are h i – Off diagonal elements are J ij 21

22 Symmetric Traveling Salesman Problem (TSP) A salesman needs to visit n cities once and return to the starting city. The distance d ij between each pair of cities i, j is know. Symmetric means d ij = d ji What is a route that minimizes the distance that the salesman travels? 22

23 Symmetric Traveling Salesman Problem (TSP) A salesman needs to visit n cities once and return to the starting city. The distance d ij between each pair of cities i, j is know. Symmetric means d ij = d ji What is a route that minimizes the distance that the salesman travels? Our binary variables are x ij for the road from city i to city j for i < j. The number of variables is n(n – 1)/2 which is 10 for 5 cities and 15 for 6 cities. 23

24 Symmetric Traveling Salesman Problem (TSP) A salesman needs to visit n cities once and return to the starting city. The distance d ij between each pair of cities i, j is know. Symmetric means d ij = d ji What is a route that minimizes the distance that the salesman travels? Our binary variables are x ij for the road from city i to city j for i < j. The number of variables is n(n – 1)/2 which is 10 for 5 cities and 15 for 6 cities. Our objective function is Σd ij x ij for i < j. 24

25 Symmetric Traveling Salesman Problem (TSP) A salesman needs to visit n cities once and return to the starting city. The distance d ij between each pair of cities i, j is know. Symmetric means d ij = d ji What is a route that minimizes the distance that the salesman travels? Our binary variables are x ij for the road from city i to city j for i < j. The number of variables is n(n – 1)/2 which is 10 for 5 cities and 15 for 6 cities. Our objective function is Σd ij x ij for i < j. The constraints are x ij = x ji, x ij 2 = x ij and constraints to ensure the salesman uses exactly 2 roads for each city, one into the city and different one out of the city. For city 1 in a 4 city problem, our constraint is C(x 12, x 13, x 14 ) = (x 12 + x 13 + x 14 – 2) 2 25

26 Constraint C(x 12, x 13, x 14 ) = (x 12 + x 13 + x 14 – 2) 2 ensures one route into city 1 and one route out of city 1 None of the routes x 12, x 13, x 14 are selected Then C(x 12, x 13, x 14 ) = (0 + 0 + 0 - 2) 2 = 4 26

27 Constraint C(x 12, x 13, x 14 ) = (x 12 + x 13 + x 14 – 2) 2 ensures 1 route into city 1 and 1 route out of city 1 None of the routes x 12, x 13, x 14 are selected Then C(x 12, x 13, x 14 ) = (0 + 0 + 0 - 2) 2 = 4 One of the routes is selected, say x 12 Then C(x 12, x 13, x 14 ) = (1 + 0 + 0 - 2) 2 = 1 27

28 Constraint C(x 12, x 13, x 14 ) = (x 12 + x 13 + x 14 – 2) 2 ensures 1 route into city 1 and 1 route out of city 1 None of the routes x 12, x 13, x 14 are selected Then C(x 12, x 13, x 14 ) = (0 + 0 + 0 - 2) 2 = 4 One of the routes is selected, say x 12 Then C(x 12, x 13, x 14 ) = (1 + 0 + 0 - 2) 2 = 1 Two of the routes are selected, say x 12 and x 13 Then C(x 12, x 13, x 14 ) = (1 + 1 + 0 - 2) 2 = 0 28

29 Constraint C(x 12, x 13, x 14 ) = (x 12 + x 13 + x 14 – 2) 2 ensures 1 route into city 1 and 1 route out of city 1 None of the routes x 12, x 13, x 14 are selected Then C(x 12, x 13, x 14 ) = (0 + 0 + 0 - 2) 2 = 4 One of the routes is selected, say x 12 Then C(x 12, x 13, x 14 ) = (1 + 0 + 0 - 2) 2 = 1 Two of the routes are selected, say x 12 and x 13 Then C(x 12, x 13, x 14 ) = (1 + 1 + 0 - 2) 2 = 0 All three of the routes are selected Then C(x 12, x 13, x 14 ) = (1 + 1 + 1 - 2) 2 = 1 29

30 Ensuring result is a tour for 4 city TSP Case for city 1 use C(x 12, x 13, x 14 ) = (x 12 + x 13 + x 14 – 2) 2 Consider solution (x 12 x 21 ) and (x 34 x 43 ) Then C(x 12, x 13, x 14 ) = (1 + 0 + 0 - 2) 2 = 1 30

31 Ensuring result is a tour for 4 city TSP Case for city 1 use C(x 12, x 13, x 14 ) = (x 12 + x 13 + x 14 – 2) 2 Consider solution (x 12 x 21 ) and (x 34 x 43 ) Then C(x 12, x 13, x 14 ) = (1 + 0 + 0 - 2) 2 = 1 Consider solution (x 23 x 34 x 42 ) Then C(x 12, x 13, x 14 ) = (0 + 0 + 0 - 2) 2 = 4 31

32 Ensuring result is a tour for 4 city TSP Case for city 1 use C(x 12, x 13, x 14 ) = (x 12 + x 13 + x 14 – 2) 2 Consider solution (x 12 x 21 ) and (x 34 x 43 ) Then C(x 12, x 13, x 14 ) = (1 + 0 + 0 - 2) 2 = 1 Consider solution (x 23 x 34 x 42 ) Then C(x 12, x 13, x 14 ) = (0 + 0 + 0 - 2) 2 = 4 Consider solution (x 12 x 23 x 34 x 41 ) Then C(x 12, x 13, x 14 ) = (1 + 0 + 1 - 2) 2 = 0 32

33 Compute Hamiltonian for 4 City TSP Step 1: Reduce constraint function for each city For city 1: Let a = x 12, b = x 13 and c = x 14 Then (x 12 + x 13 + x 14 – 2) 2 = a 2 + b 2 + c 2 + 2(ab + bc + ac) – 4(a + b + c) + 4 Applying a 2 = a, b 2 = b and c 2 = c Then (x 12 + x 13 + x 14 – 2) 2 = 2(ab + bc + ac) – 3(a + b + c) + 4 33

34 Compute Hamiltonian for 4 City TSP Step 1: Reduce constraint function for each city For city 1: Let a = x 12, b = x 13 and c = x 14 Then (x 12 + x 13 + x 14 – 2) 2 = a 2 + b 2 + c 2 + 2(ab + bc + ac) – 4(a + b + c) + 4 Applying a 2 = a, b 2 = b and c 2 = c Then (x 12 + x 13 + x 14 – 2) 2 = 2(ab + bc + ac) – 3(a + b + c) + 4 Step 2: Add coefficients of linear terms to diagonal Add coefficients of quadratic terms to off diagonal 34

35 Compute Hamiltonian for 4 City TSP Step 1: Reduce constraint function for each city For city 1: Let a = x 12, b = x 13 and c = x 14 Then (x 12 + x 13 + x 14 – 2) 2 = a 2 + b 2 + c 2 + 2(ab + bc + ac) – 4(a + b + c) + 4 Applying a 2 = a, b 2 = b and c 2 = c Then (x 12 + x 13 + x 14 – 2) 2 = 2(ab + bc + ac) – 3(a + b + c) + 4 Step 2: Add coefficients of linear terms to diagonal Add coefficients of quadratic terms to off diagonal Step 3: Add coefficients of objective function Σd ij x ij to diagonal 35

36 Compute Hamiltonian for 4 City TSP Step 1: Reduce constraint function for each city For city 1: Let a = x 12, b = x 13 and c = x 14 Then (x 12 + x 13 + x 14 – 2) 2 = a 2 + b 2 + c 2 + 2(ab + bc + ac) – 4(a + b + c) + 4 Applying a 2 = a, b 2 = b and c 2 = c Then (x 12 + x 13 + x 14 – 2) 2 = 2(ab + bc + ac) – 3(a + b + c) + 4 Step 2: Add coefficients of linear terms to diagonal Add coefficients of quadratic terms to off diagonal Step 3: Add coefficients of objective function Σd ij x ij to diagonal 36 Hamiltonian is input to quantum computer

37 Job Shop Problem on One Processor There are n jobs. Each job has an earliest time it can be started, latest time it can be finished, length of time to complete it, and setup time to prepare processor. The number of start times is small. A value v j is assigned for completing job j. Maximize the value by completing jobs. 37

38 Job Shop Problem on One Processor There are n jobs. Each job has an earliest time it can be started, latest time it can be finished, length of time to complete it, and setup time to prepare processor. The number of start times is small. A value v j is assigned for completing job j. Maximize the value by completing jobs. Our binary variables are x jt where j designates a job and t designates a start time for job j. 38

39 Job Shop Problem on One Processor There are n jobs. Each job has an earliest time it can be started, latest time it can be finished, length of time to complete it, and setup time to prepare processor. The number of start times is small. A value v j is assigned for completing job j. Maximize the value by completing jobs. Our binary variables are x jt where j designates a job and t designates a start time for job j. Our objective function is -Σv j x jt over all jobs j and all start times t for job j. 39

40 Job Shop Problem on One Processor There are n jobs. Each job has an earliest time it can be started, latest time it can be finished, length of time to complete it, and setup time to prepare processor. The number of start times is small. A value v j is assigned for completing job j. Maximize the value by completing jobs. Our binary variables are x jt where j designates a job and t designates a start time for job j. Our objective function is -Σv j x jt over all jobs j and all start times t for job j. Constraints model: At most one job can start at time t A job can start at most once Two jobs cannot be running at the same time. 40

41 Job Shop Problem on One Processor There are n jobs. Each job has an earliest time it can be started, latest time it can be finished, length of time to complete it, and setup time to prepare processor. The number of start times is small. A value v j is assigned for completing job j. Maximize the value by completing jobs. Our binary variables are x jt where j designates a job and t designates a start time for job j. Our objective function is -Σv j x jt over all jobs j and all start times t for job j. Constraints model: At most one job can start at time t A job can start at most once Two jobs cannot be running at the same time. Constraints introduce new variables that limit job variables x jt to 7 for quantum processor. These are slack variables similar to those in linear programming. 41

42 Other Inputs to Quantum Processor LaGrange multipliers – balance objective function and constraints. Very sensitive. 42

43 Other Inputs to Quantum Processor LaGrange multipliers – balance objective function and constraints. Very sensitive. Cooling time – time to allow processor to reach near 0 degrees kelvin 43

44 Other Inputs to Quantum Processor LaGrange multipliers – balance objective function and constraints. Very sensitive. Cooling time – time to allow processor to reach near 0 degrees kelvin Annealing time – time to allow processor to reach minimum energy state, after cooled 44

45 Other Inputs to Quantum Processor LaGrange multipliers – balance objective function and constraints. Very sensitive. Cooling time – time to allow processor to reach near 0 degrees kelvin Annealing time – time to allow processor to reach minimum energy state, after cooled Iterations – number of times same problem is sampled. We found optimal 99% of time for 100 iterations of 4 city TSP. 45

46 Other Inputs to Quantum Processor LaGrange multipliers – balance objective function and constraints. Very sensitive. Cooling time – time to allow processor to reach near 0 degrees kelvin Annealing time – time to allow processor to reach minimum energy state, after cooled Iterations – number of times same problem is sampled. We found optimal 99% of time for 100 iterations of 4 city TSP. Loads – number of times to iterate 46

47 Advantage of Quantum Annealing Speed of solving intractable problems – Experimental evidence shows several orders of magnitude faster than current digital computers – Not known whether polynomial or exponential 47

48 Limitations of Quantum Annealing Limited number of qubits restricts number of variables h i Limited connectivity between qubits restricts which parameters J ij can be nonzero Precision affected by temperature and analog nature of parameters h i and J ij in hardware Techniques that Overcome Limitations 48 Techniques that Mitigate Limitations

49 Comparison to Linear Programming Linear Programming Optimization technique Linear objective function Variables ≥ 0 Linear constraints Solution - Simplex Method Quantum Computing Optimization technique Quadratic objective function Variables are 0 or 1 Quadratic constraints Solution - Adiabatic Annealing 49

50 Comparison to Linear Programming Linear Programming Optimization technique Linear objective function Variables ≥ 0 Linear constraints Solution - Simplex Method Runs in polynomial time Quantum Computing Optimization technique Quadratic objective function Variables are 0 or 1 Quadratic constraints Solution - Adiabatic Annealing Extremely fast on intractable problems 50

51 Comparison to Linear Programming Linear Programming Optimization technique Linear objective function Variables ≥ 0 Linear constraints Solution - Simplex Method Runs in polynomial time Optimal solution from 1 execution Quantum Computing Optimization technique Quadratic objective function Variables are 0 or 1 Quadratic constraints Solution - Adiabatic Annealing Extremely fast on intractable problems Near optimal solution from many executions 51

52 References 1.D. Aharonov et al., Adiabatic quantum computation is equivalent to standard quantum computation, Proceedings of the 45th Annual IEEE Symposium on Foundations of Computer Science, 42-51, (2004). 2.G. A. Kochenberger et al., A unified modeling and solution framework for combinatorial optimization problems, OR Spectrum, 26, 237-250, (2004) 3.K. Karimi and 8 other D-Wave employees, Investigating the performance of an adiabatic quantum optimization processor, Quantum Information Processing, published on line, (2011) 52

53 Summary Inputs to adiabatic quantum computer are integers that are interpreted as analog Adiabatic quantum computer optimizes all solutions simultaneously Output from adiabatic quantum computer is 0, 1 assignment to variables with extremely high probability of being a minimization 53

54 Terminology Adiabatic – describes a process in which there is no loss or gain of heat Quantum annealing – hardware is cooled to a very low temperature which approximates the minimum energy function in the Ising model 54


Download ppt "1 Optimization Algorithms on a Quantum Computer A New Paradigm for Technical Computing Richard H. Warren, PhD Optimization."

Similar presentations


Ads by Google