Pomimo znaczących osiągnięć w zrozumieniu wielu zjawisk w obszarze nauk przyrodniczych, które było możliwe dzięki zastosowaniu metod nauk obliczeniowych zdarza się, że rola komputerów w realizowaniu bardziej znaczących badań naukowych jest czasami kwestionowana. W szczególności użycie komputerów dużej mocy, czy jak kto woli superkomputerów, w realizacji badań naukowych budziło od czasu do czasu emocje porównywalne jedynie z emocjami ujawnianymi podczas dyskusji na tematy polityczne. Zjawisku temu, które raczej już zanika, można byłoby poświęcić poważniejszą rozprawę z pogranicza metodologii uprawiania nauk przyrodniczych oraz zapewne również psychologii i socjologii. Nie będziemy jednak dyskutować tego problemu zarówno ze względu na ograniczony rozmiar tej pracy jak i inne jej cele.
Warto zwrócić uwagę, że istnieją obszary nauk przyrodniczych o charakterze podstawowym takie jak astrofizyka, geofizyka, biologia i biofizyka molekularna oraz niektóre obszary fizyki cząstek elementarnych i fizyki jądrowej, które bez umiejętnego wykorzystania komputerów nie mogłyby w ogóle się rozwijać. Należy również zwrócić uwagę na istotną korzyść w wykorzystywaniu komputerów w obszarze fizyki teoretycznej w celu wspomagania poszukiwania analitycznych rozwiązań trudnych problemów matematycznych oraz wykonywania prototypowych obliczeń i wizualizacji ich wyników z wykorzystaniem takich pakietów oprogramowania jak Maple, Mathematica czy MatLab. Należy podkreślić, że programy te jak i wiele innych programów aplikacyjnych charakteryzują się stopniem złożoności często wyższym od złożoności bardzo skomplikowanej aparatury eksperymentalnej.
W dalszej części skoncentrujemy się na krótkim przeglądzie współczesnych architektur komputerowych oraz ich obecnych jak i przyszłych, potencjalnych zastosowaniach w naukach fizycznych i przyrodniczych. Zwrócimy również uwagę na pewne implikacje jakie rozwój nauk obliczeniowych będzie wnosił do poznania otaczającego nas świata.
Niezależnie jednak jak szybkie są procesory zawsze istnieją lub pojawiają się problemy wymagające jeszcze większych mocy obliczeniowych. Prosty wniosek jaki wynika z tej obserwacji jest następujący: niezależnie od postępu w rozwoju technologii komputerowych tworzenie rozwiązań pozwalających na przetwarzanie informacji w sposób równoległy będzie zawsze pożyteczne i powinno teoretycznie pozwalać na liniowy wzrost szybkości obliczeń ze wzrostem liczby procesorów. Najczęściej wzrost szybkości obliczeń jest mniejszy niż liniowy, ponieważ proces obliczeniowy rzadko daje się dokładnie rozłożyć na N niezależnych procesów realizowanych na N oddzielnych procesorach. Pomimo tych ograniczeń komputery o architekturze równoległej znajdują się w czołówce najszybszych maszyn na świecie.
W świecie osób zajmujących się technikami obliczeniowymi od dawna istnieje pewien pozorny konflikt, który można zatytułować farmerzy kontra fani komputerów równoległych. Otóż farmerzy uważają, że można tworzyć efektywnie pracujące komputery równoległe przez proste sieciowe łączenie dużej ilości skalarnych maszyn typu PC, tworząc tzw. farmy, które potencjalnie mogą konkurować z na ogół znacznie droższymi maszynami równoległymi produkowanymi przez komercyjne firmy. Istota problemu sprowadza się do tego, że co prawda farmy są znacznie tańsze, ale też topologia połączeń pojedynczych komputerów jest znacznie uboższa niż ta realizowana w komputerach równoległych, a połączenia między węzłami obliczeniowymi znacznie wolniejsze. Należy podkreślić, że właśnie wąskim gardłem wielu obliczeń jest komunikacja międzyprocesorowa. Problemem są również programistyczne metody zrównoleglania zadań, które w komputerach równoległych stanowią istotny element na ogół sprawnie funkcjonującego systemu operacyjnego. Często spotykanym rozwiązaniem farmerskim jest liniowe łączenie pojedynczych PC lub łączenie w sieć o topologii okręgu, natomiast dość typowym rozwiązaniem sieciowym komputerów równoległych jest zlokalizowanie procesorów z ich lokalnymi pamięciami w sieci o topologii trójwymiarowego torusa. Dedykowane łącza wewnątrz komputera równoległego pracują na ogół z szybkością od 10 do 1000 razy większą od typowych rozwiązań sieciowych wziętych z półki. Trzeba wszakże podkreślić, że ze względu na znaczny postęp technologiczny w dziedzinie sieci komputerowych akcje farmerów będą zapewne systematycznie wzrastały.
Pierwszymi najbardziej wydajnymi komputerami dużej mocy, czy jak kto woli superkomputerami, były tradycyjnie komputery wektorowe. Nie wchodząc w problemy o charakterze technicznym można powiedzieć, że procesory wektorowe wykonują w sposób fizyczny operacje arytmetyczne na wektorach. W związku z tym komputery wektorowe wyposażone w odpowiedni system operacyjny i zoptymalizowane kompilatory pozwalają na stosunkowo łatwą algorytmizację obliczeń z wykorzystaniem zmiennych będących wektorami lub macierzami.
W związku z tym co wyżej powiedziano, łatwo się domyśleć, że naturalną tendencją w rozwoju nowoczesnych technologii komputerowych jest budowa komputerów wektorowo-równoległych. Złożony proces obliczeniowy można dzielić na równoległe zadania realizowane na oddzielnych procesorach i najlepiej jeżeli procesory te są procesorami wektorowymi. I taki właśnie trend w budowie konwencjonalnych maszyn obliczeniowych obecnie się obserwuje (patrz następny paragraf).
Jeżeli chodzi o neurokomputery, to wywodzą się one z konstrukcji prostych modeli sieci neuronowych, wzorowanych (czy jak byśmy obecnie powiedzieli modelowanych) na rzeczywistych strukturach prostych neuronowych sieci organizmów żywych. Sieci takie konstruowane są m.in. a wykorzystaniem konwencjonalnej technologii krzemowej przynajmniej od kilkunastu lat. Istotnym osiągnięciem w dziedzinie technologii prostych sieci neuronowych było zbudowanie systemów zdolnych w sposób efektywny rozpoznawać obrazy. Istotnego postępu w tej dziedzinie dokonano, niestety jak to często bywa, w dziedzinach wojskowych, szczególnie w zagadnieniach szybkiego rozpoznawania obrazów topografii terenu. Obecnie konstrukcja automatów przystosowanych do wykonywania złożonych zadań mających cechy inteligentnego działania jest silnie rozwijającym się obszarem nauki i nowoczesnych technologii.
Z kolei pomysł realizacji procesów obliczeniowych z wykorzystaniem DNA, nośnika informacji genetycznej oraz przy pomocy biotechnologicznej metody PCR (sterowanego powielania fragmentów informacji przy wykorzystaniu enzymów replikujących) został sformułowany przez Adlemana w roku 1994, [3]. Wersja popularnonaukowa tego zagadnienia przedstawiona jest w październikowym numerze Świata Nauki z 1998 r. W istocie rzeczy fakt, że mamy tutaj do czynienia z DNA ma raczej znaczenie techniczne, ponieważ informację można byłoby teoretycznie kodować w inny sposób, niż ten który jest realizowany w DNA. Istotne znaczenie mają tutaj enzymy, które moglibyśmy nazwać operatorami, pozwalającymi na przetwarzanie informacji. Do tej pory nie skonstruowano przy pomocy probówkowej technologii efektywnego arytmometru pozwalającego na wykonywanie czterech podstawowych działań. Rozwiązano natomiast kilka ważnych zagadnień informatycznych, w szczególności zagadnienie komiwojażera. Problem w najprostszej reprezentacji sprowadza się do znalezienia drogi minimalnej łączącej dwa wybrane miasta, tak aby droga ta przechodziła dokładnie jeden raz przez każde miasto. W procesie DNA-computingu, miasta kodowane są określonymi, krótkimi sekwencjami DNA. Drogi łączące pary miast innymi krótkimi sekwencjami. Droga której poszukujemy to dłuższy odcinek DNA o sekwencji miasto pierwsze- droga do drugiego miasta- drugie miasto- droga do kolejnego miasta- kolejne miasto - ..- miasto docelowe. Po zmieszaniu ze sobą fragmentów kodujących miasta oraz fragmentów kodujących łączniki, a następnie po przeprowadzeniu procesu enzymatycznego połączenia wszystkich możliwych do pomyślenia możliwych połączeń, należy w całym olbrzymim zespole powstałych możliwości odszukać określony fragment DNA, który rozpoczyna się miastem pierwszym, kończy się miastem docelowym i zawiera w sobie wszystkie inne miasta dokładnie jeden raz. W całym tym procesie korzysta się w sposób siłowy z możliwości równoległej realizacji wszystkich możliwych połączeń, a na końcu odszukania rozwiązania igły w stogu siana, co przy pomocy metod biotechnologicznych z powodzeniem się udaje. Pomimo, że liczba wszystkich możliwych połączeń jest astronomiczna to bardziej astronomiczna jest liczba molekuł DNA próbkująca przestrzeń wszystkich możliwych połączeń.
Istotnym ograniczeniem dla możliwości masywnego przetwarzania informacji przez konwencjonalne komputery jest szybkość zmiany stanów pamięci oraz ilość wydzielanego ciepła. Minimalizacja ilości wydzielanego ciepła związana jest z miniaturyzacją systemów przechowywania i przetwarzania informacji, to zaś prowadzi do prób wykorzystania nowych technologii bazujących na pojedynczych strukturach molekularnych. Chociaż nikt do tej pory nie zbudował adresowalnej pamięci molekularnej typu RAM (Random Access Memory), służącej do zapisywania i czytania informacji, to intensywność prowadzonych w tym kierunku badań wskazuje że komputery molekularne mogą stać się rzeczywistością nie tak bardzo odległej przyszłości. Istotnym osiągnięciem naukowym i technologicznym jest tutaj zbudowanie bramek logicznych AND i OR oraz niewielkich pamięci typu PROM (Programmable Read Only Memory) z wykorzystaniem rotaxanów, molekuł uporządkowanych w postaci pojedynczych warstw, zlokalizowanych w strukturze kanapek złożonych z warstw półprzewodnikowych i metalicznych. Rotaksany mogą przepuszczać prąd elektryczny na zasadzie rezonansowego tunelowania, które to zjawisko może być sterowane procesami oksydacyjno-redukcyjnymi tych układów molekularnych. Proces utleniania rotaksanów realizowany jest poprzez przyłożenie niewielkiego dodatniego potencjału do warstwy molekularnej (odbieranie elektronów przez dodatnio naładowaną elektrodę to proces utleniania, podobnie jak czyni to molekuła O2 będąca klasycznym utleniaczem). Niestety utlenianie w tym układzie jest procesem nieodwracalnym, stąd informację można jedynie zapisać. Okazuje się, że można ją jednak również odczytać. Zainteresowanych tą tematyką Czytelników odsyłam do pracy zrealizowanej przez grupę badaczy z UCLA oraz z laboratorium Hewlett-Packard [4]. Należy zwrócić uwagę, że w Polsce na Wydziale Chemii Uniwersytetu Warszawskiego realizowane są również prace w kierunku tworzenia pamięci molekularnych. Pomysł w tym przypadku związany jest z wykorzystaniem metastabilnych stanów elektronowych w oligomerach o właściwościach donorowo-akceptorowych [5]. Należy również zwrócić uwagę, że istotny postęp został dokonany w projektowaniu małych molekularnych maszyn, wzorowanych na maszynach biomolekularnych. W szczególności w sposób kontrolowany można zmieniać stany przestrzenne (konformacje) określonych molekuł poprzez absorpcję kwantów promieniowania o określonej częstości oraz zmiany temperatury układu, patrz np. [6].
Trzeba podkreślić, że jednym z pierwszych fizyków wskazujących na możliwości kodowania informacji na poziomie molekularnym był Feynman (there is plenty room at the bottom), [7]. Również jak już wspomnieliśmy we wstępie, Feynman był tym, który po raz pierwszy wskazał na możliwość wykorzystania mechaniki kwantowej do przetwarzania informacji w sposób bardziej efektywny niż ma to miejsce w przypadku klasycznej fizyki, a więc na możliwość budowy kwantowych komputerów. Istota pomysłu polega na tym, że sterowana ewolucja stanu kwantowego może być interpretowana jako proces obliczeniowy odpowiadający bardzo wielu równoległym procesom klasycznym. W ciągu ostatnich dziesięciu lat powstało wiele algorytmów pozwalających na realizację teoretycznych obliczeń kwantowych, w szczególności rozkładu liczb na czynniki pierwsze. Stąd już jeden krok do praktycznych zastosowań w dziedzinie kryptografii. Problem w tym, że co prawda można stosunkowo łatwo zaprojektować kwantowy proces obliczeniowy ale odczyt informacji przez zewnętrznego obserwatora związany jest z redukcją funkcji falowej, a więc nieodwracalną jej zmianą i niemożliwością dalszego wykorzystania tej funkcji do kontynuowania kwantowego procesu obliczeniowego. Czytelnik zainteresowany tą pasjonującą tematyką może znaleźć więcej informacji w artykule M.Kusia w Postępach Fizyki [8].
Bardzo ciekawych przykładów dostarcza nam fizyka ciała stałego. W szczególności symulacja i trójwymiarowa analiza wizualizacyjna struktury elektronowej nadprzewodników wysokotemperaturowych, patrz m.in. [13], pozwala na pełniejsze zrozumienie przyczyn determinujących ich obserwowane eksperymentalnie właściwości. Z kolei połączenie modeli kwantowych i klasycznych oraz dyskretnych i ciągłych w jeden konsystentny model dla opisu i symulacji zjawiska propagacji pęknięć w płytkach krzemowych przedstawiony jest w bardzo wartościowej z poznawczego punktu widzenia pracy [14]. Opis tego zjawiska wymaga zaangażowania metod kwantowej dynamiki dla obszaru propagacji pęknięcia, mikroskopowej klasycznej dynamiki molekularnej dla obszaru otaczającego rysę oraz metod ośrodka ciągłego dla pozostałego obszaru. W ośrodku ciągłym generowane są naprężenia zależne od dynamiki propagacji pęknięcia, jednocześnie wpływając na tą dynamikę. Można byłoby dalej przytoczyć wiele innych bardzo interesujących prac, szczególne z obszaru astrofizyki i kosmologii, gdzie komputer jest jednym z istotnych narzędzi eksperymentalnych.
Analiza nie byłaby pełna gdybyśmy pominęli nauki stosowane, które na co dzień wykorzystują nietrywialną fizykę zakodowaną w postaci eksperckiego oprogramowania aplikacyjnego. Wykorzystanie komputerów jest tutaj ogromne, począwszy od projektowania złożonych makroskopowych układów mechanicznych i symulacji ich dynamiki w warunkach imitujących warunki naturalne (np. samoloty), do projektowania mikroskopowych automatów w obszarach nowych nanotechnologii i do projektowania nowych leków, co wymaga m.in. stosowania metod klasycznej i kwantowej dynamiki molekularnej.
Przegląd nie byłby wszakże zupełny gdyby nie wspomnieć choć jednym zdaniem o roli komputerów i nowych technologii sieciowych w tworzeniu naukowych baz danych oraz wirtualnych bibliotek. Szybki dostęp do informacji naukowej jest istotnym elementem postępu cywilizacyjnego. Czytelnicy którzy byliby zainteresowani tą tematyką odsyłam m.in. do naszej pracy przedstawionej na konferencji poświęconej bazom danych dla nauki [15].
Na zakończenie chciałbym wyrazić pogląd, że rozwój technologii komputerowych i nauk obliczeniowych pozwoli zapewne na znacznie lepsze zrozumienie zasad funkcjonowania mózgu, oraz zasad tworzenia modeli i rozumienia otaczającej nas rzeczywistości. W następnym stuleciu badanie relacji rzeczywistego materialnego świata, świata matematyki oraz wirtualnego świata mózgu stanowić będzie bez wątpienia obszerny obszar pasjonujących badań.
Czytelników zainteresowanych bieżącymi, ciekawymi badaniami z obszaru nauk przyrodniczych i obliczeniowych zarówno w Polsce jak i na świecie odsyłam do serwera informacyjnego Interdyscyplinarnego Centrum Modelowania Matematycznego i Komputerowego Uniwersytetu Warszawskiego (http://icm.edu.pl).