Sommario:

KREQC: Computer quantistico emulato a rotazione del Kentucky: 9 passaggi
KREQC: Computer quantistico emulato a rotazione del Kentucky: 9 passaggi

Video: KREQC: Computer quantistico emulato a rotazione del Kentucky: 9 passaggi

Video: KREQC: Computer quantistico emulato a rotazione del Kentucky: 9 passaggi
Video: Qibo, a full-stack quantum computing framework 2024, Dicembre
Anonim
KREQC: computer quantistico emulato a rotazione del Kentucky
KREQC: computer quantistico emulato a rotazione del Kentucky
KREQC: computer quantistico emulato a rotazione del Kentucky
KREQC: computer quantistico emulato a rotazione del Kentucky

Lo chiamiamo "ruscello" - scritto KREQC: computer quantistico emulato a rotazione del Kentucky. Sì, questo tutorial ti mostrerà come creare il tuo computer quantistico funzionante che funzioni in modo affidabile a temperatura ambiente con un tempo di ciclo minimo di circa 1/2 secondo. Il costo totale di costruzione è di $ 50- $ 100.

A differenza del computer quantistico IBM Q mostrato nella seconda foto, KREQC non utilizza direttamente i fenomeni della fisica quantistica per implementare i suoi qubit completamente intrecciati. Bene, suppongo che potremmo obiettare che tutto usa la fisica quantistica, ma in realtà sono solo servi controllati in modo convenzionale che implementano "l'azione spettrale a distanza" di Einstein in KREQC. D'altra parte, quei servi consentono a KREQC di emulare il comportamento piuttosto bene, rendendo l'operazione facile da vedere e spiegare. A proposito di spiegazioni….

Passaggio 1: cos'è un computer quantistico?

Image
Image

Prima di dare la nostra spiegazione, ecco un collegamento a una bella spiegazione dalla documentazione di IBM Q Experience. Ora facciamo il nostro colpo….

Senza dubbio, hai sentito più di un po' (gioco di parole) su come i qubit conferiscano abilità computazionali magiche ai computer quantistici. L'idea di base è che mentre un bit ordinario può essere 0 o 1, un qubit può essere 0, 1 o indeterminato. Di per sé, ciò non sembra particolarmente utile - e con un solo qubit non lo è - ma più qubit entangled hanno la proprietà piuttosto utile che i loro valori indeterminati possono coprire contemporaneamente tutte le possibili combinazioni di valori di bit. Ad esempio, 6 bit possono avere un valore qualsiasi da 0 a 63 (cioè 2^6), mentre 6 qubit possono avere un valore indeterminato che è tutti i valori da 0 a 63 con una probabilità potenzialmente diversa associata a ciascun possibile valore. Quando viene letto il valore di un qubit, vengono determinati i valori di esso e di tutti i qubit ad esso collegati, selezionando casualmente il singolo valore letto per ciascun qubit in base alle probabilità; se il valore indeterminato è 75% 42 e 25% 0, allora circa 3 volte su quattro viene eseguito il calcolo quantistico, il risultato sarà 42 e le altre volte sarà 0. Il punto chiave è che il calcolo quantistico valuta tutti i valori possibili e restituisce una (di potenzialmente più) risposte valide, provando in modo esponenziale molti valori contemporaneamente - e questa è la parte eccitante. Ci vorrebbero 64 sistemi a 6 bit per fare ciò che un sistema a 6 qubit può fare.

Ciascuno dei 6 qubit completamente entangled di KREQC può avere un valore rotazionale che è 0, 1 o indeterminato. Il valore indeterminato equiprobabile è rappresentato da tutti i qubit in posizione orizzontale. Man mano che un calcolo quantistico procede, cambiano le probabilità di valori diversi, rappresentati in KREQC dai singoli qubit che oscillano e assumono posizioni statistiche che riflettono le probabilità dei valori. Alla fine, il calcolo quantistico viene terminato misurando i qubit entangled, che comprime il valore indeterminato in una sequenza completamente determinata di 0 e 1. Nel video sopra, vedi KREQC che calcola la "risposta alla domanda fondamentale sulla vita, l'universo e tutto il resto" - in altre parole, 42… che in binario è 101010, con 101 nell'ultima riga di qubit e 010 in la parte anteriore.

