Spisu treści:

KREQC: Rotacyjnie emulowany komputer kwantowy Kentucky: 9 kroków
KREQC: Rotacyjnie emulowany komputer kwantowy Kentucky: 9 kroków

Wideo: KREQC: Rotacyjnie emulowany komputer kwantowy Kentucky: 9 kroków

Wideo: KREQC: Rotacyjnie emulowany komputer kwantowy Kentucky: 9 kroków
Wideo: 05/3 | Cywilizacja międzyplanetarna. Kolejny etap rozwoju ludzkości 2024, Lipiec
Anonim
KREQC: Rotacyjnie emulowany komputer kwantowy Kentucky
KREQC: Rotacyjnie emulowany komputer kwantowy Kentucky
KREQC: Rotacyjnie emulowany komputer kwantowy Kentucky
KREQC: Rotacyjnie emulowany komputer kwantowy Kentucky

Nazywamy to "zatoczką" - pisane KREQC: Kentucky's Rotationally Emulated Quantum Computer. Tak, ta instrukcja pokaże Ci, jak zrobić własny działający komputer kwantowy, który działa niezawodnie w temperaturze pokojowej z minimalnym czasem cyklu około 1/2 sekundy. Całkowity koszt budowy to 50-100 USD.

W przeciwieństwie do komputera kwantowego IBM Q pokazanego na drugim zdjęciu, KREQC nie wykorzystuje bezpośrednio zjawisk fizyki kwantowej do implementacji swoich w pełni splątanych kubitów. Przypuszczam, że moglibyśmy argumentować, że wszystko korzysta z fizyki kwantowej, ale tak naprawdę są to tylko serwa sterowane konwencjonalnie, które implementują „upiorne działanie na odległość” Einsteina w KREQC. Z drugiej strony te serwa pozwalają KREQC dość dobrze emulować zachowanie, dzięki czemu operacja jest łatwa do zobaczenia i wyjaśnienia. Mówiąc o wyjaśnieniach….

Krok 1: Co to jest komputer kwantowy?

Image
Image

Przed podaniem naszego wyjaśnienia, oto link do ładnego wyjaśnienia z dokumentacji IBM Q Experience. Teraz zrobimy nasz strzał….

Bez wątpienia słyszałeś więcej niż trochę (zamierzona gra słów) o tym, jak kubity nadają komputerom kwantowym magiczne zdolności obliczeniowe. Podstawowa idea polega na tym, że podczas gdy zwykły bit może mieć wartość 0 lub 1, kubit może mieć wartość 0, 1 lub być nieokreślony. Samo w sobie nie wydaje się to szczególnie przydatne – a z jednym kubitem tak nie jest – ale wiele splątanych kubitów ma dość przydatną właściwość, że ich nieokreślone wartości mogą jednocześnie obejmować wszystkie możliwe kombinacje wartości bitowych. Na przykład 6 bitów może mieć dowolną wartość od 0 do 63 (tj. 2^6), podczas gdy 6 kubitów może mieć nieokreśloną wartość, która zawiera wszystkie wartości od 0 do 63 z potencjalnie różnym prawdopodobieństwem związanym z każdą możliwą wartością. Gdy wartość kubitu jest odczytywana, jego wartości i wszystkie splątane z nim kubity zostają określone, przy czym pojedyncza wartość odczytana dla każdego kubitu jest wybierana losowo zgodnie z prawdopodobieństwem; jeśli nieokreślona wartość wynosi 75% 42 i 25% 0, to około 3 na każde cztery obliczenia kwantowe, wynik będzie 42, a pozostałe razy będzie to 0. Kluczową kwestią jest to, że obliczenia kwantowe oceniają wszystkie możliwe wartości i zwraca jedną (z potencjalnie wielu) poprawnych odpowiedzi, próbując wykładniczo wiele wartości jednocześnie - i to jest ekscytująca część. Potrzeba by 64 6-bitowych systemów, aby zrobiły to, co może zrobić jeden 6-kubitowy system.

