Kvantumszámítógép

A Wikipédiából, a szabad enciklopédiából
A Bloch gömb ábrázolja a qubitet, ami a kvantumszámítógépek alapvető építőeleme

A kvantumszámítógép olyan számítóeszköz, amelyik úgy végez adatokon számításokat, hogy közvetlen módon használ olyan kifejezetten kvantummechanikai jelenségeket, mint a kvantum-szuperpozíció és a kvantum-összefonódás. Hasonló újelvű architektúra az intervallum számítógép.

A hagyományos (vagy klasszikus) számítógépben az információt bitekben tárolják; a kvantumszámítógépben pedig qubitekben. A kvantumszámítás alapelve, hogy kvantumtulajdonságokat használunk adatok ábrázolására és strukturálására, továbbá kvantummechanizmusokat használunk arra, hogy műveleteket végezzünk ezen adatokkal.[1]

Bár a kvantumszámítás még gyermekkorát éli, már végeztek olyan kísérleteket, amelyekben kis számú qubiten hajtottak végre kvantumszámítási műveleteket. A kutatások mind elméleti, mind gyakorlati területeken gyors ütemben folynak; sok nemzeti kormány és katonai ügynökség támogatja a kvantumszámítógépek kifejlesztésére irányuló kvantumszámítási kutatásokat, irányuljanak bár polgári vagy nemzetbiztonsági célokra, mint amilyen például a kriptoanalízis.[2]

Ha nagy kvantumszámítógépeket tudunk építeni, azok bizonyos feladatokat (például a Shor-algoritmust) exponenciálisan gyorsabban tudnak megoldani, mint hagyományos számítógépeink. A kvantumszámítógépek különböznek más számítógépektől, mint például a DNS-számítógép, vagy a tranzisztoralapú számítógép. Bizonyos számítógép architektúrák, mint például az optikai számítógép, használhatják az elektromágneses hullámok klasszikus szuperpozícióját, de a specifikusan kvantummechanikai tulajdonságok nélkül; ezeknek sokkal kisebb lehetőségük van a számítások felgyorsítására, mint a kvantumszámítógépeknek.

A kvantumszámítás alapelve[szerkesztés | forrásszöveg szerkesztése]

  • Egy klasszikus számítógép memóriája bitekből áll, ahol minden egyes bit vagy egyet vagy nullát tartalmaz.
  • Egy kvantumszámítógép qubit-ek sorozatát kezeli.
  • Egy ilyen qubit nullát, egyet, vagy ezek kvantum-szuperpozícióját tartalmazhatja, ami végtelen számú állapotot

tesz lehetővé. Egy kvantum számítógép ezeket a qubiteket kvantum logikai kapuk használatával manipulálja.

Egy kvantumszámítógéphez a qubitek egy lehetséges megvalósítása indulhat például két spinállapotú ("fel" és "le", amit általában így jelölnek: |0\rangle és |1\rangle) részecskék használatával. Valójában azonban bármely A megfigyelhető mennyiség megfelelő jelölt lehet qubitek megvalósítására, amelyik az idő múlásával megmarad, továbbá A-nak van legalább két, diszkrét és jól megkülönböztethető sajátértéke. Ez azért igaz, mert minden ilyen rendszer leképezhető egy valódi spin-1/2 rendszerre.

Bitek és qubitek[szerkesztés | forrásszöveg szerkesztése]

Tekintsünk egy klasszikus számítógépet, amelyik egy 3 bites regisztert kezel. A regiszter bitjei minden időpillanatban meghatározott állapotban vannak, mint például 101. Egy kvantum számítógépben viszont a qubiteket a klasszikusan megengedett állapotok szuperpozíciójával adhatjuk meg. A regisztert valójában egy hullámfüggvény írja le:

