Een inleiding tot Quantum Computing met Open Source Cirq Framework

Zoals de titel doet vermoeden wat we gaan bespreken, is dit artikel een poging om te begrijpen hoe ver we zijn gekomen in Quantum Computing en waar we in het veld staan ​​om wetenschappelijk en technologisch onderzoek te versnellen, door een Open Source-perspectief met Cirq.

Eerst zullen we u kennis laten maken met de wereld van Quantum Computing. We zullen ons best doen om het basisidee achter hetzelfde uit te leggen voordat we onderzoeken hoe Cirq een belangrijke rol zou spelen in de toekomst van Quantum Computing. Cirq, zoals je misschien al kortgeleden hebt vernomen, heeft nieuws uit het veld gehaald en in dit Open Science-artikel zullen we proberen uit te vinden waarom.

Voordat we beginnen met wat Quantum Computing is, is het essentieel om kennis te maken met de term Quantum, dat wil zeggen een subatomair deeltje dat verwijst naar de kleinste bekende entiteit. Het woord Quantum is gebaseerd op het Latijnse woord Quantus, wat betekent "hoe weinig", zoals beschreven in deze korte video:

Het zal gemakkelijker voor ons zijn om Quantum Computing te begrijpen door het eerst te vergelijken met Classical Computing. Klassiek computergebruik verwijst naar hoe de hedendaagse conventionele computers zijn ontworpen om te werken. Het apparaat waarmee u dit artikel nu leest, kan ook worden aangeduid als een klassiek computerapparaat.

Klassiek computergebruik

Klassiek computergebruik is gewoon een andere manier om te beschrijven hoe een conventionele computer werkt. Ze werken via een binair systeem, dwz informatie wordt opgeslagen met behulp van 1 of 0. Onze klassieke computers kunnen geen andere vorm begrijpen.

In letterlijke termen in de computer kan een transistor op (1) of uit (0) staan. Welke informatie we ook aanleveren, wordt vertaald in 0s en 1s, zodat de computer die informatie kan begrijpen en opslaan. Alles wordt alleen weergegeven met behulp van een combinatie van 0s en 1s.

Quantum Computing

Quantum Computing daarentegen volgt geen "aan of uit" -model zoals klassiek computergebruik. In plaats daarvan kan het tegelijkertijd meerdere toestanden van informatie verwerken met behulp van twee fenomenen die superpositie en verstrengeling worden genoemd, waardoor het computergebruik in een veel sneller tempo wordt versneld en ook de productiviteit bij het opslaan van informatie wordt vergemakkelijkt.

Merk op dat superpositie en verstrengeling niet hetzelfde zijn.

Dus als we bits in Classical Computing hebben, dan zouden we in het geval van Quantum Computing in plaats daarvan qubits (of Quantum-bits) hebben. Om meer te weten te komen over het grote verschil tussen de twee, kijk op deze pagina van waar de bovenstaande foto werd verkregen voor uitleg.

Quantum Computers gaan onze klassieke computers niet vervangen. Maar er zijn bepaalde gigantische taken die onze klassieke computers nooit zullen kunnen volbrengen en dat is wanneer Quantum Computers buitengewoon vindingrijk zou zijn. De volgende video beschrijft hetzelfde in detail en beschrijft ook hoe Quantum Computers werkt:

Een uitgebreide video over de voortgang in Quantum Computing tot nu toe:

Noisy intermediate scale quantum

Volgens het zeer recent bijgewerkte onderzoekspapier (31 juli 2018) verwijst de term "Noisy" naar onnauwkeurigheid vanwege het produceren van een onjuiste waarde veroorzaakt door onvolmaakte controle over qubits. Deze onnauwkeurigheid is de reden waarom er ernstige beperkingen zullen zijn aan wat Quantum-apparaten op korte termijn kunnen bereiken.

"Gemiddelde schaal" verwijst naar de grootte van Quantum Computers die de komende jaren beschikbaar zal zijn, waarbij het aantal qubits kan variëren van 50 tot enkele honderden. 50 qubits is een belangrijke mijlpaal, want dat is meer dan wat met brute kracht kan worden gesimuleerd met behulp van de krachtigste bestaande digitale supercomputers. Lees hier meer in de krant.

