Komputery jakie znamy mogą nie przetrwać rewolucji w technice i nauce. Czy to już kres świata zer i jedynek?

Komputery jakie znamy mogą nie przetrwać rewolucji w technice i nauce. Czy to już kres świata zer i jedynek?
Maszyny cyfrowe zmieniły i ukształtowały bieg naszej cywilizacji. Coraz częściej jednak szukamy czegoś nowego, lub nie tak nowego, ale na pewno alterna-tywnego sposobu przetwarzania i obliczania, gdyż mamy wrażenie, że cyfrowa technika dociera do granic swoich możliwości.

Bernd Ulmann (1), matematyk znany jako „ewangelista komputerów analogowych”, opisuje działanie komputera cyfrowego w następujący sposób: dzielisz problem na wiele cienkich plasterków i rozwiązujesz go krok po kroku pod centralną kontrolą precyzyjnie zdefiniowanego zestawu instrukcji - algorytmu. Niezbędne instrukcje są przechowywane w pamięci komputera. Chociaż proces ten był historycznie nadzwyczaj wydajny, dociera dziś do granic efektywności. Jednym z głównych problemów jest ogromne zużycie energii na miliardy operacji arytmetycznych, które komputer musi wykonać w każdej sekundzie, przetwarzając złożone problemy. Nie można bez końca zwiększać liczby równoległych jednostek obliczeniowych. Ostatecznie niemożliwe jest uczynienie procesorów roboczych w tych maszynach mniejszymi niż atomy substancji używanych do budowy obwodów.

Dlatego Ulmann, i wielu innych, planuje powrót do idei komputera analogowego, który przeprowadza obliczenia w zupełnie inny sposób. Warto przypomnieć, że była to dominująca formą maszyny obliczeniowej od wczesnych lat czterdziestych do lat siedemdziesiątych XX wieku. Komputer cyfrowy ma tylko kilka jednostek arytmetycznych, które przetwa-rzają proste instrukcje niezwykle szybko. Komputer analogowy składa się z dużej liczby elementów obliczeniowych, w najdalej idących założeniach nawet milionów, które są ze sobą połączone. Zamiast postępować krok po kroku i transferować miliardy bitów tam i z powrotem, przetwarzany problem jest w układzie analogowym w pewnym sensie odtwarzany elektronicznie w obwodach. Wynik odczytuje się przez pomiar.

Komputery analogowe dążą do odtworzenia sposobu działania biologicznych obwodów neuronowych w mózgu, które mogą przetwarzać ogromne ilości danych, nie zużywając przy tym więcej energii niż 30-watowa żarówka. Na razie z wydajnością tych systemów nie jest tak dobrze jak biologicznym pierwowzorze, ale to może się zmienić. Ulmann przewiduje więc, że głównym obszarem ich zastosowań będzie dziedzina sztucznej inteligencji, która stara się naśladować działanie sieci neuronowych. Sam pracuje nad analogowym chipem komputerowym, w którym poszczególne obwody można dowolnie konfigurować. Byłby on kontrolowany przez komputer cyfrowy, który wraz z analogowym tworzy system hybrydowy. 

Obliczenia w hiperwymiarze

Wielu ekspertów narzeka, że znane i używane obecnie sieci neuronowe są bardzo energochłonne. Istotnym problemem jest także brak przejrzystości ich działania. Systemy te są bowiem tak skomplikowane, że nikt tak naprawdę nie rozumie, co robią i dlaczego działają tak dobrze. To problem znany i niejednokrotnie opisywany w MT, nazywany problemem „czarnej skrzynki”.

Rozważmy na przykład sztuczną sieć neuronową (ANN), która odróżnia koła od kwadratów. Można sobie wyobrazić funkcjonowanie w systemie dwóch neuronów w warstwie wyjściowej, jednego wskazującego koło i drugiego - kwadrat. Jeśli chcemy, by ANN rozpoznawała również kolor kształtu - niebieski lub czerwony, to  potrzeba czterech neuronów wyjściowych, po jednym dla niebieskiego koła, niebieskiego kwadratu, czerwonego koła i czerwonego kwadratu. Obsługa większej liczby funkcji oznacza potrzebę korzystania z jeszcze większej liczby neuronów - jednostek obliczeniowych.

