Računala će uskoro postati čudna.
Sadržaj
- Učiniti misterij pristupačnim
- Kvantna zajednica
- Priprema za sutra
Nakon desetljeća kao teorija, prva kvantna računala sada se nalaze u nekoliko odabranih laboratorija diljem svijeta. Oni su rudimentarni i nedvojbeno manje praktični od ranih elektroničkih računala poput 50-tonskog ENIAC-a. Ipak, istraživači napreduju. IBM, Google i Intel napreduju na kvantnom hardveru, a praktično kvantno računalo konačno se čini kao stvarnost bliske budućnosti umjesto kao predmet znanstvene fantastike.
To je prilika. To je također problem. Kvantna fizika je čudno područje teleportacije i vjerojatnosti koje ne slijedi pravila koja su nam poznata. Većina ljudi ne razumije kvantnu mehaniku, a to uključuje programere, ljude koji će kvantna računala trebati staviti u praktičnu upotrebu.
Povezano
- Dijelovi za popravak površine sada su dostupni putem Microsoft Storea
- Microsoft Teams dobiva nove AI alate — i besplatni su
- Microsoft zadirkuje reviziju dizajna glavne aplikacije za Windows 11
Microsoft ima plan kako ih educirati.
Učiniti misterij pristupačnim
Svaki programer koji želi naučiti novi programski jezik, poput C# ili Javascripta, želi odmah iskoristiti njezine lekcije. Ipak, djetinjstvo kvantnog računalstva to može otežati. Stvaranje programa za mnoge kvantne uređaje slično je pokušaju pisanja u binarnom strojnom kodu – osim što je još teže, jer kvantna mehanika. Ovo nije samo područje koje se dobro razumije, ali ga je teško prevesti. To je područje proučavanja u kojem neke osnove ostaju nepoznate.
To uključuje i razlog zašto kvantna računala rade. "Ono što imamo u kvantnom računalstvu su dokazi da kvantna računala mogu nadmašiti klasična računala," rekla je Krysta Svore, glavna voditeljica istraživanja u Microsoftovoj grupi za kvantne arhitekture i računalstvo. "Sveti gral na našem području bio bi stvarni matematički dokaz za to."
Kvantno računalstvo toliko je novo i toliko različito od bilo čega prije toga da čak i vrhunski istraživači ostaju u neznanju o važnim i temeljnim elementima.
Kvantno računalstvo 101
Poučavanje programera da kodiraju za kvant na stvarnom hardveru za sada ne dolazi u obzir. Microsoftov kvantni programski jezik, Q#, zaobilazi taj problem nudeći jednostavan pristup alatima potrebnim za početak programiranja. To znači učiniti Q# što poznatijim i pristupačnijim, čak i dok znanstvenici nastavljaju s napredovanjem u osnovama rada kvantnih računala.
Q# nije skriven iza zida užasne dokumentacije i loše objašnjenih instalatera. Programeri mu mogu pristupiti putem Visual Studija, najpopularnije razvojno okruženje na svijetu. A programerima nije potreban pristup kvantnom računalu da bi ga koristili.
Umjesto toga, mogu programirati kao da bi se njihov kod pokrenuo na stvarnom kvantnom uređaju, ali ga zatim pokrenuti na virtualnoj simulaciji. To je moguće jer se kvantno računalo ne tretira kao vlastiti potpuni, neovisni sustav, nego umjesto toga kao akcelerator koji poziva klasično računalo koje pokreće klasično računalo kodirati.
“Zamišljamo da će kvantno računalo biti još jedan resurs u Azureu, uz GPU, FPGA, ASIC, za korištenje. Azure postaje cijela ova struktura koja u svoje računanje uključuje kvantno računalo,” rekao je Svore za Digital Trends.
Većina programera upoznata je s korištenjem namjenskog hardvera za određene zadatke, a većina je upoznata s pozivanjem resursa u oblaku. Pokretanje Q# ne razlikuje se od onih dobro poznatih zadataka. Quantum hardver može biti egzotičan i rijedak, ali programsko okruženje koje Microsoft nudi za Q# jest točno ono što biste vidjeli danas da ste pogledali preko ramena programera najviše Fortune 500 tvrtke. To ga čini daleko manje zastrašujućim.
"Krajnja vizija je da korisnik ne govori 'U redu, sad moram uzeti ovu aplikaciju i pokrenuti je na ovom dijelu CPU-a, ovom dijelu ovdje, ovom dijelu ondje'", rekao je Svore. “Isto je s kvantnim računalstvom. Želimo da akcelerator bude besprijekoran.”
Kvantna zajednica
Programeri se mogu upoznati s Q# kroz skup besplatnih vodiča koje Microsoft naziva Quantum Katas. Svaka lekcija uključuje "niz zadataka na određenu temu kvantnog računalstva" koje programeri moraju riješiti. Cilj je pronaći točno rješenje, ali je putovanje jednako važno. Kate nisu zamišljene da se rješavaju u jednom prolazu. Oni podučavaju metodom pokušaja i pogrešaka, usput uvodeći programere u osnove kvantnog programiranja.
Q# i Quantum Katas donose transformativnu razinu povratnih informacija kvantnom programiranju
Chris Granade, istraživački inženjer za razvoj softvera u Microsoftu, osobno ih je vidio dok je prisustvovao predavanju koje je organiziralo Sveučilište za tehnologiju u Sydneyu. “Bilo je doista nevjerojatno gledati kako ljudi mogu prijeći s nultog znanja u kvantumu na pisanje”, rekao je za Digital Trends. “Ono što je bilo transformativno je to što kada su ljudi imali nesporazum, nisu patili zbog toga. Mogli su izvoditi kate, mogli su vidjeti da su dobili krivi odgovor, a te su povratne informacije doista natjerale ljude da razumiju na praktičan način.”
To praktično iskustvo odmah pretvara kvantno računalstvo iz teorijskog koncepta u praktičnu stvarnost, što čini veliku razliku u tome kako mu ljudi pristupaju. Programeri možda ne izrađuju fizičke objekte, ali su navikli vidjeti povratne informacije kao i svaki drugi obrtnik. Oni stvore nešto i ono radi - ili ne. Q# i Quantum Katas donose tu razinu povratnih informacija kvantnom programiranju, dajući svima zainteresiranima priliku da proniknu i razumiju što kvantno računalstvo omogućuje.
Kvantno računalstvo
Promjena koju je Granade osobno vidio ne događa se samo u učionicama. Quantum Development Kit, čiji je Q# dio, može preuzeti svatko pod licencom otvorenog koda. Zainteresirani programeri ne samo da ga mogu početi koristiti, već i aktivno doprinositi zajednici. Svore je za Digital Trends rekao da QDK preuzima broj u "gornjim desecima tisuća" i sudionika već dodali "pregršt značajnih doprinosa", uključujući nove algoritme i dokumentacija.
Iako je još uvijek niša, ovaj Quantum Development Kit postavlja prag ulaska dovoljno nisko da čak i početnik programer može početi eksperimentirati s Q# i, radeći to, početi shvaćati što čini kvantno računalstvo krpelj. To nije korisno samo za programere, već i za cijelo područje kvantne fizike. Objašnjavanje kvantnih teorija velika je glavobolja ne samo zato što je kvantni svijet čudan u usporedbi s "klasičnim" fiziku koju većina programera poznaje, ali i zato što praktične implikacije kvantne fizike može biti teško demonstrirati.
“Ne morate znati fiziku. Ne morate znati kvantnu mehaniku.”
Klasična računala rade s binarnim apsolutima. 1s i 0s. Isključeno ili uključeno. Kvant se bavi vjerojatnostima, a programiranje za kvantu znači stvaranje algoritama koji manipuliraju vjerojatnostima kako bi proizveli ispravno rješenje. “Znaš da ovaj val uključuje moje rješenje. Ovi drugi valovi ne uključuju rješenje. Dakle, želim da ti valovi, kada se miješaju, nestanu”, objasnio je Svore. “I želim da val koji uključuje moje rješenje postane jako velik. Na kraju mjerimo kvantna stanja. Vjerojatnost da će se visoki val izvući veća je što je val viši. Tako dizajniramo kvantne algoritme.”
Razumijete li što Svore znači?
Ako ne, nemojte se osjećati loše. Nije to lako shvatiti, a nije ni lako pokazati. Čak i misaoni eksperimenti koji imaju za cilj pojednostaviti kvantnu mehaniku, poput Schrodingerove slavne mačke, mogu vas natjerati da se počešete po glavi.
Microsoft se nada da će Q# i Quantum Katas ponuditi praktičnu alternativu za pristup temi. “Ne morate znati fiziku. Ne morate znati kvantnu mehaniku. Zapravo, priznat ću da nisam učio kvantnu mehaniku sve do diplomskog studija,” rekao je Svore. “Ušao sam u kvantno računalstvo, a da nisam upisao fiziku na koledžu. Po obrazovanju sam informatičar.”
Kvantno programiranje moglo bi postati prozor uvida dajući programerima priliku da praktično koriste kvantne teorije bez odbacivanja alata na koje su se oslanjali. Nema potrebe trošiti godine na učenje fizike. Samo uskočite, napravite aplikaciju koja koristi Q# i vidite što će se dogoditi.
Priprema za sutra
Današnja praktična upotreba Q# je ograničena jer nema hardvera za pozivanje. Microsoft još nije napravio kvantno računalo, a čak i da jest, bilo bi previše primitivno za izvođenje korisnih izračuna. Ali programer može provjeriti svoj rad pokretanjem Q# na simuliranom kvantnom računalu. To omogućuje kodiranje programa za kvantnu s razumnim očekivanjem da će raditi, jednom kada hardver bude dostupan.
To je ključno. Kvantna računala nisu samo bolja moderna računala. Oni su fundamentalno različiti. Oni zahtijevaju drugačiji hardver, drugačije algoritme i drugačiji pristup rješavanju složenih problema. Čak i kad bi se pojavio putnik kroz vrijeme s funkcionalnim, stabilnim kvantnim računalom od milijun kubita, imali bismo problema s njegovim korištenjem, baš kao što bi rimski znanstvenici bili zbunjeni kad bi im u ruke dali prijenosno računalo. 99,9 posto modernih programera, programera i računalnih znanstvenika nema nikakvog iskustva u kodiranju za kvantu i nemaju pojma kako kvantna fizika funkcionira. Osnove se moraju uvesti prije nego što se dođe do impresivnijih otkrića.
Za podučavanje će trebati vremena - ali Microsoftov Q# važan je korak naprijed.
Preporuke urednika
- ChatGPT sada može besplatno generirati radne ključeve za Windows 11
- Microsoft je možda ignorirao upozorenja o nepostojanim odgovorima Bing Chata
- Kineski hakeri napadaju kritičnu infrastrukturu SAD-a, upozorava Microsoft
- Sada možete isprobati avatare i virtualne prostore u Microsoft timovima
- Microsoft Build 2023: najveće najave u području umjetne inteligencije, Windowsa i još mnogo toga