26.07.20224 min

Jakub WasilewskiFullstack Developer

Poradnik dygresyjny o kwantyzacji

Sprawdź, jakie zmiany zachodzą w procesie wdrażania aplikacji w różnych lokalizacjach oraz jaki wpływ będzie miało na te procesy upowszechnienie się komputerów kwantowych.

Poradnik dygresyjny o kwantyzacji

Czy jesteśmy wystarczająco inteligentni, by wejść w erę informatyki kwantowej? Ile kosztuje nas owczy pęd za rozwiązaniami chmurowymi? Co z oldschool’owymi serwerowniami – czy lub kiedy to się opłaca i czy blockchain utrzyma je przy życiu? Kim są użytkownicy mikrokomputerów – dziećmi czy DevOpsami mikroserwisów? Tego typu pytania zadaję sobie, kiedy moje kontenery się budują…

Żyjemy w ciekawych czasach. Na oczach jednego pokolenia dokonało się więcej rewolucji, niż kiedykolwiek w historii, a kolejne dwie są tuż za rogiem. Mam tu na myśli komputeryzację i dostęp do internetu, które zmieniły życie codzienne, kto wie, czy nie bardziej, niż rewolucja przemysłowa (wersja dowolna). Kolejne dwa duże tematy, które już z coraz lepszym skutkiem piszemy, to komputeryzacja kwantowa i uczenie maszynowe. Pasjonaci IT są w centrum tego zamieszania i muszą działać dynamicznie, bo zmiany zachodzą tak szybko.


Z chmur na ziemię...

Zatem nie ma czasu, do rzeczy: potrzeby, które jeszcze niedawno spełniały całe przedsiębiorstwa – dziś często można zaspokoić dobrze napisaną apką. Największe dzisiaj podmioty (czyt. Google, Amazon) celują już nie tylko w potrzeby doraźne, ale i w potrzebę zaspokajania potrzeb. Mowa tu o rozwiązaniach cloudowych, które odsuwają korporacyjne serwerownie w cień. Być może serwery lokalne wrócą do łask dzięki kopaniu bitcoinów, który to trend ładnie korzysta z idei serwerów rozproszonych; jeśli jednak nie, to zostajemy w chmurach, a te nie są wcale żadną rewolucją. Ci z nas, którzy już dorośli, wiedzą, że chmura to po prostu dużo serwerów.

Jak większość nowinek technicznych, deploy do chmury stał się bardzo modny. Zapewne dlatego, że to rozwiązanie wygodne… ale czy wygoda ma być naszym pierwszym kryterium wyboru? Takie czasy, ale warto podrapać się po głowie, nic nie tracimy (oprócz czasu).


Od mikro do makro

Ten, kto go ma, może pomyśleć o konfiguracji maszyny we własnym domu.

Jeśli nie musi to być potwór o 32 GB RAM i wystarczy nam te 8 GB lub mniej – proponuję wziąć pod uwagę mikrokomputery – jakieś Raspberry Pi czy Arduino. Te popularne “zabaweczki” przez 10 lat swojego życia zdążyły już trochę wydorośleć i dziś stawianie na nich domowych serwerów to, pod pewnymi warunkami, wcale niegłupi pomysł. Te warunki są, w większości, zawarte w przedrostku “mikro-“ – mniej zasobów. Nie powinno jednak to przeszkadzać aplikacjom rozproszonym (arch. mikroserwisów). Te, między innymi, technologiczne bariery okażą się zresztą nieistotne w ciągu najbliższych lat.

