Kvantu algoritmi lineāru
vienādojumu sistēmu risināšanai
Andris Ambainis
LU Datorikas fakultāte
Datorzinātnes lietojumi un tās saiknes ar kvantu fiziku
Nr.2009/0216/1DP/1.1.1.2.0/09/APIA/VIAA/044
LU 69. konference, 2011. gada 4. februārī
Varbūtiska sistēma
q1
q2
q4
q3
0.5 0.2 0.1
0.2
Kvantu sistēma
q1
q2
q4
q3
1
2 3
4
i – kompleksi skaitļi
Kvantu sistēma
q1
q2
q4
q3
1
2 3
4
Mērot iegūstam qi ar varbūtību |i|
2.
Lineāras vienādojumu sistēmas
NNNNNN
NN
NN
bxaxaxa
bxaxaxa
bxaxaxa
...
...
...
...
2211
22222121
11212111
Zināms: a11, a12, ..., aNN, b1, b2, ..., bN.
Jāatrod: x1, x2, ..., xN.
Lineāras vienādojumu sistēmas
Klasiskais algoritms: O(N2.38...).
Ieejas datu apjoms: N2.
Izejas datu apjoms: N.
NNNNNN
NN
NN
bxaxaxa
bxaxaxa
bxaxaxa
...
...
...
...
2211
22222121
11212111
[Harrow-Hassidim-Lloyd, 2008]
Algoritma rezultāts – kvantu stāvoklis:
N stāvokļi – log N kvantu biti.
Stāvokli var radīt O(log N) laikā.
Nxxx N ...21 21
O(N2.38...) O(log N)
Scientific American
Warp-Speed
Algebra: New
Algorithm Does
Algebra in a Snap
New quantum
algorithm can solve
monster-size
equations.
[Harrow-Hassidim-Lloyd, 2008]
Algoritma rezultāts – kvantu stāvoklis:
Trūkums: no kvantu stāvokļa nevar nolasīt visu
atrisinājumu x1, x2, ..., xN.
Var iegūt daļēju informāciju par atrisinājumu.
NxxxN
...21 21
Pamatideja
N
i
i ib1
N
i
i ix1
Zināms Risinājums
NNNNNN
NN
NN
bxaxaxa
bxaxaxa
bxaxaxa
...
...
...
...
2211
22222121
11212111
Pamatidejas
NNNN
N
N
aaa
aaa
aaa
A
...
............
...
...
21
22221
11211
Nx
x
x
x...
2
1
Nb
b
b
b...
2
1
bAx
bAx 1
N
i
i ib1
N
i
i ix1
Algoritma darbības laiks
1. Atkarība no vienādojumu/nezināmo skaita:
O(log N).
2. Kondīcijas skaitlis k.
Kondīcijas skaitlis
Cik daudz mainās atrisinājums,
nedaudz izmainot b1, b2, ..., bN?
NNNNNN
NN
NN
bxaxaxa
bxaxaxa
bxaxaxa
...
...
...
...
2211
22222121
11212111
Kondīcijas skaitlis
Nx
x
x
...
2
1
Nx
x
x
...
2
1
Izmaiņa: .
Nb
b
b
...
2
1
Izmaiņa: min.
Izmaiņa: max.
min
max
k
Algoritma ātrdarbība
[Harrow, Hassidim, Lloyd, 08]: O(k2 log N).
[A, 2010]: O(k log N).
Algoritma pielietojumi
Kā var izmantot atrisinājumu – kvantu stāvokli?
[Rivošs, 2010]: piemēri, kur no šāda atrisinājuma
var iegūt lietderīgu informāciju (piemēram, xi=1
vienam i, xj=0 pārējiem j).
NxxxN
...21 21