Minden eddiginél gyorsabban változik a világ a digitális változások miatt.
A technológia egy újabb vadonatúj hullámának közelgő megjelenésével, amely elképesztő sebességgel és erővel képes drasztikusan megváltoztatni a jelenlegi paradigmákat: a kvantumszámítástechnika, a digitális korszak alapvető gondolatainak megértése még fontosabbá válik.
A kvantumszámításnak nevezett áttörést jelentő technika a kvantumfizikát használja fel olyan problémák megoldására, amelyek túlmutatnak a hagyományos számítógépeken.
A kvantumelméleti alapelvek megmutatják, hogyan viselkedik az anyag és az energia atomi és szubatomi skálán, az IBM Qiskit pedig egy nyílt forráskódú kvantumszoftver-fejlesztő készlet, amely segít kvantumszámítógép-rendszerek létrehozásában.
Ez a cikk ezt próbálja megmagyarázni, és áttekintést nyújt a kvantumszámításról.
Nyílt forráskódú kvantumszámítógép segítségével magyarázzuk el olvasóinknak SDK, azaz Qiskit, és hagyja, hogy felfedezzék a használatával Jupyter Notebooks Az IBM Quantum Lab házigazdája.
Mi a kvantumszámítás?
Kvantumszámítás a számítástechnika olyan ága, amely a kvantumelmélet ötleteit felhasználva a számítástechnika fejlesztésére összpontosít.
Kihasználja a szubatomi részecskék kivételes kapacitását, hogy egyidejűleg több állapotban is létezzenek, például 0-ban és 1-ben.
Sokkal több adatot képesek feldolgozni, mint a hagyományos számítógépek.
A kvantumszámítási folyamatokban a qubit egy objektum kvantumállapotának felhasználásával készül. A kvantumszámítás alapvető információi a qubitek.
Ugyanazt a funkciót látják el, mint a bitek a hagyományos számítástechnikában a kvantumszámításban, de egészen másként működnek. A kvantumszámítás egy olyan terület, amely az 1980-as években jelent meg.
Aztán felfedezték, hogy a kvantumalgoritmusok hatékonyabbak bizonyos számítógépes feladatok elvégzésében, mint klasszikus társaik.
A szuperpozíció és az összefonódás, a kvantumfizika két fogalma az alapja, amelyen ezek a szuperszámítógépek alapulnak.
A hagyományos számítógépekhez képest a kvantumszámítógépek jelenleg nagyságrendekkel gyorsabban tudnak munkát végezni, miközben sokkal kevesebb energiát fogyasztanak.
Tovább kell lépnünk a kvantumszámítógépek működésével, hogy teljes mértékben megértsük azt. Kezdjük most.
Hogyan működik valójában egy kvantumszámítógép?
Az általunk megszokott hagyományos számítógépekhez képest a kvantumszámítógépek másképp közelítik meg a problémamegoldást. Egyes feladatoknál a kvantumszámítógépek több szempontból is előnyösebbek a hagyományos számítógépekkel szemben.
Úgy gondolják, hogy az ok, hogy képesek egyszerre több államban létezni. Másrészt a hagyományos számítógépek egyszerre csak egyetlen állapotban lehetnek.
Három kulcsfontosságú fogalmat kell megértened ahhoz, hogy megértsd a kvantumszámítógépek működését:
- Szuperpozíció.
- Összegabalyodás.
- Interferencia.
ráhelyezés
A bitek a hagyományos számítógépek alapvető alkotóelemei. A kvantumbitek vagy qubitek a kvantumszámítógépek alapegységei.
Alapvetően a kvantumbitek eltérően működnek. A bináris bit, más néven hagyományos bit, egy kapcsoló, amely lehet 0 vagy 1.
Mérésekor visszakapjuk a bit aktuális állapotát. Ez alól a Qubits kivételt képez. A Qubit a három dimenzióban mutató nyilakhoz hasonlítható.
0 állapotban vannak, ha felfelé mutatnak. 1 állapotban vannak, ha lefelé mutatnak. Ugyanez a helyzet a klasszikus bitekkel.
Választhatják azonban azt is, hogy szuperpozíciós állapotban legyenek.
A nyíl abban az állapotban van, ahol bármely más irányba mutat. A 0 és 1 szuperpozíciója ezt az állapotot eredményezi. A Qubit még mindig 1-et vagy 0-t ad eredményül a mérés során.
A nyíl iránya azonban meghatároz egy releváns valószínűséget.
Nagyobb valószínűséggel kap 1-est, ha a nyíl elsősorban lefelé mutat, és 0-t, ha elsősorban felfelé mutat.
Ha a nyíl középen van, mindegyiknél 50% esélyed lesz a nyerésre. Dióhéjban ez szuperpozíció.
belekeveredés
A hagyományos számítógépek bitjei függetlenek egymástól. Az egyik bit állapota nincs hatással a másik bit állapotára.
A kvantumszámítógépek qubitjei összegabalyodhatnak egymással. Ez azt jelenti, hogy egyetlen nagy kvantumállapotba egyesülnek.
Szemléltetésképpen vegyünk két olyan qubitet, amelyek különböző szuperpozíciós állapotban vannak, de még nincsenek összegabalyodva. Jelenleg a valószínűségük nem függ egymástól.
Amikor összefonjuk őket, el kell vetnünk ezeket a független valószínűségeket, és meg kell határoznunk az összes olyan alternatív állapot valószínűségét, amelyekből kikerülhetünk, nevezetesen a 00, 01, 10 és 11.
A teljes rendszer valószínűségi eloszlása megváltozik, ha az egyik qubiten lévő nyíl iránya megváltozik, mert a qubitek összegabalyodtak.
A qubitek egymástól való függetlensége elveszett. Mindegyik ugyanolyan nagy állapotú összetevő. Nem számít, hány qubited van, ez továbbra is így van.
Egy n qubites kvantumszámítógépnél 2n állapot kombinációja lehetséges.
Van egy valószínűségi eloszlása két állapot között, például egy qubit esetében. Van egy valószínűség-eloszlása négy állapot között két qubit stb. esetén. A klasszikus és kvantumszámítógépek közötti fő különbség a következő.
A klasszikus számítógépeket bármilyen állapotba helyezheti, de egyszerre csak egyet. Mindezek az állapotok egyidejűleg létezhetnek a kvantumszámítógépeken szuperpozícióként.
Hogyan profitálhat a számítógép abból, hogy egyszerre minden ilyen állapotban van? Ezen a ponton lép be az utolsó interferenciaelem.
Interferencia
Egy kvantumhullámfüggvény használható a qubit állapotának leírására.
A kvantumfizikában mindennek az alapvető matematikai leírását a hullámfüggvények adják.
Ha sok qubit összefonódik, az egyes hullámfüggvényeiket egyesítik, és egyetlen hullámfüggvényt alkotnak, amely leírja a kvantumszámítógép általános állapotát.
Az interferencia ezen hullámfüggvények összeadásának eredménye. Ha a hullámokat összeadjuk, konstruktív kölcsönhatásba léphetnek, és egyesülve nagyobb hullámot hoznak létre, akárcsak a víz hullámai.
Destruktív kölcsönhatásba is léphetnek, hogy ellensúlyozzák egymást. A különböző állapotok változó valószínűségét a kvantumszámítógép átfogó hullámfüggvénye határozza meg.
A kvantumszámítógép mérése során bizonyos állapotok kialakulásának valószínűségét különböző qubitek állapotának megváltoztatásával tudjuk megváltoztatni.
Annak ellenére, hogy a kvantumszámítógép egyszerre több állapot szuperpozíciójában is létezhet, a mérések csak az egyik állapotot tárják fel.
Ezért, miközben kvantumszámítógépet használunk egy számítási feladat elvégzéséhez, konstruktív interferencia szükséges a helyes válasz fogadásának, a destruktív interferencia pedig a helytelen válasz fogadásának valószínűségének növelése érdekében.
Kezdjük a Qiskit-tel.
Mi Qiskit?
A Qiskit egy IBM által finanszírozott szoftverkeret, amelynek célja, hogy bárki számára megkönnyítse a kvantumszámítástechnika területére való belépést.
Mivel kvantumszámítógépeket nehéz beszerezni, egy felhőszolgáltatótól, például az IBM-től szerezhet be egyet a Qiskit eszköztár segítségével.
Ingyenesen elérhető, és minden kódja az nyílt forráskódú.
Van egy online tankönyv amely megtanítja a kvantumfizika alapjait, ami nagyon hasznos azok számára, akik nem jártasak a témában. A Python a Qiskit eszközkészlet fejlesztésére szolgál.
Tehát, ha ismeri a Python programozási nyelvet, sok kódot felismer.
A szoftver keretrendszer alkalmas azok számára, akik szeretnék tanulni a kvantumszámításról miközben gyakorlati tapasztalatokat is szerez.
A Qiskit legalapvetőbb jellemzője, hogy két szakaszban működik. Az egyik lépés a konstrukciós szakasz, amelyben több kvantumáramkört hozunk létre, és ezekkel az áramkörökkel oldjuk meg a problémát.
Ezután az építési szakasz befejezése vagy a megoldás elérése után továbblépünk a következő, végrehajtási szakaszba, amelyben megpróbáljuk futtatni a buildet vagy a megoldást a különböző háttérrendszerekben (állapotvektor háttér, egységes háttérrendszer, nyitott ASM háttér), és a futás befejezése után feldolgozzuk az adatokat a buildben a kívánt kimenethez.
A Qiskit első lépései
A személyi számítógépére vagy az IBM által üzemeltetett Jupyter Notebookra helyileg telepítheti. Írja be a következő kódot a helyi telepítéshez Windows számítógépen:
Itt regisztrálnunk kell, hogy hozzáférhessünk az API tokenhez, amely lehetővé teszi az IBM kvantumeszközeinek hasznosítását, majd elkezdhetjük a munkát a cég weboldalával. Elképzelheti ezt egy Qiskit által telepített, online futó Jupyter Notebook használatával.
Úgy érheti el, hogy az oldal jobb felső sarkában található menüből válassza ki a Profilját, majd válassza a Fiókinformációk lehetőséget. Az API tokenjét az API tokenek szakaszban találja *** formában. A rendszer lemásolja, majd beírja a következő kódba:
A kód végrehajtása után az API-token elmentésre kerül a számítógépére, amely lehetővé teszi az IBM kvantumeszközeinek használatát. Írja be a következőket annak meghatározásához, hogy rendelkezik-e hozzáféréssel egy ilyen eszközhöz:
Ha a fent említett kód fut, akkor nem csak a számítógépén kell futtatnia a kódot, hanem úgy is, hogy elküldi a beépített kvantumáramköröket az IBM kvantumeszközeire, és megkapja az eredményeket.
Tehát az áramköri könyvtár segítségével elkezdhetjük az első kvantum algoritmusunk fejlesztését. Kezdjük azzal, hogy a Qiskit lényeges függőségeit importáljuk projektünkbe.
Ezután összeállítunk egy két qubites kvantumregisztert és egy kétbites hagyományos regisztert.
Tehát most már létrejött egy klasszikus és egy kvantumregiszter is. E kettő felhasználásával meg tudjuk alkotni az áramkört, és ha az áramkör módosítása során bármikor fel szeretné vázolni, hogyan néz ki a kvantumkör, írja be a következő kódot:
A képen láthatjuk, hogy az áramkör két kvantumbitből és két klasszikus bitből áll.
Ebben az áramkörben nincsenek kapuk, így érdektelen. Most építsük meg az áramkört a kvantumkapuk segítségével. Mint a klasszikus logikai kapuk (ÉS, VAGY kapuk) normál digitális áramkörökhöz valók, a kvantumkapuk pedig a kvantumáramkörök alapvető összetevői.
A Hadamard-kapu alkalmazása az első qubitre az összefonódás létrehozásának első lépése. Ezután a következő kóddal hozzáadunk egy két qubit vezérelt x műveletet:
Most, hogy ezt a két operátort felhasználtuk kvantumáramkörünk megalkotására, ideje megmérni a kvantumbiteket (qubiteket), elvégezni ezeket a méréseket, és eltárolni a klasszikus bitekben. Hozzuk létre az ehhez szükséges kódot:
Az alábbi diagram az áramkörünk elrendezését mutatja:
Az áramkört ezután hagyományos számítógépes szimulátoron kell futtatni. Az áramkör befejeződött. És vizsgálja meg ennek a végrehajtásnak az eredményeit.
Az áramkör végrehajtásából nyert információ az eredmény változóban tárolódik. Jelenítsük meg ezeket az eredményeket egy plot hisztogram segítségével.
Ez történik, amikor futtatjuk a kvantumkörünket. A 00 és 11 számokra 50% körüli valószínűséget kapunk. Megépült a kezdeti kvantumszámítógép-áramkör. Gratulálunk!
A Qiskit Quantum Computing alkalmazásai
Qiskit Finance
A Qiskit Finance demonstrációs eszközök és alkalmazások gyűjteményét kínálja. Ide tartoznak az Ising fordítók a portfólió optimalizálásához, az adatszolgáltatók a tényleges vagy véletlenszerű adatokhoz, valamint a különféle pénzügyi lehetőségek árazásához vagy hitelkockázat-értékeléshez szükséges implementációk.
Qiskit Nature
Alkalmazások, mint fehérje hajtogatás és elektronikus/vibronikus szerkezet mind a gerjesztett, mind az alapállapotokra vonatkozó számításokat a Qiskit Nature támogatja.
Minden olyan alkatrészt kínál, amely a klasszikus kódok összekapcsolásához és a kvantumszámítógépek által igényelt különböző reprezentációkká való automatikus konvertálásához szükséges.
Qiskit gépi tanulás
Kvantum gépi tanulás a Qiskit Machine Learning olyan módszereket kínál, amelyek különféle problémák megoldására használják őket, például a regressziót és az osztályozást, valamint építőelemként az alapvető kvantum kerneleket és kvantumneurális hálózatokat (QNN).
Lehetővé teszi a QNN-ek PyTorch-hoz való csatlakoztatását is a kvantumelemek klasszikus műveletekbe való beépítése céljából.
Qiskit optimalizálás
A Qiskit Optimization az optimalizálási szolgáltatások teljes spektrumát kínálja, beleértve az optimalizálási problémák magas szintű modellezését, a problémák automatikus fordítását különböző szükséges reprezentációkra, valamint egyszerű kvantumoptimalizálási módszerek gyűjteményét.
Következtetés
Összefoglalva, míg a jelenleg elérhető leggyorsabb szuperszámítógép évekig tart, a kvantumszámítógépek gyorsan áttörhetik a jelenlegi titkosítási módszereket.
Annak ellenére, hogy a kvantumszámítógépek képesek lesznek feltörni sok ma használt titkosítási technikát, várhatóan feltörésbiztos helyettesítőket fognak létrehozni.
A problémák optimalizálása a kvantumszámítógépek erőssége. További részletekért látogasson el a Qiskit oldalra GitHub.
Hagy egy Válaszol