Badacze zwracają uwagę, że w mózgu jest inaczej - informacje są reprezentowane przez równoczesną aktywność wielkich liczb neuronów. np. postrzeganie fioletowego mercedesa nie jest zakodowane jako funkcja pojedynczego neuronu, ale jako aktywność tysięcy neuronów. Ten sam zestaw neuronów, opalając impulsy inaczej, może reprezentować zupełnie inną koncepcję (choćby różowego Cadillaca). Stanowi to punkt wyjścia dla nowego podejścia do obliczeń komputerowych, znanego jako hiperwymiarowe, w którym każda informacja, taka jak idea samochodu, jego marka, model lub kolor, lub wszystkie razem, jest reprezentowana jako jednostka nazywana hiperwymiarowym wektorem.

Wektor to po prostu uporządkowana kombinacja liczb. Na przykład wektor 3D opisany jest za pomocą trzech liczb: współrzędnych x, y i z punktu w przestrzeni 3D. Wektor hiperwymiarowy lub hiperwektor może być kombinacją 10 tys. liczb reprezentujących punkt w 10000-wymiarowej przestrzeni. Wróćmy do przykładu obrazów kolorowych kół i kwadratów. Najpierw potrzebujemy wektorów do reprezentowania zmiennych - KSZTAŁT i KOLOR. Następnie potrzebujemy również wektorów dla wartości, które można przypisać do zmiennych - KOŁO, KWADRAT, NIEBIESKI i CZERWONY. Wektory muszą być rozróżnialne. Odrębność ta może być określona ilościowo przez właściwość zwaną ortogonalnością, która oznacza prostopadłość. W przestrzeni 3D istnieją trzy wektory, które są względem siebie ortogonalne, osie x, y i z. W przestrzeni 10 tys. wymiarów istnieje 10 tys. takich wzajemnie ortogonalnych wektorów. Jeśli jednak pozwolimy wektorom być prawie ortogonalnymi, liczba takich odrębnych wektorów w przestrzeni wielowymiarowej eksploduje. W przestrzeni 10 000 wymiarów istnieją miliony wektorów.

Tworzymy odrębne wektory reprezentujące KSZTAŁT, KOLOR, KOŁO, KWADRAT, NIEBIESKI i CZERWONY. Ponieważ istnieje tak wiele możliwych prawie ortogonalnych wektorów w wielowymiarowej przestrzeni, można po prostu przypisać sześć losowych wektorów do reprezentowania sześciu elementów. Prawie na pewno będą one prawie ortogonalne. Jak nimi manipulować za pomocą operacji matematycznych? Pierwszą operacją jest mnożenie. Jest to sposób łączenia idei. Na przykład pomnożenie wektora KSZTAŁT z wektorem KOŁO łączy te dwa wektory w  reprezentację idei „KSZTAŁT jest KOŁEM”. Ten nowy „związany” wektor jest prawie ortogonalny zarówno do KSZTAŁT, jak i KOŁO. Druga operacja, dodawanie, tworzy nowy wektor, który reprezentuje tak zwaną superpozycję pojęć. Na przykład, można wziąć dwa powiązane wektory „KSZTAŁT jest KOŁEM” i „KOLOR jest CZERWONY” i dodać je do siebie, aby utworzyć wektor reprezentujący okrągły kształt w kolorze czerwonym.

Trzecią operacją jest permutacja - polega ona na przestawianiu poszczególnych elementów wektorów. Na przykład, jeśli trójwymiarowy wektor ma wartości oznaczone x, y i z, permutacja może przenieść wartość x na y, y na z, a z na x. Permutacja pozwala budować strukturę i radzić sobie z sekwencjami, zdarzeniami, które dzieją się jedno po drugim. Jeśli mamy dwa zdarzenia, reprezentowane przez hiperwektory A i B, to gdyby nałożyć je na jeden wektor, zniszczyłoby to informacje o kolejności zdarzeń. Połączenie dodawania z permutacją zachowuje kolejność - zdarzenia można odtworzyć w kolejności, odwracając operacje.

