Pag-simulate ng kalikasan
Panoorin ang video na ito mula kay Olivia Lanes tungkol sa pag-simulate ng kalikasan gamit ang mga quantum computer, o buksan ang video sa hiwalay na window sa YouTube.
Gumagamit ang leksyon na ito ng nilalaman mula sa tutorial na ito:
Utility-scale error mitigation with probabilistic error amplification tutorial
Panimula
Isa sa pinaka-kapansin-pansing aplikasyon ng mga quantum computer ay ang kakayahan nilang mag-simulate ng mga natural na phenomena. Sa leksyon na ito, tutuklasin natin kung paano ginagamit ang mga quantum computer para malutas ng mga problema sa quantum dynamics — partikular na, kung paano nila tinutulungan tayong maunawaan ang time-evolution ng isang quantum system.
Una, magbibigay tayo ng malawak na pangkalahatang-ideya ng mga hakbang na karaniwang kasangkot sa pagsasagawa ng mga simulation na ito. Pagkatapos, susuriin natin ang isang kongkretong halimbawa: ang eksperimento na ipinakita ng IBM noong 2023, na nagpakita ng konsepto ng quantum utility. Ang eksperimentong ito ay nagsisilbing mahusay na case study para maunawaan ang mga praktikal na hakbang at implikasyon ng pag-simulate ng quantum dynamics gamit ang tunay na quantum hardware. Sa katapusan, magkakaroon ka ng mas malinaw na larawan kung paano nilalapitan ng mga mananaliksik ang mga hamong ito at kung bakit napakapangako ng quantum simulation para mapabuti ang ating pag-unawa sa natural na mundo.
Nagbigay si Richard Feynman ng isang napaka-impluwensyal na lektura sa Caltech noong 1959. Pinamagatang "There's Plenty of Room at the Bottom," ito ay may makulay na alusyon sa malawak, hindi pa natutuklas na mga posibilidad sa antas ng mikroskopiko. Pinagtatauhan ni Feynman na marami pa sa pisika sa antas ng atomiko at subatomiko ang hindi pa natutuklasan.
Lumakas ang kahalagahan ng talumpati noong 1980s habang umuusad ang teknolohiya. Sa panahong iyon, muling binisita ni Feynman ang mga ideyang ito sa isa pang mahalagang lektura sa Caltech, na nagpresenta ng papel na pinamagatang "Simulating Nature with Computers." Doon, naglagay siya ng matapang na tanong: maaari bang gamitin ang mga computer para magsagawa ng eksaktong mga simulation na ginagaya ang gawi ng kalikasan sa antas ng quantum? Iminungkahi ni Feynman na, sa halip na umasa sa magaspang na mga pagtatantya para sa pagmomodelo ng mga prosesong atomiko, maaari tayong gumamit ng mga computer na gumagamit ng mga batas ng quantum mechanics mismo — hindi lamang para i-model ang kalikasan, kundi para tularan ito.
Ito ang uri ng pisikal na simulation na susuriin natin sa leksyon na ito.
Alalahanin ang timeline graphic na ito na ipinakita sa nakaraang episode. Sa isang dulo ng spectrum, makikita natin ang mga problemang madaling solusyunan at hindi nangangailangan ng pinahusay na bilis na maaaring dalhin ng quantum computing.
Sa kabilang dulo ay ang napaka-mahirap na mga problema na nangangailangan ng ganap na fault-tolerant na mga quantum machine — teknolohiyang hindi pa available. Sa kabutihang palad, maraming simulation na problema ang pinaniniwalaan na nahuhulog sa pagitan ng timeline na ito, sa saklaw kung saan mabisang magagamit na ang mga quantum computer ngayon. Maraming dahilan para maging sabik at curious sa prospect na ito, dahil ang pag-simulate ng kalikasan ang nagsisilbing pundasyon para sa malawak na hanay ng mga promising na aplikasyon.
Sinasaklaw ng sumusunod na impormasyon ang pangkalahatang workflow sa mga nature simulation at pagkatapos ay isang tiyak na pagkakataon ng workflow para kopyahin ang mga resulta mula sa isang kilalang pag-aaral.
Pangkalahatang workflow
Bago makagamit ng quantum computing sa mga kapana-panabik na larangang ito, mahalagang maunawa muna ang mga pangunahing hakbang sa isang tipikal na simulation workflow:
- Tukuyin ang system Hamiltonian
- Hamiltonian encoding
- Paghahanda ng estado
- Time-evolution ng estado
- Circuit optimization
- Pagpapatakbo ng circuit
- Post-processing
Nagsisimula ang proseso sa pagtukoy ng isang quantum system na interesado tayo. Nakakatulong ito sa pagtukoy ng Hamiltonian na namamahala ng time evolution nito, pati na rin ang makabuluhang paglalarawan ng mga paunang katangian nito, o ang estado nito. Susunod, kailangan mong pumili ng angkop na paraan para ipatupad ang time evolution ng estadong ito. Tandaan na ang unang apat na hakbang sa workflow na ito ay bahagi ng hakbang na Mapping sa Qiskit patterns framework.
Pagkatapos i-set up ang time-evolution circuit, ang mga kasunod na yugto ay kinabibilangan ng pagsasagawa ng aktwal na eksperimento. Karaniwang kasama rito ang pag-optimize ng quantum circuit na nagpapatupad ng time-evolution algorithm, pagpapatakbo ng circuit sa quantum hardware, at post-processing ng mga resulta. Ito ay kapareho ng huling tatlong hakbang sa Qiskit patterns framework.
Susunod, tatalakayin natin ang kahulugan ng mga hakbang na ito bago tayo lumipat sa coding.
1. Tukuyin ang system Hamiltonian
Ang unang mahalagang hakbang sa pagsasagawa ng isang simulation experiment ay ang pagtukoy ng Hamiltonian na naglalarawan ng sistema. Sa maraming kaso, ang Hamiltonian ay maayos nang naitatag. Gayunpaman, madalas itong binubuo natin sa pamamagitan ng pagdaragdag ng mga kontribusyon ng enerhiya mula sa mas maliliit na bahagi ng sistema. Karaniwan itong isinasaad bilang isang kabuuan ng mga termino:
kung saan ang bawat termino ay kumikilos sa isa sa na lokal na subsystem (tulad ng isang solong particle o isang maliit na grupo ng mga particle) ng kabuuang Hamiltonian . Sa kaso ng mga hindi makilalang elementaryong particle, mahalagang matukoy kung ang sistema ay kinabibilangan ng mga fermion o boson, kung saan ang mga fermion ay sumusunod sa Pauli Exclusion Principle, ibig sabihin walang dalawang magkaparehong fermion ang maaaring sumakop sa parehong quantum state tulad ng mga elektron. Hindi tulad ng mga fermion, maraming boson ang maaaring umiral sa parehong quantum state, at ang pagkakaibang ito ay nakakaapekto sa estadistika ng sistema at kung paano ito dapat i-model.
Sa praktis, ang mga tao ay kadalasang interesado sa mga pisikal na sistema kung saan ang mga elemento ay inaakala na maayos na nahihiwalay o may label, at samakatuwid ay makilala, tulad ng mga spin sa isang lattice.
Ang sistemang ito ay binubuo ng mga magnetic dipole spin na nakaayos sa isang lattice, na tinatrato bilang mga makilalang particle sa pamamagitan ng pagbibilang ng kanilang address. Ang sistemang ito ay inilarawan ng Transverse-Field Ising Model, at ang Hamiltonian nito ay binubuo mula sa kabuuan ng dalawang bahagi:
Kung saan ang unang termino ay kumakatawan sa interaction energy sa pagitan ng mga kalapit na spin. Dito ang ay nagpapahiwatig na nagbubuod tayo sa lahat ng pares ng mga spin na direktang konektado sa lattice, ang at ay ang mga Pauli-Z matrix, na kumakatawan sa estado ng mga spin sa site at , at ang ay ang coupling constant, na nagtatakda ng lakas ng interaction na ito. Ang ikalawang termino ay kumakatawan sa impluwensya ng isang panlabas na magnetic field na inilapat sa buong sistema. Dito ang ay ang Pauli-X matrix na kumikilos sa indibidwal na spin sa site , at ang ay nagpapahiwatig ng lakas ng panlabas na field na ito.
2. Hamiltonian encoding
Ang susunod na hakbang ay ang pagsasalin ng Hamiltonian sa isang form na maaaring iproseso ng isang quantum computer, na tinatawag nating encoding. Ang proseso ng encoding na ito ay kritikal na nakasalalay sa uri ng mga particle sa sistema: makilala o hindi makilala, at fermion o boson, kung ang mga particle ay hindi makilala.
Kung mayroon kang sistema na may mga makilalang particle, tulad ng spin na nakapirme sa isang lattice, na tiningnan natin nang bahagya sa itaas, ang Hamiltonian ay kadalasang nakasulat na sa isang wika na compatible sa mga qubit. Ang Pauli-Z operator, halimbawa, ay natural na naglalarawan ng spin na pataas o pababa, at walang espesyal na encoding ang kailangan.
Kapag nag-si-simulate ng mga hindi makilalang particle ng mga fermion o boson, kinakailangan na mag-apply ng encoding transformation. Ang mga particle na ito ay ginagamit para ilarawan sa loob ng isang espesyal na mathematical framework na tinatawag na second quantization, na sinusubaybayan ang occupation number ng bawat quantum state sa pamamagitan ng pagpapakilala ng mga creation at annihilation operator, kung saan ang creation operator ay nagdaragdag ng isang particle sa state habang ang annihilation operator ay nag-aalis ng isang particle mula sa state . Batay sa second quantization framework na ito, ang fermion ay maaaring i-transform ng Bravyi-Kitaev at Jordan-Wigner. Tinutukoy ng Jordan-Wigner transformation ang fermionic creation operator
na nagpupuno ng -th quantum state ng isang fermion at fermionic annihilation operator na nag-aalis ng isang fermion mula sa =th na mga estado. Mahahanap mo ang karagdagang detalye ng Jordan-Wigner transformation na ito sa aming Quantum Computing in Practice, episode 5 - Mapping. Katulad nito, ang mga boson ay nangangailangan din ng kanilang sariling mga paraan ng encoding, tulad ng Holstein-Primakoff transformation, para marepresenta ng mga qubit.
Sa huli, kahit direkta ang landas o nangangailangan ng pagsasalin, pareho ang layunin: ang ipahayag ang Hamiltonian ng sistema sa anyo ng mga Pauli spin operator na mauunawaan at maisasagawa ng isang quantum computer.
3. Paghahanda ng estado
Pagkatapos i-encode ang nais na Hamiltonian sa gate set ng quantum computer, ang susunod na mahalagang hakbang ay ang pumili ng angkop na paunang quantum state para simulan ang simulation. Ang pagpili ng paunang estado ay nakakaimpluwensya hindi lamang sa convergence ng mga variational algorithm tulad ng Variational Quantum Eigensolver (VQE) kundi nakakaapekto rin sa katumpakan at kahusayan ng time evolution at sampling. Sa esensya, ang paunang estado ay nagsisilbing panimulang punto para sa komputa, nagtatayo ng pundasyon para sa pagkuha ng mga kapaki-pakinabang na observable mula sa quantum system na ginagamitan ng modelo. Sa isip, ang estadong ito ay dapat kumakatawan sa isang pisikal na makabuluhang configuration ng sistema na pinag-aaralan.
Para sa maraming quantum chemistry simulation, ang Hartree-Fock state ay maaaring maging magandang panimulang punto. Sa wika ng second quantization, ang Hartree-Fock state () ay nalilikha sa pamamagitan ng pag-apply ng mga creation operator () para sa bawat isa sa mga orbital na may pinakamababang enerhiya sa vacuum state (), isang estado na walang mga elektron.
Bukod dito, isang madaling ihanda na ansatz na may malaking overlap sa tunay na ground state ay maaaring magsilbing magandang paunang estado para sa mga problema sa chemistry, tulad ng paghanap ng ground state energy.
Sa mas pangkalahatang paraan, maaari tayong sumulat ng isang arbitrary na -qubit state bilang superposition ng mga computational basis state na may mga coefficient na , na nakakatugon sa mga kondisyon ng normalization. Ang paghahanda ng ganitong estado ay maaaring karaniwang lapitan sa pamamagitan ng pag-apply ng isang tiyak na operator sa paunang estado, na karaniwang ang all-zero standard basis state sa kaugalian.
Gayunpaman, ang prosesong ito ay madalas na nangangailangan ng exponential na bilang ng mga CNOT gate, na ginagawa itong karaniwang resource-intensive. Kadalasan ay nakatuon tayo sa paghahanda ng mga paunang estado na mas kaunti ang resource demand. Para sa dahilang ito, madalas tayong nakatuon sa paghahanda ng mga paunang estado na hindi kumplikado. Isang karaniwang at praktikal na pagpipilian ay ang isang product state, kung saan ang mga qubit ay hindi entangled, na maaaring ihanda gamit lamang ang mga single-qubit operation, na lubos na nagpapababa ng resource demand ng paghahanda ng estado at ng kumplikasyon. 4. Time-evolution ng estado
Ngayon na naitakda ang paunang estado, maaari na nating simulan ang simulation mismo — suriin kung paano nagbago ang estado ng sistema sa pagkatapos ng ilang oras, . Sa quantum mechanics, ang evolution na ito ay inilarawan ng isang solong mathematical na operasyon na tinatawag na time-evolution operator:
kung saan itinakda natin ang sa kaugalian. Ang pag-apply ng operator na ito sa ating paunang estado ay nagbibigay sa atin ng panghuling estado:
Gayunpaman, ang pagtatayo ng isang quantum circuit na direktang nagpapatupad ng buong operator na ay karaniwang imposible kapag ang ating Hamiltonian ay kabuuan ng iba't ibang bahagi. Samakatuwid, kailangan natin ng Trotterization.
Sa simpleng salita, ang Trotterization ay isang teknik para sa pagtatantya ng exponentiation ng isang matrix (dito ang Hamiltonian, ), lalo na kapag ang exponent ay naglalaman ng mga non-commuting operator (). Kadalasan ang Hamiltonian ay binubuo ng maraming operator na hindi nagko-commute. Sa kasong ito, hindi mo maaaring paghiwalayin ang kanilang mga exponential:
Isang kapaki-pakinabang na diskarte ay ang pag-apply nang palipat-lipat ng kanilang mga time-evolution exponential sa maikling panahon, , nang kabuuang beses. Sa kaso ng dalawang non-commuting na kontribusyon na ito, isusulat natin
Ang error na ipinakilala ng pagtatantyang ito ay tinatawag na Trotter error. Maaari nating bawasan ang error na ito sa pamamagitan ng pagpapalaki ng , ngunit may kapalit ito. Mayroon ding mas advanced, higher-order na mga formula (ang second-order at iba pang variant). Halimbawa, ang second-order na formula ay nag-aalok ng mas mahusay na katumpakan sa pamamagitan ng pag-apply ng mga hakbang sa isang simetriko na pattern.
Dito, ang ay ang bilang ng mga non-commuting na termino, , sa Hamiltonian na hatiin sa ganitong paraan, at ang ay ang bilang ng maliliit na time step na hinati ang evolution na ito. Tandaan ang reverse na pagkakasunud-sunod ng mga operator sa ikalawang product sa second-order na treatment.
Tingnan ang seksyon ng Trotterization sa kursong Quantum Diagonalization Algorithms para sa karagdagang detalye. 5. Circuit optimization
Pagkatapos mabuo ang Trotterized circuit, kumpleto na ang hakbang ng mapping, at maaari na tayong magpatuloy sa circuit optimization. Ang prosesong ito ay kinabibilangan ng ilang pangunahing gawain:
- Magtatag ng qubit layout na nag-ma-map ng mga abstract na qubit ng circuit sa mga pisikal na qubit sa hardware. Ang hakbang na ito ay kinakailangan dahil ang arkitektura ng hardware ay kadalasang may tiyak na mga hadlang sa connectivity, habang ang mga disenyo ng quantum circuit ay karaniwang inaakala na ang anumang qubit ay maaaring makipag-interact sa iba pang qubit.
- Mag-insert ng mga swap gate kung kinakailangan para mapagana ang mga interaksyon sa pagitan ng mga qubit na hindi direktang konektado sa device.
- I-translate ang mga gate ng circuit sa Instruction Set Architecture (ISA) na mga instruksyon na maaaring direktang isagawa ng hardware.
- Magsagawa ng mga circuit optimization para mabawasan ang circuit depth at bilang ng gate. Ang optimization na ito ay maaari ring ilapat nang mas maaga, sa virtual circuit bago italaga ang mga qubit sa mga tiyak na koneksyon sa hardware.
Mahalagang tandaan na malaking bahagi ng proseso ng optimization na ito ay awtomatikong hinahawakan ng mga tool sa Qiskit. Tutuklasin natin nang eksakto kung paano ito gumagana sa paglaon sa leksyon na ito.
6. Pagpapatakbo ng circuit
Pagkatapos makumpleto ang hakbang ng optimization, handa na tayong isagawa ang circuit gamit ang isang primitive. Isinasaalang-alang natin ang isang simulation experiment kung saan ang layunin ay maunawaan kung paano nagbabago ang ilang katangian ng sistema sa paglipas ng panahon. Para sa layuning ito, ang Estimator primitive ang pinaka-angkop na pagpipilian, dahil pinahihintulutan nito na masukat ang mga expectation value ng mga observable na naaayon sa mga katangiang ito.
Susunod, gumagamit tayo ng mga opsyon kabilang ang mga teknik ng error suppression at mitigation, para mapabuti ang katumpakan ng Estimator. Sa wakas, pinapatakbo natin ang eksperimento para makolekta ang mga resulta.
7. Post-process
Ang huling hakbang ay ang post-process ng mga nakolektang data. Kasama rito ang pagkuha ng mga nasukat na expectation value, o, kung ginamit ang Sampler primitive, ang sampled na probability distribution sa computational basis. Kapag ang mga expectation value lamang ng mga kaugnay na observable ang kailangan, ang mga ito ay maaaring direktang makuha mula sa Estimator primitive, available pareho bilang mga raw na resulta at na-apply ang error mitigation. Kadalasan, ang mga nasukat na expectation value na ito ay nagsisilbing panimulang punto para sa mga karagdagang kalkulasyon na kinabibilangan ng iba pang mga dami ng interes. Ang ganitong mga karagdagang kalkulasyon ay karaniwang hindi nangangailangan ng quantum computation at maaaring mahusay na isagawa sa isang klasikal na computer.
Pag-replicate ng "Utility" paper
Ang bahaging ito ay isang mataas na antas na walkthrough ng tutorial na Utility-scale error mitigation with probabilistic error amplification, na nagre-replicate ng resulta ng papel na Evidence for the Utility of Quantum Computing Before Fault Tolerance. Lubos naming iminumungkahi na buksan mo ang referenced na tutorial kasabay ng session na ito.
Susuriin natin ngayon ang isang kongkretong halimbawa mula sa isang napaka-impluwensyal na papel na inilathala ng IBM noong 2023, na pinamagatang Evidence for the Utility of Quantum Computing Before Fault Tolerance, na madalas na tinutukoy bilang "Utility paper."
Sa paglabas nito, ang gawaing ito ay mabilis na naging isang landmark na pag-aaral sa loob ng komunidad ng quantum computing. Ang sentral na thesis nito ay ang isang maingay na quantum computer, gamit ang 127 qubit at 2,880 gate, ay makakalikha ng tumpak na mga expectation value para sa mga quantum circuit na nasa labas ng abot ng brute-force na klasikal na mga paraan ng simulation, na sumusubok sa eksaktong simulation ng parehong mga circuit.
Ang pag-aaral na ito ay partikular na mahalaga dahil pinapakita nito na ang mga quantum computer ay maaaring gamitin para i-verify o ikumpara ang mga resulta sa mga approximate na klasikal na paraan ng simulation, tulad ng mga tensor network algorithm — lalo na sa mga sitwasyon kung saan ang eksaktong solusyon ay hindi pa alam nang maaga.
Isa pang kapansin-pansing aspeto ng gawaing ito ay na ito ay malawakang na-reproduce: ang mga mananaliksik at gumagamit ay ngayon ay may kakayahang kopyahin at i-verify ang eksperimento gamit ang mga cloud-accessible na quantum system ng IBM at ang Qiskit software framework. Sa sumusunod, gagabayan ka namin sa mga hakbang para isagawa ang replication na ito mismo sa pamamagitan ng pagrerepaso ng tutorial ng IBM nang hakbang-hakbang.
Sa leksyon na ito, tatalakayin natin ang mga tiyak na hakbang na kinakailangan para isalin ang problema sa mga input na maaaring iproseso ng isang quantum device. Nakatuon tayo sa pag-simulate ng dynamics ng kabuuang magnetization sa isang sistema ng mga magnetic dipole spin na nakaayos sa isang lattice, na napapailalim sa isang panlabas na magnetic field. Ang sistemang ito ay maaaring ilarawan ng isang Ising model na may transverse magnetic field. Kinakatawan natin ito gamit ang isang parametrized na quantum circuit, kung saan ang mga parameter ay naaayon sa mga nababagong halaga ng spin-spin () na mga interaksyon at ang lakas ng panlabas, transverse na magnetic field (, parametrized gamit ang ).
Dahil ang series na ito ay pinamagatang Quantum Computing in Practice, sasaklawin natin ang karagdagang detalye ng mga eksperimental na teknik na ginagamit para mapabuti ang kalidad ng mga resulta. Isang mahalagang pamamaraan ay kinabibilangan ng pagtukoy at pag-alis ng mga "masamang" qubit — ang mga may mababang gate fidelity o maikling decoherence time — na maaaring makabuluhang makaapekto sa kinalabasan ng eksperimento. Ang ganitong mga problemadong qubit ay maaaring magmula sa mahinang calibration o mga interaksyon sa mga two-level system (TLS). Ang pag-alis ng mga qubit na ito ay nagbabago ng native topology ng hardware, na epektibong nagbabago ng lattice kung saan sino-simulate ang sistema.
Bukod dito, tatalakayin natin kung paano itatayo ang parametrized na quantum circuit na nagpapatupad ng time-evolution ng sistema gamit ang Trotterization. Isang pangunahing bahagi ng prosesong ito ay ang pagtukoy ng mga entangling layer sa loob ng circuit, na gumaganap ng mahalagang papel sa pangunahing teknik ng error mitigation.
Qiskit patterns hakbang 1: Map
Ang tutorial ay nagtatamo ng hakbang ng mapping nang katulad ng pangkalahatang diskarte na inilarawan sa itaas. Partikular sa problemang ito, ginagawa ng tutorial ang mga sumusunod:
- Lumilikha ng parametrized na Ising model circuit
- Lumilikha ng mga entangling layer at nag-aalis ng mga masamang qubit
- Nagbubuo ng Trotterized na bersyon ng circuit
Sa tutorial, nagsisimula tayo sa pamamagitan ng paglikha ng isang serye ng mga helper function nang maaga sa notebook. Ang mga function na ito ay dinisenyo para gawing mas simple ang proseso habang nagpapatuloy tayo. Hindi ito kinakailangang bahagi ng pamamaraan, ngunit ito ay magandang karaniwang gawi kapag nagtatrabaho sa mga katulad na eksperimento: hatiin ang problema sa mga mapamahalaan na bahagi. Ang mga function ay kinabibilangan ng:
- Pag-alis ng mga qubit coupling
- Pagtukoy ng mga qubit coupling
- Pagtatayo ng mga layer coupling
- Pagtatayo ng entangling layer
- Pagtukoy ng Trotterized circuit
Dito, pag-usapan natin nang kaunti pa ang mga paksa na nauugnay sa mga function na ito. Mga layer coupling
Tinutukoy ng mga layer coupling kung paano nakikipag-interact ang mga qubit sa kanilang mga kapitbahay sa panahon ng simulation. Ang aming mga quantum device ay gumagamit ng heavy-hexagonal layout, isang natatanging pattern para sa pagkonekta ng mga qubit. Sa loob ng layout na ito, ang mga koneksyon sa pagitan ng mga qubit — na kilala bilang "edges" — ay maaaring nahahati sa tatlong natatanging set. Mahalaga, walang dalawang koneksyon sa parehong set ang nagbabahagi ng isang qubit. Ang organisasyon na ito ay tumutugon sa isang pangunahing hadlang sa hardware: sa isang tunay na quantum computer, ang isang qubit ay maaaring lumahok sa isang two-qubit gate lamang sa anumang ibinigay na oras.
Sa pamamagitan ng pag-istruktura ng lahat ng koneksyon sa tatlong hiwalay na layer, ang mga two-qubit gate ay maaaring ilapat sa buong device sa tatlong magkakasunod na round. Tinitiyak nito na walang qubit ang kasangkot sa higit sa isang gate bawat layer. Ang mga gate na ito ay nagpapatupad ng ZZ interaction sa Ising model, at paulit-ulit ang mga ito sa bawat time step ng simulation (bawat Trotter step).
Bukod dito, isang teknik na tinatawag na twirling ay ginagamit para baguhin ang mga katangian ng ingay sa device. Binabago ng twirling ang ingay upang kahit mga simpleng modelo ng ingay ay nagiging mas tumpak na representasyon ng mga pisikal na error. Ang pagpipino na ito ay nagbibigay-daan sa mas tumpak na characterization ng ingay, na maaaring pagkatapos ay gamitin para mapabuti ang mga estratehiya ng error mitigation. Pag-alis ng mga "masamang" qubit
Ang susunod na hakbang ay kinabibilangan ng pag-alis ng mga "masamang" qubit mula sa listahan ng mga pisikal na qubit na available para sa eksperimento. Ang isang qubit ay maaaring maging "masama" para sa iba't ibang dahilan. Minsan ay simpleng bagay ng mahinang calibration, na maaaring ayusin sa pamamagitan ng muling pag-calibrate. Sa ibang mga kaso, ang isyu ay mas kumplikado at may kaugnayan sa tinatawag na two-level system (TLS) defect. Ang mga TLS defect na ito ay nagdudulot ng mga pagbabago sa mga parameter ng qubit at relaxation. Ang paglutas nito ay kadalasang nangangailangan ng pag-init ng buong sistema at pagkatapos ay pagpapalamig muli — isang proseso na maaaring tumagal ng ilang oras at hindi feasible kapag nag-a-access ng quantum hardware nang malayo sa pamamagitan ng cloud.
Sa ngayon, ang pinakasimpleng diskarte ay ang ibukod ang mga problemadong qubit na ito mula sa pool ng mga pisikal na qubit na gagamitin sa eksperimento. Ang IBM Quantum Platform® ay nagpapadali sa pagtukoy kung aling mga qubit ang underperforming sa isang QPU. Maaari kang magbukas ng QPU at i-visualize ang kanilang mga katangian nang direkta sa platform o i-download ang data mula sa platform bilang isang CSV file. Susunod, lumikha ng listahan ng mga qubit na ibubukod at alisin ang mga ito mula sa kabuuang set ng mga pisikal na qubit sa device.
Ang pag-alis ng mga hindi mapagkakatiwalaang qubit ay tinitiyak na ang gawi ng sistema ay mas predictable, na nagpapabuti ng katumpakan ng eksperimento. Nagbibigay-daan din ito para sa mas mahusay na noise modeling, na mahalaga para sa pagpapatupad ng mga epektibong estratehiya ng error mitigation. Trotterized circuit
Ngayon ay oras na para itayo ang ating Trotterized circuit. Tulad ng tinalakay kanina, ang Trotterization ay naghahatid ng time evolution sa mga discrete na hakbang, kaya kailangan nating pumili kung gaano karaming hakbang ang gagamitin. Para sa halimbawang ito, pipiliin natin ang anim na hakbang. Sa pangkalahatan, ang diskarte ay kinabibilangan ng pagbabalanse ng Trotter error — isang approximation error na ipinakilala ng algorithm — sa mga error na dulot ng decoherence. Ang pagtaas ng bilang ng mga Trotter step ay nagpapababa ng approximation error ngunit nangangailangan ng mas malalim na mga quantum circuit, na mas madaling kapitan ng decoherence noise.
Ang circuit ay tutukuyin gamit ang ilang parameter: ang theta parameter na kumakatawan sa lakas ng panlabas na magnetic field, ang mga coupling sa pagitan ng mga layer, ang bilang ng mga hakbang, ang bilang ng mga qubit, at, siyempre, ang pagpili ng device backend. Dahil ang magnetization ng sistema ay nakasalalay sa lakas ng panlabas na magnetic field, ito ay mahalaga para patakbuhin ang simulation sa iba't ibang halaga ng magnetic field. Ang variation na ito ay naaayon sa iba't ibang rotation angle para sa RX gate sa circuit.
from qiskit.circuit import Parameter
num_steps = 6 #Trotter steps
theta = Parameter("theta")
circuit = trotter_circuit(
theta, layer_couplings, num_steps, qubits = good_qubits, backend = backend
)
num_params = 12
# 12 parameter values for Rx between [0,p/2].
#Reshape to outer product broadcast with observables
parameter_values = np.linespace(0,np.pi/2,num_params).reshape((num_params,1))
num_params = parameter_values.size
Qiskit patterns hakbang 2: Optimize
Ngayon na nabuo na natin ang ating circuit, ang susunod na hakbang ay ang i-optimize ito. Ang unang bahagi ng prosesong ito ay kinabibilangan ng pagtukoy ng isang pass manager. Sa konteksto ng Qiskit SDK, ang transpilation ay ang proseso ng pag-transform ng isang input circuit sa isang form na angkop para sa pagpapatakbo sa isang quantum device. Ang transformation na ito ay nangyayari sa pamamagitan ng isang pagkakasunud-sunod ng mga hakbang na kilala bilang mga transpiler pass.
Ang isang pass manager ay isang object na nagtataglay ng listahan ng mga transpiler pass na ito at maaaring ilapat ang mga ito sa isang circuit. Para lumikha ng isa, mag-initialize ka ng PassManager na may nais na listahan ng mga transpiler pass. Sa huli, ang pass manager ay nagpo-produce ng isang ISA circuit — isang circuit na ipinahayag sa mga termino ng Instruction Set Architecture (ISA) ng backend. Ibig sabihin nito, ang circuit ay kinakatawan gamit ang mga gate na native sa backend hardware, kahit hindi pa nito kasama ang timing information na kinakailangan para patakbuhin ang circuit sa device.
Qiskit patterns hakbang 3: Isagawa gamit ang mga primitive
Ngayon, oras na para patakbuhin ang ating circuit. Gagamitin natin ang Estimator bilang ating pangunahing tool para sa eksperimentong ito dahil ang ating layunin ay masukat ang kabuuang magnetization ng sistema. Ang Estimator ay espesyal na dinisenyo para tantyain ang mga expectation value ng mga observable, na ginagawa itong perpektong pagpipilian dito. Sa yugtong ito, mahalaga rin na i-configure ang ating mga setting ng error mitigation. Mag-a-apply tayo ng Zero Noise Extrapolation (ZNE) para mapabuti ang katumpakan ng ating mga resulta. Sa tutorial, makikita mo na tinutukoy natin ang dalawa o higit pang mga halaga ng noise factor kung saan susuriin ang mga extrapolated na modelo, at pipiliin natin ang "Probabilistic Error Amplification" (PEA) bilang paraan ng ating amplification. Ang PEA ay mas pinipili para sa eksperimentong ito dahil ito ay lubos na mas mahusay kaysa sa ibang mga opsyon, na mahalaga kapag nagtatrabaho sa mga sistema na may 100 o higit pang qubit.
Ito lang ang kinakailangan para patakbuhin ang eksperimento.
Interlude tungkol sa error mitigation
Bago tayo magpatuloy sa post-processing, maglaan tayo ng sandaling malinawang ipaliwanag ang ibig sabihin ng Zero Noise Extrapolation (ZNE). Nagbanggit na tayo sa konsepto na ito sa mga naunang episode, ngunit sulit na suriin ito nang bahagya. Ang ZNE ay isang teknik ng error mitigation na dinisenyo para mabawasan ang epekto ng hindi kilalang ingay na nangyayari sa panahon ng pagpapatakbo ng mga quantum circuit, basta ang ingay na ito ay maaaring i-scale sa isang kontroladong paraan. Ang pamamaraan ay umaasa sa pagpapalagay na ang mga expectation value ay nagbabago kasabay ng ingay ayon sa isang kilalang function:
kung saan ang ay kumakatawan sa lakas ng ingay, na maaaring sadyang palakasin.
Ang proseso ng pagpapatupad ng ZNE ay binubuo ng mga sumusunod na hakbang:
- Palakasin ang ingay ng circuit para sa iba't ibang noise factor na , , … .
- Isagawa ang bawat noise-amplified na circuit para masukat ang mga naaayon na expectation value na , , ….
- I-extrapolate ang mga resultang ito pabalik sa zero-noise limit na \langle .
Ang teknik na ito ay nagpapahintulot sa atin na tantiyahin kung ano ang magiging kinalabasan kung walang ingay, na nagpapabuti ng katumpakan ng mga quantum computation.
Ang pangunahing hamon sa epektibong pagpapatupad ng ZNE ay ang pagbuo ng isang tumpak na noise model para sa expectation value at pagpapalaki ng ingay sa isang kontrolado at maayos na naiintindihang paraan. Ang mga karaniwang teknik para sa error amplification sa ZNE ay kinabibilangan ng pag-scale ng tagal ng pulse sa pamamagitan ng calibration, pag-ulit ng mga gate gamit ang mga identity cycle, at pagdaragdag ng ingay sa pamamagitan ng sampling ng mga Pauli channel — isang pamamaraan na kilala bilang Probabilistic Error Amplification (PEA).
Sa mga ito, ang PEA ay madalas na mas pinipili para sa ilang dahilan:
- Ang pulse stretching ay nagdudulot ng mataas na computational cost.
- Ang gate folding, na gumagamit ng mga identity insertion, ay kulang ng malakas na theoretical na garantiya para sa pananatili ng noise bias.
- Ang PEA ay naaangkop sa anumang circuit na pinatakbo na may native noise factor, kahit nangangailangan ito ng pag-aaral ng noise model nang maaga.
Ang PEA ay gumaganap sa ilalim ng pagpapalagay ng isang layer-based na noise model na katulad ng ginamit sa probabilistic error cancellation (PEC). Gayunpaman, hindi tulad ng PEC, iniiwasan nito ang exponential na sampling overhead na karaniwang lumalaki kasabay ng circuit noise. Ang kahusayan na ito ay ginagawang praktikal at matibay na diskarte ang PEA para sa noise amplification sa ZNE, na nagpapadali ng mas maaasahang quantum error mitigation. Para i-characterize ang noise model, kailangan muna nating tukuyin ang mga natatanging layer ng mga two-qubit operation sa loob ng circuit. Para sa bawat isa sa mga layer na ito, mag-a-apply tayo ng Pauli twirling na pamamaraan sa mga two-qubit gate, na tumutulong sa pagtitiyak na ang ingay ay maaaring tumpak na ilarawan ng isang damping noise model. Susunod, inuulit natin ang mga pares ng identity layer sa iba't ibang lalim, at sa wakas, ina-fit natin ang mga halaga ng fidelity para matukoy ang mga error rate para sa bawat noise channel.
Habang kapaki-pakinabang ang pag-unawa sa pamamaraang ito nang konsepto, ang pagpapatupad nito nang manu-mano sa Qiskit ay mas simple, tulad ng ipinapakita sa kasama na tutorial.
Qiskit patterns hakbang 4: Post-process
Pagkatapos matapos ang eksperimento, maaari mong tingnan ang resulta sa pamamagitan ng post-processing nito. Ang dotted na grey na linya sa plotted na data ay kumakatawan sa mga resulta na nakuha gamit ang mga approximate na klasikal na pamamaraan, na may approximation error na nabawasan sa isang mababang threshold. Ang mga raw na data point para sa iba't ibang noise factor, na pinili sa simula, ay malinaw na nakakaalis mula sa dotted na linya na ito. Sa kabaligtaran, ang solid na asul na linya ay nagpapakita ng data pagkatapos ilapat ang ating ZNE processing, na kapansin-pansing nagdadala ng mga resulta na mas malapit sa mga eksaktong halaga. Sa buod, ang mga halagang nakuha sa ilalim ng normal na kondisyon ng ingay (noise factor nf=1.0) ay nagpapakita ng makabuluhang paglihis mula sa mga eksaktong resulta. Samantala, ang mga mitigated na halaga ay malapit na akma sa mga eksaktong halaga, na nagpapakita ng bisa ng PEA-based na teknik ng noise mitigation.
Buod
Para mabilis na ibuod ang ating natutunan:
- Ang quantum simulation ay isa sa mga pinaka-promising na lugar ng aplikasyon sa maikling hanggang katamtamang panahon.
- Mayroon itong malawak na mga aplikasyon, mula sa mga pharmaceutical hanggang sa high-energy physics, materials science, at marami pa.
- Ang Utility paper mula sa IBM, na inilathala noong 2023 ay nagturo ng landas patungo sa kakayahang gumamit ng mga quantum computer para sa siyentipikong pagtuklas at pinagkursunan natin ang kaugnay na tutorial na kasama ang papel na iyon.
- Ang mga hakbang para magtrabaho sa isang simulation na problema mula sa simula hanggang sa katapusan ay medyo diretso, at umaasa tayo na magagamit mo na ngayon ang video at tutorial na ito bilang gabay para sa kahit mas maraming simulation na problema.
Post-course survey
Maligayang pagbati sa pagtatapos ng kursong ito! Maglaan ng isang sandali para tulungan kaming mapabuti ang aming kurso sa pamamagitan ng pagsagot sa sumusunod na maikling survey. Ang iyong feedback ay gagamitin para mapahusay ang aming mga alok ng nilalaman at karanasan ng gumagamit. Salamat!