Każdy z 6 w pełni splątanych kubitów KREQC może mieć wartość obrotową 0, 1 lub nieokreśloną. Równie prawdopodobna nieokreślona wartość jest reprezentowana przez wszystkie kubity znajdujące się w pozycji poziomej. W miarę postępu obliczeń kwantowych prawdopodobieństwa różnych wartości zmieniają się - reprezentowane w KREQC przez chybotanie się poszczególnych kubitów i przyjmowanie pozycji statystycznych odzwierciedlających prawdopodobieństwa wartości. Ostatecznie obliczenia kwantowe kończą się pomiarem splątanych kubitów, co powoduje zwinięcie nieokreślonej wartości w w pełni określoną sekwencję zer i jedynek. W powyższym filmie widać, jak KREQC oblicza „odpowiedź na ostateczne pytanie dotyczące życia, wszechświata i wszystkiego” – innymi słowy, 42… co w binarnym to 101010, z 101 w tylnym rzędzie kubitów i 010 w przód.

Oczywiście są pewne problemy z komputerami kwantowymi, a KREQC też na nie cierpi. Oczywistym jest to, że naprawdę chcemy milionów kubitów, a nie tylko 6. Należy jednak również zauważyć, że komputery kwantowe implementują tylko logikę kombinatoryczną – w przeciwieństwie do tego, co my inżynierowie komputerowi nazywamy maszyną stanów. Zasadniczo oznacza to, że sama maszyna kwantowa jest mniej wydajna niż maszyna Turinga lub konwencjonalny komputer. W przypadku KREQC implementujemy automaty stanów, kontrolując KREQC za pomocą konwencjonalnego komputera do wykonywania sekwencji obliczeń kwantowych, po jednym na wizytę stanu w wykonaniu automatu stanów.

Zbudujmy więc komputer kwantowy działający w temperaturze pokojowej!

Krok 2: Narzędzia, części i materiały

Części drukowane w 3D: część wewnętrzna
Części drukowane w 3D: część wewnętrzna

KREQC to niewiele, ale będziesz potrzebować części i narzędzi. Zacznijmy od narzędzi:

  • Dostęp do drukarki 3D klasy konsumenckiej. Byłoby możliwe wykonanie kubitów KREQC za pomocą frezarki CNC i drewna, ale o wiele łatwiej i schludniej jest je wykonać poprzez wytłaczanie plastiku PLA. Największa część wydrukowana w 3D ma wymiary 180x195x34mm, więc sprawa jest znacznie łatwiejsza, jeśli drukarka ma wystarczająco dużą objętość wydruku, aby wydrukować to w jednym kawałku.
  • Lutownica. Do zgrzewania części PLA.
  • Nożyce do drutu lub coś innego, co może przeciąć małe plastikowe elementy o grubości 1 mm (rogi serwo).
  • Opcjonalnie narzędzia do obróbki drewna do wykonania drewnianej podstawy do mocowania kubitów. Podstawa nie jest bezwzględnie potrzebna, ponieważ każdy bit ma wbudowany stojak, który umożliwia wyprowadzenie kabla sterującego z tyłu.

Nie potrzebujesz też wielu części ani materiałów:

  • PLA do robienia kubitów. Jeśli zostanie wydrukowany przy 100% wypełnieniu, nadal będzie to mniej niż 700 gramów PLA na kubit; przy bardziej rozsądnym 25% napełnieniu lepiej oszacować 300 gramów. W ten sposób można wykonać 6 kubitów przy użyciu tylko jednej szpuli o wadze 2 kg, przy koszcie materiału około 15 USD.
  • Jeden mikroserwomechanizm SG90 na kubit. Są one łatwo dostępne za mniej niż 2 USD za sztukę. Upewnij się, że dostaniesz mikro serwa, które określają operację pozycjonowania pod kątem 180 stopni – nie chcesz serwomechanizmów pod kątem 90 stopni ani tych zaprojektowanych do ciągłego obracania się ze zmienną prędkością.
  • Płytka kontrolera serwo. Istnieje wiele możliwości wyboru, w tym użycie Arduino, ale bardzo łatwym wyborem jest 6-kanałowy kontroler serwo USB Pololu Micro Maestro, który kosztuje poniżej 20 USD. Istnieją inne wersje, które mogą obsługiwać 12, 18 lub 24 kanały.
  • Przedłużacze do SG90 w razie potrzeby. Kable w SG90 różnią się nieco długością, ale będziesz potrzebować kubitów oddzielonych co najmniej 6 calami, więc potrzebne będą przedłużacze. Są one z łatwością poniżej 0,50 USD za sztukę, w zależności od długości.
  • Zasilacz 5V do Pololu i SG90s. Normalnie Pololu jest zasilane przez złącze USB z laptopem, ale rozsądnym rozwiązaniem może być posiadanie osobnego zasilacza dla serw. Użyłem brodawki ściennej 5V 2,5A, którą miałem w pobliżu, ale nowe 3A można kupić za mniej niż 5 USD.
  • Opcjonalnie taśma dwustronna do łączenia rzeczy. Taśma VHB (Very-High Bond) dobrze trzyma zewnętrzną powłokę każdego kubitu, chociaż spawanie działa jeszcze lepiej, jeśli nigdy nie trzeba go rozbierać.
  • Opcjonalnie drewno i materiały wykończeniowe do wykonania podstawy. Nasz został wykonany z odpadków sklepowych i jest utrzymywany razem za pomocą łączników biszkoptowych, z kilkoma warstwami przezroczystego poliuretanu jako ostatecznego wykończenia.