Naturalmente, ci sono alcuni problemi con i computer quantistici e anche KREQC ne soffre. Una cosa ovvia è che vogliamo davvero milioni di qubit, non solo 6. Tuttavia, è anche importante notare che i computer quantistici implementano solo la logica combinatoria, al contrario di ciò che noi ingegneri informatici chiamiamo macchina a stati. Fondamentalmente, ciò significa che una macchina quantistica di per sé è meno capace di una macchina di Turing o di un computer convenzionale. Nel caso di KREQC, implementiamo macchine a stati controllando KREQC utilizzando un computer convenzionale per eseguire una sequenza di calcoli quantistici, uno per visita di stato nell'esecuzione della macchina a stati.

Quindi, andiamo a costruire un computer quantistico a temperatura ambiente!

Passaggio 2: strumenti, parti e materiali

Parti stampate in 3D: la parte interna
Parti stampate in 3D: la parte interna

Non c'è molto da KREQC, ma avrai bisogno di alcune parti e strumenti. Partiamo dagli strumenti:

  • Accesso a una stampante 3D di livello consumer. Sarebbe possibile realizzare i qubit di KREQC utilizzando una fresatrice CNC e legno, ma è molto più semplice e ordinato realizzarli estrudendo plastica PLA. La parte più grande stampata in 3D è 180x195x34mm, quindi le cose sono molto più semplici se la stampante ha un volume di stampa abbastanza grande da stamparlo in un unico pezzo.
  • Un saldatore. Da utilizzare per la saldatura di parti in PLA.
  • Tagliafili o qualcos'altro in grado di tagliare piccole parti in plastica di 1 mm di spessore (le squadrette dei servi).
  • Facoltativamente, strumenti per la lavorazione del legno per realizzare una base in legno per montare i qubit. Una base non è strettamente necessaria perché ogni bit ha un supporto integrato che consentirebbe a un cavo di controllo di instradare la parte posteriore.

Non hai nemmeno bisogno di molte parti o materiali:

  • PLA per realizzare i qubit. Se stampato al 100% di riempimento, sarebbe comunque inferiore a 700 grammi di PLA per qubit; con un riempimento più ragionevole del 25%, 300 grammi sarebbero una stima migliore. Pertanto, è possibile realizzare 6 qubit utilizzando solo una bobina da 2 kg, a un costo del materiale di circa $ 15.
  • Un micro servo SG90 per qubit. Questi sono prontamente disponibili per meno di $ 2 ciascuno. Assicurati di ottenere micro servi che specifichino l'operazione di posizionamento a 180 gradi: non vuoi quelli a 90 gradi né quelli progettati per la rotazione continua a velocità variabile.
  • Una scheda di controllo servo. Ci sono molte scelte, incluso l'uso di un Arduino, ma una scelta molto semplice è il servo controller USB a 6 canali Pololu Micro Maestro che costa meno di $ 20. Esistono altre versioni in grado di gestire 12, 18 o 24 canali.
  • Cavi di prolunga per gli SG90 secondo necessità. I cavi degli SG90 variano leggermente in lunghezza, ma avrai bisogno che i qubit siano separati da un minimo di circa 6 pollici, quindi saranno necessarie prolunghe. Questi sono facilmente sotto $ 0,50 ciascuno, a seconda della lunghezza.
  • Un alimentatore da 5 V per Pololu e SG90. Normalmente, il Pololu è alimentato tramite connessione USB a un laptop, ma può essere saggio avere un'alimentazione separata per i servi. Ho usato una verruca da parete da 5 V 2,5 A che avevo in giro, ma è possibile acquistarne di nuove da 3 A per meno di $ 5.
  • Facoltativamente, nastro biadesivo per tenere insieme le cose. Il nastro VHB (Very-High Bond) funziona bene per tenere insieme il guscio esterno di ogni qubit, anche se la saldatura funziona ancora meglio se non è mai necessario smontarlo.
  • Facoltativamente, legno e forniture di finitura per realizzare la base. Il nostro è stato realizzato con scarti di negozio ed è tenuto insieme da giunti a biscotto, con diversi strati di poliuretano trasparente come finitura finale.

