Cette
équation, vite tombée dans l'oubli, va être reprise d'abord par le
démographe américain Raymond Pearl au début du siècle. Celui-ci est
convaincu que le modèle logistique explique les variations de toutes
les populations vivantes. Le modèle logistique va surtout être développé
par le mathématicien italien Volterra.
Ce
qui intrigue Pearl et Volterra, c'est le comportement différent de
l'évolution de la population d'une espèce à l'autre. Sur un
territoire donné, la population de certaines espèces semble se
stabiliser, d'autres semblent suivre des cycles réguliers et
d'autres enfin semblent fluctuer de façon totalement aléatoire. Or,
chaque population animale semble avoir un comportement de même
nature, indépendamment des facteurs externes. Pour alors, certaines
populations se stabilisent-elles et d'autres non ?
Au début des années 70, un mathématicien américain,
James Yorke, et un physicien australien, Robert May, tous deux écologistes,
vont trouver la réponse. Ils découvrent que l'évolution de chaque
population animale découle de son équation logistique et dépend
de la valeur de k, son taux de croissance effectif. Pour
cela, ils étudient la population de poissons d'un lac australien et
l'équation logistique à l'aide d'un ordinateur.
Nous allons voir que selon la valeur de son taux
de croissance effectif k, une population animale, peut tendre
vers un état d'équilibre, ou fluctuer entre deux ou quatre ou huit
valeur, ou varier de façon totalement aléatoire.
Ainsi, pour certaines espèces animales, il est
normal que les populations varient régulièrement, tandis que pour
d'autres, il est normal de tendre vers une situation d'équilibre.
Cette variété, ce "chaos" dans certains cas, est liées
aux propriétés mathématiques même de l'équation:

La
complexité devient la règle et non l'exception, et ce qui semble
"chaotique" découle des propriétés bien précises d'une
fonction bien précise.
Ce
sont ces résultats que l'on va retrouver. Pour cela, on va étudier
l'évolution de populations animales dont les taux de croissance
effectifs k varient de 1 à 4. On étudiera ces évaluations
par calcul et par l'étude du graphe de la fonction logistique.
Voyons
quelques cas particuliers:
-
Si la valeur initiale vaut
0.1 et l'évolution
de la population pour les quarante premières périodes est représentée
par la courbe ci-dessous:

On constate que
pour ce taux de croissance et cette condition initiale, la
population décroît et va tendre vers zéro.
- Si la valeur initiale vaut
0.1 et l'évolution
de la population pour les quarante premières périodes est représentée
par la courbe ci-dessous:

On constate que
pour ce taux de croissance, la population va se stabiliser autour
d'un nombre correspondant à la moitié de la population que le
territoire pourrait accueillir.
- Si la valeur initiale vaut
0.1 et l'évolution
de la population pour les quarante premières périodes est représentée
par la courbe ci-dessous:

Avec un taux de croissance effectif de 3, le
nombre d'individus de cette population se met à osciller entre deux
valeurs que l'on peut calculer à l'aide de l'ordinateur. On obtient
alors les valeurs 0.64 et 0.68.
- Si la valeur
initiale vaut
0.1 et l'évolution
de la population pour les quarante premières périodes est représentée
par la courbe ci-dessous:

Avec un taux de croissance effectif de 3.5 la
population oscille entre quatre valeurs: 0.39, puis 0.83, puis 049,
et enfin 0.87. L'évolution d'une population qui a un tel taux de
croissance effectif est nettement cyclique.
- Si la valeur
initiale vaut
0.1 et l'évolution
de la population pour les quarante premières périodes est représentée
par la courbe ci-dessous:

On constate que, lorsque le taux de croissance
effectif k est égal à 4, le nombre d'individus des
populations des périodes successives semble osciller irrégulièrement,
de façon "chaotique" entre les deux extrêmes: la
saturation quand x tend vers 1 et l'extinction quand x
tend vers 0.
On constate donc finalement pour un taux de
croissance effectif variable et un valeur initiale de population
fixe, le nombre d'individus semble à la tant se comporter de façon
prévisible que chaotique. La question maintenant, c'est qu'elle est
le comportement de cette fonction pour d'autres valeurs initiales de
population.
Pour le vérifier, on reprend les calculs
précédents avec une population initiale représentant 0.8
de l population maximale pour un territoire donné et comparons les
résultats obtenus.
La croissance de la population est toujours donnée
par l'équation:

