Slovník | Vyhledávání | Mapa webu
 
Analýza a modelování dynamických biologických datMaticové populační modely Prolog Fibonacciovi králíci a jejich modifikace

Logo Matematická biologie

Fibonacciovi králíci a jejich modifikace

Leonardo Pisánský, známější jako Fibonacci, se narodil kolem roku 1170 v italské Pise a zemřel roku 1250. Vzdělání získal v severní Africe, kde jeho otec Guilielmo Bonacci působil jako diplomat. Svoje vědomosti sepsal do knihy Liber abaci. Toto dílo publikované roku 1202 má hlavní zásluhu na tom, že v Evropě byl přijat poziční systém zápisu čísel (pomocí indických symbolů, kterým dnes říkáme arabské číslice). Ve třetí části knihy Fibonacci zformuloval a řešil úlohu:

Kdosi umístil pár králíků na určitém místě, se všech stran ohrazeném zdí, aby poznal, kolik párů králíků se při tom zrodí průběhem roku, jestliže u králíků je tomu tak, že pár králíků přivede na svět měsíčně jeden pár a že králíci počínají rodit ve dvou měsících svého věku.1

Tuto úlohu a její řešení lze považovat za jeden z prvních matematických modelů růstu populace. Budeme ji řešit s použitím současné symboliky.

Ze zadání úlohy plyne, že králíky můžeme rozdělit do dvou kategorií (tříd) - na ty, kteří jsou mladší než dva měsíce a tedy dosud „nerodí“ potomky, a na ty staré aspoň dva měsíce a tedy plodné. Označme resp. počet párů juvenilních (mladých, dosud neplodných), resp. dospělých (plodných), králíků v -tém měsíci. Z poněkud vágního Fibonacciova popisu však není jasné, co přesně má vyjadřovat „počet párů králíků v -tém měsíci“. Budeme si tedy představovat, že každý měsíc v určený den proběhne sčítání králíků, kterým získáme hodnoty a Nyní je potřeba vyjasnit, kdy se nové páry rodí. Jedna z možností je, že také k porodům dochází určitý den v měsíci. Abychom úvahy dále zjednodušili (a zreprodukovali Fibonacciův výsledek) budeme předpokládat, že králíci se rodí první den a jejich sčítání provádíme poslední den měsíce. Při sčítání mají tedy novorození králíci věk již jeden měsíc. Při sčítání následujícího měsíce mají tito králíci již věk dva měsíce a patří tedy mezi plodné. Poněvadž pár plodných králíků „zrodí“ (tj. zplodí a porodí) jeden pár mladých, bude počet párů mladých v -tém měsíci stejný jako počet párů plodných v měsíci předchozím,

(1)

Králíci jsou na místě ohrazeném zdí. Tomu můžeme rozumět tak, že jsou chráněni před predátory a tedy neumírají, a také, že nemohou nikam utéci. Proto bude počet plodných v -tém měsíci roven jejich počtu v předchozím měsíci zvětšenému o počet mladých, kteří se v předchozím měsíci narodili a během měsíce dospěli,

(2)

Rovnice Prolog (1) a Prolog (2) můžeme považovat za model růstu populace králíků; její aktuální velikost  počítáme z velikosti v minulosti. Při matematickém modelování nějakých procesů je ovšem obvyklé usuzovat na budoucnost z přítomnosti. V rovnicích Prolog (1) a Prolog (2) budeme psát místo rovnice tedy přepíšeme do tvaru

nebo ve vektorovém zápisu

(3)

Měsíc, ve kterém „kdosi umístil pár králíků na určitém místě“, budeme považovat za nultý, onen „umístěný pár“ za dospělé. Máme tedy počáteční podmínku Odtud již můžeme postupně počítat počty a pro libovolné a z nich celkový počet párů Výpočet je shrnut v tabulce Prolog 1.

Tab. 1. Řešení Fibonacciovy úlohy o králících za předpokladu, že k  rození dochází na začátku měsíce, počty zjišťujeme na konci měsíce, tj. používáme model Prolog (3).

Výsledek 377 párů odpovídá výsledku v Liber abaci.2

Jiná z možností, jak zadání porozumět, je mírně realističtější představa, že králíci se rodí kdykoliv, ale opět je sčítáme v určitý den měsíce. Při sčítání tedy mohou mít novorozenci, tj. králíci narození od předchozího sčítání, věk z intervalu a starší, ale dosud neplodní králíci věk z intervalu Při této interpretaci rozdělíme třídu juvenilních párů na dvě a označíme počet novorozených párů a počet neplodných párů věku alespoň jeden měsíc, ale méně než dva měsíce. Poněvadž novorozenci jsou bezprostředními potomky plodných párů, mladí jsou ti, kteří se v předchozím měsíci narodili, a počet plodných je počtem plodných z předchozího měsíce zvětšeným o počet mladých, kteří dosáhli věku aspoň dva měsíce, dostaneme model

který opět můžeme přepsat do vektorového tvaru

(4)

Při počátečních podmínkách a označení celkového počtu párů jako dostaneme počty králíků, jak je uvedeno v tabulce Prolog 2.

Tab. 2. Řešení Fibonacciovy úlohy o králících za předpokladu, že k   rození dochází kdykoliv v průběhu měsíce a králíky sčítáme v pevně určený den měsíce, tj. používáme model Prolog (4).