|\psi \rangle = a\,|000\rangle + b\,|001\rangle + c\,|010\rangle + d\,|011\rangle + e\,|100\rangle + f\,|101\rangle + g\,|110\rangle + h\,|111\rangle
A qubitek kontrollált részecskékből és vezérlőeszközből állnak (például a részecskéket csapdában tartó eszköz, amelyik azokat egyik állapotból a másikba kapcsolja). [3]

ahol az a, b, c,…, h együtthatók komplex számok, amelyeknek amplitúdónégyzete annak valószínűségét adja meg, hogy a méréssel a qubitet az egyes állapotokba tartozónak mérjük. Például, |c|^2\, annak valószínűsége, hogy a regisztert a 010 állapotban találjuk. Mivel ezek komplex számok, a számok fázisai egymással konstruktív vagy destruktív módon interferálnak; ez a kvantum algoritmusok nagyon fontos tulajdonsága.[4]

Egy kvantum regiszter leírásához exponenciálisan növekvő számú komplex szám szükséges (a fenti 3-qubites regiszter leírásához 2^3=8 komplex szám szükséges). A valamely kvantumállapot becslésére szükséges klasszikus bitek száma a qubitek számával exponenciálisan nő. Egy 300 qubites kvantum regiszterhez 1090 nagyságrendű klasszikus regiszter szükséges, ami több, mint ahány atom van a megfigyelhető világegyetemben [5]

Kezdőértékadás, végrehajtás és kilépés[szerkesztés | forrásszöveg szerkesztése]

Példánkban a qubit regiszterek tartalmát 8-dimenziós komplex vektornak tekinthetjük. Egy kvantum számítógép algoritmusnak ezt a vektort (a kvantum számítógép kivitelétől függő) meghatározott módon el kell látnia kezdőértékkel. Ezt a vektort az algoritmus minden egyes lépésében úgy kell módosítani, hogy megszorozzuk egy unitér mátrixszal. A mátrixot az eszköz fizikai felépítése határozza meg. A mátrix unitér volta biztosítja, hogy a matrix invertálható, azaz minden egyes lépés visszafordítható.

Az algoritmus befejeződése után a regiszterben tárolt 8-dimenziós komplex vektort valamiféle kvantumos méréssel ki kell olvasnunk a qubit regiszterből. A kvantummechanika törvényei szerint azonban ennek a mérésnek az eredménye egy 3 bites véletlen string lesz (és ráadásul a tárolt állapot is megsemmisül). Ezt a véletlen bitstringet használhatjuk egy függvényérték kiszámítására, mivel (az alapelvből következően) a mért kimenő bitstring valószínűségi eloszlásának nagyobb értékei a függvény helyes értéke körül csúcsosodnak. A kvantum számítógép ismételt futtatásával és a kimenet ismételt megmérésével meghatározhatjuk a nagy valószínűséggel helyes eredményt, olyan módon, hogy a lekérdezett kimeneti eredmények közül a gyakoribbat fogadjuk el. (Azaz, a klasszikus, 'nulla' és 'egy' állapotokon alapuló elektronikus számítógépektől eltérően, a kvantumos számítások qubiteken alapulnak, amelyek a 'nulla' és 'egy' mellett valószínűségi alapú kvantum szuperpozíciós állapotot is jelentenek.) Röviden, a kvantumos számítások valószínűségi jellegűek; ennek pontosabb megfogalmazását lásd a kvantumos áramkörök alatt.

A különböző algoritmusokban használt műveleteket illetően a részletekért lásd a következő szócikkekeket:

A kvantumos számítógépek teljesítménye[szerkesztés | forrásszöveg szerkesztése]

Kvantumszámítógéppel polinomiális időben megoldható problémaosztály (angol rövidítése BQP) feltételezhető besorolása a bonyolultságelméleti problémaosztályok közé