-
Selon que la population initiale soit ou
,
on obtient pour :

On constate que, quelle que soit la population
initiale, elle tend vers zéro.
-
Selon que la population initiale soit ou
,
on obtient pour :

On constate que,
quelle que soit la population initiale, elle tend vers zéro.
- Selon que la population
initiale soit ou
,
on obtient pour :

On constate ici
que l'évolution des populations est très différente. On a pris
des populations initiales éloignées. Si on avait pris des
populations initiales très proche, quelle aurait été l'évolution
des deux populations ?
- Selon que la population
initiale soit ou
,
on obtient pour :

On constate ici
que l'évolution des populations est très différente même si
elles étaient très proches initialement et même si l'évolution
de ces population d'écoulent d'une fonction très simple. Si on
avait pris comme population initiale on
aurait constaté également une évolution très différente de l'évolution
des populations.
Conclusion:
en dehors de la phase chaotique, la valeur initiale n'a aucune importance,
mais dans cette phase chaotique, au contraire, la plus petite variation
de valeur initiale change du tout au tout les valeurs suivantes.
C'est ce qu'on appelle "l'effet papillon".
DIAGRAMME
DE FEIGENBAUM
Pour
comprendre l'évolution d'une population selon le modèle
logistique, on a représenté l'évolution dans le temps, quarante périodes,
d'une population correspondant à une valeur initiale précise et à
une constante k déterminée. On a constaté, en prenant
quelques valeurs particulières de k, que pour ces différentes
valeurs, la population avait une évolution différente. On va donc
étudier le comportement de la fonction logistique en prenant k
comme variable.
En
donnant à k des valeurs comprises entre 0 et 4 avec un pas
de 0.02, nous allons, pour chacune des ces valeurs, calculer ce que
deviendra la population lapopulation pour chaque période comprise
entre la 30ème et la 130ème .
Le
graphique ci-dessous représente donc pour chaque valeur du taux de
croissance effectif k en abscisse, cent valeurs successives
de en
ordonnées pour t variant de 30 à 130.
Ce graphique (où
l'on peut observer des bifurcations), est appelé "diagramme de
Feigenbaum", du nom du physicien Mitchell Feigenbaum qui l'a étudié
en profondeur et a montré qu'on le retrouvait dans de nombreux phénomènes
naturels.
On va maintenant
examiner duex propriétés remarquables de ce diagramme: le
doublement de période et sa dimension fractale.
Si on revient à
notre exemple où la fonction logistique donne l'évolution d'une
population animale selon son taux de croissance effectif k,
le diagramme de Feigenbaum indique que, quand ce taux est inférieur
à 3, le système tend vers un état final stable. Cela correspond
en général à notre intuition influencée par notre désir
inconscient d'ordre et de simplicité.
Mais à partir de
3, cela se complique: le nombre d'individus par génération se met
à osciller entre 2 puis 4, puis 8 valeurs
pour enfin entrer dans
une zone "chaotique" où toute valeur semble possible. Il
y a déjà quelque chose de fascinant. Mais si on observe de plus près
cet intervalle de doublement qui précède la zone chaotique, on va
découvrir des résultats encore plus curieux.
On prend ainsi
d'abord l'intervalle des trois premiers doublements avec 2, puis 4,
puis 8 branches, pour un taux de croissance effectif de et
on obtient le graphique suivante:

Il est remarquable
d'observer également sur le graphique ci-dessus qu'il y a deux
points qui sont totalement stables !
Si on prend maintenant l'intervalle on
obtient le diagramme de Feigenbaum suivant:

On constate sur le
graphique ci-dessus que les bifurcations se multiplient à partir de
points de plus en plus rapprochés et sur des intervalles de plus en
plus courts. Le physicien Feigenbaum a démontré deux résultats
curieux:
- les bifurcations
vont se multiplier à l'infini (!) sur un intervalle qui ne dépassera
pas le point de d'abscisse 3.5699456 appelé le "point de
Feigenbaum" ou "porte d'entrée sur le chaos", car,
après ce point, le système devient chaotique. Il se met à
fluctuer entre des valeurs "imprévisibles" et devient
extrêmement sensible aux conditions initiales.
- la longueur des
intervalles propres aux différentes classes de bifurcation (2, 4,
8, 16,
) diminue dans un rapport constant, 4.6692
appelé, bien
sûr, "constante de Feigenbaum".
Peitgen indique
que ces bifurcations, points et constante de Feigenbaum, ne se
retrouvent pas seulement dans le cas de la fonction logistique étudiée
par May, mais dans de nombreux phénomènes physiques comme
l'hydrodynamique, l'électronique, les lasers ou l'acoustique.
Remarquons enfin
un dernier phénomène bien curieux, celui des "fenêtres".
Si on examine plus attentivement la zone chaotique comprise entre le
point de Feigenbaum et ,
on constate qu'il existe des zones étroites où la fonction
logistique se remet à osciller entre un nombre fini de bifurcations
avant de replonger dans le chaos.

On constate que, dans cette fenêtre, il y des
bifurcations qui ressembleraient au diagramme de Feigenbaum lui-même
si on l'agrandissait.
On aurait pu reprendre les calculs entre et
on aurait alors constaté que on retrouve la même figure et que, si
on l'agrandissait à l'infini, on retrouvait toujours (!) la même
figure toujours et toujours:

On vient ainsi de découvrir une figure
fractale: l'attracteur étrange de la fonction logistique.
Grâce à la théorie mathématique du chaos
appliquée à la dynamique des populations, l'écologie reçoit une
stimulations décisive. Jusqu'au début des années 1960, le débat
sur la dynamique des populations opposait les tenants d'une théorie
déterministe, voyant des évolutions régulières des populations
ne subissant qu'exceptionnellement de brutales variations, à ceux
pensant ces évolutions comme purement aléatoires. Mais de nombreux
faits restaient mal expliqués. En particulier les explosions
cycliques de certaines populations et leur périodicité étrange
n'entraient dans aucune des deux explications. En montrant que des
modèles déterministes peuvent donner naissance à un
comportement aléatoire, Robert May, réconcilie ces points
de vue à partir d'une théorie plus profonde. Ce qui apparaît à
niveau d'appréhension comme une instabilité généralisée peut se
concevoir à un autre comme un chaos stable. Une situation mathématique
chaotique peut se révéler stable au point de vue écologique.
Révolution aux conséquence profondes dans la
théorie de l'écologie, et aux implications pratiques non moins
importante, l'approche de Robert May est un trait de lumière dans
la situation théorique passablement confuse qui règne encore dans
la dynamique des populations.
Si, à cause de la montée en puissance des
ordinateurs, la théorie du chaos a permis des avancées importantes
dans différentes disciplines, elle soulève un débat majeur, celui
du déterminisme. Dans quelle mesure la science permet-elle de prédire
l'avenir ? Pour certains, les résultats obtenus jusqu'ici dans le
cadre de la théorie du chaos prouvent l'importance aux conditions
initiales. Pour ces personnes, les équations déterministes n'ont
qu'une portée limitée et l'avenir restera imprévisible. Pour
d'autres au contraire, les résultats obtenus mont que l'on peut
trouver un ordre et des lois dans ce qui peut sembler chaotique. Ces
lois sont tout simplement plus complexes.
C'est
un débat ouvert et vif qui déborde largement les milieux
scientifiques.
Pour
les utilisateur de Maple voici le code qui permet de générer le
diagramme de Feigenbaum:
with(plots):
with(plottools)
feigenbaum:=proc(début,fin,pas)
local k,itéré,a,b,s;
s:={}; a:=début;
while
a<=fin do itéré:=0.1;
for k to 50 do itéré:=a*itéré*(1-itéré) od;
for k to 100 do itéré:=a*itéré*(1-itéré);
s:=s union {[a,evalf(itéré,4)]};
od;
a:=a+pas
od;
plot([op(s)],'a'=début..fin,style=POINT,symbol=POINT)
end:
feigenbaum(1,4,0.01);
|