Podsumowując, 6-kubitowy KREQC, który zbudowaliśmy, kosztował około 50 USD w dostawach.

Krok 3: Części drukowane w 3D: część wewnętrzna

Części drukowane w 3D: część wewnętrzna
Części drukowane w 3D: część wewnętrzna
Części drukowane w 3D: część wewnętrzna
Części drukowane w 3D: część wewnętrzna

Wszystkie wydrukowane w 3D projekty części są dostępne bezpłatnie jako Thing 3225678 w Thingiverse. Idź po swoją kopię… poczekamy….

Ach, wróciłeś tak szybko? Ok. Rzeczywisty „bit” w kubicie to prosta część, która jest drukowana w dwóch częściach, ponieważ łatwiej jest zespawać ze sobą dwa kawałki niż używać podpór do drukowania wypukłych liter po obu stronach jednej części.

Polecam wydrukowanie tego w kolorze kontrastującym z zewnętrzną częścią kubitu - na przykład czarnym. W naszej wersji, aby uzyskać kontrast, wydrukowaliśmy górną część 0,5 mm na biało, ale wymagało to zmiany filamentu. Jeśli wolisz tego nie robić, zawsze możesz po prostu pomalować wypukłe powierzchnie „1” i „0”. Obie te części drukują się bez przęseł, a więc bez podpór. Użyliśmy 25% wypełnienia i 0,25 mm wysokości wytłaczania.

Krok 4: Części drukowane w 3D: część zewnętrzna

Części drukowane w 3D: część zewnętrzna
Części drukowane w 3D: część zewnętrzna
Części drukowane w 3D: część zewnętrzna
Części drukowane w 3D: część zewnętrzna

Zewnętrzna część każdego kubitu jest nieco trudniejsza. Po pierwsze, te elementy są duże i płaskie, dlatego często podnoszą się z łóżka drukującego. Zwykle drukuję na gorącym szkle, ale wymagało to dodatkowego nadruku na gorącej niebieskiej taśmie malarskiej, aby uniknąć wypaczenia. Ponownie, 25% wypełnienia i 0,25 mm wysokości warstwy powinno wystarczyć.

Te części również mają rozpiętości. Wnęka, w której znajduje się serwomechanizm, ma rozpiętości po obu stronach i bardzo ważne jest, aby wymiary tej wnęki były prawidłowe - więc musi drukować z podporą. Kanał do prowadzenia kabli znajduje się tylko na grubszej tylnej stronie i jest skonstruowany tak, aby uniknąć jakichkolwiek rozpiętości, z wyjątkiem niewielkiej części u samej podstawy. Wewnętrzna strona podstawy na obu elementach ma technicznie niepodpartą rozpiętość dla wewnętrznej krzywizny podstawy, ale nie ma znaczenia, czy ta część nadruku trochę się ugina, więc nie potrzebujesz tam podparcia.

Ponownie, wybór koloru, który kontrastuje z wewnętrznymi częściami, sprawi, że „Q” kubitów będzie bardziej widoczne. Chociaż przód wydrukowaliśmy z częściami „AGGREGATE. ORG” i „UKY. EDU” z białego PLA na niebieskim tle PLA, może się okazać, że bardziej atrakcyjny będzie wygląd o niższym kontraście w kolorze nadwozia. Dziękujemy za pozostawienie ich tam, aby przypomnieć widzom, skąd pochodzi projekt, ale nie ma potrzeby wizualnego wykrzykiwania tych adresów URL.