Tutto sommato, il KREQC da 6 qubit che abbiamo costruito è costato circa $ 50 in forniture.

Passaggio 3: parti stampate in 3D: la parte interna

Parti stampate in 3D: la parte interna
Parti stampate in 3D: la parte interna
Parti stampate in 3D: la parte interna
Parti stampate in 3D: la parte interna

Tutti i design delle parti stampate in 3D sono disponibili gratuitamente come Thing 3225678 su Thingiverse. Vai subito a prendere la tua copia… aspetteremo….

Ah, torni così presto? Ok. Il vero "bit" nel qubit è una parte semplice che viene stampata in due pezzi perché è più facile saldare due pezzi insieme piuttosto che utilizzare supporti per stampare caratteri in rilievo su entrambi i lati di una parte.

Consiglio di stamparlo in un colore che contrasti con la parte esterna del qubit, ad esempio il nero. Nella nostra versione, abbiamo stampato i 0,5 mm superiori in bianco per dare contrasto, ma ciò ha richiesto la sostituzione del filamento. Se preferisci non farlo, puoi sempre dipingere le superfici in rilievo di "1" e "0". Entrambe queste parti vengono stampate senza span e quindi senza supporti. Abbiamo utilizzato un riempimento del 25% e un'altezza di estrusione di 0,25 mm.

Passaggio 4: parti stampate in 3D: la parte esterna

Parti stampate in 3D: la parte esterna
Parti stampate in 3D: la parte esterna
Parti stampate in 3D: la parte esterna
Parti stampate in 3D: la parte esterna

La parte esterna di ogni qubit è un po' più complicata. Innanzitutto, questi pezzi sono grandi e piatti, quindi soggetti a molti sollevamenti dal piano di stampa. Normalmente stampo su vetro caldo, ma questi hanno richiesto il bastoncino extra di stampa su nastro da pittore blu caldo per evitare deformazioni. Anche in questo caso, il riempimento del 25% e l'altezza dello strato di 0,25 mm dovrebbero essere più che sufficienti.

Anche queste parti hanno entrambe le campate. La cavità che contiene il servo ha spazi su entrambi i lati ed è fondamentale che le dimensioni di questa cavità siano corrette, quindi è necessario stampare con supporto. Il canale di instradamento dei cavi si trova solo sul lato posteriore più spesso ed è costruito per evitare qualsiasi estensione tranne un po' alla base. L'interno della base su entrambi i pezzi tecnicamente ha un'estensione non supportata per la curva interna della base, ma non importa se quella parte della stampa si incurva un po', quindi non hai bisogno di supporto lì.

Anche in questo caso, una scelta di colore che contrasti con le parti interne renderà più visibile la "Q" dei qubit. Sebbene abbiamo stampato la parte anteriore con le parti "AGGREGATE. ORG" e "UKY. EDU" in PLA bianco su sfondo PLA blu, potresti trovare più attraente l'aspetto a basso contrasto del colore della carrozzeria. Apprezziamo che tu li abbia lasciati lì per ricordare agli spettatori da dove proviene il design, ma non è necessario urlare visivamente questi URL.