Výsledný počet párů králíků za rok je při této interpretaci téměř třikrát menší, než původní Fibonacciův výsledek.

Prvním obecným poučením tedy může být to, že sestavení modelu růstu populace je potřebné věnovat pozornost, přesně formulovat a zdůvodnit předpoklady, za kterých je model sestaven. Různé modely téhož procesu mohou totiž dávat různé výsledky.

Druhým závěrem je pozorování, že vývoj populace králíků můžeme popsat matematickým modelem Prolog (3) nebo Prolog (4), které jsou zvláštními případy obecného modelu ve tvaru

(5)

přitom složky vektoru vyjadřují časově závislé velikosti jednotlivých tříd, do kterých je populace strukturována (rozdělena) a je nějaká matice.

Fibonacciův model je krásný matematicky, není ovšem příliš realistický biologicky. Králíci neumírají, dospívají v přesně určených časech, plodí přesně určený počet potomků v pravidelných intervalech. Fibonacci samozřejmě nepředstíral, že popisuje vývoj populace králíků, vytvořil jakousi umělou skutečnost - jeho králíci žijí a množí se na „místě ohraženém zdí“. Myšlenka modelovat pomocí rovnice Prolog (5) vývoj populace rozdělené na několik disjunktních tříd, přičemž čas plyne v diskrétních krocích, je však velmi plodná.

Pokusíme se modelovat vývoj populace za realističtějších předpokladů. Ponecháme původní představu času plynoucího v diskrétních krocích (nejedná se tedy o čas fyzikální) a zvolíme nějakou časovou jednotku (ve Fibonacciově úloze jí byl jeden měsíc). Populaci si budeme představovat jako tvořenou velkým počtem jedinců (v případě organismů rozmnožujících se pohlavně budeme za „jedince“ považovat páry nebo samice). Každý z jedinců může být jednoho z typů - juvenilní (mladý, neplodný) nebo dospělý (plodný). Jinak jsou jedinci nerozlišitelní.

V populaci probíhají tři procesy - rození (vznik nových jedinců), dospívání (maturace, přeměna juvenilního jedince na plodného) a umírání (nebo z jiného pohledu přežívání). Narození jedince, jeho přeměnu na plodného a jeho úmrtí považujeme za náhodné jevy. O umírání (přežívání) a dospívání budeme předpokládat, že se jedná o jevy stochasticky nezávislé. Označme

O pravděpodobnostech přežití a pravděpodobnosti maturace a fertilitě  budeme předpokládat

(6)

 

v reálně existující populaci totiž musí být možné, že se juvenilní jedinec dožije plodnosti a že se nějací noví jedinci rodí přežití nikdy není jisté Nevylučujeme možnost tj. že jedinci po „produkci potomků“ (porodu, nakladení vajíček a podobně) hynou; taková populace se nazývá semelparní. Nevylučujeme však ani možnost tj. že dospělí jedinci plodí po delší úsek života; taková populace se nazývá iteroparní. Jedinci mohou dospívat bezprostředně po narození, tj. v čase kratším, než je zvolené období. V období po narození tedy takový jedinec, pokud nezemře, jistě dospěje, Jedinci z populace mohou dospívat i s jistým zpožděním, Zhruba řečeno, při délce časového kroku jeden rok jsou jednoleté organismy semelparní s bezprostředním dospíváním, drobní ptáci a savci jsou iteroparní s bezprostředním dospíváním, lososi nebo cikády jsou semelparní se zpožděným dospíváním, velcí ptáci a savci (včetně člověka) jsou iteroparní se zpožděným dospíváním. Snažíme se tedy modelovat dosti obecnou populaci.

Označme dále resp. velikost (počet jedinců, populační hustotu, celkovou biomasu a podobně) části populace tvořené juvenilními, resp. plodnými, jedinci v -tém časovém kroku. Juvenilní část populace je tvořena jedinci, kteří se za poslední období narodili, a jedinci, kteří již tuto třídu populace tvořili, přežili období a nedospěli v něm. Očekávaná velikost juvenilní části populace v následujícím období tedy bude

(7)

Plodná část populace bude tvořena jedinci, kteří byli juvenilní, nezemřeli a dospěli, a jedinci, kteří již dospělí byli a přežili. Očekávaná velikost plodné části populace v následujícím období tedy bude

(8)

Tyto rovnice opět můžeme přepsat ve vektorovém (maticovém) tvaru

(9)

kde jsme označili

Poznamenejme ještě, že kdybychom připustili a položili (jedinci jistě přežívají, tj. neumírají, jistě během období dospějí a dospělí vždy vyprodukují právě jednoho potomka), dostaneme původní Fibonacciův model Prolog (3).

 

 


1Překlad E. Čecha. Citováno dle J. Bečvář a kol.,  Matematika ve středověké Evropě. Praha: Prometheus 2001, str. 277.


2To nemusí znamenat, že by si Fibonacci představoval rození na začátku měsíce a sčítání na jeho konci. Pravděpodobnější je, že si neuměl představit nulový věk a proto jeho novorozenci měli hned věk 1 a v následujícím měsíci tak byli dvouměsíční a tedy již plodní.

 

 
vytvořil Institut biostatistiky a analýz Lékařské fakulty Masarykovy univerzity