Met de komst van Cirq staat er veel op het punt te veranderen.

Wat is Cirq?

Cirq is een python-framework voor het maken, bewerken en aanroepen van Noisy Intermediate Scale Quantum (NISQ) -circuits waar we zojuist over gesproken hebben. Met andere woorden, Cirq kan uitdagingen aanpakken om de nauwkeurigheid te verbeteren en ruis te verminderen in Quantum Computing.

Cirq vereist niet noodzakelijkerwijs een feitelijke Quantum Computer voor uitvoering. Cirq kan ook een simulator-achtige interface gebruiken om Quantum-circuitsimulaties uit te voeren.

Cirq neemt geleidelijk veel tempo in beslag, met een van de eerste gebruikers die Zapata is en vorig jaar werd gevormd door een groep wetenschappers van de universiteit van Harvard die zich concentreerde op Quantum Computing.

Aan de slag met Cirq onder Linux

De ontwikkelaars van de Open Source Cirq-bibliotheek bevelen de installatie aan in een virtuele python-omgeving zoals virtualenv. De installatiehandleiding van de ontwikkelaars voor Linux is hier te vinden.

We hebben Cirq echter met succes geïnstalleerd en getest voor Python3 op een Ubuntu 16.04-systeem via de volgende stappen:

Installatie van Cirq op Ubuntu

Ten eerste zouden we pip of pip3 nodig hebben om Cirq te installeren. Pip is een tool die wordt aanbevolen voor het installeren en beheren van Python-pakketten.

Voor Python 3.x-versies kan Pip worden geïnstalleerd met:

sudo apt-get install python3-pip 

Python3-pakketten kunnen worden geïnstalleerd via:

 pip3 install 

We zijn doorgegaan en installeerden de Cirq-bibliotheek met Pip3 voor Python3:

 pip3 install cirq 

Plot en PDF-generatie inschakelen (optioneel)

Optionele systeemafhankelijkheden die niet kunnen worden geïnstalleerd met pip kunnen worden geïnstalleerd met:

 sudo apt-get install python3-tk texlive-latex-base latexmk 
  • python3-tk is de eigen grafische bibliotheek van Python die de plotfunctionaliteit mogelijk maakt.
  • texlive-latex-base en latexmk maken PDF-schrijffunctionaliteit mogelijk.

Later hebben we Cirq met succes getest met de volgende opdracht en code:

 python3 -c 'import cirq; print(cirq.google.Foxtail)' 

We hebben de resulterende output als:

Configuratie van Pycharm IDE voor Cirq

We hebben ook een Python IDE PyCharm op Ubuntu geconfigureerd om dezelfde resultaten te testen:

Omdat we Cirq voor Python3 op ons Linux-systeem hebben geïnstalleerd, hebben we het pad naar de project-interpreter in de IDE-instellingen ingesteld als:

 /usr/bin/python3 

In de bovenstaande uitvoer ziet u dat het pad naar de projectinterpreter die we zojuist hebben ingesteld, wordt weergegeven, samen met het pad naar het testprogrammabestand (test.py). Een afsluitcode van 0 geeft aan dat het programma met succes is voltooid zonder fouten.

Dit is dus een kant-en-klare IDE-omgeving waarin u de Cirq-bibliotheek kunt importeren om met Python te kunnen programmeren en Quantum-circuits kunt simuleren.

Ga aan de slag met Cirq

Een goede plaats om te beginnen zijn de voorbeelden die beschikbaar zijn gemaakt op de Github-pagina van Cirq.

De ontwikkelaars hebben deze tutorial op GitHub opgenomen om te beginnen met het leren van Cirq. Als je serieus bezig bent met het leren van Quantum Computing, bevelen ze een uitstekend boek aan met de titel "Quantum Computation and Quantum Information" van Nielsen en Chuang.

OpenFermion-Cirq

OpenFermion is een open source bibliotheek voor het verkrijgen en manipuleren van representaties van fermionische systemen (inclusief Quantum Chemistry) voor simulatie op Quantum Computers. Fermionische systemen zijn gerelateerd aan het genereren van fermionen, die volgens de deeltjesfysica de Fermi-Dirac-statistieken volgen.

OpenFermion is geprezen als een geweldig oefenmiddel voor scheikundigen en onderzoekers die betrokken zijn bij Quantum Chemistry. De hoofdfocus van Quantum Chemistry is de toepassing van Quantum Mechanics in fysische modellen en experimenten van chemische systemen. Quantumchemie wordt ook wel Molecular Quantum Mechanics genoemd.

De komst van Cirq heeft het nu mogelijk gemaakt voor OpenFermion om zijn functionaliteit uit te breiden door routines en hulpmiddelen te bieden voor het gebruik van Cirq om circuits voor Quantum-simulatie-algoritmen te compileren en samen te stellen.

Google Bristlecone

Op 5 maart 2018 presenteerde Google Bristlecone, hun nieuwe Quantum-processor, tijdens de jaarlijkse American Physical Society-bijeenkomst in Los Angeles. Het op poorten gebaseerde supergeleidingssysteem biedt een testplatform voor onderzoek naar systeemfoutenpercentages en schaalbaarheid van Google's qubit-technologie, samen met toepassingen in Quantum-simulatie, optimalisatie en machine-learning.

In de nabije toekomst wil Google zijn 72 qubit Bristlecone Quantum-processorwolk toegankelijk maken. Bristlecone zal geleidelijk behoorlijk in staat zijn om een ​​taak uit te voeren die een klassieke supercomputer niet binnen een redelijke tijd zou kunnen voltooien.

Cirq zou het voor onderzoekers gemakkelijker maken om rechtstreeks programma's voor Bristlecone in de cloud te schrijven, en dient als een zeer handige interface voor realtime Quantum-programmering en -testen.

Met Cirq kunnen we:

  • Stel de controle over Quantum-circuits fijn,
  • Specificeer poortgedrag met behulp van native poorten,
  • Plaats poorten op de juiste manier op het apparaat &
  • Plan de timing van deze poorten.

Het open wetenschapsperspectief op Cirq

Zoals we allemaal weten is Cirq Open Source op GitHub, de toevoeging aan de Open Source Scientific Communities, vooral die gericht op Quantum Research, kan nu efficiënt samenwerken om de huidige uitdagingen in Quantum Computing vandaag op te lossen door nieuwe manieren te ontwikkelen om foutenpercentages te verminderen en verbeteren van de nauwkeurigheid in de bestaande Quantum-modellen.

Als Cirq geen Open Source-model had gevolgd, zou het zeker een stuk uitdagender zijn geweest. Een geweldig initiatief zou zijn gemist en we zouden niet een stap dichterbij zijn gekomen op het gebied van Quantum Computing.

Samenvatting

Om uiteindelijk samen te vatten, hebben we u voor het eerst kennis laten maken met het concept van Quantum Computing door het te vergelijken met bestaande Classical Computing-technieken, gevolgd door een zeer belangrijke video over recente ontwikkelingsupdates in Quantum Computing sinds vorig jaar. Vervolgens hebben we het kort besproken Noisy Intermediate Scale Quantum, waarvoor Cirq speciaal is gebouwd.

We hebben gezien hoe we Cirq op een Ubuntu-systeem kunnen installeren en testen. We hebben de installatie ook getest op bruikbaarheid in een IDE-omgeving met wat middelen om aan de slag te gaan om het concept te leren.

Ten slotte zagen we ook twee voorbeelden van hoe Cirq een essentieel voordeel zou zijn bij de ontwikkeling van onderzoek in Quantum Computing, namelijk OpenFermion en Bristlecone. We sloten de discussie af met enkele gedachten over Cirq met een Open Science Perspective.

We hopen dat we u op een eenvoudig te begrijpen manier kennis hebben kunnen laten maken met Quantum Computing met Cirq. Als u feedback over hetzelfde heeft, kunt u ons dit laten weten in de sectie Opmerkingen. Bedankt voor het lezen en we kijken ernaar uit u te zien in ons volgende Open Science-artikel.

Aanbevolen

Dingen om te doen na het installeren van Fedora 24
2019
Speel Multiplayer Tron Arcade Game In Linux Terminal
2019
Snel kijken naar de op Arch Based Indie Linux-distributie: MagpieOS
2019