Po wydrukowaniu tych części usuń wszelki materiał podporowy i upewnij się, że serwo pasuje do dwóch części trzymanych razem. Jeśli nie pasuje, kontynuuj wybieranie materiału podporowego. Jest to dość ciasne dopasowanie, ale powinno pozwolić na zepchnięcie obu połówek do siebie. Zauważ, że na wydruku celowo nie ma struktur wyrównania, ponieważ nawet niewielkie wypaczenie mogłoby uniemożliwić ich montaż.

Krok 5: Złóż część wewnętrzną

Złóż część wewnętrzną
Złóż część wewnętrzną
Złóż część wewnętrzną
Złóż część wewnętrzną

Weź dwie wewnętrzne części i wyrównaj je plecami do siebie tak, aby spiczasta oś po lewej stronie „1” zrównała się z ostrą osią „0”. W razie potrzeby można je tymczasowo skleić taśmą dwustronną, ale kluczem jest użycie gorącej lutownicy do zgrzania ich ze sobą.

Wystarczy spawać w miejscu zbiegania się krawędzi. Zrób to, najpierw sczepiając, używając lutownicy, aby przeciągnąć PLA wzdłuż krawędzi między dwoma elementami w kilku miejscach. Po sklejeniu części, uruchom lutownicę wokół szwu, aby utworzyć trwałą spoinę. Dwie części powinny tworzyć część pokazaną na powyższym obrazku.

Możesz sprawdzić dopasowanie tej spawanej części, wkładając ją do tylnej części zewnętrznej. Będziesz musiał go lekko przechylić, aby umieścić spiczasty trzpień w stronę, w której nie ma wnęki serwomechanizmu, ale po włożeniu powinien się swobodnie obracać.

Krok 6: Ustaw serwo i ustaw klakson

Ustaw serwo i ustaw klakson
Ustaw serwo i ustaw klakson

Aby to zadziałało, musimy mieć znaną bezpośrednią zależność między sterowaniem serwo a pozycją obrotową serwa. Każdy serwo ma minimalną i maksymalną szerokość impulsu, na który zareaguje. Musisz je odkryć empirycznie dla swoich serw, ponieważ liczymy na pełny ruch o 180 stopni, a różni producenci produkują SG90 o nieco innych wartościach (w rzeczywistości mają też nieco inne rozmiary, ale powinny być wystarczająco blisko mieścić się w dozwolonym miejscu). Nazwijmy najkrótszą szerokość impulsu „0”, a najdłuższą „1”.

Weź jeden z rogów dostarczonych z serwomechanizmem i przytnij skrzydła za pomocą przecinaków do drutu lub innego odpowiedniego narzędzia - jak widać na powyższym zdjęciu. Bardzo drobna podziałka przekładni serwa jest bardzo trudna do wydrukowania w 3D, więc zamiast tego użyjemy do tego środka jednego z rogów serwomechanizmu. Umieść przycięty klakson serwa na jednym z serwomechanizmów. Teraz podłącz serwo, ustaw go w pozycji „1” i pozostaw w tej pozycji.

Prawdopodobnie zauważyłeś, że nieostry trzpień ma cylindryczne wgłębienie, które jest mniej więcej wielkości głowicy przekładni w twoim serwo - i nieco mniejsze niż średnica przyciętego środka klaksonu. Weź gorącą lutownicę i delikatnie zakręć nią wewnątrz otworu w czopie, a także na zewnątrz przyciętego środka rogu; nie próbujesz też się roztopić, ale tylko po to, by zmiękczyć. Następnie, trzymając serwomechanizm, wepchnij środek klaksonu prosto do otworu w osi z serwomechanizmem w pozycji „1” – z wewnętrzną częścią pokazującą „1”, gdy serwo jest ustawione tak, jak wtedy spoczywającej we wnęce w zewnętrznej tylnej części.

Powinieneś zobaczyć, jak PLA zwija się trochę, gdy wciskasz przycięty klakson, tworząc bardzo mocne połączenie z klaksonem. Pozwól, aby wiązanie trochę ostygło, a następnie wyciągnij serwo. Klakson powinien teraz połączyć część wystarczająco dobrze, aby serwo mogło swobodnie obracać częścią bez znaczącego luzu.

Krok 7: Złóż każdy kubit

