Citat:
Ursprungligen postat av
GrevePlasma
Trots att jag har någorlunda koll på de vanligaste kvantmekaniska fenomenen, som superposition, sammanflätning och tunnling, så greppar jag ändå inte hur en kvantdator fungerar eller vad som händer i den.
Ta en uppgift, som jag tror både en vanlig och en kvantdator skulle kunna lösa. Beräkna primtalen i en nummerserie från 1 till n med mellanrummet 1 det vill säga 1, 2, 3 ..... n kan du bestämma själv, men för en vanlig dator i varje fall, blir det tidsödande om n är väldigt stort. I en vanligt dator kan du använda två program. Ett för att välja tal att testa. Helt enkelt att välja 1, 2 o.s.v till n. Det andra gör själva beräkningen och visar om det är ett primtal eller inte. Men vad gör en kvantdator? Såklart är det program två, som är mest intressant här.
Kan du visa med någon annan uppgift, som utförs, får du gärna det. Nöjd om det är begripligt och förklarar principen.
Såhär fungerar i princip en kvantdator: En qubit är motsvarigheten till en klassisk bit, men istället för att bara kunna vara 0 eller 1 kan den vara i en superposition av båda, beskriven som |ψ⟩ = a|0⟩ + b|1⟩, där a och b är komplexa amplituder och ∣a∣^2 respektive ∣b∣^2 är sannolikheterna att mäta 0 eller 1. Kvantoperationer manipulerar dessa amplituder och därmed kvanttillståndet, till skillnad från klassiska operationer som bara växlar mellan 0 eller 1.
Med N klassiska bits finns 2^N möjliga tillstånd, men bara ett kan finnas åt gången. N qubits däremot kan vara i en superposition av alla 2^N tillstånd samtidigt. Detta betyder dock inte att man får ut alla dessa värden vid mätning – superpositionen används för att skapa interferens, inte för att läsa av alla svar. En klassisk dator bearbetar normalt ett tillstånd åt gången, medan en kvantdator låter många möjliga lösningar existera parallellt och använder interferens för att förstärka sannolikheten för rätt lösning och minska sannolikheten för felaktiga innan mätningen sker. När mätningen väl görs kollapsar kvanttillståndet till ett enda klassiskt utfall, och hela beräkningen måste därför konstrueras så att rätt svar har hög sannolikhet just vid mättillfället.
Skillnaden mellan kvant- och klassiska datorer ligger alltså i hur beräkningarna utförs. Det betyder inte att kvantdatorer är överlägsna i alla situationer. Hittills finns bara ett fåtal välkända områden där de teoretiskt erbjuder tydliga fördelar, t.ex.:
- faktorisering av stora tal (Shor’s algoritm),
- sökning i oorganiserade datamängder (Grover’s algoritm, som ger en kvadratisk hastighetsvinst),
- kvantsimulering av kemi och material.
Gemensamt för dessa problem är att de har en struktur som kan utnyttjas av kvantinterferens; utan en sådan struktur finns ingen generell kvantfördel.
Däremot finns idag inga exempel där kvantdatorer entydigt överträffar klassiska datorer* inom t.ex. vanlig deep learning, grafik eller generella optimeringsproblem – även om forskningen är aktiv. Och vad gäller ditt exempel: att bara testa primtal i en lista är faktiskt ett problem där klassiska datorer redan är väldigt effektiva på stora tal (t.ex. Miller–Rabin-testet), så där finns ingen tydlig kvantfördel idag.
Låt oss ta en annan konkret uppgift. Låt oss säga att vi har en osorterad databas med N poster och vi vill hitta en specifik post. En klassisk dator måste i värsta fall kontrollera alla poster, och i genomsnitt ungefär N/2 poster. En kvantdator kan istället använda Grover’s algoritm. Den lägger alla möjliga index i superposition och använder kvantinterferens för att gradvis minska sannolikheten för fel svar och öka sannolikheten för rätt svar. Efter ungefär kvadratroten av N iterationer är rätt post mycket sannolik att dyka upp vid mätning. Om databasen innehåller en biljon poster behöver en klassisk dator i genomsnitt runt 500 miljarder iterationer, medan en kvantdator bara runt en miljon – alltså ungefär 500 000 gånger färre sökningar.
_____
* Det finns en intressant intervju med Ewin Tang, som forskar kring kvantdatorer. Hon påvisade att vissa algoritmer som man tidigare trodde att kvantdatorer var teoretiskt sett var överlägsna kunde med vissa förändringar göras så att klassiska datorer blev lika bra. Så hur användbar en kvantdator kommer att bli i framtiden är en intressant frågeställning. Du kan lyssna på denna 37 minuter långa intervju här:
What Is the True Promise of Quantum Computing? | PODCAST: The Joy of Why.