Una volta che queste parti sono state stampate, rimuovere qualsiasi materiale di supporto e assicurarsi che il servo si adatti ai due pezzi tenuti insieme. Se non si adatta, continua a prelevare il materiale di supporto. È una misura piuttosto stretta, ma dovrebbe consentire a entrambe le metà di essere unite insieme. Notare che non ci sono volutamente strutture di allineamento nella stampa perché anche una leggera deformazione potrebbe impedirne l'assemblaggio.

Passaggio 5: assemblare la parte interna

Assemblare la parte interna
Assemblare la parte interna
Assemblare la parte interna
Assemblare la parte interna

Prendi le due parti interne e allineale una dietro l'altra in modo che il perno appuntito a sinistra di "1" si allinei con il perno appuntito sullo "0". Se lo desideri, puoi tenerli temporaneamente insieme con del nastro biadesivo, ma la chiave è usare un saldatore caldo per saldarli insieme.

È sufficiente saldare dove i bordi si uniscono. Fallo prima con la saldatura a punti usando il saldatore per trascinare il PLA lungo il bordo tra i due pezzi in diversi punti. Dopo che le parti sono state fissate insieme, fai scorrere il saldatore intorno alla cucitura per creare una saldatura permanente. I due pezzi dovrebbero fare la parte mostrata nell'immagine sopra.

È possibile verificare l'adattamento di questa parte saldata inserendola nella parte posteriore esterna. Dovrai inclinarlo leggermente per ottenere il perno appuntito nel lato che non ha la cavità del servo, ma una volta dentro, dovrebbe ruotare liberamente.

Passaggio 6: orientare il servo e impostare il clacson

Orienta il servo e imposta il clacson
Orienta il servo e imposta il clacson

Affinché ciò funzioni, dobbiamo avere una corrispondenza diretta nota tra il servocomando e la posizione di rotazione del servo. Ogni servo ha una larghezza di impulso minima e massima a cui risponderà. Dovrai scoprirli empiricamente per i tuoi servi, perché contiamo sul movimento completo di 180 gradi e diversi produttori producono SG90 con valori leggermente diversi (in effetti, hanno anche dimensioni leggermente diverse, ma dovrebbero essere abbastanza vicini da rientrare nello spazio consentito). Chiamiamo la larghezza di impulso più breve "0" e la più lunga "1".

Prendi una delle squadrette fornite con il tuo servo e taglia le ali usando tronchesi o qualsiasi altro strumento appropriato, come mostrato nella foto sopra. Il passo molto fine dell'ingranaggio sul servo è molto difficile da stampare in 3D, quindi utilizzeremo invece il centro di una delle squadrette del servo per questo. Metti la squadretta del servo tagliata su uno dei servi. Ora collega il servo, impostalo sulla sua posizione "1" e lascialo in quella posizione.

Probabilmente hai notato che il perno non appuntito ha una cavità cilindrica che ha circa le dimensioni della testa dell'ingranaggio sul tuo servo - e un po' più piccola del diametro del centro del tuo corno tagliato. Prendi il saldatore caldo e ruotalo delicatamente all'interno del foro nel perno e anche intorno all'esterno del centro del corno tagliato; non stai nemmeno cercando di scioglierli, ma solo di renderli morbidi. Quindi, tenendo il servo, spingere il centro del quadrilatero dritto nel foro nel perno con il servo in quella che dovrebbe essere la posizione "1" -- con la parte interna che mostra "1" quando il servo è posizionato come sarebbe quando appoggiato nella cavità nella parte posteriore esterna.

Dovresti vedere il PLA piegarsi leggermente su se stesso mentre spingi il clacson tagliato, creando una connessione molto salda con il clacson. Lascia che il legame si raffreddi un po' e poi estrai il servo. Il corno dovrebbe ora legare la parte abbastanza bene in modo che il servo possa ruotare liberamente la parte senza gioco significativo.

Passaggio 7: assemblare ogni Qubit

Assemblare ogni Qubit
Assemblare ogni Qubit
Assemblare ogni Qubit
Assemblare ogni Qubit