Az egész számok faktorizációja (Integer factorization) olyan feladat, amelyről azt hisszük, hogy a hagyományos számítógépekkel megoldhatatlan, legalábbis olyan nagy egész számok esetén, amelyek csak néhány prímszám szorzatából állnak (például két 300-jegyű prímszám szorzata).[6] Összehasonlításul, egy kvantumos számítógép a törzstényezőkre bontás problémáját a Shor-algoritmus (Shor's algorithm) használatával sokkal hatékonyabban tudná megoldani, mint egy klasszikus számítógép. Ez a képesség lehetővé tenné, hogy egy kvantumos számítógép "feltörje" a ma használatos kriptográfiai rendszerek sokaságát, abban az értelemben, hogy (az egész szám bitjeinek száma szerint) polinomiális idő (polynomial time) alatt megoldaná a feladatot. Nevezetesen, a legnépszerűbb nyilvános kulcsú kódok (public key ciphers), beleértve az RSAt, azon alapulnak, hogy nehéz az egészeket faktorizálni. Ezeket használjuk biztonságos Web oldalak, titkosított emailek és számos más adattípus védelmére; feltörésük szörnyű következményekkel járna az elektronikus magánszféra és titkosítás számára.

Az egyetlen lehetőség az RSA-szerű algoritmusok növelésére az lenne, hogy megnöveljük a kulcs méretét és reménykedünk abban, hogy az ellenfélnek nincs elég erőforrása arra, hogy kellően teljesítőképes kvantumos számítógépet építsen és használjon.

A problémából kivezető út valamiféle kvantumos kriptográfia (quantum cryptography) használata lehetne. Vannak olyan digitális aláírás (digital signature) sémák, amelyekről azt hisszük, hogy védettek a kvantumos számítógépek ellen; lásd például a Lamport aláírást. (Lamport signature)

A kvantumos számítógépek előnyét jelenleg (2008-ban) csak a következő problémákra találták ilyen drámainak: faktorizáció és diszkrét logaritmus. Nincs azonban bizonyíték arra sem, hogy ez az előny valódi: még felfedezhetnek egy hasonlóképpen gyors klasszikus algoritmust. Van még egy probléma, ahol a kvantumos számítógépeknek kisebb, de azért jelentős (kvadratikus) előnye van. Ez a kvantumos adatbázis keresés, és a Grover algoritmussal oldható meg. Ebben az esetben be is bizonyítható az előny. Ez minden kétséget kizáróan bizonyítja, hogy a(z ideális) kvantumos számítógépek legalább egy probléma esetén jobbak a hagyományos számítógépeknél.

Tekintsünk egy olyan problémát, amelyik rendelkezik az alábbi négy tulajdonsággal:

  1. A megoldás egyetlen módja, hogy ismételten megpróbáljuk kitalálni a válaszokat és megvizsgáljuk azokat,
  2. Összesen n megvizsgálandó válasz van,
  3. Minden egyes lehetséges válasz megvizsgálása ugyanannyi időt vesz igénybe,
  4. Fogalmunk sincs róla, melyik lehet jobb válasz: a lehetőségeket véletlenszerűen generálni épp olyan jó, mint egy speciális sorrendet használni.

Ennek egy példája egy jelszó törő, ami a jelszót egy kódolt fájl alapján próbálja kitalálni (feltéve, hogy a jelszónak van egy maximális hossza).

A mind a négy tulajdonsággal rendelkező problémák esetén egy kvantumos számítógép számára szükséges megoldási idő n négyzetgyökével lesz arányos (egy klasszikus számítógépnek (n + 1)/2 próbálkozás szükséges a válasz megtalálásához). Ez nagyon nagy gyorsulás is lehet, ami bizonyos problémák megoldásának idejét évekről másodpercekre csökkentheti. Ezt már arra is használhatnánk, hogy eséllyel próbáljuk meg a szimmetrikus kódolású eljárások (mint a tripla DES és AES titkos kulcsát kitalálni. Függetlenül attól, hogy ki tudjuk-e mutatni, hogy ezen problémák megoldására előnyösebb kvantumos számítógépet használni, ez mindenképpen kitűnő segédeszköz kvantummechanikai kölcsönhatások tanulmányozására, ami önmagában is hatalmas érték a tudományos közösség számára.

Problémák és gyakorlati nehézségek[szerkesztés | forrásszöveg szerkesztése]

A kvantumos számítógépek építésekor számos gyakorlati nehézség fordul elő, így eddig kvantumos számítógépekkel csak triviális problémákat oldottak meg. David DiVincenzo (IBM) a következő követelményeket fogalmazta meg a gyakorlatban is használható kvantumos számítógépekkel szemben: [7]

  • a qubitek növelése érdekében fizikailag skálázható
  • a qubitek tetszőleges kezdőértékre beállíthatók
  • a kvantumkapuk gyorsabbak, mint a dekoherencia ideje
  • van univerzális kapu készlete
  • a qubitek könnyen kiolvashatók

Mérnöki szemmel nézve, a probléma úgy foglalható össze, hogy egy olyan rendszert kell létrehoznunk, amelyik el van szigetelve mindentől, kivéve a mérő és vezérlő mechanizmusokat. Ezen túlmenően, képesnek kell lennünk arra, hogy kikapcsoljuk a qubitek és a mérés közötti csatolást, és így ne oltsuk ki a qubiteket, miközben műveleteket végzünk velük.

Lásd még[szerkesztés | forrásszöveg szerkesztése]

Lábjegyzetek[szerkesztés | forrásszöveg szerkesztése]

  1. "Quantum Computing with Molecules" közlemény a Scientific American újságban, írták Neil Gershenfeld és Isaac L. Chuang - egy általánosan hozzáférhető áttekintés a kvantumszámítás és környéke témakörben.
  2. Quantum Information Science and Technology Roadmap hogy ízelítőt kapjunk abból, hol tart a kutatás élvonala.
  3. Waldner, Jean-Baptiste. Nanocomputers and Swarm Intelligence. ISTE, p157. o (2007. augusztus 13.). ISBN 2746215160 
  4. DiVincenzo, David (1995. October). „Quantum Computation”. Science 270 (5234), 255-261. o. Hozzáférés ideje: 2007. április 25.  
  5. Megjegyezzük, hogy az együtthatók nem mind függetlenek, mivel a valószínűségek összegének 1-nek kell lennie.
  6. http://modular.fas.harvard.edu/edu/Fall2001/124/misc/arjen_lenstra_factoring.pdf
  7. David P. DiVincenzo, IBM: The Physical Implementation of Quantum Computation, 2000. április 13. (Hozzáférés: 2006. november 17.)

Külső hivatkozások[szerkesztés | forrásszöveg szerkesztése]

Commons
A Wikimédia Commons tartalmaz Kvantumszámítógép témájú médiaállományokat.
  • DiVincenzo, David P. (2000). "A kvantumos számítások fizikai magvalósítása". Experimental Proposals for Quantum Computation.
  • DiVincenzo, David P. (1995.). „Kvantumos számítások”. Science 270 (5234), 255–261. o.   Az 1. táblázat felsorolja a különféle rendszerek kapcsolási és fázisfosztási időit.
  • Feynman, Richard (1982.). „Fizika szimulálása számítógépekkel”. International Journal of Theoretical Physics 21, 467. o.  
  • Jaeger, Gregg. Kvantumos információ: áttekintés. Berlin: Springer. ISBN 0-387-35725-4 (2006) "
  • Nielsen, Michael and Isaac Chuang. Kvantumos számítások és kvantumos információ. Cambridge: Cambridge University Press. ISBN 0-521-63503-9 (2000) 
  • Singer, Stephanie Frank. Linearitás, szimmetria és előrejelzés a hidrogénatomban. New York: Springer. ISBN 0-387-24637-1 (2005) 
  • Benenti, Giuliano. A kvantumos számítások és információ elvei. 1. kötet. New Jersey: World Scientific. ISBN 981-238-830-3 (2004) 
  • http://jquantum.sourceforge.net/jQuantumApplet.html Kvantumos számítógép szimulátor (Java applet).