Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris...
Transcript of Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris...
![Page 1: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/1.jpg)
Kvantu algoritmi un
apakšējie novērtējumi
Andris Ambainis
LU Datorikas fakultāte
Datorzinātnes lietojumi un tās saiknes ar kvantu fiziku
LU un LMT datorzinātņu dienas, 2011.g. 9. augusts
![Page 2: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/2.jpg)
Grovera algoritms
Atrast i, kuram xi=1.
Melnā kaste, saņem i, izdod xi.
Klasiski, n soļi.
Kvantu algoritms: O(√n) soļi [Grover, 1996].
0 1 0 0 ...
x1 x2 xn x3 ...
Var tikt pielietots jebkuram meklēšanas uzdevumam.
![Page 3: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/3.jpg)
Meklēšana
A. Bērziņš 22245678
I. Bērziņš 23456789
V. Bērziņš 22349029
... ....
A. Kalniņš 22390001
... ...
Kam pieder numurs 22332233?
Parasts dators: N soļi Kvantu dators: √N soļi
1,000,000 vs. 1,000
![Page 4: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/4.jpg)
Kā tas darbojas?
Melnā kaste:
MK i xi
Kvantu melnā kaste:
MK |i |i, ja xi=0
-|i, ja xi=1
Vai šis ir meklētais objekts?
![Page 5: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/5.jpg)
Kvantu melnā kaste
MK
x2=1, x1=x3=0:
![Page 6: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/6.jpg)
Kvantu algoritms
Sākuma
stāvoklis
MK U1 MK ...
Beigu
stāvoklis
![Page 7: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/7.jpg)
Meklēšana
Atrast i, kuram xi=1.
Melnā kaste, saņem i, izdod xi.
0 1 0 0 ...
x1 x2 xn x3 ...
![Page 8: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/8.jpg)
Sākuma stāvoklis
1 2 ... n
![Page 9: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/9.jpg)
Melnā kaste
1 ... n
![Page 10: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/10.jpg)
Difūzija (inversija pret vidējo)
1 ... n
Palielina mazās amplitūdas,
samazina lielās.
![Page 11: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/11.jpg)
Ko vēl var izdarīt ar
kvantu datoru?
![Page 12: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/12.jpg)
Sakritību meklēšana (A, 2004)
28 12 18 76 96 82 94 99 21 78 88 93 39 44 64
32 99 70 18 94 82 92 64 95 46 53 16 35 42 72
31 40 75 71 93 32 47 11 70 37 78 79 36 63 40
69 92 71 28 85 41 80 10 52 63 88 57 43 84 67
57 31 98 39 65 74 24 90 26 83 60 91 27 96 35
20 26 52 95 65 66 97 54 30 62 79 33 84 50 38
49 20 47 24 54 48 98 23 41 16 66 75 38 13 58
56 86 34 73 61 73 21 44 62 34 14 51 74 76 83
37 90 58 13 10 25 29 25 56 68 12 11 51 23 77
68 72 43 69 46 87 97 45 59 14 30 19 81 81 49
60 85 80 50 61 59 89 67 89 29 86 48 22 15 17
55 36 27 42 55 77 19 45 15 53 22 91 87 17 33
Uzdevums: atrast divus skaitļus, kas ir vienādi.
![Page 13: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/13.jpg)
Sakritību meklēšana
31 40 75 71 93 32
47 11 70 37 78 79
36 63 40 48 98 23
41 16 66 75 38 27
42 55 77 19 45 15
53 22 91 37 90 58
13 10 25 29 25 56
68 12 11 51 23 77
15 17
Klasiskiem (ne-
kvantu) algoritmiem
vajadzīgi N soļi.
Mūsu rezultāts:
kvantu algoritmiem
pietiek ar ~N2/3.
![Page 14: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/14.jpg)
Loģikas formulas (A, 2007)
AND
OR
AND x1 x2
OR
x3 x4
AND
x5 x6
Formulas izmērs: N.
Laiks:
Parasts dators: N.
Kvantu dators: √N.
![Page 15: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/15.jpg)
Formula
AND
OR
x2
OR
x1 x3 x4
![Page 16: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/16.jpg)
Kvantu algoritms
0 1 1 0
… Kvantu klejošana: daļiņa klejo pa koku, ar sākuma stāvokli “astē”
![Page 17: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/17.jpg)
Rezultāts
Ja F = 0, tad daļiņa
paliek “astē”;
Ja F=1, tad daļiņa
pārvietojas uz formulas
koka tām daļām, kas
padara formulu patiesu.
Tas notiek N soļos.
![Page 18: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/18.jpg)
Kopīgā iezīme
Klasiskam datoram:
(Laiks) (Ievaddatu apjoms);
Kvantu dators var rēķināt ātrāk, izmantojot
kvantu paralēlismu.
![Page 19: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/19.jpg)
Trijstūri grafos
Grafs G ar n virsotnēm.
n2 mainīgie xij; xij=1 ja ir mala (i, j).
Vai G satur trijstūri?
Klasiski: O(n2).
Kvantu [Belovs, 2011]: O(n1.29...).
![Page 20: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/20.jpg)
13 bitu KMR kvantu dators
(MIT/Waterloo, 2004)
Ir realizēta meklēšana starp 4 elementiem, skaitļa 15 sadalīšana pirmreizinātājos.
![Page 21: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/21.jpg)
13 bitu KMR kvantu dators
(MIT/Waterloo, 2004)
Kvantu dators =
molekula.
Kvantu biti = atomu
kodolu spini.
Uz tiem iedarbojas ar
magnētisko lauku.
![Page 22: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/22.jpg)
Kādus uzdevumus
nevar atrisināt
kvantu dators?
![Page 23: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/23.jpg)
Meklēšana
Atrast i, kuram xi=1.
Melnā kaste, saņem i, izdod xi.
Kvantu algoritms: O(√n) soļi [Grover, 1996].
0 1 0 0 ...
x1 x2 xn x3 ...
Labāka kvantu algoritma nav.
![Page 24: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/24.jpg)
Kvantu stāvokļi = vektori
Kvantu stāvoklis
Vektors
![Page 25: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/25.jpg)
Algoritma analīze (A, 2000)
Sākumā vektori
sakrīt.
Ja algoritms
strādā pareizi, tad
beigās vektori –
perpendikulāri.
x1=1
x2=1
![Page 26: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/26.jpg)
Algoritma analīze
Ievieš lielumu S, kas parāda, cik
perpendikulāri ir algoritma kvantu stāvokļi
pie dažādiem meklējamajiem objektiem
(xi=1).
Sākumā S = 0;
Beigās S = n;
Vienā solī S pieaug ne vairāk par √n.
Vajag √ n soļus.
![Page 27: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/27.jpg)
Sakritību meklēšana
31 40 75 71 93 32
47 11 70 37 78 79
36 63 40 48 98 23
41 16 66 75 38 27
42 55 77 19 45 15
53 22 91 37 90 58
13 10 25 29 25 56
68 12 11 51 23 77
15 17
[Aaronson, Shi, 2003]
Kvantu algoritmiem
vajag vismaz N2/3
soļus.
![Page 28: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/28.jpg)
Loģikas formulas
AND
OR
AND x1 x2
OR
x3 x4
AND
x5 x6
[Barnum et al.,
2003] Kvantu
datoram vajag
√N soļus.
![Page 29: Kvantu algoritmi un apakšējie novērtējumiKvantu algoritmi un apakšējie novērtējumi Andris Ambainis LU Datorikas fakultāte Datorzinātnes lietojumi un tās saiknes ar kvantu](https://reader035.fdocument.pub/reader035/viewer/2022070108/6025f6272ecac7055470ebd6/html5/thumbnails/29.jpg)
Trijstūri grafos
Vai G satur trijstūri?
Kvantu algoritms [Belovs,
2011]: O(n1.29...).
Vajag vismaz n soļus.