Proste modele ze złożonym zachowanem czyl o chaose 29 kwetna 2014 Komputer jest narzędzem coraz częścej stosowanym przez naukowców do ukazywana skrzętne ukrywanych przez naturę tajemnc. Symulacja, obok eksperymentu teor, staje sę trzecm sposobem badana śwata. Na Unwersytece Śląskm trzy lata temu rozpoczęlśmy program ntegracj metod komputerowych z edukacją. W efekce powstało wele nezwykle fascynujących materałów dydaktycznych pozwalających na łatwejsze bardzej dogłębne poznane welu tematów. Jako podstawowe narzędze został wybrany język Python, który wraz z potęgą dostępnych w nm bblotek naukowych, stanow obecne chyba najlepsze rozwązane do komputerowego eksperymentowana z równanam, obrazam czy danym. Jedną z cekawszych mplementacj kompletnego środowska pracy jest program Sage[2]. Stanow on otwartą ntegrację systemu algebry komputerowej z językem Python, ponadto umożlwa rozpoczęce zabawy od zaraz, korzystając z przeglądark nternetowej jednej z możlwych opcj dostępu poprzez usługę chmurową[3] lub server pojedyńczych oblczeń, na którym bazuje nteraktywna wersja tego artykułu[4]. 1 Chaos w ekolog W latach sedemdzesątych XX weku na Unwersytece w Oxford australjsk uczony Robert May zajmował sę teoretycznym aspektam dynamk populacyjnej. Swoje prace podsumował w artykule, który ukazał sę w Nature pod prowokującym tytułem Proste modele matematyczne z bardzo skomplkowaną dynamką 1
[1]. Artykuł ten po latach stał sę jedną z najczęścej cytowanych prac z teoretycznej ekolog. Co wzbudzło tak welke zanteresowane w tej pracy? Klasycznym zadanem dynamk populacyjnej jest oblczene populacj pewnego gatunku w przyszłośc znając jego obecny stan. Matematyczne najprostszym rodzajem ekosystemów wydawały sę take, w których życe jednego pokolena populacj trwa jeden sezon. Dobrym przykładem jest populacja owadów, które w cągu jednego sezonu przechodzą pełną metamorfozę, np. motyle. Czas jest w naturalny sposób podzelony na dyskretne 1 okresy, odpowadające cyklom życa populacj. Równana opsujące tak ekosystem mają węc w naturalny sposób tzw. dyskretny czas, tj. t = 1, 2, 3... Robert May zajmował sę mędzy nnym właśne taką dynamką. W swoch rozważanach uproścł ekosystem do jednego gatunku, w którym populacja była funkcją kwadratową populacj w roku poprzednm. Skąd tak model? Najprostszym równanem dyskretnym opsującym ewolucję populacj jest model lnowy: N +1 = α N, (1) gdze N to lczebność w -tym sezone, a N +1 opsuje populację w następnym sezone. Łatwo sę przekonać, że take równane może prowadzć to trzech scenaruszy. Dla α = 1 ewolucja ne będze zmenać stanu lczebnego populacj, α < 1 prowadz do wygnęca, a przypadek α > 1 oznacza neogranczony wzrost populacj. To prowadzłoby do zachwana równowag w przyrodze. Poneważ wszystko w przyrodze jest ogranczone, warto poprawć to równane w tak sposób aby brało pod uwagę ogranczoną lość zasobów. Wyobraźmy sobe, że szkodnk zjadają zboże, którego jest dokładne ta sama lość co roku. Jeżel owadów jest mało w porównanu do lośc pożywena to mogą rozmnażać sę z pełną sła rozrodczą matematyczne określoną przez stałą α > 1. Jednak w marę wzrostu lczebnośc szkodnków, pożywena ne będze wystarczać sła rozrodcza będze maleć. W krytycznym przypadku można sobe wyobrazć ze owadów rodz sę tyle, że zjadają całe zboże przed osągnęcem zdolnośc rozrodczej populacja gne. Model uwzględnający ten efekt ogranczonego dostępu do pożywena został po raz perwszy zaproponowany przez Verhulsta w roku 1838. W modelu tym tempo wzrostu α ne jest stałe, 1 W matematyce dyskretny to przyjmujący wartośc z określonego przelczalnego zboru. Przecweństwem jest cągły 2
ale zależy od stanu populacj: α = α(n ) (2) Zależność tempa wzrostu α od N pownna meć następującą własność: jeżel populacja wzrasta, tempo wzrostu pownno maleć poneważ jest utrudnony dostęp do pożywena. Oczywśce jest wele funkcj o tej własnośc: to są funkcje malejące. Verhulst zaproponował taką oto zależność: ( α = a 1 N ) K gdze a > 0 oraz stała K > 0 charakteryzuje zasoby pożywena nazywa se pojemnoścą środowska. Jak zmana K wpływa na tempo wzrostu populacj? Jeżel K rośne to N /K maleje. Z kole to powoduje że 1 N /K rośne, czyl α rośne. Oznacza to, że tempo wzrostu rośne populacja rozrasta sę szybcej. Zmodyfkujmy węc poprzedn model (1) zakładając, że tempo wzrostu α zmena sę tak jak w równanu (3). Wówczas otrzymamy równane (3) ( N +1 = a 1 N ) N (4) K Równane to można zapsać w postac równana rekurencyjnego x +1 = ax (1 x ), (5) gdze x = N /K oraz x +1 = N +1 /K oznaczają przeskalowane lczebnośc populacj w czase oraz w czase +1. Równane (5) nazywa sę równanem logstycznym. Mogłoby sę wydawać, że przy tak newelkej modyfkacj nasz model jest prosty do analzy. Sprawdźmy to. Rozważmy równane (5) dla parametru a = 0.5 startując z początkowej populacj x 0 = 0.45. Kolejne wartośc populacj można otrzymać stosując równane rekurencyjne (5): x 1 = ax 0 (1 x 0 ), x 2 = ax 1 (1 x 1 ), x 3 = ax 2 (1 x 2 ), td (6) Aby ułatwć oblczena w (6) możemy skorzystać z ponższego programu 2 symulującego nasz model: 2 Program jest napsany w języku Python można go uruchomć m.n. na platforme Sage. Zachęcamy do lektury ksążk http://cse.us.edu.pl/e-book/ 3
x 1 0.8 0.6 0.4 0.2 5 10 15 20 Rysunek 1: Dla a = 1.5 ekosystem osąga dynamczną równowagę. a = 0.5 x = 0.45 for n range(10): x = a x (1 x) prnt x Oblczamy kolejne wartośc x zauważamy, że maleją one do zera. Eksperymentując z powyższym kodem łatwo też jest sę przekonać, że dzeję sę tak od wartośc początkowej x 0. Oznacza to, że populacja zawsze gne. W drugm kroku analzy zwększamy wartość parametru a do dowolnej wartośc z przedzału a (1, 3). Okazuje sę, że wtedy cąg x dąży do pewnej welkośc x > 0. Interpretując to w kategorach ekolog możemy powedzeć, że welkość populacj ustala sę na pewnym pozome, który ne zmena sę z sezonu na sezon. Warto zauważyć, że wartość x ne zależy od stanu początkowego x 0. Jest to efekt dążena ekosystemu do stablzacj - populacja dostosowuje swoją lczebność do możlwośc wyżywena sę. Matematyczne mówmy, że układ dąży do stablnego punktu stałego, tj. spełnającego równość x = f(x ) (oznacza to że w chwl następnej stan jest tak sam jak w chwl poprzednej). Z pomocą programu Sage możemy przedstawć tę ewolucję grafczne rysując wykres lczebnośc populacj od czasu. Tak efekt stablzacj był oczekwany przez badaczy równane logstyczne (5) ne przycągnęłoby szczególnej uwag gdyby ne pewna nespodzanka. Okazało sę 4
x 1 0.8 0.6 0.4 0.2 5 10 15 20 x 1 0.8 0.6 0.4 0.2 5 10 15 20 Rysunek 2: Dla a = 3.2 (góra) ewolucja układu prowadz to oscylacj. W tym przypadku populacja co drug sezon jest taka sama. Dla a = 4 (dół) lczba osobnków w kolejnych latach zdaje sę być losowa! bowem, że dla pewnych wartośc parametru a model (5) ne zachowuje sę w przewdywalny sposób. Po perwsze, pojawają sę stany okresowe welo-okresowe. Po druge, z każdym krokem czasowym populacja zmena sę w neregularny sposób, podobny do losowego ruchu. Po trzece, pojawa sę duża wrażlwość na warunk początkowe: dwa prawe nerozróżnalne warunk początkowe prowadzą do całkowce różnej ewolucj populacj. Wszystke te cechy są charakterystyczne dla zachowana które przypomna ruch całkowce losowy nazywa sę determnstycznym chaosem. Zbadajmy tę własność! Na początek ustalmy wartość parametru na a = 3.2 przyjrzyjmy sę ewolucj. Zaskoczenem może być fakt, że tym razem populacja ne osąga jednej wartośc, ale dwe, które występują kolejno po sobe co drug sezon. Okazało sę jednak, że to ne konec kłopotów. Dla a = 4 układ przestaje być przewdywalny. Popatrzmy na rysunek (2) lub wygenerujmy sam cąg lczb za pomocą komputera. Wynk wy- 5
glądają na czysto przypadkowe dla neco różnących sę populacj początkowych są kompletne różne. Uważny czytelnk pownen jednak zaprotestować. Jak układ, który jest opsany przez determnstyczne 3 równane, do tego nawet całkem proste, może meć neprzewdywalne zachowane? Otóż może. Własnoścą tego układu jest nezwykła czułość na warunk początkowe. Wystarczy wystartować z dwóch warunków początkowych różnących sę o jedną mlonową już po klku krokach otrzymamy całkem nne wartośc populacj. Sprawdźmy to przy pomocy komputera: a=4.0 x=0.123 y =0.123+0.000001 pkts = [] for n range(25): x = a x (1 x) y = a y (1 y) prnt x,y Oto mamy prosty model determnstycznej ewolucj. Ale ten determnzm jest złudny, jest determnzmem tylko matematycznym. Z praktycznego punktu wdzene układ zachowuje sę w sposób neprzewdywalny poneważ ngdy ne możemy zadać warunków początkowych w matematyczne dokładny sposób. W rzeczywstośc wszystko jest określane z pewną dokładnoścą: każdy przyrząd pomarowy ma określoną dokładność to może być przyczyną praktycznej neprzewdywalnośc w determnstycznych układach posadających własność chaotycznośc. Przykładem nech będą modele prognozy pogody które zawsze wykazują własność chaotycznośc. Dlatego tak kepske bywają prognozy pogody w dłuższym przedzale czasowym. Analza układów chaotycznych jest nezwykle trudna. Możemy jednak dość łatwo odkryć wele tajemnc chaotycznośc stosując symulacje komputerowe. Narysujmy tak zwany dagram bfurkacyjny, na którym będzemy odkładać na os odcętych wartośc parametru a a na os rzędnych stablne punkty stałe odwzorowana logstycznego. Stablne punkty otrzymamy symulując dużą lość układów 3 Prawo determnstyczne to take w którym przyszłość jest jednoznaczne określona przez stan początkowy. Antonmem jest prawo probablstyczne. 6
jednocześne rysując wartośc po weku krokach oblczeń. Jak można sę domyślć wymaga to wykonana dużej lośc oblczeń. Spróbujmy ostrożne postępować z następującym wartoścam: mport numpy as np Nx = 300 Na = 500 x = np. lnspace(0,1,nx) x = x + np.zeros((na,nx)) x = np. transpose(x) a=np. lnspace(1,4,na) a=a+np.zeros((nx,na)) for n range (100): x=a x (1 x) pt = [[ a, x ] for a, x n \ zp(a.flatten(),x.flatten ())] pont(pt,sze=1,fgsze=(7,5)) Pownnśmy otrzymać coś podobnego do rysunku (3). Jak nterpretować ten rysunek? Np. dla wartośc parametru a = 3.3 mamy 2 stablne punkty stałe (co drug sezon populacja ma tą samą lczebność). Np. dla parametru a = 3.5 mamy 4 punkty stałe (co czwarty sezon populacja ma tą samą lczebność). Np. dla parametru a = 3.56 mamy 8 punktów stałych (co ósmy sezon populacja ma tą samą lczebność). Ale dla parametru a 3.57 mamy neskończene wele punktów stałych (lczebność w populacj ngdy sę ne powtarza zmena sę w neprzewdywalny sposób). Mając jednak program komputerowy, możemy zmenć zakres parametru a eksplorować własnoręczne nekończącą sę strukturę geometryczną owego dagramu. To tylko czubek góry lodowej. Na temat tego równana napsano tysące prac naukowych mmo tego wcąż skrywa ono swoje tajemnce. Z pomocą symulacj komputerowej można, nawet bez stosowana zaawansowanej matematyk pobawć sę w odkrywcę śwata dynamk nelnowej. Zapraszamy do lektury wersj onlne, zawerającej szczegóły welu cekawych własnośc równana logstycznego oraz nteresujące sposoby ch wzualzacj. 7
Lteratura Rysunek 3: Dagram bfurkacyjny dla równana logstycznego [1] May, R. M. Smple mathematcal models wth very complcated dynamcs. Nature 261 (5560): 459 467,1976. [2] http://sagemath.org [3] http://cloud.sagemath.com [4] http://vsual.cse.us.edu.pl/warsztaty 8