Ora sei pronto per costruire i qubit. Posizionare la parte posteriore esterna su una superficie piana (ad esempio un tavolo) in modo che la cavità del servo sia rivolta verso l'alto e il supporto penda dal bordo della superficie in modo che la parte posteriore esterna sia piatta. Ora prendi il servo e la parte interna attaccata al clacson e inseriscili nella parte posteriore esterna. Premere il cavo dal servo nel canale per esso.

Una volta che tutto è a filo, posizionare la parte anteriore esterna sul gruppo. Agganciare il servo e azionarlo tenendo insieme il gruppo per assicurarsi che nulla si leghi o sia disallineato. Ora usa il nastro VHB o usa un saldatore per saldare insieme la parte anteriore e posteriore esterna.

Ripeti questi passaggi per ogni qubit.

Passaggio 8: montaggio

Montaggio
Montaggio
Montaggio
Montaggio

La piccola base di ogni qubit ha un taglio nella parte posteriore che ti consentirebbe di far passare il cavo del servo dal retro per collegarlo al controller, e la base è abbastanza larga da consentire a ogni qubit di essere stabile da solo, quindi potresti semplicemente mettere cavi di prolunga su ciascun servo e farli scorrere su un tavolo o su un'altra superficie piana. Tuttavia, questo mostrerà i fili che li collegano….

Sento che vedere i fili rovina l'illusione di un'azione spettrale a distanza, quindi preferisco nascondere completamente i fili. Per fare ciò, tutto ciò di cui abbiamo bisogno è una piattaforma di montaggio con un foro sotto ogni qubit abbastanza grande da consentire il passaggio del connettore del cavo del servo. Ovviamente, vorremmo che ogni qubit rimanesse dove è posizionato, quindi ci sono tre fori filettati da 1/4-20 nella base. L'intento è quello di utilizzare quello centrale, ma gli altri possono essere utilizzati per rendere le cose più sicure o se il filo centrale viene strappato dal serraggio eccessivo. Pertanto, si praticano due fori ravvicinati nella base per ciascun qubit: uno per passare una filettatura da 1/4-20, l'altro per passare il connettore del cavo del servo.

Poiché il legno da 3/4 "è più comune, probabilmente vorrai usarlo per la parte superiore della base, come ho fatto io. In tal caso, avrai bisogno di una vite o un bullone da 1/4-20 di circa 1,25" lungo. Puoi acquistarli in qualsiasi negozio di ferramenta al costo di circa $ 1 per sei. In alternativa, puoi stamparli in 3D … ma ti consiglio di stamparli uno alla volta se li stampi perché ciò riduce al minimo i difetti nella filettatura fine della vite.

Ovviamente, le dimensioni del supporto non sono critiche, ma determineranno la lunghezza dei cavi di prolunga di cui avrai bisogno. KREQC è stato realizzato come due file di tre qubit principalmente in modo che il supporto si adattasse a una valigia a mano, ed è così che l'abbiamo portato alla nostra mostra di ricerca IEEE/ACM SC18.

Passaggio 9: marcalo

Marchio
Marchio
Marca It
Marca It
Marchio
Marchio

Come passaggio finale, non dimenticare di etichettare il tuo computer quantistico!

Abbiamo stampato in 3D una targhetta in nero su oro, che è stata poi fissata alla parte anteriore in legno della base. Sentiti libero di etichettare il tuo con altri mezzi, come la stampa 2D dell'immagine della targhetta PDF allegata con una stampante laser o a getto d'inchiostro. Inoltre, non sarebbe male etichettare ogni qubit con la sua posizione, specialmente se diventi troppo creativo su come disponi i qubit sulla base.

Potresti anche divertirti a distribuire portachiavi qubit stampati in 3D; non sono impigliati né sono motorizzati, ma girano liberamente quando ci soffi sopra e sono un ottimo promemoria da portare a casa di una dimostrazione KREQC.

Consigliato: