0

Hipoteza symulacji okiem programisty

Hipoteza symulacji, a więc sytuacji, w której cała nasza rzeczywistość jest tylko symulacją (lub co gorsza grą) bardziej rozwiniętej cywilizacji stała się popularna już parę lat temu, szczególnie poprzez opinię Elona Muska, który zdaje się ją popierać. Temat wkrótce podchwycili dziennikarze i YouTuberzy. Niestety, w znacznej większości przypadków osoby te nie są związane z programowaniem, a więc niektóre pojęcia przez nich używane są nieścisłe, czy wręcz niepoprawnie użyte. Pora więc, aby osoba na co dzień zajmująca się tworzeniem aplikacji komputerowych mogła się wypowiedzieć na temat poprawności tej hipotezy i jej związków z obecnym stanem techniki.

Czym jest hipoteza symulacji?

Całe zagadnienie polega na tym, że świat, który nas otacza jest programem komputerowym. Wszystko to, co widzimy i czujemy jest tylko pozorną rzeczywistością… która tak naprawdę nie istnieje. Prawie 20 lat temu wszedł do kin świetny film – Matrix, który ukazuje jak taka sytuacja może wyglądać: żadna z osób istniejących w Matrixie nie zdaje sobie sprawy z tego, że jej prawdziwy świat jest inny.

Istnieją dwie możliwości tego, w jaki sposób przebiega nasza egzystencja w takiej symulacji: albo nasze ciało jest podłączone do tego systemu tak jak w Matrixie (a więc w rzeczywistości istniejemy) albo jesteśmy tylko wytworem programisty lub odpowiedniego algorytmu (a więc istniejemy tylko w symulacji -> jesteśmy częścią programu i w rzeczywistości nie istniejemy). Te dwie sytuacje dość mocno zmieniają obszar rozważań, więc nazwę je odpowiednio Hipoteza symulacji typu A (istniejemy) oraz Hipoteza symulacji typu B (nie istniejemy).

W obu przypadkach trzeba od razu wziąć pod uwagę to, o czym niektórzy zapominają: wszystko to co obserwujemy jest wytworem symulacji, a więc prawdziwy wszechświat może się charakteryzować całkowicie innymi prawami: grawitacja może tam inaczej funkcjonować (albo może jej w ogóle nie być), wszechświat może był całkiem inny (np. może nie być planet), czas może biec szybciej lub wolniej, technika może być oparta na innych zasadach i materiałach (w zasadzie wszystkie materiały w naszym wszechświecie są tylko wytworem symulacji). Trzeba więc zastanawiać się nad taką sytuacją opierając się tylko na najwyższym poziomie abstrakcji, w miarę możliwości odrzucając to, co odkryła lub wynalazła ludzkość. To zdecydowanie komplikuje sprawę 🙂

Jak zhackować symulację?

Prędkość światła

W naszym świecie istnieje wiele fizycznych ograniczeń, a wśród nich chyba najbardziej znana jest prędkość światła, która w próżni jest stała, a prędkość obiektów posiadających masę nie może być większa od prędkości światła. Znane jest słynne „równanie Einsteina” wskazujące relację między energią i masą. Niestety nie wszyscy pamiętają z lekcji fizyki, że tak naprawdę w mianowniku powinniśmy zawrzeć jeszcze pewien pierwiastek (czynnik Lorentza):

Słynne równanie Einsteina

Z tego wzoru możemy wyczytać kilka prostych sytuacji:

  • przy v=0 całkowicie poprawny jest wzór e=mc^2,
  • potrzebujemy coraz większej energii, aby cząstkę utrzymać w coraz większej prędkości,
  • jeśli v = c to wtedy mamy dzielenie przez zero (wymagana nieskończona energia do osiągnięcia takiej prędkości),
  • co jeśli v > c? Pojawiają się liczby zespolone… Jakie one jednak będą miały odzwierciedlenie w rzeczywistości? Czyżby cząstka miała otrzymywać energię?

Dość podobnie wygląda wzór na tzw. kinetyczną dylatację czasu, a więc określający dylatację czasu przy zmieniającej się szybkości:Wzór na kinetyczną dylatację czasu

Główne wnioski przedstawiają się analogicznie do poprzednich:

  • dla v = 0, prawdziwe jest twierdzenie:

Dylatacja czasu dla obiektu nieporuszającego się

  • dla v = c… czas dla obiektu poruszającego się stoi w miejscu (zatrzymuje się),
  • dla v > c… czas biegnie wstecz?

Jaki związek ma to rozważanie z hipotezą symulacji? Prędkość światła wydaje się pewnym ograniczeniem, które mogłoby wskazywać na to, że „komputer”, na którym ta symulacja jest uruchomiona ma pewne ograniczenia sprzętowe. Obecnie istnieje przekonanie w nauce, że prędkości światła nie może osiągnąć żadna cząstka posiadająca masę (co wynika z ww. czynnika Lorentza i wzoru Einsteina). Wydaje się, że jednak problemem jest osiągnięcie prędkości równej prędkości światła… ale mniejszym problemem jest jeśli ta prędkość (szybkość) będzie większa. Co jednak wtedy się dokładnie stanie? Raczej nasz wszechświat się nie rozsypie 😉 Po prostu jakieś dziwne zjawiska będą oddziaływać na ten szybko poruszający się obiekt i dotyczyć tylko jego. Być może jest to jakiś sposób na cofnięcie czasu dla tego obiektu, a więc zhackowanie „matrixa”, jednak wydaje się, że jest to w zupełności nie możliwe dla obecnego postępu technicznego.

Stała Plancka, stała Diraca, kwanty

W obecnie istniejących symulacjach komputerowych korzystamy z bitów (przyjmujących wartości 0 lub 1), które docelowo tworzą obraz na ekranie, wyświetlany przy użyciu pikseli. Można by twierdzić, że nasz świat nie jest symulacją, ponieważ nie napotykamy na takie bity czy piksele. Niestety, problem w tym, że napotykamy 😉

Fizycy od lat obserwują kwanty, które postrzega się jako najmniejsze porcje energii (lub innych wielkości fizycznych). Z tego co nam wiadomo,  nie mogą być one mniejsze (nie może być np. połowy kwantu). Do określenia wielkości tych kwantów służą stałe Plancka i Diraca.

Mamy kolejne „ograniczenie sprzętowe”, które potencjalnie można by zhackować. Jeśli nasza rzeczywistość jest gdzieś zapisana w odpowiedniku naszych dysków twardych (ale z zapisanymi kwantami, a nie bitami), to być może operowanie na wartościach mniejszych niż kwant mogłoby coś popsuć w ciągłości danych. Możliwe też, że po prostu zepsulibyśmy jeden kwant i nic by się nie zmieniło (to tak jakby w obecnym dysku twardym zamienić jeden bit na przeciwny).

Patrząc statystycznie na nasz świat można by wstępnie powiedzieć, że jeżeli coś miałoby popsuć najmniejszą cząstkę materii (lub innej wielkości fizycznej) to powinno się to już wydarzyć, np. w wybuchach gwiazd. Jeśli coś się zepsuło to widocznie jest już naprawione i nie ma powodu dalej w to brnąć. Jeśli jednak nic nie zepsuło… to pewnie jednak nie uszkodzimy w żaden sposób dysku twardego, w którym żyjemy.

Inne stałe

W analogiczny sposób można by analizować inne stałe fizyczne i ewentualnie próbować tworzyć zdarzenia, w których nie miałyby one zastosowania. Niestety, świat wydaje się być odporny na nasze próby łamania takich ograniczeń. Nie wiemy również czy są to ograniczenia sprzętowe, czy po prostu ograniczenie programistyczne (np. odpowiednik naszej stałej znanej z języków programowania). W obu przypadkach można by się jednak spodziewać „wysypania się” programu, a więc końca naszego wszechświata. Niezbyt fajne rozwiązanie 😉 Chyba, że programiści tego programu zrealizowali porządnie obsługę błędów i np. w przypadku pokonania takich stałych fizycznych stanie się coś niestandardowego (koniec gry? koniec symulacji? kolejny level? podwyższenie stałych? restart? zmiana naszych dokonań tak, aby nie przekraczały tych stałych?).

Czy nie ma żadnego wyjścia?

W przypadku hipotezy symulacji typu A (a więc tej, w której nasze ciała rzeczywiście są podłączone do symulacji) można wnioskować, że jakaś szansa „wyzwolenia się” powinna istnieć. Kto wie, być może programiści (lub rzeczywiste istoty – obserwatorzy) oglądają nasze życie i jeśli postępujemy w nim dobrze to mogą nas „wyzwolić” (albo stworzyć dla nas matrix z niebem), a jeśli źle to mogą nas unicestwić (lub przenieść do matrixa z piekłem). Jest to jakiś argument za tym, że lepiej być wierzącym 😉

Możemy znajdować się w tej symulacji z własnego wyboru (być może jest to nasza rozrywka w normalnym świecie) i po zakończeniu naszego życia powrócimy do rzeczywistości. Równie dobrze może to być forma więzienia lub sądu i jeśli przegramy nasze życie z kiepskimi statystykami to zostaniemy unicestwieni lub obarczeni jakąś formą represji.

Niestety dla symulacji typu B (w której istniejemy tylko jako fragment programu) sprawa jest trochę gorsza, bo w zasadzie nie istnieje możliwość, aby się z niej wydostać do rzeczywistego świata. Weźmy dowolną grę komputerową i wcielmy się na chwilę w rolę głównego bohatera, np. Geralta z Rivii (Wiedźmina). Cokolwiek by on nie robił to zawsze będzie uwięziony w grze i nigdy nie uda mu się wyjść do naszego świata (warto też zwrócić uwagę na to, że gdy zatrzymamy grę to Geralt nie odczuje w żaden sposób tej przerwy).

Plusem jednak tego typu symulacji jest to, że – przynajmniej teoretycznie – możemy istnieć w nieskończoność, a jeśli uda nam się ingerować w oprogramowanie (albo przynajmniej zapisane dane) to możemy zmieniać naszą rzeczywistość według naszego uznania. Jak to zrobić? Nie wiemy.

Dodatkowo możliwe, że symulacja (obu typów) jest przez kogoś obserwowana i ta osoba może nanosić zmiany na symulację. W takim przypadku na próżno nasze wszystkie wysiłki (chyba, że ta osoba lub osoby zdecydują się dać nam swobodę). Jest również szansa, że w przypadku błędów osoba lub osoby zarządzające symulacją zostaną o nich poinformowane i wtedy zbadają sytuację. Programiści często postępują w ten sposób.

Czy to ma jakiś sens?

Każda teoria (czy nawet porządna hipoteza) naukowa powinna być m.in. falsyfikowalna, a więc powinien istnieć sposób, aby ją obalić. Niestety, wszystko wskazuje na to, że taki sposób wobec tej hipotezy nie istnieje, wobec czego nie jest to hipoteza naukowa, a w związku z tym jej rozważenie powinno być traktowane z przymrużeniem oka. Zanim więc zaczniesz próbować skakać z mostu, aby wyjść z matrixa, powiedz sobie: nie ma żadnego poważnego dowodu na to, że żyjemy w symulacji. A jeśli nawet żyjemy to nie wiemy, jakie działania jak są oceniane i czy na pewno tak jak nam się wydaje.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *