Modele simple cu comportament complex, adică haos
Tehnologie

Modele simple cu comportament complex, adică haos

Calculatorul este un instrument folosit din ce în ce mai mult de oamenii de știință pentru a descoperi secrete ascunse cu grijă de natură. Modelarea, împreună cu experimentul și teoria, devine a treia modalitate de a studia lumea.

În urmă cu trei ani, la Universitatea din Silezia, am început un program de integrare a metodelor computerizate în educație. Drept urmare, au fost create o mulțime de materiale didactice extrem de interesante, care fac mai ușor și mai profund studiul multor subiecte. Python a fost ales ca instrument principal, care, împreună cu puterea bibliotecilor științifice disponibile, este probabil cea mai bună soluție pentru „experimentele pe computer” cu ecuații, imagini sau date. Una dintre cele mai interesante implementări ale unui banc de lucru complet este Sage [2]. Este o integrare deschisă a unui sistem de algebră computerizată cu limbajul Python și, de asemenea, vă permite să începeți imediat să jucați folosind un browser web și una dintre posibilele opțiuni de acces printr-un serviciu cloud [3] sau un singur server de calcul pe care interactiv versiunea acestui articol se bazează pe [4] .

Haos în ecologie

În primii ani la Universitatea Oxford, omul de știință australian Robert May a studiat aspectele teoretice ale dinamicii demografice. El și-a rezumat munca într-o lucrare care a apărut în revista Nature sub titlul provocator „Modele matematice simple cu dinamică foarte complexă” [1]. De-a lungul anilor, acest articol a devenit una dintre cele mai citate lucrări din ecologia teoretică. Ce a provocat un asemenea interes pentru această lucrare?

Problema clasică a dinamicii populației este de a calcula viitoarea populație a unei anumite specii, având în vedere starea ei prezentă. Din punct de vedere matematic, cele mai simple au fost ecosistemele în care viața unei generații a unei populații durează un sezon. Un bun exemplu este o populație de insecte care suferă o metamorfoză completă într-un sezon, cum ar fi fluturii. Timpul este împărțit în mod natural în perioade discrete2 corespunzătoare ciclurilor de viață ale populației. Astfel, ecuațiile care descriu un astfel de ecosistem au în mod natural așa-numitul timp discret, adică t = 1,2,3…. Robert May s-a ocupat, printre altele, de astfel de dinamici. În raționamentul său, el a simplificat ecosistemul la o singură specie a cărei populație era o funcție pătratică a populației anului precedent. De unde a venit acest model?

Cea mai simplă ecuație discretă care descrie evoluția unei populații este un model liniar:

unde Ni este abundența în sezonul i, iar Ni + 1 descrie populația din sezonul următor. Este ușor de observat că o astfel de ecuație poate duce la trei scenarii. Când a = 1, evoluția nu va modifica dimensiunea populației, iar <1 duce la dispariție, iar cazul a > 1 înseamnă creștere nelimitată a populației. Acest lucru va duce la un dezechilibru în natură. Deoarece totul în natură este limitat, este logic să ajustați această ecuație pentru a ține cont de cantitatea limitată de resurse. Imaginați-vă că dăunătorii mănâncă cereale, care în fiecare an sunt exact la fel. Dacă insectele sunt puține în comparație cu cantitatea de hrană pe care o pot reproduce, ele se pot reproduce la putere de reproducere deplină, determinată matematic de constanta a > 1. Cu toate acestea, pe măsură ce crește numărul dăunătorilor, hrana va fi rară și capacitatea de reproducere va scădea. Într-un caz critic, ne putem imagina că se nasc atât de multe insecte încât mănâncă toate cerealele înainte de a avea timp să se reproducă, iar populația moare. Un model care ia în considerare acest efect al accesului limitat la hrană a fost propus pentru prima dată de Verhulst în 1838. În acest model, rata de creștere nu este constantă, ci depinde de starea populației:

Relația dintre ritmul de creștere a și Ni ar trebui să aibă următoarea proprietate: dacă populația crește, ritmul de creștere ar trebui să scadă deoarece accesul la hrană este dificil. Desigur, există multe funcții cu această proprietate: acestea sunt funcții de sus în jos. Verhulst a propus următoarea relație:

unde a>0 si constanta K>0 caracterizeaza resursele alimentare si se numesc capacitatea mediului. Cum afectează o modificare a K rata de creștere a populației? Dacă K crește, Ni/K scade. La rândul său, acest lucru duce la faptul că 1-Ni/K crește, ceea ce înseamnă că crește. Aceasta înseamnă că rata de creștere este în creștere și populația crește mai rapid. Deci, să modificăm modelul anterior (1) presupunând că rata de creștere se modifică ca în ecuația (3). Apoi obținem ecuația

Această ecuație poate fi scrisă ca o ecuație recursivă

unde xi = Ni / K și xi + 1 = Ni + 1 / K indică populațiile redimensionate în timpul i și în timpul i + 1. Ecuația (5) se numește ecuație logistică.

Poate părea că, cu o modificare atât de mică, modelul nostru este ușor de analizat. Hai să verificăm. Se consideră ecuația (5) pentru parametrul a = 0.5 pornind de la populația inițială x0 = 0.45. Valorile populației secvențiale pot fi obținute folosind ecuația recursivă (5):

x1= ax0(1st0)

x2= ax1(1st1)

x3= ax2(1st2)

Pentru a facilita calculele din (6), putem folosi următorul program (este scris în Python și poate fi rulat, printre altele, pe platforma Sage. Vă recomandăm să citiți cartea http://icse.us.edu .pl/e-book . ), imitând modelul nostru:

a = 0.5 x = 0.45 pentru i în intervalul (10):      x \u1d a * x * (XNUMX-x)      imprima x

Calculăm valori succesive ale lui xi și observăm că acestea tind spre zero. Experimentând cu codul de mai sus, este, de asemenea, ușor de observat că acest lucru este adevărat, indiferent de valoarea inițială a lui x0. Aceasta înseamnă că populația moare constant.

În a doua etapă a analizei, creștem valoarea parametrului a la orice valoare din intervalul ae (1,3). Se dovedește că atunci șirul xi merge la o anumită cantitate x * > 0. Interpretând acest lucru din punct de vedere al ecologiei, putem spune că mărimea populației este fixată la un anumit nivel, care nu se modifică de la sezon la sezon. . Este de remarcat faptul că valoarea lui x * nu depinde de starea inițială x0. Acesta este efectul eforturilor de stabilizare a ecosistemului - populația își adaptează dimensiunea la capacitatea de a se hrăni. Din punct de vedere matematic, se spune că sistemul tinde către un punct fix stabil, adică. satisfacerea egalității x = f(x) (asta înseamnă că în momentul următor starea este aceeași ca în momentul precedent). Cu Sage, putem vizualiza această evoluție grafic prin reprezentarea grafică a populației în timp.

Un astfel de efect de stabilizare era așteptat de cercetători, iar ecuația logistică (5) nu ar fi atras prea multă atenție dacă nu ar fi fost surpriza. S-a dovedit că pentru anumite valori ale parametrului, modelul (5) se comportă într-un mod imprevizibil. În primul rând, există stări periodice și multiperiodice. În al doilea rând, cu fiecare pas de timp, populația se schimbă inegal, ca o mișcare aleatorie. În al treilea rând, există o mare sensibilitate la condițiile inițiale: două stări inițiale aproape indistincte duc la o evoluție complet diferită a populației. Toate aceste trăsături sunt caracteristice unui comportament care seamănă cu o mișcare complet aleatorie și se numește haos determinist.

Să explorăm această proprietate!

Mai întâi, să setăm valoarea parametrului a = 3.2 și să ne uităm la evoluție. Poate părea surprinzător că de această dată populația ajunge nu la o valoare, ci la două, care apar consecutiv la fiecare al doilea sezon. Cu toate acestea, s-a dovedit că problemele nu s-au terminat aici. Cu a = 4, sistemul nu mai este previzibil. Să ne uităm la figura (2) sau vom genera noi înșine o secvență de numere folosind un computer. Rezultatele par a fi pur aleatoare și destul de diferite pentru populațiile de început ușor diferite. Cu toate acestea, cititorul atent trebuie să obiecteze. Cum poate un sistem descris printr-o ecuație deterministă1, chiar și una foarte simplă, să se comporte imprevizibil? Poate.

O caracteristică a acestui sistem este sensibilitatea sa remarcabilă la condițiile inițiale. Este suficient să începem cu două condiții inițiale care diferă cu o milioneime, iar în doar câțiva pași vom obține valori total diferite ale populației. Să verificăm pe computer:

a = 4.0

x = 0.123 y = 0.123 + 0.000001 PCC = [] pentru i în intervalul (25): x = a*x*(1-x) u = a * u * (1-u) imprimați x, y

Iată un model simplu de evoluție deterministă. Dar acest determinism este înșelător, este doar determinism matematic. Din punct de vedere practic, sistemul se comportă imprevizibil, deoarece nu putem stabili niciodată exact condițiile inițiale matematic. De fapt, totul este determinat cu o anumită precizie: fiecare instrument de măsurare are o anumită precizie, iar acest lucru poate provoca imprevizibilitate practică în sistemele deterministe care au proprietatea haosului. Un exemplu sunt modelele de prognoză meteo, care prezintă întotdeauna o proprietate a haosului. Acesta este motivul pentru care prognozele meteo pe termen lung sunt atât de proaste.

Analiza sistemelor haotice este extrem de dificilă. Cu toate acestea, multe dintre misterele haosului le putem rezolva destul de ușor cu ajutorul simulărilor pe computer. Să desenăm așa-numita diagramă de bifurcație, pe care plasăm valorile parametrului a de-a lungul axei absciselor și punctele fixe stabile ale cartografierii logistice de-a lungul axei ordonatelor. Obținem puncte stabile prin simularea unui număr mare de sisteme simultan și trasarea valorilor după mai multe ori eșantionare. După cum ați putea ghici, acest lucru necesită o mulțime de calcule. Să încercăm să procesăm „cu atenție” următoarele valori:

import numpy ca np Nx = 300 Asta = 500 х = de exemplu, spațiu liniar (0,1, Nx) х = х + de exemplu eros ((Na, Nx)) х = np.transpunere (х) a = de exemplu Linspace (1,4, Na) a=a+np.zero((Nx,Na)) pentru i în intervalul (100): x=a*x*(1-x) pt = [a_, x_] pentru a_, x_ c zip(a.platten(),x.flatten())] punct (pt, dimensiune = 1, figsize = (7,5))

Ar trebui să obținem ceva similar cu figura (3). Cum să interpretezi acest desen? De exemplu, cu valoarea parametrului a = 3.3, avem 2 puncte fixe stabile (mărimea populației este aceeași la fiecare al doilea sezon). Totuși, pentru parametrul a = 3.5 avem 4 puncte constante (în al patrulea sezon populația are același număr), iar pentru parametrul a = 3.56 avem 8 puncte constante (în al optulea sezon populația are același număr). Dar pentru parametrul a≈3.57, avem infinit de puncte fixe (dimensiunea populației nu se repetă niciodată și se modifică în moduri imprevizibile). Cu toate acestea, cu un program de calculator, putem schimba domeniul de aplicare al parametrului a și putem explora structura geometrică infinită a acestei diagrame cu propriile noastre mâini.

Acesta este doar vârful aisbergului. Despre această ecuație au fost scrise mii de lucrări științifice, dar încă își ascunde secretele. Cu ajutorul simulării pe computer, poți, fără să apelezi măcar la matematică superioară, să joci pionierul lumii dinamicii neliniare. Vă invităm să citiți versiunea online care conține detalii despre multe dintre proprietățile interesante ale ecuației logistice și modalități interesante de a le vizualiza.

1 O lege deterministă este o lege în care viitorul este determinat în mod unic de starea inițială. Antonimul este legea probabilistică. 2 În matematică, „discret” înseamnă obținerea de valori dintr-un anumit set numărabil. Opusul este „continuu”.

Adauga un comentariu