Złóż każdy kubit
Złóż każdy kubit
Złóż każdy kubit
Złóż każdy kubit

Teraz możesz już budować kubity. Umieść zewnętrzną tylną część na płaskiej powierzchni (np. na stole) tak, aby wnęka serwomechanizmu była skierowana do góry, a stojak zwisał nad krawędzią powierzchni, tak aby zewnętrzna tylna część leżała płasko. Teraz weź serwo i wewnętrzną część przymocowaną do klaksonu i włóż je w tylną zewnętrzną część. Wciśnij kabel od serwomechanizmu do kanału dla niego.

Gdy wszystko jest wyrównane, umieść przednią zewnętrzną część nad zespołem. Podłącz serwo i obsługuj go, trzymając zespół razem, aby upewnić się, że nic się nie wiąże lub nie jest źle wyrównane. Teraz użyj taśmy VHB lub użyj lutownicy do zespawania zewnętrznego przodu i tyłu.

Powtórz te kroki dla każdego kubitu.

Krok 8: Montaż

Montowanie
Montowanie
Montowanie
Montowanie

Mała podstawa każdego kubitu ma wycięcie z tyłu, które umożliwia wyprowadzenie kabla serwa z tyłu, aby połączyć się z kontrolerem, a podstawa jest wystarczająco szeroka, aby każdy kubit był sam w sobie stabilny, więc można po prostu umieścić przedłużacze na każdym serwo i poprowadź je rozłożone na stole lub innej płaskiej powierzchni. Jednak to pokaże przewody łączące je….

Czuję, że widok przewodów psuje iluzję upiornego działania na odległość, więc wolę całkowicie ukryć przewody. Aby to zrobić, wystarczy platforma montażowa z otworem pod każdym kubitem, który jest wystarczająco duży, aby przejść przez złącze kabla serwa. Oczywiście chcielibyśmy, aby każdy kubit pozostał na swoim miejscu, więc w podstawie znajdują się trzy otwory gwintowane 1/4-20. Intencją jest użycie środkowego, ale pozostałe mogą być użyte do zabezpieczenia rzeczy lub jeśli środkowa nić zostanie zerwana przez nadmierne dokręcenie. W ten sposób jeden wierci dwa blisko siebie rozmieszczone otwory w podstawie dla każdego kubitu: jeden do przejścia gwintu 1/4-20, drugi do przejścia przez złącze kabla serwa.

Ponieważ drewno 3/4" jest najbardziej powszechne, prawdopodobnie będziesz chciał użyć go na górze podstawy - tak jak ja. W takim przypadku będziesz potrzebować śruby 1/4-20 lub śruby około 1,25" długie. Możesz je kupić w dowolnym sklepie z narzędziami w cenie około 1 dolara za sześć. Alternatywnie możesz je wydrukować w 3D… ale zalecam drukowanie ich pojedynczo, jeśli je drukujesz, ponieważ minimalizuje to wady drobnego gwintu śruby.

Oczywiście wymiary uchwytu nie są krytyczne, ale decydują o długości kabli przedłużających, których będziesz potrzebować. KREQC został wykonany jako dwa rzędy trzech kubitów, głównie po to, aby uchwyt zmieścił się w podręcznej walizce, i tak przywieźliśmy go na naszą wystawę badawczą IEEE/ACM SC18.

Krok 9: Oznacz to

Marka to
Marka to
Marka to
Marka to
Marka to
Marka to

Na koniec nie zapomnij oznaczyć swojego komputera kwantowego!

Wydrukowaliśmy w 3D tabliczkę z nazwiskiem w kolorze czarnym na złocie, która następnie została przymocowana do drewnianego frontu podstawy. Możesz oznaczyć swoją etykietę innymi sposobami, takimi jak drukowanie 2D załączonego obrazu tabliczki znamionowej w formacie PDF za pomocą drukarki laserowej lub atramentowej. Nie zaszkodzi też oznaczyć każdy kubit jego pozycją, zwłaszcza jeśli jesteś zbyt kreatywny w kwestii rozmieszczania kubitów na podstawie.

Możesz także cieszyć się rozdawaniem pęków kluczy kubitowych wydrukowanych w 3D; nie są splątane ani zmotoryzowane, ale obracają się swobodnie, gdy na nie dmuchasz i stanowią świetne przypomnienie o demonstracji KREQC.

Zalecana: