MC, 02:25 poniedziałek, 30.08.2010 r.
Ilustracja do artykułu: Odwzorowanie logistyczne i wkładnik Lapunowa - chaos deterministyczny

Odwzorowanie logistyczne i wkładnik Lapunowa - chaos deterministyczny

O ile z pojęciem chaosu deterministycznego może spotkali się nieliczni, o tyle praktycznie każdy zetknął się ze pojęciem efektu motyla, mniej lub bardziej wypaczonym w swoim znaczeniu. O co tutaj tak naprawdę chodzi?

Jeszcze w XX wieku, fizycy byli przekonani, że dzięki możliwościom jakie dały ówczesne komputery, będą w stanie przewidywać w sposób matematyczny, zachowywanie się pogody. W 1960 roku Edward Lorenz pracował przy komputerze, właśnie modelując matematycznymi równaniami zachowania pogody, do momentu w którym mu przerwano. Spisał wynik z ekranu na kartę, z myślą, że obliczenia będzie kontynuował od tego wyniku. Po ponownym wprowadzeniu tej liczby do komputera, po czasie zauważył, że na ekranie otrzymuje zupełnie inne wyniki, niż te które miał poprzednio, co było dla niego zaskoczeniem. Gdzie leżał problem?
Lorentz spisał na kartkę jedynie zaokrąglony wynik obliczeń! No dobrze, ale co z tego, skoro różnica w tych wynikach była nieznaczna? Czy wyniki nie powinny być do siebie zbliżone, tak jak ówcześnie uważano? I na tym polegało odkrycie. Lorentz doszedł do tego, że są pewne równania matematyczne, które podczas iterowania (wynik poprzedniego obliczenia brany jest jako argument do kolejnego - wydaje się to dość logiczne np. podczas modelowania pogody, kiedy stan obecny wynika ze stanu poprzedniego), są niezwykle wrażliwe na zadane warunki początkowe. Jakie są tego konsekwencje? A no na przykład takie, że nie jesteśmy w stanie wymodelować, czyli określić równaniami zachowania pogody, tak by stała się przewidywalna, bo nawet najmniejsza rozbieżność warunków początkowych, czyli np. wartości panującego ciśnienia (niezależnie od tego jak niewielka będzie to rozbieżność), da po kilku iteracjach zupełnie inne wyniki, niż dla warunku początkowego np. o jedną milionową mniejszego.

Stąd wziął się efekt motyla, którego to ruch skrzydeł (niewielka zmiana warunków początkowych) mógłby wywołać kataklizm na drugiej półkuli (dziś już do oryginalnej wersji tej teorii się nie dojdzie). Ale dzięki temu możemy generować na komputerach liczby pseudolosowe. Np. znana programistom C/C++ funkcja:

srand();
przyjmuje jako argument, wartość liczbową - warunek początkowy, z którego później iterowane są kolejne liczby pseudolosowe. Tym bardziej zrozumiałe staje się, dlaczego, kiedy chcemy, aby za każdym uruchomieniem programu losowany były inne liczby, dajemy jako argument funkcji srand() funkcję time(0),
srand(time(0));
która zwraca ilość sekund, które upłynęły od dnia 01.01.1970 r. - argument jest za każdym razem inny, a nawet najmniejsza zmiana wartości początkowej spowoduje zwracanie zupełnie innych liczb przez srand(), która zachowuje się jak jedno z równań matematycznych wrażliwych na zadane warunki.

A teraz do rzeczy. Po co w ogóle o tym piszę? Otóż przygotowałem dwa programy (dla systemu LINUX!!), dzięki którym możemy się troszkę pobawić chaosem deterministycznym i na własne oczy przekonać się na czym polega efekt motyla. Na początku muszę powiedzieć, że jednym z równań wrażliwych na warunki początkowe jest tak zwane odwzorowanie logistyczne. Nie chcę tutaj tłumaczyć co to za równanie ale nie dla tego, żeby to było coś trudnego, tylko, że to jest temat przewałkowany już w każdym miejscu i wystarczy zajrzeć na Wikipedię do której odsyłam. Programy te opierają się właśnie na tym odwzorowaniu i na jego przykładzie pracują. A co dokładnie możemy w nich robić? Jeden z nich daje możliwość rysowania wykresów (o nich za chwilkę) odwzorowania logistycznego, dla zadanych przez nas warunków i obserwowaniu co się z nim dzieje - kiedy wpada w chaos, kiedy jest okresowe, kiedy zbiega do jakieś wartości, co się stanie jak trochę zmienię warunki itd. itd. A jakie to wykresy? Mamy możliwość narysowania trajektorii odwzorowania dla zadanych warunków, a także wykresu pajęczynowego oraz bifurkacyjnego. Drugi zaś z programów rysuje wykres bifurkacyjny wraz z przebiegiem wykładnika Lapunowa, który pokazuje, czy funkcja wpada w chaos czy nie.

Wszystkich tych, którzy czują się zainteresowani tematem, serdecznie zapraszam na stronę koła naukowego Nabla, gdzie wszystko to jest w prosty sposób wyjaśnione.

Wykres pajęczynowy odwzorowania logistycznego
Wykres pajęczynowy odwzorowania logistycznego

Wykres bifurkacyjny odwzorowania logistycznego
Wykres bifurkacyjny odwzorowania logistycznego

Wykres przebiegu wykładnika Lapunowa dla odwz. logistycznego
Wykres przebiegu wykładnika Lapunowa dla odwzorowania logistycznego

Polecam pobawić się tymi programami, nawet nie wiedząc zbytnio co się robi, bo czasem naprawdę ciekawe rzeczy wychodzą!

Do poprawnego działania programu wymagany jest zainstalowany GNUplot!!

Pobierz plik:

- Odwzorowanie logistyczne (archiwum zip; rozmiar: 4,5 KB; md5: 579485d4370aecbce765084b7180db71)
- Odwzorowanie logistyczne - źródło (archiwum zip; rozmiar: 7 KB; md5: fed7d4387be7c5348738c2e9b6c1dec1 )
- Wykładnik Lapunowa (archiwum zip; rozmiar: 3,3 KB; md5: 5805002b793f18c277b39c003bc4dbb7)
- Wykładnik Lapunowa - źródło (archiwum zip; rozmiar: 3 KB; md5: 1c8dbf24f2bcc8ea2605132b5df9c0da)

Komentarze (0) - Nikt jeszcze nie komentował - bądź pierwszy!

Imię:
Treść: