Kvantový programovací jazyk spoločnosti Microsoft, Q#, by vám mohol pomôcť naučiť sa kvantovú fyziku

Krysta Svore Microsoft Q# Quantum Computing Coding
Microsoft

Počítače začnú byť divné.

Obsah

  • Sprístupnenie tajomstva
  • Kvantová komunita
  • Príprava na zajtra

Po desaťročiach teórie, prvé kvantové počítače teraz sedia vo vybraných laboratóriách po celom svete. Sú základné a pravdepodobne menej praktické ako prvé elektronické počítače, ako je 50-tonový ENIAC. Výskumníci však napredujú. IBM, Google a Intel napredujú na kvantovom hardvéri a praktický kvantový počítač sa konečne namiesto námetu pre sci-fi cíti ako realita blízkej budúcnosti.

To je príležitosť. Je to tiež problém. Kvantová fyzika je zvláštna sféra teleportácie a pravdepodobnosti, ktorá sa neriadi pravidlami, ktoré poznáme. Väčšina ľudí nerozumie kvantovej mechanike, a to vrátane programátorov, ľudí, ktorí budú musieť kvantové počítače prakticky využiť.

Súvisiace

  • Diely na opravu povrchu sú teraz dostupné prostredníctvom obchodu Microsoft Store
  • Microsoft Teams získava nové nástroje AI – a sú zadarmo
  • Spoločnosť Microsoft pripravuje prepracovanie dizajnu hlavnej aplikácie pre Windows 11

Microsoft má plán, ako ich vzdelávať.

Sprístupnenie tajomstva

Každý vývojár, ktorý sa chce naučiť nový programovací jazyk, ako je C# alebo Javascript, chce okamžite využiť jej lekcie. Počiatky kvantových počítačov to však môžu sťažiť. Vytvorenie programu pre mnoho kvantových zariadení je podobné pokusu o písanie v binárnom strojovom kóde – okrem toho, že je to ešte ťažšie, pretože kvantová mechanika. Toto nie je len oblasť, ktorá je dobre pochopená, ale ťažko sa prekladá. Je to oblasť štúdia, kde niektoré základy zostávajú neznáme.

Microsoft Quantum Q#, kódovanie v počítači
Matt Smith/Digitálne trendy

To zahŕňa dôvod prečo kvantové počítače fungujú. "To, čo máme v oblasti kvantových počítačov, je dôkazom toho, že kvantové počítače dokážu prekonať klasické počítače," povedala Krysta Svore, vedúca výskumu v skupine Quantum Architectures and Computation spoločnosti Microsoft. "Svätý grál v našom poli by bol skutočným matematickým dôkazom toho."

Kvantová výpočtová technika je taká nová a taká nepodobná ničomu predtým, že ani špičkoví výskumníci nevedia o dôležitých a základných prvkoch.

Kvantová výpočtová technika 101

Naučiť programátorov kódovať kvantum na skutočnom hardvéri zatiaľ neprichádza do úvahy. Kvantový programovací jazyk spoločnosti Microsoft, Q#, tento problém odstraňuje tým, že ponúka jednoduchý prístup k nástrojom potrebným na začatie programovania. To znamená urobiť Q# tak známym a prístupným, ako je to len možné, aj keď vedci pokračujú v prelomových objavoch v základoch fungovania kvantových počítačov.

Q# nie je zastrčený za stenou hroznej dokumentácie a zle vysvetlených inštalátorov. Programátori k nemu majú prístup cez Visual Studio, najpopulárnejšie vývojové prostredie na svete. A programátori nepotrebujú prístup ku kvantovému počítaču, aby ho mohli používať.

Namiesto toho môžu programovať, ako keby ich kód bežal na skutočnom kvantovom zariadení, ale potom ho spustili na virtuálnej simulácii. Je to možné, pretože kvantový počítač sa nepovažuje za svoj vlastný úplný, nezávislý systém, ale namiesto toho ako akcelerátor, ktorý spúšťa klasický počítač s klasickým počítačom kód.

„Predstavujeme si, že kvantový počítač bude ďalším zdrojom v Azure, okrem GPU, FPGA, ASIC, ktorý sa má použiť. Azure sa stáva celou touto štruktúrou, ktorá vo svojich výpočtoch zahŕňa kvantový počítač,“ povedal Svore pre Digital Trends.

quantum microsoft q kódovanie python interop jpg 3605
quantum microsoft q ukážky kódovania github jpg 3604
kvantové kódovanie microsoft q 3603
quantum microsoft q kódovanie python simulation jpg 3602

Väčšina programátorov je oboznámená s používaním účelového hardvéru na špecifické úlohy a väčšina je oboznámená s využívaním zdrojov v cloude. Spustenie Q# sa nelíši od týchto dobre známych úloh. Kvantový hardvér môže byť exotický a vzácny, ale programovacie prostredie, ktoré Microsoft ponúka pre Q#, je presne to, čo by ste dnes videli, keby ste sa pozreli cez rameno programátora nanajvýš 500 Fortune spoločnosti. Vďaka tomu je to oveľa menej zastrašujúce.

„Najlepšou víziou je, že používateľ nepovie ‚Ok, teraz musím vziať túto aplikáciu a spustiť ju na tejto časti procesora, táto časť sem, táto časť tam‘,“ povedal Svore. „Je to rovnaké s kvantovou výpočtovou technikou. Chceme, aby bol akcelerátor bezproblémový."

Kvantová komunita

Programátori sa môžu predstaviť Q# prostredníctvom sady bezplatných tutoriálov, ktoré Microsoft nazýva Quantum Katas. Každá lekcia zahŕňa „sekvenciu úloh na určitú tému kvantových počítačov“, ktoré musia programátori vyriešiť. Cieľom je nájsť správne riešenie, no rovnako dôležitá je aj cesta. Katy nie sú určené na vyriešenie jedným prechodom. Vyučujú metódou pokus-omyl a zároveň programátorom predstavujú základy kvantového programovania.

Q# a Quantum Katas prinášajú transformačnú úroveň spätnej väzby do kvantového programovania

Chris Granade, výskumný softvérový vývojový inžinier v spoločnosti Microsoft, ich videl na vlastné oči, keď sa zúčastnil výučby, ktorú organizovala University of Technology v Sydney. „Bolo naozaj úžasné sledovať, ako ľudia dokážu prejsť od nulových kvantových znalostí až po ich napísanie,“ povedal pre Digital Trends. „Transformačné bolo to, že keď ľudia mali nedorozumenie, netrpeli tým. Mohli bežať kata, videli, že dostali nesprávnu odpoveď a táto spätná väzba skutočne pomohla ľuďom porozumieť praktickým spôsobom.

Táto praktická skúsenosť okamžite transformuje kvantové výpočty z teoretického konceptu na praktickú realitu, čo robí rozdiel v tom, ako k nemu ľudia pristupujú. Programátori možno nevyrábajú fyzické predmety, ale sú zvyknutí vidieť spätnú väzbu rovnako ako ktorýkoľvek iný remeselník. Vytvárajú vec a funguje to – alebo nie. Q# a Quantum Katas prinášajú túto úroveň spätnej väzby do kvantového programovania, čím dávajú každému, kto má záujem, možnosť ponoriť sa a pochopiť, čo kvantové výpočty umožňujú.

Kvantová výpočtová technika

Zmena, ktorú Granade videl osobne, sa nedeje len v triedach. Quantum Development Kit, ktorého súčasťou je Q#, si môže stiahnuť ktokoľvek pod open-source licenciou. Zainteresovaní vývojári ho môžu nielen začať používať, ale aktívne prispievať do komunity. Svore pre Digital Trends povedal, že počet stiahnutí QDK je v „horných desiatkach tisíc“ a účastníkov už pridali „hŕstku podstatných príspevkov“ vrátane nových algoritmov a dokumentáciu.

Aj keď je táto sada Quantum Development Kit stále len výklenkom, umiestňuje latku vstupu dostatočne nízko, že dokonca aj nováčik programátor môže začať experimentovať s Q# a pri tom začať chápať, čo robí kvantové výpočty kliešť. To je užitočné nielen pre programátorov, ale pre celú oblasť kvantovej fyziky. Vysvetľovanie kvantových teórií je veľkou bolesťou hlavy nielen preto, že kvantový svet je v porovnaní s „klasickým“ svetom zvláštny. fyziku väčšina programátorov pozná, ale aj preto, že praktické dôsledky kvantovej fyziky môžu byť ťažké demonštrovať.

„Nepotrebujete poznať fyziku. Nepotrebuješ poznať kvantovú mechaniku."

Klasické počítače pracujú s binárnymi absolútnymi veličinami. 1s a 0s. Vypnuté alebo zapnuté. Quantum sa zaoberá pravdepodobnosťami a programovanie pre kvantá znamená vytváranie algoritmov, ktoré manipulujú s pravdepodobnosťami, aby vytvorili správne riešenie. „Vieš, že táto vlna zahŕňa moje riešenie. Tieto ďalšie vlny neobsahujú riešenie. Takže chcem, aby tie vlny, keď prekážajú, zmizli,“ vysvetlil Svore. „A chcem, aby vlna, ktorá zahŕňa moje riešenie, bola skutočne veľká. Na konci zmeriame kvantové stavy. Pravdepodobnosť získania vysokej vlny je tým väčšia, čím vyššia je táto vlna. Takto navrhujeme kvantové algoritmy."

Rozumiete, čo znamená Svore?

Ak nie, necíťte sa zle. Nie je ľahké to pochopiť a nie je ľahké to demonštrovať. Dokonca aj myšlienkové experimenty, ktorých cieľom je zjednodušiť kvantovú mechaniku, ako napríklad Schrodingerova slávna mačka, vás môžu poškriabať na hlave.

Inžinieri spoločnosti Microsoft Quantum Q#
Microsoft

Microsoft dúfa, že Q# a Quantum Katas ponúknu praktickú alternatívu na priblíženie sa k tejto téme. „Nepotrebujete poznať fyziku. Nemusíte poznať kvantovú mechaniku. V skutočnosti priznávam, že som kvantovú mechaniku neabsolvoval až do vysokej školy,“ povedal Svore. „Vstúpil som do kvantovej výpočtovej techniky bez toho, aby som študoval fyziku na vysokej škole. Som vyštudovaný počítačový vedec."

Kvantové programovanie by sa mohlo stať oknom náhľadu tým, že by programátorom umožnilo praktické využitie kvantových teórií bez toho, aby sa vzdali nástrojov, na ktoré sa spoliehajú. Nie je potrebné stráviť roky učením sa fyziky. Stačí skočiť, vytvoriť aplikáciu, ktorá používa Q#, a uvidíte, čo sa stane.

Príprava na zajtra

Dnešné praktické využitie Q# je obmedzené, pretože nie je potrebný žiadny hardvér. Microsoft ešte nezostavil kvantový počítača ak by aj áno, bolo by príliš primitívne vykonávať užitočné výpočty. Ale programátor môže skontrolovať svoju prácu spustením Q# na simulovanom kvantovom počítači. To umožňuje nakódovať program pre kvantá s primeraným očakávaním, že keď bude k dispozícii hardvér, bude fungovať.

Krysta Svore, Chris Granade, Microsoft Quantum Q#
Krysta Svore, manažérka pre hlavný výskum v skupine Microsoft Quantum Architectures and Computation (vľavo) a Chris Granade, inžinier vývoja softvéru pre výskum v spoločnosti Microsoft.Matt Smith/Digitálne trendy

To je rozhodujúce. Kvantové počítače nie sú len lepším moderným počítačom. Sú zásadne odlišné. Vyžadujú iný hardvér, rôzne algoritmy a iný prístup k riešeniu zložitých problémov. Aj keby sa objavil cestovateľ v čase s funkčným, stabilným kvantovým počítačom s miliónmi qubitov, mali by sme problém ho použiť, rovnako ako rímski učenci by boli zmätení, keby sme dostali laptop. 99,9 percent moderných vývojárov, programátorov a počítačových vedcov má nulové skúsenosti s kódovaním kvanta a nemá ani poňatia, ako funguje kvantová fyzika. Základy musia byť predstavené skôr, ako sa dajú urobiť pôsobivejšie objavy.

Vyučovanie si vyžaduje čas – ale Q# spoločnosti Microsoft je dôležitým krokom vpred.

Odporúčania redaktorov

  • ChatGPT teraz dokáže bezplatne generovať funkčné kľúče Windows 11
  • Spoločnosť Microsoft možno ignorovala varovania o neopodstatnených odpovediach Bing Chat
  • Čínski hackeri sa zameriavajú na kritickú infraštruktúru v USA, varuje Microsoft
  • Teraz si môžete vyskúšať avatarov a virtuálne priestory v Microsoft Teams
  • Microsoft Build 2023: najväčšie oznámenia v oblasti AI, Windows a ďalších