Razem te trzy operacje okazały się wystarczające do stworzenia formalnej algebry hiperwektorów, która pozwoliła na symboliczne rozumowanie. W 2015 roku Eric Weiss, zademonstrował, jak odwzorować złożony obraz w postaci pojedynczego hiperwymiarowego wektora, który zawiera informacje o wszystkich obiektach na obrazie, w tym o ich właściwościach, takich jak kolory, pozycje i rozmiary. Wkrótce kolejny badacze zaczęli opracowywać algorytmy hiperwymiarowe, aby odtworzyć proste zadania dla głębokich sieci neuronowych, takie jak np. klasyfikowanie obrazów.

To jednak dopiero początek. Mocną stroną obliczeń hiperwymiarowych jest zdolność do  komponowania i dekomponowania hiperwektorów na potrzeby rozumowania. Najnowsza demonstracja tego zjawiska miała miejsce w marcu 2023 r., kiedy Abbas Rahimi i współpracownicy z IBM Research w Zurychu wykorzystali obliczenia hiperwymiarowe w sieciach neuronowych do rozwiązania klasycznego problemu w abstrakcyjnym rozumowaniu wizualnym, które jest sporym wyzwaniem dla typowych sieci neuronowych, a nawet niektórych ludzi. Chodzi test z obrazami obiektów geometrycznych na siatce, np. 3 na 3 pola. Jedna pozycja w siatce jest pusta. Zadanie polega na wyborze z  zestawu kandydujących obrazów tego, który najlepiej pasuje do pustego miejsca. Znamy to m.in.  z testów na inteligencję.

Aby rozwiązać ten problem przy użyciu obliczeń hiperwymiarowych, naukowcy najpierw stworzyli słownik hiperwektorów do reprezentowania obiektów na każdym obrazie. Każdy hiperwektor w słowniku reprezentuje obiekt i pewną kombinację jego atrybutów. Następnie zespół przeszkolił sieć neuronową do badania obrazu i generowania dwubiegunowego hiperwektora – +1 lub –1 - który jest zbliżony do pewnej superpozycji hiperwektorów w słowniku. Wygenerowany hiperwektor zawiera zatem informacje o wszystkich obiektach i ich atrybutach na obrazie. Gdy sieć wygeneruje hiperwektory dla każdego z obrazów kontekstowych i dla każdego kandydata na puste miejsce, inny algorytm analizuje hiperwektory, aby utworzyć rozkłady prawdopodobieństwa dla liczby obiektów na każdym obrazie, ich wielkości i innych cech. Te można przekształcić w hiperwektory, umożliwiając wykorzystanie algebry do przewidywania najbardziej prawdopodobnego obrazu do wypełnienia wolnego miejsca. To podejście dało 88-procentową dokładność w przypadku jednego zestawu problemów, zaś rozwiązania oparte wyłącznie na sieciach neuronowych wykazywały 61 proc. dokładności. Zespół wykazał również, że dla siatek 3 na 3, ich system był prawie 250 razy szybszy niż tradycyjna metoda, która wykorzystuje reguły logiki symbolicznej do rozumowania.

Wydajność dzisiejszych komputerów gwałtownie spada, jeśli błędy spowodowane np. losową zamianą bitów (0 staje się 1 lub odwrotnie) nie mogą zostać skorygowane przez wbudowane mechanizmy korekcji błędów. Obliczenia hiperwymiarowe lepiej tolerują błędy, ponieważ nawet jeśli hiperwektor narażony jest na znaczną liczbę losowych odwróceń bitów, nadal jest zbliżony do oryginalnego wektora. Wykazano, że systemy te są co najmniej dziesięć razy bardziej odporne na błędy sprzętowe niż tradycyjne sieci neuronowe, które same w sobie są o rzędy wielkości bardziej odporne niż klasyczne architektury obliczeniowe. Kolejną zaletą obliczeń hiperwymiarowych jest przejrzystość - metoda wyraźnie wskazuje, dlaczego system wybrał daną odpowiedź. Nie ma więc „czarnej skrzynki”.

