Arvutid hakkavad imelikuks muutuma.
Sisu
- Müsteeriumi ligipääsetavaks muutmine
- Kvantkogukond
- Ettevalmistus homseks
Pärast aastakümnete pikkust teooriat asuvad esimesed kvantarvutid nüüd mõnes valitud laboris üle maailma. Need on algelised ja vaieldamatult vähem praktilised kui varased elektroonilised arvutid, nagu 50-tonnine ENIAC. Kuid teadlased teevad edusamme. IBM, Google ja Intel teevad edusamme kvantriistvaral ja praktiline kvantarvuti tundub lõpuks ulmekirjanduse asemel lähituleviku reaalsusena.
See on võimalus. See on ka probleem. Kvantfüüsika on kummaline teleportatsiooni ja tõenäosuse valdkond, mis ei järgi meile tuttavaid reegleid. Enamik inimesi ei mõista kvantmehaanikat ja see hõlmab programmeerijaid, inimesi, kes peavad kvantarvuteid praktilisel kasutamisel kasutama.
Seotud
- Pinnaparandusosad on nüüd saadaval Microsoft Store'i kaudu
- Microsoft Teams saab uusi tehisintellekti tööriistu – ja need on tasuta
- Microsoft kiusab suure Windows 11 rakenduse disaini ümberkorraldamist
Microsoftil on plaan neid harida.
Müsteeriumi ligipääsetavaks muutmine
Iga arendaja, kes soovib õppida uut programmeerimiskeelt, nagu C# või Javascript, soovib oma õppetunde kohe ära kasutada. Kuid kvantarvutite lapsekingades võib see muutuda keeruliseks. Paljude kvantseadmete jaoks programmi loomine sarnaneb binaarses masinkoodis kirjutamisega – välja arvatud kvantmehaanika tõttu veelgi keerulisem. See ei ole lihtsalt hästi mõistetav valdkond, mida on raske tõlkida. See on uurimisvaldkond, kus mõned põhialused jäävad teadmata.
See hõlmab ka põhjust miks kvantarvutid töötavad. "See, mis meil kvantarvutites on, on tõendid selle kohta, et kvantarvutid võivad klassikalisi arvuteid ületada," ütles põhimõtete uurimise juht Krysta Svore Microsofti Quantum Architectures and Computation rühmas. "Püha Graal meie valdkonnas oleks selle tegelik matemaatiline tõestus."
Kvantarvutus on nii uus ja nii erinev kõigest varasemast, et isegi tippteadlased jäävad oluliste ja põhiliste elementide osas teadmatusse.
Kvantarvuti 101
Programmeerijate õpetamine reaalsel riistvaral kvantkoodi kodeerima ei tule praegu kõne alla. Microsofti kvantprogrammeerimiskeel Q# lahendab selle probleemi, pakkudes lihtsat juurdepääsu programmeerimise alustamiseks vajalikele tööriistadele. See tähendab, et Q# tuleb muuta võimalikult tuttavaks ja ligipääsetavaks, isegi kui teadlased jätkavad läbimurdete tegemist kvantarvutite tööpõhimõttes.
Q# ei ole peidetud kohutava dokumentatsiooni ja halvasti selgitatud paigaldajate seina taha. Programmeerijad pääsevad sellele juurde Visual Studio kaudu, maailma populaarseim arenduskeskkond. Ja programmeerijad ei vaja selle kasutamiseks juurdepääsu kvantarvutile.
Selle asemel saavad nad programmeerida nii, nagu töötaks nende kood tegelikus kvantseadmes, kuid seejärel käivitada see virtuaalses simulatsioonis. See on võimalik, kuna kvantarvutit ei käsitleta kui tema enda terviklikku sõltumatut süsteemi, vaid hoopis kiirendina, mida kasutab klassikaline arvuti, milles töötab klassikaline arvuti kood.
"Me kujutame ette, et kvantarvuti on veel üks Azure'i ressurss, näiteks GPU, FPGA ja ASIC-i kõrval, mida kasutada. Azure'ist saab kogu see kangas, mille arvutus sisaldab kvantarvutit, ”rääkis Svore väljaandele Digital Trends.
Enamik programmeerijaid tunneb konkreetsete ülesannete jaoks spetsiaalselt loodud riistvara kasutamist ja enamikule on tuttav pilves leiduvate ressursside kasutamine. Q# käivitamine ei erine nendest tuntud ülesannetest. Kvantiriistvara võib olla eksootiline ja haruldane, kuid programmeerimiskeskkond, mida Microsoft pakub Q# jaoks, on seda täpselt seda, mida näeksite täna, kui vaataksite Fortune 500 programmeerijale üle õla ettevõtted. See muudab selle palju vähem hirmutavaks.
"Lõplik visioon on see, et kasutaja ei ütle: "Ok, nüüd pean ma võtma selle rakenduse ja käivitama selle CPU selles osas, see osa siin, see osa seal," ütles Svore. "Sama on kvantarvutusega. Tahame, et kiirendi toimiks sujuvalt.
Kvantkogukond
Programmeerijad saavad end Q#-le tutvustada tasuta õpetuste komplekti kaudu, mida Microsoft nimetab Quantum Kataks. Iga õppetund hõlmab "teatud kvantarvutusteemaga seotud ülesannete jada", mida programmeerijad peavad lahendama. Õige lahenduse leidmine on eesmärk, kuid sama oluline on teekond. Katasid ei ole mõeldud ühe käiguga lahendamiseks. Nad õpetavad katse-eksituse meetodil, tutvustades programmeerijatele kvantprogrammeerimise põhitõdesid.
Q# ja Quantum Katas toovad kvantprogrammeerimisele ümberkujundava tagasiside taseme
Microsofti tarkvaraarenduse uurimisinsener Chris Granade nägi neid oma silmaga Sydney Tehnikaülikooli korraldatud õppetunnil. "Oli tõesti hämmastav vaadata, et inimesed suutsid nullteadmiste juurest kvantiteadmistest nende kirjutamiseni minna," ütles ta Digital Trendsile. "Muunduslik oli see, et kui inimestel oli arusaamatus, siis nad ei kannatanud selle pärast. Nad suutsid katasid juhtida, nad nägid, et vastused said vale, ja see tagasiside pani inimesed tõesti aru saama.
See praktiline kogemus muudab kvantarvutuse kohe teoreetilisest kontseptsioonist praktiliseks reaalsuseks, mis muudab inimeste lähenemise väga oluliseks. Programmeerijad ei pruugi teha füüsilisi objekte, kuid nad on harjunud nägema tagasisidet nagu iga teinegi käsitööline. Nad loovad asja ja see töötab – või ei tööta. Q# ja Quantum Katas toovad sellisel tasemel tagasisidet kvantprogrammeerimisse, andes kõigile huvilistele võimaluse süveneda ja mõista, mida kvantarvutus võimaldab.
Kvantarvuti
Muutus, mida Granade isiklikult nägi, ei toimu ainult klassiruumides. Quantum Development Kit, mille osa Q# on, saab igaüks alla laadida avatud lähtekoodiga litsentsi alusel. Huvitatud arendajad ei saa seda mitte ainult kasutama hakata, vaid ka aktiivselt kogukonda panustada. Svore ütles Digital Trendsile, et QDK allalaadimiste arv on "ülemiste kümnete tuhandete" ja osalejate arv on juba lisanud "käputäie olulisi panuseid", sealhulgas uusi algoritme ja dokumentatsioon.
Kuigi see Quantum Development Kit on endiselt nišš, asetab see sisenemisriba piisavalt madalale, et isegi algaja programmeerija saab hakata katsetama Q#-ga ja seda tehes hakata mõistma, mis teeb kvantarvutusest linnuke. See on kasulik mitte ainult programmeerijatele, vaid kogu kvantfüüsika valdkonnale. Kvantteooriate selgitamine valmistab suurt peavalu mitte ainult seetõttu, et kvantmaailm on „klassikalisega” võrreldes kummaline. füüsikat teab enamik programmeerijaid, aga ka seetõttu, et kvantfüüsika praktilisi tagajärgi võib olla raske mõista demonstreerida.
"Te ei pea teadma füüsikat. Sa ei pea teadma kvantmehaanikat.
Klassikalised arvutid tegelevad binaarsete absoluutidega. 1-d ja 0-d. Väljas või sisse. Kvant tegeleb tõenäosustega ja kvantide jaoks programmeerimine tähendab algoritmide loomist, mis manipuleerivad tõenäosustega õige lahenduse saamiseks. "Teate, et see laine sisaldab minu lahendust. Need muud lained ei sisalda lahendust. Nii et ma tahan, et need lained, kui nad segavad, kaoksid,” selgitas Svore. "Ja ma tahan, et laine, mis sisaldab minu lahendust, muutuks tõeliselt suureks. Lõpuks mõõdame kvantolekuid. Kõrge laine väljasaamise tõenäosus on seda suurem, mida kõrgem see laine on. Nii kujundame kvantalgoritme.
Kas saate aru, mida Svore tähendab?
Kui ei, siis ära tunne end halvasti. Seda pole lihtne mõista ja seda pole lihtne demonstreerida. Isegi mõttekatsed, mille eesmärk on lihtsustada kvantmehaanikat, nagu Schrodingeri kuulus kass, võivad jätta teid kukalt kratsima.
Microsoft loodab, et Q# ja Quantum Katas pakuvad sellele teemale lähenemiseks praktilist alternatiivi. "Te ei pea teadma füüsikat. Sa ei pea teadma kvantmehaanikat. Tegelikult tunnistan, et ma ei võtnud kvantmehaanikat enne kooli lõpetamist, ”ütles Svore. „Astusin kvantarvutusse ilma ülikoolis füüsikat õppimata. Olen hariduselt arvutiteadlane."
Kvantprogrammeerimine võib saada ülevaateaknast, andes programmeerijatele võimaluse kvantteooriaid praktiliselt kasutada, ilma et nad loobuksid tööriistadest, millele nad on hakanud tuginema. Pole vaja kulutada aastaid füüsika õppimisele. Lihtsalt hüppa sisse, loo Q#-d kasutav rakendus ja vaata, mis juhtub.
Ettevalmistus homseks
Tänapäevane Q# praktiline kasutamine on piiratud, kuna puudub riistvara, millele helistada. Microsoft pole veel kvantarvutit loonud, ja isegi kui oleks, oleks kasulike arvutuste tegemine liiga primitiivne. Kuid programmeerija saab oma tööd kontrollida, käivitades simuleeritud kvantarvutis Q#. See võimaldab kodeerida programmi kvantide jaoks mõistliku ootusega, et kui riistvara on saadaval, hakkab see tööle.
See on ülioluline. Kvantarvutid ei ole lihtsalt parem tänapäeva arvuti. Nad on põhimõtteliselt erinevad. Need nõuavad erinevat riistvara, erinevaid algoritme ja erinevat lähenemist keerukate probleemide lahendamisele. Isegi kui ajarändur ilmuks funktsionaalse, stabiilse ja miljonikubitise kvantarvutiga, oleks meil raskusi selle kasutuselevõtuga, nii nagu Rooma teadlased oleksid hämmingus, kui neile sülearvuti kätte antaks. 99,9 protsendil kaasaegsetest arendajatest, programmeerijatest ja arvutiteadlastest pole kvantide kodeerimise kogemust ja neil pole aimugi, kuidas kvantfüüsika töötab. Enne muljetavaldavamate avastuste tegemist tuleb tutvustada põhitõdesid.
Õpetamine, mis võtab aega, kuid Microsofti Q# on oluline samm edasi.
Toimetajate soovitused
- ChatGPT saab nüüd tasuta luua toimivaid Windows 11 võtmeid
- Microsoft võis ignoreerida hoiatusi Bing Chati ebakindlate vastuste kohta
- Hiina häkkerid sihivad USA kriitilist infrastruktuuri, hoiatab Microsoft
- Nüüd saate Microsoft Teamsis avatare ja virtuaalruume proovida
- Microsoft Build 2023: suurimad teadaanded tehisintellekti, Windowsi ja muu kohta