Niniejszy wpis kieruję przede wszystkim – choć nie tylko! – do uczestników moich zajęć na Wydziale Elektroniki i Technik Informacyjnych PW, pt. „Filozofia informacji i techniki”. Na kolejnym spotkaniu mamy dyskutować temat technik obliczeniowych przyszłości. Umówiliśmy się, że osoby zapisane do dyskusji przedstawią swoje argumenty w blogu, w postaci osobnych komentarzy…
Czekając na pierwsze głosy, przedstawiam niżej – dla rozgrzewki i zachęty zarazem – krótką składankę argumentów, których używali studenci w roku ubiegłym.
Oto ona:
1. Pierwszą kwestią na jaką warto zwrócić uwagę jest fakt, że dzisiaj przy budowie tranzystorów, które stanowią konieczny element współczesnych komputerów cyfrowych, używa się krzemu. Naukowcy przewidują że do 2023 roku możliwości tego pierwiastka wyczerpią się i nie będziemy w stanie bardziej zmniejszyć układów, ponieważ będą nas ograniczały rozmiary elektronów.
W tym kontekście warto zauważyć, że często lepsze osiągi otrzymujemy nie dzięki rozwojowi hardware’u, lecz dzięki optymalizacji software’u. Dlatego, nawet kiedy wykorzystamy już całkowicie możliwości krzemu, mimo wszystko wciąż będziemy mogli z niego „wyciągnąć” więcej. Również za sprawą technik sztucznej inteligencji.
2. Jedną z najbardziej obiecujących technologii przyszłości, rozwijaną już dzisiaj, są komputery kwantowe. Pozwalają one na tysiące razy wydajniejsze przetwarzanie danych, ponieważ stosowane w nich q-bity (kwantowy odpowiednik bitów) mogą być jednocześnie w obu stanach (a w standardowych komputerach przyjmują tylko jeden stan).
Istnieje już IBM Q Experience – platforma online dająca każdemu dostęp do zestawu prototypów komputerów kwantowych IBM przez chmurę. Może być wykorzystywana do testowania algorytmów „kwantowych” czy innych eksperymentów.
3. Kolejne kilka technologii, o których wspomnę jest wymieniana jako jedne z możliwych technologii, które zastąpią komputery cyfrowe, jednak póki co są dalekie do jakiejkolwiek realizacji.
Pierwszą z nich są komputery oparte nie o przepływ elektronów, ale o przepływ światła. Jak wiemy światło osiąga największą prędkość we wszechświecie, czyli dałoby to możliwości zbudowania komputera o maksymalnej możliwej szybkości przesyłania sygnałów. Problemem jaki napotykamy jest to, że fotony nie mają masy i związane z tym problemy zbudowania czegoś podobnego do tranzystora w oparciu o światło.
Drugą ciekawą koncepcją jest zbudowanie komputera opartego o DNA. DNA posiada każdy organizm żywy, więc jeśli chodzi o zasoby to są one ogromne zwłaszcza, że może się ono odnawiać. Z pewnych opracowań naukowych wiadomo także, że za pomocą odpowiedniej manipulacji łańcuchami DNA udaje się rozwiązywać bardzo złożone problemy kombinatoryczne.
Kolejną ideą, która stanowi rozwinięcie powyższej, jest komputer biologiczny, którego i podstawowe elementy przetwarzające byłyby wzięte wprost z natury (np. byłyby to realne komórki nerwowe jakiegoś organizmu, np. szczura). Architektura takiego układu byłaby również wzorowana na naturze, np. przypominałaby architekturę mózgu.
Powyższe argumenty są oczywiście tylko „sygnałem wywoławczym”.
Czekam na głosy tegoroczne, równie ciekawe (i rozbudowane) jak powyższy miks.
Zapraszam do dyskusji WSZYSTKICH czytelników bloga — Paweł Stacewicz
W hardwarze jak i softwarze są zauważalne pewne techniki (technologie) obliczeniowe, które określamy mianem przyszłościowych.
W hardwerze można szczególnie zauważyć takie technologie jak:
– chmura obliczeniowa (ang. cloud computing) – model, w którym przechowywanie informacji oraz aplikacji odbywa się na serwerach poza lokalną siecią. Jest ona przeznaczona nie tylko dla indywidualnych użytkowników, lecz coraz częściej pojawia się w różnego rodzaju przedsiębiorstwach.
– komputery kwantowe – komputery, których informacje przechowywane są w kubitach. Firma Microsoft udostępniła ostatnio nowy język programowania komputerów kwantowych. Każdy z nas dzięki gotowym biblioteką może zasymulować działanie komputera kwantowego na tradycyjnych komputerach.
– łańcuch bloków (ang. blockchain) – technologia służąca do przechowywania i przesyłania inforamcji o transakcjach internetowych.
W softwarze szczególnie rozwijającymi dziedzinami są:
– głębokie sieci neuronowe
– uczenie ze wzmocnieniem (ang. reinforcement learning)
– algorytmy ewolucyjne
Warto zauważyć, iż te dwa światy (hardware i software) wzajemnie od siebie współzależną – rozwój w jednym świecie wpływa na rozwój w drugim. Zjawisko to można zaobserwować m.in. w Big Data. Dziedzina ta zaczęła się rozwijać po pojawieniu się komputerów o większej mocy obliczeniowej.
Według mnie to, co ludzkość traktowała jak wyraźną drogę w rozwoju technologii obliczeniowych, kończy się ślepym zaułkiem. Najgorsze jest to, że wiedzieliśmy o tym od bardzo dawna – od momentu gdy pierwszy naukowiec złapał się za głowę na myśl „Dobrze, możemy zmniejszać tranzystory…. ale kiedyś nie będzie to możliwe”. Przez wiele czasu była to kwestia gdybania, pustych rozmyślań – przecież jeszcze tyle możemy zrobić. Jednak teraz do zrobienia nie jest już wiele. Coraz bliżej jesteśmy momentu, gdy fizycznie nie będziemy zdolni zmniejszyć tranzystory, z których utworzone są wszystkie urządzenia cyfrowo przetwarzające informacje. Prawo Moore’a powoli zbliża się do końca dla krzemu.
Jednak nie samym krzemem ziemia stoi. Tylko 26,95% skorupy ziemskiej się z niego składa – oraz pewnie 90% układów cyfrowych, gdzie pozostała część masy to rozmaite domieszkowania. Poprawność tej drugiej cyfry niech zostanie poza tematem tych rozważań, chodzi o to jak skupieni jesteśmy na krzemie jako budulcu. Nie musimy się do niego jednak ograniczać. Grafen, wielka nadzieja naukowców, posłużył do utworzenia układów o wydajności wielokrotnie lepszej od krzemowych. Mowa tu jednak o układzie ciągłym, nie cyfrowym. Jednak węgiel nadal może być materiałem przyszłości – IBM pokłada wielkie nadzieje w nanorurkach węglowych. Jednak nawet jeśli te materiały nie staną się przyszłością samych obliczeń, to nadal są to znakomite przewodniki – jeśli zdołamy zbudować procesor który wszystkie informacje przenosi po grafenie, to będziemy mogli budować wielordzeniowe procesory bez martwienia się o czas, jaki potrzebuje elektron by dostać się od rdzenia do pamięci. Co też stanowi inną możliwość – operacje czysto na pamięci, by jednostka centralna wykonywała tylko te najbardziej złożone obliczenia.
Nie powinniśmy jednak fiksować się tylko na krzemie. Przecież od dawna istnieją komputery, które swoją mocą wielokrotnie przeganiają nawet dzisiejsze superkomputery. A są to nasze mózgi. Pisarze sci-fi już od dawna rozmyślają jak mógłby wyglądać świat, w którym mózg jest jednostką obliczeniową komputera. Te wizje…. są rozmaite. Niektóre radosne, a niektóre mroczne ( tak Warhammer 40k, na ciebie się patrzę ). Wszystkie jednak pokazują jak wielka moc obliczeniowa drzemie w ludzkiej głowie… lub głowie dowolnego innego stworzenia z mózgiem. Jest to jednak pieśń przyszłości. Nadal dokładne działanie mózgu jest dla nas zagadką. Obecny stan wiedzy niewiele się różni od wiedzy znachora. Racja, teraz mamy znacznie lepszą diagnostykę, więcej narzędzi – ale nadal wszystko opiera się na znanych przypadkach i próbach poprawienia stanu chorego. Jednak już dzisiaj moglibyśmy zapisać dane w DNA. Każda nić składa się z kombinacji 4 różnych białek, które tworzą dwie pary komplementarne – a więc niczym zamek błyskawiczny moglibyśmy zamknąć dwie nicie, dla samego bezpieczeństwa danych. Szacuje się, że łyżka DNA ma w sobie więcej danych niż ludzkość dotychczas wytworzyła. Ogromny potencjał, chociażby na potrzeby archiwizacji danych.
DNA przestawia też inną możliwość – DNA koduje białka. Odpowiednie białka działają na siebie w konkretny sposób. A co jeśli istnieją operacje, których złożoność obliczeniowa dla procesora cyfrowego jest niebotyczna, ale po zdekodowaniu na kod DNA i wykonaniu przez odpowiednie białka daje efekty niemal natychmiast?
Istnieje też inna możliwość. A co jeśli zamiast szukać innych dróg, zaprzęgniemy sztuczną inteligencję do pisania programów? Ta wizja może przywodzić na myśl SKYNET lub inną złą sztuczną inteligencję znaną z fikcji. Te rozmyślania zostawmy jednak na inny czas. Ważniejsze jest to, że odpowiednio silny komputer może być zdolny do analizy problemu znacznie głębszej niż pojedynczy człowiek jest zdolny. A nawet jeśli nie – nadal człowiek będzie musiał napisać kod i go przetestować – to może chociaż optymalizacja? Analiza kodu maszynowego i optymalizacja go pod różne platformy. Przecież to jest główna siła konsol do gier – które mimo konfiguracji jak sprzed generacji w stosunku do komputerów, są zdolne do tego samego co silne komputery osobiste.
Temat ten jest niczym rzeka. Można rozważać bardzo długo i z niektórymi pomysłami odpłynąć. Z pewnością znajdą się ścieżki, które prowadzą do nikąd. Jednak tak długo jak nie dopłyniemy do morza powinna istnieć jakaś droga w dół tej rzeki.
Obecnie przemysł komputerowy opiera swoje rozwiązania na wykorzystaniu krzemu. Wraz z biegiem czasu szybkość zmniejszania rozmiarów układów scalonych zaczyna drastycznie maleć (zgodnie z krzywą Moore’a).
Czy to najwyższy czas na zmiany? Jedną z alternatyw dla krzemu jest węgiel. Użycie grafenu pozwala ominąć ograniczenia związane z upakowaniem tranzystorów, całość ma się sprowadzać do dwuwymiarowej struktury, czyli pojedynczej warstwy atomów węgla. Głównymi zaletami tego rozwiązania jest bardzo dobra przewodność prądu oraz znaczne zmniejszenie wydzielanego ciepła przez układ, co znacznie zwiększyłoby częstotliwość w porównaniu do współczesnych rozwiązań. Niestety przewidywany czas na wprowadzenie w życie tego rozwiązania szacuje się na okres 50-100 lat.
Jedną ze współczesnych prób zwiększenia wydajności procesorów przedstawiła firma AMD. Wciąż wiąże się ona z krzemem, zwiększenie ilości tranzystorów opiera się na składaniu poszczególnych jednostek w trójwymiarowe stosy.
Zupełnie inne, równie futurystyczne rozwiązanie proponują transhumaniści. Zmierzają oni do opracowania rewolucyjnego rozwiązania, które nie będzie opierało się na układach logicznych. Wszystko dzięki rozwojowi technologii NBIC (nanotechnology, biotechnology, information technology and cognitive science).
Zdaniem transhumanistów dzięki nauce i technice można przezwyciężyć ograniczenia związane z ludzkim ciałem. Jednym z najciekawszych, a jednocześnie najmniej inwazyjnym pomysłem jest zaaplikowanie nanorobotów do krwioobiegu. To właśnie dzięki nim zostaną wyeliminowane wszelkie choroby oraz zostanie zwiększona wydolność organizmu człowieka.
Nie można zapomnieć o działaniu nanorobotów na mózg. Ich głównym zadaniem ma być stymulacja określonych części kory mózgowej oraz zwiększenie intensywności i szybkości przesyłania impulsów nerwowych. W wyniku takiej ingerencji człowiek zostanie obdarzony super inteligencją, która umożliwi mu rozwiązywanie złożonych problemów obliczeniowych w bardzo krótkim czasie.
Jednak wciąż pojawia się pytanie czy nawet po takiej ingerencji zdolności intelektualne człowieka będą w stanie konkurować z możliwościami maszyn?
Sztuczna inteligencja i zastępowanie ludzi
Dzięki sztucznej inteligencji jest coraz prostsze zastąpienie nie tylko fizycznej siły roboczej, ale też umysłowej przez komputery.
Algorytmy ewolucyjne/genetyczne zastąpią wiele zawodów analityczych, skupiajacych się na zbudowaniu optymalnych rozwiązań trudnych obliczeniowo problemów.
Szybkie przeszukiwanie bazy danych może zastąpić ludzi z ogromną wiedzą specjalistyczną. Zoptymalizowane przeszukiwanie wygenerowanych stanów będzie dawać lepsze rezultaty przy podejmowaniu decyzji przy wielu podobnych opcjach.
Sieci neuronowe przy dobrej konstrukcji i wystarczającej ilości przypadkow do nauki staną się lepsze w określonym zadaniu od nawet najlepiej wytrenowanych ludzi.
Każda z tych technik będzie rozwijana w przyszłości, a ich możliwości będą rosły tak jak ich znaczenie w informatyce.
Sztuczna inteligencja i zastępowanie ludzi
Dzięki sztucznej inteligencji jest coraz prostsze zastąpienie nie tylko fizycznej siły roboczej, ale też umysłowej przez komputery.
Algorytmy ewolucyjne/genetyczne zastąpią wiele zawodów analitycznych, skupiających się na zbudowaniu optymalnych rozwiązań trudnych obliczeniowo problemów.
Szybkie przeszukiwanie bazy danych może zastąpić ludzi z ogromną wiedzą specjalistyczną. Zoptymalizowane przeszukiwanie wygenerowanych stanów daje będzie dawać lepsze rezultaty przy podejmowaniu decyzji przy wielu podobnych opcjach.
Sieci neuronowe przy dobrej konstrukcji i wystarczającej ilości przypadków do nauki staną się lepsze w określonym zadaniu od nawet najlepiej wytrenowanych ludzi.
Każda z tych technik będzie rozwijana w przyszłości, a ich możliwości będą rosły tak jak ich znaczenie w informatyce.
Uważam, że jedną z bardziej obiecujących technik obliczeniowych przyszłości będzie przeniesienie zadań spoczywających teraz na komputerach, lub całych ich sieciach do chmury, tj. na zewnętrzny serwer. Już teraz można zaobserwować trendy zmierzające w tym kierunku. Takie rozwiązanie ma wiele zalet, np. dostępność wymaganej zawartości z wielu komputerów, o ile są podłączone do internetu, łatwiej jest zarządzać scentralizowaną siecią, niż rozproszonymi jednostkami. Ponadto obliczenia w chmurze mogą się sprawdzić w miejscach, gdzie infrastruktura elektryczna nie pozwala na zwiększenie mocy obliczeniowej na miejscu, np. w CERNie. Nawet na rynku gamingu można zaobserwować taki trend – kolejne firmy oferują platformy do tzw. grania w chmurze.
Jednakże, nic nie wydaje się równie obiecujące co perspektywa dobrze rozwiniętej sztucznej inteligencji, która może być wykorzystana w wielu miejscach, od wspomagania ludzi przy rutynowych zajęciach, przez różnej maści programy oparte na uczeniu maszynowym adaptujące się do zmieniających się warunków, wspomaganie programistów i projektantów przez optymalizację ich pracy – możliwości są nieskończone. Możliwe jest także, że z czasem rozwijania, sztuczna inteligencja wyprze, albo w pewien sposób pozbawi część ludzi pracy, jednakże nie jest to wcale negatywnym zjawiskiem, działo się tak w przeszłości bez udziału komputerów, a każda taka sytuacja powoduje napędzanie rozwoju technologicznego.
1. Uczenie maszynowe. Wykorzystywanie tego sposobu obliczeń w najbardziej newralgicznych branżach jest nadal słabo opisane. Jeden ze znanych programistów zajmujący się m.in. wykorzystywaniem machine learningu na giełdzie na pytanie czemu nie dzieli się tą wiedzą odpowiedział, że w tym momencie są tam największe pieniądze, ponieważ można przewidzieć bardzo istotne rzeczy. Jest to człowiek, który często udziela się na przeróżnych konferencjach, a jednak w tym przypadku tego tematu, razem z innymi ludźmi, milczy. Podkreśla to aktualne znaczenie tego sposobu obliczeń. Warto zwrócić też uwagę na wykorzystanie machine learningu w branży medycznej – już teraz słyszy się o możliwości wykrywania podejrzanych zmian widocznych na rezonansie magnetycznym czy zdjęciu rentgenowskim.
2. Chmura. Już od jakiegoś czasu na popularności zyskują rozwiązania Software-as-a-Service, gdzie klient, aby używać oprogramowania nie musi budować infrastruktury po swojej stronie. Wystarczy, że zaloguje się na zewnętrzny serwer i uzyskuje natychmiastowy dostęp do aplikacji. Twórca oprogramowania natomiast może je udostępnić i nie przejmować się zbytnio zagadnieniami takimi jak kopia zapasowa, obciążenie strony (automatyczne zwiększenie możliwości serwera) czy bezpieczeństwo danych. Wystarczy, że wyrazi chęć na takie usługi wykonywane przez twórcę chmury, gdzie udostępnia program. Wiąże się to oczywiście z ryzykiem, bo nie wiemy gdzie fizycznie są dane. Dlatego to rozwiązanie nie jest wykorzystywane np. w wojsku czy administracji państwowej.
3. Grafen. Tranzystory wykorzystujące grafen mogą pozwolić nawet na 1000-krotny skok taktowania, czyli do poziomu terahertzów, ze względu na zmniejszone wydzielanie ciepła i wysoką przewodność prądu. Przez swoją elastyczność może pomóc w tworzeniu „ubieralnej” elektroniki, która z czasem może przerodzić się w dodatki umieszczane już w ciele samego człowieka.
4. Mózg człowieka. Jest ciągle tematem badań, więc wykorzystanie jego potencjału do obliczeń komputerowych to melodia jeszcze dalszej przyszłości. Mózg działałby jak czarna skrzynka czy funkcja, którą „karmilibyśmy” danymi (przez zmysły lub bezpośrednio), by potem uzyskać wynik. Nie wiadomo natomiast czy jakiekolwiek obliczenia przy użyciu mózgu mogłoby konkurować z komputerem co do niezawodności, szybkości czy prostoty algorytmu.
W moim wywodzie nie będę zajmował się technologiami z których będą budowane komputery lecz modelami obliczeniowymi z których będą korzystać.
Aktualnie całe oprogramowanie jest tworzone na klasyczne komputery determistyczne. Sądze że w przyszłości komputery kwantowe zaczną mieć większe znaczenie. Ich wyjątkowy sposób wykonywanie obliczeń daje możliwość rozwiązywania dużej ilości problemów o wiele szybciej. Pomimo że komputery o tak odmiennym modelu obliczeniowym otwierają wiele możliwości sądzęże klasyczne komputery dalej będą dominować na świecie. Ich model programowy jest bardziej przejrzysty dla człowieka. Komputery kwantowe będą wykorzystywane tylko dowykonywania specjalistycznych algorytmów.
Samo oprogramowanie pisane na oba modele (klasyczny i kwantowy) będzie dzieliło się na dwie gałęzie: klasyczną algorytmikę oraz szcztuczną inteligencję. Problemy dla którego istnieją dobre klasyczne algorytmy dalej będzie rozwiązywane korzystając z tego podejścia. Nie ma potrzeby zmieniać czegoś co działa, szczególnie gdy czasami nie da się tego zrobić lepiej. Pomimo że sztuczna inteligencja jest potężnym narzędziem do rozwiązywania bardzo skoplikowancyh problemów ma swoje mankamenty. Rozwiązania otrzymane za jej pomocą nie zawsze są poprawne. Są dziedziny życia w której jest to niedopuszczalne.
Współczesne komputery cechują się ogromną szybkością, co wystarcza większości użytkownikom. Istnieją jednak problemy, które nie są rozwiązywalne nawet przez superkomputery konstruowane przez naukowców. Na drodze do znalezienia rozwiązania często staje czas. Stąd badacze z największych uczelni szukają możliwości udoskonalenia komputerów. Jedną z dobrze zapowiadających się idei jest wykorzystanie do budowy komputerów fizyki kwantowej. Na pomysł wpadł na początku lat 80. Paul Benioff z Argonne National Laboratory w USA.
Fundamentalną różnicą między komputerami kwantowymi i tradycyjnymi jest zastosowanie kubitów do przechowywania informacji. Bity mogą być naraz tylko w jednym stanie – 0 lub 1, natomiast kubity są kwantową superpozycją 0 i 1. Ten fakt sprawia, że kubity niosą o wiele więcej informacji niż tradycyjny bit. Ponadto komputery kwantowe umożliwiają wykonywanie równoległych obliczeń, co nie jest łatwe do uzyskania w komputerze bitowym (trzeba zbudować komputer z kilkoma procesorami lub procesor wielordzeniowy, co wpływa rozmiar sprzętu).
Komputery kwantowe mogą być szczególnie przydatne w zadaniach szyfrowania i deszyfrowania danych. Banki bazują na informatyce i liczbach pierwszych. Nasze konta będą bezpieczne dopóki nie odnajdziemy prawidłowości liczb pierwszych. Dane szyfrowane są za pomocy ogromnych liczb pierwszych. Trudność polega na odnalezieniu tych liczb. Naukowcy twierdzą, że komputery kwantowe pozwolą dokonywać rozkładu liczb na liczby pierwsze w bardziej realnym czasie. W 1994 roku Peter Shor wymyślił nawet algorytm, który z pomocą komputera kwantowego mógłby szybko rozkładać ogromne liczby na iloczyn liczb pierwszych. W 2001 roku informatycy z IBM i Uniwersytetu Stanford pokazali działanie algorytmu Shora na 7-kubitowym komputerze. Ogromnym osiągnięciem w 2012 roku było obliczenie przez 84 – kubitowy komputer kwantowy kilku liczb Ramseya. Fizyka kwantowa jest dosyć nowym odkryciem i uważam, że tkwi w niej olbrzymi potencjał. Należy tylko umiejętnie z niej skorzystać. Być może wiele problemów algorytmicznych o złożoności n! będzie można rozstrzygnąć w realnym czasie.
W moim wywodzie nie będę zajmował się technologiami z których będą budowane komputery lecz modelami obliczeniowymi z których będą korzystać.
Aktualnie całe oprogramowanie jest tworzone na klasyczne komputery determistyczne. Sądze że w przyszłości komputery kwantowe zaczną mieć większe znaczenie. Ich wyjątkowy sposób wykonywanie obliczeń daje możliwość rozwiązywania dużej ilości problemów o wiele szybciej. Pomimo że komputery o tak odmiennym modelu obliczeniowym otwierają wiele możliwości sądzęże klasyczne komputery dalej będą dominować na świecie. Ich model programowy jest bardziej przejrzysty dla człowieka. Komputery kwantowe będą wykorzystywane tylko dowykonywania specjalistycznych algorytmów.
Samo oprogramowanie pisane na oba modele (klasyczny i kwantowy) będzie dzieliło się na dwie gałęzie: klasyczną algorytmikę oraz szcztuczną inteligencję. Problemy dla którego istnieją dobre klasyczne algorytmy dalej będzie rozwiązywane korzystając z tego podejścia. Nie ma potrzeby zmieniać czegoś co działa, szczególnie gdy czasami nie da się tego zrobić lepiej. Pomimo że sztuczna inteligencja jest potężnym narzędziem do rozwiązywania bardzo skoplikowancyh problemów ma swoje mankamenty. Rozwiązania otrzymane za jej pomocą nie zawsze są poprawne. Są dziedziny życia w której jest to niedopuszczalne.
Jednym z możliwych wariantów technik obliczania przyszłości może być nie chmura, lecz łączenie komputerów (w tym smartfonów) w jeden duży superkomputer. Różnica w porównaniu do chmury polegałaby na tym, że urządzenie (a przynajmniej jedno z nich) jest położone bezpośrednio u użytkownika. Wszystkie podłączone urządzenia łączą się ze sobą przy pomocy Internetu i wspólnie oferują swoją łączną moc obliczeniową. Wykonywanie operacji w chmurze odbywa się na sprzęcie już określonym dla danej chmury, w moim modelu to użytkownicy tworzą chmurę i mogą ją rozbudowywać w dowolnym momencie poprzez połącznie swojego urządzenia (w ten sam sposób mogą ją również pozbawiać mocy obliczeniowej).
Pomysł ten nie jest moim własnym wymysłem – już firma HTC wprowadziła program „Power to give” – w którym użytkownik telefonu tej firmy mógł podarować część mocy obliczeniowej swojego telefonu na cele charytatywne lub programy naukowe z zakresu medycyny, nauki i ochrony środowiska. Działa to w sposób nie wpływający w ogóle na właściciela smartfonu – wystarczy, że podłączy telefon do ładowania (jednym z wymogów działania tego programu jest właśnie podłączenie do prądu, Internetu i >90% baterii) i moc obliczeniowa będzie przekazywana chociażby kiedy użytkownik śpi.
Moim zdaniem wizja ta jest na chwilę obecną wizją oferującą największą czystą moc obliczeniową – wszędzie są komputery, większość z nich przewyższa możliwościami zwykły smartfon (kilkutyśięcznokrotnie albo nawet z przewagą kilku milionów krotną jeżeli weźmiemy pod uwagę tzw. Superkomutery). Połączenie tej mocy obliczeniowej w jedno (co jest możliwe w dobie szybkiego Internetu) sprawiłoby, że otrzymalibyśmy „komputer w chmurze” o mocy przewyższającej nawet najpotężniejsze obecne superkomputery.
Oczywiście do osiągnięcia tego potrzebne byłoby odpowiednie oprogramowanie obsługujące te wszystkie komputery i zapewniające bezproblemowe dołączanie do tej sieci nowych urządzeń oraz odpowiednia koordynacja zadań wykonywanych przez tę superjednostkę. Z perspektywy obecnych czasów wydaje się jednak, że największym problemem nie byłoby oprogramowanie lecz zachęcanie ludzi, a zwłaszcza właścicieli najpotężniejszym maszyn, do brania czynnego udziału w tym programie.
Moim zdaniem, największy wpływ na informatykę w przyszłości będzie miała sztuczna inteligencja. Jest to bezpośrednia odpowiedź na ludzkie potrzeby oszczędzania czasu i dążenia do zautomatyzowania życia. Z AI bezpośrednio jest wiązany Machine Learning umożliwiający analizowanie określonych zachowań i danych, w następstwie czego, prawdopodobieństwo wykrycia pewnych schematów wzrasta do 1. Na długość życia człowieka niepodważalnie ma wpływ dostęp do opieki medycznej, której jakość rośnie wraz z rozwojem medycyny. Tu wkracza ML, który można zastosować do wykrywania komórek nowotworowych. Nie jest on co prawda doskonały, ale jestem pewien, że w przyszłości wraz z rozwojem AI, pozostałe dziedziny będą się doskonalić.
Należy w tym momencie też wspomnieć o ograniczeniach fizycznych, o które coraz wyraźniej ociera się krzem będący podstawowym materiałem układów scalonych, dzięki którym mamy dostęp do komputerów, telefonów i wszelkiego rodzaju sprzętów przetwarzających dane. Od pewnego stopnia miniaturyzacji konstrukcji, jakość działania układów krzemowych znacznie spada, przez co są nie tyle niebezpieczne w użyciu ile działające błędnie. Od 15 lat (a więc od czasu wynalezienia) mówi się o grafenie jakoby miał zastąpić krzem, ze względu na swoje właściwości, które są użyteczne w zmniejszaniu układów(przede wszystkim rozmiar jednego atomu). Pomimo sukcesów, w wyprodukowaniu wyjątkowo szybkich tranzystorów (o taktowaniu przekraczającym 100GHz), materiał ten był jednym z najdroższych na ziemi, a sama technologia została odłożona na mglistą i niepewną przyszłość.
Z tego też względu, bycie skazanym na krzem w najbliższych latach, spowoduje jedną z dwóch opcji: Zminiaturyzowane i 'wyżyłowane’ do granic możliwości układy zaczną być łączone w większe struktury, co pociągnie za sobą wzrost rozmiarów urządzeń elektronicznych jak i pobór prądu (pośrednio szkoda dla środowiska) lub w wyniku ograniczeń narzuconych z góry, powróci schemat z ubiegłego wieku, gdy programiści tworzyli wyjątkowo wydajne algorytmy i optymalizowali programy pod określone sprzęty.
Możliwe też, że zostanie wynaleziony nowy materiał, który w ciagu najbliższych kilkudziesięciu lat całkowicie wyprze krzem z naszego życia, ale póki co, nie pozostaje nic innego jak czekać. Ciężko przewidzieć w jakim kierunku pójdzie informatyka.
Im dłużej rozmyślałem nad technikami obliczeniowymi tym większą część mej perspektywy zajmowała „śluzowata pleśń” (z ang. slime mold). Biologiczne struktury tego rodzaju wielokrotnie demonstrowałay zdolność „obliczenia” optymalnego planu sieci komunikacyjnych. Wystarczy przedstawić takowym ‘dane ruchowe’ w formie dlań strawnej (dosłownie-ilość dostępnego pożywienia i jego rozmieszczenie na mapie musi odzwierciedlać rzeczywiste natężenia ruchu i układ jego generatorów i atraktorów) by rozwiązały problemy planistyczne równie dobrze jak ludzcy specjaliści (eksperymenty, w których odwzorowały przebieg autostrady w Niemczech i w USA) czy planiści transportu publicznego (eksperyment w którym nie tylko dorównały zdolności japońskich inżynierów ruchu ale i „obliczyły” możliwość poprowadzenia dodatkowego połączenia metra i natężenie ruchu na nim, które po weryfikacji w tradycyjnych/numerycznych/ modelach ruchu okazało się „strzałem w dziesiątkę”).
Choć „elementy” slime mold można wprzęgnąć w ramy tradycyjnych informatycznych schematów obliczeń, to dla „generalnych celów” mogą nie stanowić „kroku w przód” (zważywszy ich rozmiar i szybkość biologicznych przemian).
Ich potencjalne przewagi leżą w dziedzinie planowania układów komunikacyjnych/ inżynierii ruchu (także tras dla robotów w fabryce) – tam gdzie wykorzystuje się ich wrodzone zdolności- funkcje optymalizowane milionami lat ewolucji form przetrwania w środowisku konkurencji o skończone zasoby.
W tym przykładzie biologicznych technologii obliczeniowych ważny jest dla mnie wymiar
nie do końca zrozumiałego „rozsądku” pozbawionych „tradycyjnego” układu nerwowego zlepków organizmów – manifestowania się w ich działaniach „zrozumienia” sytuacji – o ile okoliczności są jakkolwiek analogiczne do warunków w jakich „przodkowie” slime mold ewoluowali.
Istotne jest dla mnie i to, że my:
racjonalnie, inteligentnie rozumując (ze swymi analitycznymi i syntetycznymi zdolnościami atakując problem i) przedstawiając najlepsze, na jakie nas stać, jasne pomysły na („logiczne”) rozwiązanie,
oraz dysponując pomocą w postaci cyfrowych sił obliczeniowym wprowadzających w życie nasze klarownymi idee,
– nie potrafimy wykonać zadania lepiej (nawet tak samo dobrze) jak prymitywna forma (prze)trwania.
Takie spojrzenie na sprawę może rzucić nieco światła na to jakie obliczeniowe technik możemy wymyślić.
Z rozważań nad dotychczasowymi komentarzami wyłonił (mi) się m. in. obraz, w którym coraz szybszy hardware, zdolny „unieść” działanie coraz „potężniejszych” programów („utkanych” z coraz to większej liczby algorytmów), sprawia, że coraz rzadziej będzie możliwe objęcie ludzkim umysłem choćby zasadniczej idei tego ‘jak’ i ‘skąd’ biorą się (konkretne) wyniki obliczeń.
Czy tylko wyrazem lenistwa jest pozwolenie sprawom by „potoczyły się własnym biegiem” (aby
programy same się doskonaliły- niech jedne ewoluujące algorytmy projektują inne)?
Przecież stawiamy się w dziwnej sytuacji, jak na istoty definiujące się poprzez mądrość i zdolność rozumienia: liczymy na to, że płynąc z prądem osiągniemy sukces- trochę jak rozbitek wyrzucony na plażę na wyspie skarbów. Taki fart Robinsona byłby złośliwością losu gdyby w osamotnieniu rozbitek nie mógł skorzystać z fortuny. W naszym wypadku podobną drwiną byłoby to, że ewoluujące algorytmy obrodziły skarbem w postaci „papierów wartościowych” niezrozumiałego języka.
Takiemu obrotowi sprawy nie zapobiegają wynalazki pozwalające na utrzymanie obowiązywania prawa Moore’a – co więcej nawet zwiększą one prawdopodobieństwo możliwości, że nowych technik obliczeniowych nikt już nie będzie w stanie ogarnąć.
Wiara w ich skuteczność (w coraz to nowych okolicznościach i zastosowaniach ) będzie w pewnym sensie kontynuacją rozsądnej ufności w moc indukcji, która dotąd prowadzi nas w poznaniu rzeczywistości. Z tym, że teraz będzie to indukcja „zapośredniczona” i jedynie proxy-zrozumiała. Z tego pragmatycznego snu wybudzić nas będzie mógł „oczywiście” bunt maszyn (niekoniecznie w dramatycznym wymiarze znanym z „Terminatora”).
Ale jest jeszcze możliwość, że rozczarowanie spotka nas poprzez coś w rodzaju szoku jakiego doznali (przekonani o tym, że dysponują już teoriami obliczenia i zrozumienia wszystkiego) naukowcy z początku XX wieku, wobec „dziwacznych oddziaływań na odległość”.
Można powiedzieć, że roszczenia co do tego w jakie gry i zgodnie z jakimi zasadami ma grać z nami Bóg (sive Natura) – jakie techniki obliczeniowe ma stosować Stwórca gdy wyznacza kierunki obrotów trybów Rzeczywistości – mają tyle uzasadnienia ile protesty slime mold na to, że eksperymentatorzy umieścili je w niepodatnym na ich rozwój środowisku.
Czy zatem możemy zaprojektować rozsądnie jakieś nowe techniki obliczeniowe – takie których nowa „jakość”
nie byłaby efektem skali, „splątania” w kolejnych iteracjach prób i błędów „gmatwających” swe tory we wzajemnym uwarunkowaniu obliczeń,
a wyrazem naszego zrozumienia jasnej idei – „uchwycenia” właściwego sposobu postępowania, w którym cały mozolny trud „na ślepo” prowadzonych poszukiwań można „skrócić” – dzięki dorobkowi ludzkiej mądrości?
Czy jest szansa na nowe „inteligentne” rozwiązanie?
– Takie uprawniające nas w przekonaniu, że nurty algorytmicznych obliczeń poniosą nas najkrótszą – i godną naszej rozumności – drogą.
Jeśli nie udaje się nam okiełznać w nas samych „a-logicznych” wpływów na jasne rozumowania to może udało by nam się zaprogramować technikę obliczania (genialnych rozwiązań) „kodując” (niezawodnie) cyfrowo wyekstrahowany „Rozum czynny” czy „Res cognita” (jego istotę w sformalizowanym ujęciu)?
– Gdyby tylko udało się uchwycić ideę/istotę ludzkich twórczych rozumowań, zamknąć ją w formie niezawodnych algorytmów (w abstrakcji od całego szumu: błądzących rozumowań, nieuzasadnionych mniemań, niedorzecznych odczuć i intuicji). Moglibyśmy uzyskać połączenie jakości incydentalnych prześwitów ludzkiego geniuszu i pewności w programową stałość algorytmów.
Dorobek ludzkiej wiedzy na (filozoficznym) froncie przedstawienia idei ludzkiej twórczości (sformalizowania metody twórczych rozumowań) nie daje (?) szansy na to byśmy mogli podać jakiś teoretyczny przepis na techniki niezawodnie generujące ‘trafne’ rozwiązania. Nie chodzi tu o moc obliczeniową a NIE-MOC koncepcyjną i twórczą „rozumu czynnego”, ”świadomego”. W najlepszych (znanych nam) logicznych systemach aksjomatycznych sami przyjmujemy założenia niezawodnie prowadzące nas do wniosków, że nie da się dowieść wszystkiego co prawdziwe – że nawet to co idealnie jasne (i może/powinno być częścią „obliczeniowych technik”) – w swym uwikłaniu w znaczenia – staje się kwestią wyboru.(Wyboru, który może „się” dokonać w ramach „ewolucji” zapętlonych prób i błędów ale którego wynik nie może być rozumnie „wymyślony” i logicznie wskazany przez projektantów).
Filozoficznie/ logicznie trudno nawet „wyjaśnić”/ ująć formalnie metody z jakimi dokonuje się postęp nauk. Progres w trafności ścisłych opisów (technik obliczeń przyszłych ziszczeń) Rzeczywistości opiera się na „logice zapętleń” (Heller). Teorie nauki to „uargumentowane retrogenezy” – bez mocy predykcyjnej same są nie-naukowe.
Analogicznie chciałoby się aby „mądre” techniki obliczeń nie brnęły na ślepo a racjonalnie wybierały inną drogę (oszczędzając zasoby sprzętowe) – nawet jeśli ten nowy sposób nie opierałby się na „pewnych przesłankach”.
Winien oświetlać go prześwit inteligibilnej jasności wskazującej rozumowi drogę do celu… Technicznie trudne do uzyskania- w logicznych teoriach i modelach twórczych rozumowań, bo w praktyce manifestacje takowego „olśnienia” dostrzec można nawet w metodach działania w/w śluzowatej pleśni.
Trochę jak z zadaniami z konkursów matematycznych – tam standardowe sposoby postępowania nie działają, ale by rozwiązać problem często „wystarczy zauważyć, że…”
Wracając do pragnienia by (podnieść się za własne wąsy, jak baron Münchhausen i) stanąć z boku w czasie doznawania przebłysku nowego zrozumienia- tak by dostrzec jasny sposób na twórcze olśnienia geniuszu („odejmując” całe „nieistotne tło” intelektualnych procesów owocujących danym pomysłem). Następnie taką sformalizowaną ideę moglibyśmy zalgorytmizować i otrzymać generator geniuszu.
Wystarczy jednak „zmienić narrację” by zauważyć, że owo olśnienie to swoista manifestacja „sprytu”.
A w rozumieniu 'sprytu’ mieści się właściwe według mnie rozpoznanie rzeczy: ‘spryt’ jest bowiem wyrazem rozeznania logosu (może nie bezpośrednio z dziedziny zadania, ale ogólnej wiedzy o) rzeczywistości. Sam ten opis już wskazuje, na to, że mamy do czynienia z pewnego rodzaju wynikiem doświadczenia (niekoniecznie osobniczego- może chodzić o „wiedzę pokoleń” wyrażająca się odczuciami i instynktami). Próbując wyrugować całe „nieistotne tło” intelektualnych przekształceń danych prowadzących do twórczego olśnienia, pomijamy istotne dla spektakularnego rezultatu „techniki obliczeniowe”.
To zdaje mi się być przyczyną dlaczego znane mi sposoby formalizacji heurystycznych rozumowań (mądrości) nie wydają się dawać nadziei na obrodzenie „technologiami geniuszu”.
Zresztą wiara, że można by twórczość ludzką sformalizować „logicznie” (pomijając to co poza „rozumem aktywnym”) opiera się na założeniu, że w ludzkim umyśle pozostało wiele niepotrzebnego bagażu, że cała aktywność w sieciach neuronowych poza „obszarami kognitywnymi” jest zbytecznym „zwarciem”/ szumem. Tymczasem metody obrazowania aktywności niepokojące regularnie wskazują na pobudzenie także dużych obszarów móżdżku gdy badani rozwiązują zupełnie abstrakcyjne, niezwiązane z ciałem zadania. A przecież móżdżek służyć miał jedynie monitorowaniu stanów ciała i sterowaniu nim- wszystko miało być rozdzielone, niezależne – zgodnie ze starożytnym podziałem duszy na cześć rozumną i zwierzęcą. To kłopot także dla prób „cyfrowego zamodelowania” rozumu, gdyż w móżdżku mamy więcej neuronów niż w mózgu. (Czymże jednak tych „kilka” dodatkowych neuronów wobec konieczności odwzorowania środowiska i ciała, w których funkcjonujący Umysł jest osadzony?)
Przekonanie, że dobrze byłoby z duszy ludzkiej odjąć część zwierzęcą, zmysłową i receptywną (z ich „nielogicznością” i nieracjonalnymi pożądliwościami) wydaje mi się tym bardziej nieuzasadnione, że w naturze „trwa to co może” (nawet jeśli nie przynosi korzyści), ale jedynie gdy swym trwaniem nie obciąża ustroju w ramach którego funkcjonuje:
Ta reguła obowiązuje do tego stopnia, że istnieją organizmy, które w jednej ze swych faz rozwojowych posiadają „mózgi” lecz, gdy już nie jest im potrzebny (bo znajdą właściwe schronienie i nawet zbitek tak niewielkiej liczby neuronów jakim dysponują przestaje im być konieczny do przetrwania), to go „zjadają” – by nie nadwyrężał ich metabolizmu.
Nie przywołuje tu tego przykładu jako złośliwej alegorii losów niektórych ludzi, lecz by zobrazować to, że na żaden zbytek „karząca ręka” ewolucji nie pozwala.
Ewolucja naturalna doskonali „techniki obliczania” przyszłych manifestacji rzeczywistości tworząc coraz to doskonalsze (pod różnymi względami) systemy regulacji zachowania rożnych organizmów.
Miniaturyzacja i kwantowe techniki obliczeń także nie są „obce naturze”:
Np. Megaphragma to „istny cud” optymalizacji zadania przetrwania- 95% jej „neuronów” utraciło jądra komórkowe w dążeniu do miniaturyzacji dzięki, której ta mała muszka „wcisnęła się” w lukę przetrwania. Kilka tysięcy „analogów-neuronów” pozwala temu organizmowi na wykonywanie wszystkich zadań „pożądanej” muchy, choć jest wielkości jednokomórkowego pantofelka czy ameby. ( w internecie można odnaleźć spektakularne zdjęcia porównujące rozmiary tych organizmów).
Manewr w pewnym sensie podobny do tego wykorzystanego w pamięciach DDR pozwolił zaś pewnym krabom na minimalizację liczby neuronów motorycznych sterujących ich aparatem gębowym.
Są w końcu i ptaki, w których oczach przy neuronach zachodzą zjawiska kwantowe umożliwiające „pomiar/obliczenie” kilku bodźców (informacji) jednocześnie.
Wobec takiego „liczenia każdego (metabolicznego) grosza” i prześcigania się, przez twory ewolucji, w tendencji do redukcji zbędnej liczby neuronów, nie sądzę byśmy mieli podstawy by liczyć na to, że w naszych mózgach jest wiele niepotrzebnego rewolucyjnego balastu- plątanina układów, które niczemu nie służą poza utrudnieniem nam jasnego zrozumienia tego jak realizuje się nasze twórcze rozumowanie i inteligencja.
Wiele razy pisałem o tym, że jedynym sposobem na cyfrowy opis ludzkiego rozumowania (i technik obliczania/ przetwarzania danych/ stanowiących jego funkcjonalną podstawę) jest stworzenie komputerowego modelu (ucieleśnionego) ludzkiego mózgu, osadzonego w środowisku w
warunkach ewolucyjnej konkurencji (wyścigu na lepsze/ trafniejsze „zrozumienie” cyfrowego otoczenia- tak by umożliwić przetrwanie).
Pisałem już w (zbyt) wielu innych komentarzach o tym, że „twórcze”(autonomiczne) rozumowania i rozwiązania (inteligentne) mogą być rezultatem rozproszonego przetwarzania problemów (także zupełnie abstrakcyjnych np. Matematycznych) w systemach będących odbiciem ewolucyjnej historii (walki o przetrwanie).
Podobnie jak w sytuacji, w której nie wiemy jak prosta sztuczna sieć neuronowa poradziła sobie z danym problemem, a najkrótszą „formalizacją” sposobu rozwiązania jest właśnie przedstawienie funkcjonalnej architektury jaką przybrała (konkretna) sieć,
tak i najkrótszą formalizacją (twórczych/ inteligentnych) rozumowań ludzkich może być samo odzwierciedlenie (funkcjonalny model) centralnego układu nerwowego.
UWAGA: Twierdzenie, że w takiej cyfrowej symulacji zagubi się coś jak w „chińskim pokoju” bo „wolna Istota” transceduje deterministycznej struktury mózgu, zdaje mi się równie nieuzasadnione jak założenie, że w momencie, w którym sztuczna sieć neuronów zaczyna rozwiązywać poprawnie zadanie – choć nie do końca wiemy jak „wpadła” na rozwiązanie (i „jak to w ogóle działa”) – występuje w nią duch kwantowy, tunelując z niezdeterminowanej dziedziny inteligibilnych idei wprost do cyfrowej domeny tej SSN.
Nasza niemoc sięga tak daleko, że nawet gdybyśmy wirtualny neuron po neuronie stworzyli symulowany model Alberta Einsteina i tak nie wiedzielibyśmy gdzie „dolepić” tych parę cyfrowych komórek by „poszła na tym” kwantowa teoria grawitacji.
Trzeba by gromady takich Einsteinow zasiedlających wirtualną farmę o nieeuklodesowej geometrii „krajobrazu” i „z fizyką” odzwierciedlającą zjawiska z kwantowej domeny, by któraś z ewolucji naszego prototypu, nabrawszy właściwych intuicji podążyła właściwą ścieżką.
Abstrahując od etycznych kwestii prowadzenia takiej „hodowli” (nawet jeśli nie wirtualnych Einsteinów, to cyber-organizmów, coraz lepiej „rozumiejących” stworzone im środowisko)
dla uruchomienia takiej symulacji konieczna moc obliczeniowa zdaje się być jednak problemem- zwłaszcza biorąc pod uwagę zgłaszane przez Komentatorów trudności z podtrzymaniem obowiązywania prawa Moore’a.
Azali więc uda się stworzyć ‘rozsądne’ techniki obliczeniowe poprzez innego typu „mariaż” natury z cyfrowymi maszynami: może cyborgizacja (np. usilnie pracujących nad rozwojem fizyki naukowców) przyniesie nam sukcesy (teorię wielkiej unifikacji)?
Najlepszym sposobem byłoby chyba wymienienie -komórka po komórce- neuronów biologicznych naszych mózgów na nowe, lepsze struktury- chętniejsze do mnożenia się i rozwoju nowych połączeń w miarę intensywnego wykorzystywania istniejących.
(W innym wypadku- lokalnego „podłączenia się” ze strukturami oferującymi dodatkowa moc, jakimś „neurolinkiem”, można by chyba jedynie zyskać dostęp do danych- jakoby rozszerzenie pamięci czy nowy zmysł ale nie „rozszerzenie świadomości” na nowe sposoby obliczania/ rozumienia. W końcu nie wiemy gdzie mielibyśmy „dolepić” te dodatkowe neurony- mamy przecież problemy z przeniknięciem/zrozumieniem skutecznego rozwiązywania problemów przez SSN dużo prostsze od ludzkiego mózgu.)
Dysponujemy nawet danymi jakie rezultaty mogłoby przynieść takie „nienaturalne”
zwiększenie się zdolności do tworzenia się połączeń (tempa/ilości) między „pobudzonymi” neuronami. Można bowiem podobny stan uzyskać w ludzkim mózgu wykorzystując „nie-informatyczne” a chemiczne środki – w szczególności psylobicynę. Słyszałem o naukowcach mających dostęp do psylobicyny, którzy twierdzili, że rzeczywiście dzięki owemu zwiększeniu „neuroplastyczności” i potencji rozwoju nie tylko można polepszyć zdolności intelektualne, uczenia się ale nawet, że (neurony są w stanie odnaleźć nowe „szlaki” w miejsce zniszczonych co sprawia, iż) można odzyskać np. utracony na starość słuch.
Ale wielu (eksperymentujących z psylobicyną) stwierdziło, że podróżowało w czasie i rozmawiało z Bogiem i kosmitami…
Tak stawiając sprawę wygląda na to (a jest to obraz rozmyty i pełen znaków wskazujących na braki warsztatowe autora), że droga przyszłości to techniki „ewolucyjne”, „uczące się głęboko” (w skrytych przed ludzkim wglądem cyfrowych otchłani), z których wyłaniać się będą nowe, genialne pomysły obliczania – niczym „deus ex machina”.
Może np. cyfrowa farma ewolujących fantomatycznych organizmów (jak najlepiej odzwierciedlajacych cechy obecnych – ludzkich – ekspertów danej dziedziny) walczących o przetrwanie w wirtualnym środowisku zaprogramowanym tak by manifestowały się w nim regularnie istotne własności problemu, który chcemy opisać/rozwiązać? – To wydaje się być najbardziej racjonalnie „wytłumaczalny” sposób by, uruchamiając mechanizmy, nad którymi mamy coraz mniejszą kontrolę (coraz trudniej nam „ogarnąć” jak i dlaczego działają) przynajmniej wytyczyć szlak w kierunku celu jaki chcemy osiągnąć.
(Mój długi komentarz jest dość dobitnym przykładem tego, że „filozofia pozostawia wszystko jak jest”.)
Pingback: Techniki obliczeniowe przyszłości… | Polemiki i rozmówki w "Cafe Aleph"
– Współczesne techniki obliczeniowe są głównie oparte na komputerach których podzespoły są wykonane z krzemu. Rozwój informatyki może odbywać się w postaci rozwoju zarówno hardware’u jak i software’u. Jeżeli chodzi o software możliwości są niemal nieograniczone. Możliwości optymalizacji działania programów jest tyle ile pomysłów w głowach wciąż przybywających informatyków. O tyle rozwój hardware’u w czasach których żyjemy opiera się głównie na zmniejszaniu coraz bardziej (krzemowych) tranzystorów. Dzieje się to bardzo dynamicznie gdyż w latach 90. używano technologii 500 nm, a aktualnie firma AMD pracuje nad technologią 7 nm. Biorąc jednak pod uwagę fizykę klasyczną rozmiary te nie mogą zmniejszać się bez końca – granicę stanowi tutaj rozmiar atomów który ludzkość może osiągnąć już w najbliższych latach. Mówi o tym prawo Moore’a.
– Może czas zmienić budulec? Ludzie uważają że jedną z alternatyw dla krzemu może być grafen. Zmniejszyłoby to ciepło wydzielane przez układ a także grafen jest bardziej przewodny niż krzem. Wpłynęłoby to na zwiększenie częstotliwości taktowania procesorów. Jednak by wprowadzić tą technologię ludzkość potrzebuje kilkudziesięciu lat.
– Innym pomysłem jest też tworzenie komputerów wieloprocesorowych. Takie komputery miałyby większą wydajność z powodu zastosowania przetwarzania równoległego. Lecz ta forma ma również swoje granice w postaci prawa Amdahla, które określa maksymalny wzrost wydajności (czyli granicę!) przetwarzania przy zastosowamiu wielu procesorów. W tym wypadku jednak dużym problemem także pobór mocy oraz wydzielane ciepło. Jest to pewna ścieżka rozwoju ale jest to opcja która szybko wyczerpie swoje możliwości.
– A może pójdźmy w innym kierunku? W przyszłości możemy opierać techniki obliczeniowe na chmurze obliczeniowej. Zasada działania chmury polega na przeniesieniu całego ciężaru świadczenia usług IT – danych, oprogramowania lub mocy obliczeniowej na serwer i umożliwienie stałego dostępu poprzez komputery klienckie. Dzięki temu ich bezpieczeństwo nie zależy od tego, co stanie się z komputerem klienckim, a szybkość procesów wynika z mocy obliczeniowej serwera a nie komputera na którym pracujemy. Wystarczy zalogować się z jakiegokolwiek komputera z dostępem do Internetu by móc korzystać z dobrodziejstw serwerów o wiele większej wydajności niż nasz komputer. Współcześnie coraz więcej nowych funkcji realizowanych jest w modelu chmur obliczeniowych. Kwestią czasu jest dojście do szczytu wirtualizacji – przeniesienia całego oprogramowania (wraz z systemem operacyjnym) na serwer co sprawi że użytkownicy będą kupowali jedynie w pełni spersonalizowaną maszynę wirtualną, która posiada taką specyfikację jaką klient oczekuje.
– Powyższe spojrzenia na przyszłość informatyki są jednymi z najbardziej realnych scenariuszy. Możemy jednak zapuścić nieco wodze fantazji. Może w przyszłości prace nad sztuczną inteligencją będę na tyle zaawansowane że zastąpi ona człowieka w większości wykonywanych czynności. AI będzie być może w stanie samodzielnie prowadzić badania (nad zwiększeniem wydajności komputerów) i wyciągać z nich wnioski. Dzięki temu rozwój będzie stale postępował przy minimalnym wkładzie człowieka przez dziesiątki, setki (a może i więcej?) lat. Inną myślą jest wykorzystanie do obliczeń najmocniejszego komputera jakim ludzkość aktualnie dysponuje czyli ludzkiego mózgu. Jednakże jego działanie jest w dalszym ciągu dla człowieka dużą tajemnicą. Być może z biegiem lat człowiekowi uda się użyć mózgu jako np. jednostki centralnej super komputera. Są to jedynie domysły, lecz ludzkość zdążyła już nam udowodnić że wszystko jest możliwe i nie można wykluczyć żadnej możliwości.