Wszystkie te zalety w porównaniu z tradycyjnymi obliczeniami sugerują, że obliczenia hiperwymiarowe dobrze nadają się do nowej generacji niezwykle wytrzymałego sprzętu o niskim poborze mocy. Są one również kompatybilne z „systemami obliczeniowymi w pamięci”, które wykonują obliczenia na tym samym sprzęcie, który przechowuje dane (w przeciwieństwie do tradycyjnych cyfrowych komputerów opartych na architekturze von Neumanna, które nieefektywnie przenoszą dane między pamięcią a jednostką centralną). Urządzenia nowego typu mogą mieć konstrukcję analogową, działając przy bardzo niskim napięciu, co czyni je energooszczędnymi, ale także podatnymi na przypadkowe zakłócenia.

Pomimo zalet, konstrukcje komputerów opartych na obliczeniach hiperwymiarowych są nadal w powijakach. Wciąż muszą zostać przetestowane pod kątem rzeczywistych problemów i w znacznie większej niż laboratoryjna skali, bliższej rozmiarom nowoczesnych sieci neuronowych. Wymagają niezwykle wydajnego sprzętu, co w tej chwili stawia pod znakiem zapytania ich opłacalność.

Wobec kwantów znane komputery mogą być bezsilne

Oczywiście obliczenia hiperwymiarowe to nie jedyny kierunek w poszukiwaniu alternatywnych wobec cyfrowych systemów opartych na architekturze von Neumanna. Piszemy o nich obszernie, gdyż są mniej znaną koncepcją. Mniej znaną, niż np. wielokrotnie opisywana w „Młodych Techniku” nadzieja na rewolucję komputerową - maszyny kwantowe (2), które budzą zarówno entuzjazm, trochę przedwczesny, jak też wielkie obawy, związane przede wszystkim z bezpieczeństwem naszych systemów, kryptografii, transakcji, kont bankowych i internetu jako całości. Systemy kwantowe mogą sprawić, że komputery, jakie znamy, nie przetrwają, nie tylko dlatego, że nie sprostają konkurencji.

3. Komputer kwantowy IBM. Zdjęcie: stock.adobe.com

Cały nasz Internet opiera się na dużych liczbach pierwszych, które są trudne do rozpoznania. Nowoczesne komputery używają szyfrowania znanego jako RSA, które opiera się na asymetrycznych kluczach, więc masz jeden klucz do szyfrowania danych i inny klucz do ich odszyfrowania. Klucz blokujący dane jest publicznie znany, ale tylko ty masz klucz deszyfrujący, klucz prywatny. Teoretycznie można obliczyć czyjś klucz prywatny na podstawie jego klucza publicznego. Ale nawet przy użyciu najpotężniejszego na świecie konwencjonalnego komputera zajęłoby to lata. Wynika to z faktu, że podstawą kluczy są dwie ogromne liczby pierwsze mnożone przez siebie.

Klucz publiczny zawiera wynik tego mnożenia, ale trzeba znać dwie liczby pierwsze, aby utworzyć klucz prywatny. Ponieważ problem odkrycia tych liczb jest w zasadzie nierozwiązywalny dla zwykłych komputerów, zanim ktoś je złamie, klucz nie jest już używany. Jednak potężny komputer kwantowy może wykonać te obliczenia w ciągu kilku sekund. Komputery kwantowe są obecnie stosunkowo słabe i przede wszystkim niestabilne. Uważa się jednak, że kiedy uda się zbudować maszyny z trwałymi kubitami w dużej liczbie, każdy, kogo na to będzie stać, będzie mógł złamać szyfrowanie internetowe i ukraść dowolny fragment danych.

