211service.com
Kā kvantu programmēšana pārvērtās par 3D mīklu spēli
Programmatūra ir datora daļa, kas sastāv no kodētas informācijas un instrukcijām. Tas ir pilnībā nošķirts no aparatūras — fiziskajām struktūrām, kas izpilda šīs instrukcijas. Vismaz tas attiecas uz parastajiem datoriem.
Taču pēdējos gados datorzinātnieki arvien vairāk koncentrējas uz kvantu datoriem, kas informācijas apstrādei izmanto dīvainos kvantu mehānikas likumus. Tādējādi tiek iegūti daudz jaudīgāki aprēķini. Tomēr kvantu pasaulē ir daudz grūtāk nodalīt programmatūru un aparatūru.
Neskatoties uz to, sāk parādīties jauns spēcīgs domāšanas veids par kvantu programmatūru. Un ziņkārīgais šajā pieejā ir tas, ka tā pārvērš kvantu programmēšanu par sava veida 3-D mīklu. Tas noved pie interesanta jautājuma: vai ir iespējams izspēlēt kvantu programmu tādā veidā, kas rada noderīgus rezultātus?
Šodien mēs saņemam atbildi, pateicoties Simon Devitt darbam Rikenā Saitamā, Japānā, kurš ir izveidojis tiešsaistes spēli, kurai ir potenciāls būt izšķirošai lomai kvantu programmēšanas nākotnē. Spēle var ne tikai palīdzēt cilvēkiem izveidot labākas programmas, bet arī palīdzēt jaunās paaudzes mākslīgā intelekta mašīnām pašiem uzņemties šo uzdevumu.
Vispirms nedaudz fona. Viens veids, kā domāt par kvantu programmu, ir kā divdimensiju kubitu režģis, piemēram, loksne, vai trīsdimensiju režģis, piemēram, kristāls. Informācija tiek kodēta, izveidojot režģī caurumu vai defektu.
Šī ir spēcīga pieeja, jo informāciju pret kļūdām dabiski aizsargā paša režģa īpašības, kas to efektīvi nofiksē vietā.
Informāciju var apstrādāt, pārvietojot defektus caur režģi un aptinot tos vienu ap otru, piemēram, samezglotu auklas lodi. Sajaukšanas process var iedarbināt loģiskos vārtus, kas kopā veic aprēķinus.
Tas būtībā ir topoloģisks process. Tātad topoloģijas matemātika apraksta visu procesu neatkarīgi no tā, cik netīrs kļūst juceklis. Kamēr režģi ir topoloģiski identiski, pārējām sajaukšanas detaļām nav nozīmes.
Tas ir līdzīgs slavenajai saitei starp virtuli un kafijas tasi. Šīs formas ir pilnīgi atšķirīgas, taču tās ir topoloģiski identiskas, jo abās ir viens caurums. Katru no tiem var pārvērst par otru, saspiežot un izstiepjot, bet ne saplēšot.
Tieši tas pats attiecas uz kvantu programmām. Divas programmas veic vienu un to pašu darbu, ja tās ir topoloģiski identiskas, taču neatkarīgi no tā, cik samezglojušās režģi.
Tas rada interesantu problēmu. Cik vienkāršu to var izveidot, saglabājot topoloģiju, ņemot vērā sajaukto režģi, kas attēlo kvantu datorprogrammu? Citiem vārdiem sakot, kā var optimizēt kvantu programmu?
Tas ir svarīgi, jo mūsdienu kvantu datori spēj apstrādāt tikai dažus kubitus. Tā kā kvantu resursi ir tik ierobežoti, jo vienkāršāku programmu var izveidot, jo vieglāk to var īstenot.
Šeit iesaistās Devits. Viņš ir izstrādājis jaudīgu veidu, kā vizualizēt kvantu programmas kā 3-D režģus ar bloķētām sekcijām, kas attēlo informācijas glabāšanas un apstrādes veidu. Optimizācijas uzdevums ir vienkāršot režģi, pārvietojot, saraujot, izstiepjot un pārstrādājot bloķēšanas sekcijas, vienlaikus saglabājot to pašu topoloģiju.
Devits ir gājis tālāk, izspēlējot uzdevumu — viņš to ir pārvērtis tīmeklī balstītā mīklā ar nosaukumu MeQuanics, ko varat izmēģināt šeit . Spēles ideja ir tāda, ka kvantu programma var darbināt jūsu kosmosa kuģi. Taču jūsu programma ir pārāk liela, un tāpēc tā ir jāsamazina, izmantojot dažādus rīkus, kas to var pārveidot.
Spēle ir aizraujoša un nav tik atšķirīga no dažādiem citiem atjautības jautājumiem. Tas ir nedaudz buggy, bet tas izskatās labi un ir vērts izmēģināt, ja jums ir dažas minūtes.
Spēlei ir vēl viens slēpts aspekts. Viens no veidiem, kā paātrināt kvantu programmu optimizācijas procesu, būtu apmācīt mašīnmācības algoritmu, lai veiktu šo darbu. Šie algoritmi ir bijuši ļoti veiksmīgi citos uzdevumos, un šāda veida optimizācija šķiet ideāli piemērota.
Bet ir problēma. Šie algoritmi ir jāapmāca, un tas prasa lielu datu kopu ar piemēriem, no kuriem viņi var mācīties. Tomēr kvantu programmu optimizācija ir tik jauna, ka šim uzdevumam nav piemērotu datu kopu.
Tāpēc MeQuanics ir svarīgs — spēles spēlēšanas process rada piemēru datubāzi, ko var izmantot, lai apmācītu mašīnu. Un, ņemot vērā pietiekami daudz datu, mašīnām galu galā vajadzētu pārspēt cilvēkus. Google programma AlphaGo parādīja, cik spēcīgas tās var būt, kad tā nesen sagrāva vienu no labākajiem Go spēlētājiem pēc tam, kad bija aprijusi milzīgu tiešsaistē spēlēto Go spēļu datu kopu.
Devita ir interesants darbs, kas var iepazīstināt jaunu cilvēku paaudzi ar kvantu programmēšanu. Un pats labākais, tas ļaus viņiem izklaidēties, kamēr viņi mācās.
Atsauce: arxiv.org/abs/1609.06628 : Kvantu datoru programmēšana, izmantojot 3-D mīklas, kafijas tases un virtuļus