Wchodzimy w erę kwantową zdecydowanie, choć bez zrozumienia. Prototypy komputerów tego rodzaju są wypuszczane właściwie codziennie i chociaż nadal jest to faza R&D (np. dopiero tym roku w Australii powstał pierwszy na świecie model działający w temperaturze pokojowej - wszystkie wcześniejsze rozwiązania wymagały temperatury bliskiej zera absolutnego do zachowania swojej kwantowej stabilności), IBM jako pionier wprowadza już quantum computing do swoich rozwiązań chmurowych (procesor takiej maszyny, nie symulowalny na klasycznych komputerach, to Eagle o 127 kubitach, a plany na 2023 to Condor - 1121 kubitów). Jak to właściwie odnieść do obecnych wydajności? Komputery kwantowe w ciągu kilku sekund wykonują obliczenia trwające latami na obecnym sprzęcie. 30-kubitowy komputer kwantowy posiada moc obliczeniową rzędu komputera klasycznego o mocy 10 teraflopów (biliony operacji zmiennoprzecinkowych na sekundę). Dzisiejsze laptopy to moc mierzona w gigaflopach (miliardy takich operacji). Wszystko dlatego, że jeden kubit (bit kwantowy) niesie o wiele więcej informacji (o tym później), stąd taki skok jakościowy.


Od Arystotelesa do Heisenberga

Komputery kwantowe to nie tylko dużo więcej mocy – to, fundamentalnie, maszyny działające wg innych reguł, opartych na mechanice kwantowej. Reguły modeluje się oczywiście logiką, a ta kwantowa jest co najmniej… dziwna. Na przykład nie respektuje prawa rozdzielności alternatywy względem koniunkcji, znanego z logiki zdań, z powodu konsekwencji nieoznaczoności Heisenberga (“I think I can safely say that nobody understands quantum mechanics” powiedział Richard Feynman).

W dużym uproszczeniu: logika arystotelesowa operuje dwiema wartościami – 0 i 1; ta kwantowa natomiast – wartościami z przedziału [0, 1], czyli podobnie do logiki rozmytej, której używamy od wielu lat (np. programując pralki). Jednak logika rozmyta modeluje niepewność ludzkiego wnioskowania, kwantowa natomiast - niepewność rzeczywistości (a mówiąc precyzyjniej – niepewność naszej najlepszej teorii). Tu i tu mamy wartości z przedziału [0, 1] – jednak komputer kwantowy osiąga to na najniższym poziomie, bo np. stan {(0.8/1),(0.2/0)} reprezentuje kubit będący w superpozycji (prawdziwie maszynowa niepewność).


Przyszłość - podniecająca czy straszna?

Nadchodząca kwantyzacja bez wątpienia zmieni świat: bezpośrednio - sposób i prędkość dostępu do informacji (jak będzie wyglądał kwantowy internet?), ale też pociągnie za sobą wiele innych przemian (skoro dziś już spędzamy przed komputerem ponad 8 godzin dziennie – jak wyewoluuje nasz sposób myślenia, gdy zaczniemy obcować z maszyną “myślącą” w sposób splątany?). Jedną z tych zmian (wspomniałem o niej we wstępie), nas – geeków interesującą, będzie postęp jakościowy (bo nie wiem, jak lepiej powiedzieć po polsku ang. “shift”) w uczeniu maszynowym. Nie będę zgadywać, ale japoński “ghost in the shell” na pewno już zaciera ręce.

Miałem pisać o deploymencie, a rozgadałem się o kwantach... Ja myślę sobie tak (nadal jeszcze niekwantowo, klasycznie): AI musi być i będzie aplikowane w coraz więcej miejsc, a jednym z nich jest np. logika pisania pipeline’ów. Zanim to jednak ktoś podejmie, zostaje automatyzacja. W imię globalizacji – YAML-e zaczniemy tłumaczyć na JavaScript (a raczej odwrotnie), bo w czasach internetu staje się on naszym lingua franca. I tak dalej, i tym podobne, dopóki języki naturalne w ogóle będą istnieć…

Żyjemy w ciekawych czasach. Ludzi zastępują roboty, zmienia się stara logika, stajemy się jedną maszyną – to wszystko na naszych oczach z każdym dniem staje się bardziej dosłowne.

<p>Loading...</p>