Świadomość zagrożenia sięga lat 90., kiedy to amerykański profesor Peter Shor opracował matematyczny opis sposobu, w jaki sposób komputer kwantowy mógłby złamać „kryptografię klucza publicznego”, na której nadal polegamy. Zespół chińskich naukowców ogłosił w styczniu tego roku, że znalazł praktyczny sposób realizacji tego złowrogiego planu. Potem amerykańscy eksperci uspokajali, że Chińczycy opracowali wciąż jedynie teoretyczną koncepcję, a nie maszynę, która faktycznie jest do tego zdolna. Wkrótce potem, w lutym Google, ogłosiło przełom w dziedzinie obliczeń kwantowych (kolejny już - w 2019 Google ogłosiło, że osiągnęło supremacje kwantową). Jednak nawet najbardziej optymistyczni eksperci podają rok 2027 jako najwcześniejszy termin, w którym powstanie w pełni sprawna maszyna kwantowa, choć to są optymiści - wielu innych przesuwa tę perspektywę o lata i dekady w przyszłość.

Mimo to rozliczne służby wywiadowcze już twierdzą, że zagrożenia są realne. Brytyjskie Narodowe Centrum Cyberbezpieczeństwa (NCSC), „uznaje za poważne zagrożenie, jakie komputery kwantowe stanowią dla długoterminowego bezpieczeństwa kryptograficznego”. Rząd USA twierdzi, że mogą one „poważnie zagrozić poufności i integralności komunikacji cyfrowej”, a amerykańska Agencja Bezpieczeństwa Narodowego (NSA) stwierdza, że to teraz jest „czas na planowanie, przygotowanie i budżetowanie” nowych zabezpieczeń. W grudniu 2022 r. Joe Biden podpisał ustawę Quantum Computing Cybersecurity Preparedness Act. Zobowiązuje ona amerykańskie agencje rządowe do rozpoczęcia tworzenia listy wszystkich systemów, które mogą być podatne na działanie komputera kwantowego i opracowania sposobu ich aktualizacji do kryptografii post-kwantowej, z wykorzystaniem zwycięzców konkursu NIST.

Gdyby ktoś o niedobrych intencjach zyskał dostęp do działającego, stabilnego i silnego systemu kwantowego, to specjaliści są dość zgodni, że zniszczyłoby to Internet, jaki znamy i zniknęłoby bezpieczeństwo, jakie znamy. Niemożliwe stałyby się prywatne e-maile, historia wyszukiwania i korzystania w sieci, bezpieczne płatności, szyfrowanie wiadomości i danych. Łatwy byłby dostęp do cudzego konta w mediach społecznościowych. A to tylko początek listy zagrożeń.

3. Geometria matematyczna jako zbawienie kryptografii.
Zdjęcie: stock.adobe.com

Co robić w tej sytuacji. Sytuacja nie jest beznadziejna nie tylko dlatego, że do operacyjnych komputerów kwantowych jeszcze nam (i cyberprzestępcom) sporo brakuje. Także dlatego, że już teraz pracuje się nad metodami zabezpieczeń w przyszłej erze kwantowej, np. nad kryptografią opartą na kratach czy też siatkach (3). Ta metoda szyfrowania nie wykorzystuje złożonych algorytmów, jak RSA. Zamiast tego wykorzystuje geometrię w aż stu wymiarach. Szyfrowanie to działa poprzez przedstawienie siatki składającej się z wielu węzłów (punktów w tej teoretycznej przestrzeni). Kod bazowy do szyfrowania jest ukryty w tych dwóch węzłach, podobnie jak w przypadku dwóch liczb pierwszych w RSA. Aby złamać kod, komputer musi znaleźć te dwa węzły. W trzech wymiarach jest to łatwe. Ale w stu wymiarach jest to zadanie trudno wykonalne, nawet dla komputerów kwantowych. Problem w tym, że sieci szyfrujące w ten sposób mają gigantyczne rozmiary. Klucz RSA składa się z 256 bitów nie zajmując wiele przepustowości łączy. Klucz kratowy jest o rzędy wielkości większy, dramatycznie spowalniając połączenie. Jest to duże wyzwanie, z którym niełatwo sobie poradzić. W efekcie, podobnie zresztą jak komputery kwantowe, technika ta jest daleka od użyteczności. 

Mirosław Usidus