• Aucun résultat trouvé

3.4 Framework de mod´ elisation

3.4.2 G´ en´ eration automatique du mod` ele d’automates

Le mod`ele est rapidement trop cons´equent pour ˆetre construit `a la main. Nous avons donc propos´e un algorithme de g´en´eration automatique du r´eseau d’auto-mates `a partir de donn´ees connues par les gestionnaires de l’´ecosyst`eme ´etudi´e.

Les donn´ees attendues sont les suivantes.

— Pour l’entit´e ES, il s’agit de donner le r´eseau trophique des esp`eces et pour chaque esp`ece la valeur de la biomasse `a l’´equilibre ainsi que la productivit´e et le taux de consommation qui sont des informations bien connues. Les diff´erents niveaux qualitatifs des biomasse sont d´efinis par l’utilisateur. — Pour l’entit´e AP, un chronogramme des pressions anthropiques appliqu´ees

dans le temps est fourni.

— Pour l’entit´e ENV, la d´efinition des perturbations possibles, ´eventuellement associ´ees `a un d´elai (pour le r´echauffement climatique par exemple) peut ˆetre ´enonc´e.

Calcul des contraintes temporelles. Si le mod`ele repose sur des ´etats qualita-tifs, il est n´ecessaire d’acqu´erir les informations temporelles qui sont des donn´ees num´eriques (´eventuellement incertaines). Pour les perturbations environnemen-tales et les activit´es humaines, ces donn´ees sont issues du gestionnaire. Pour l’´evolution des ´etats de la biomasse des esp`eces soumises aux diverses pressions, ces informations doivent ˆetre calcul´ees. Nous nous sommes repos´es sur le mod`ele de Lotka-Volterra [Mur03] qui est le mod`ele le plus ancien mais ´egalement le plus reconnu pour calculer la dynamique des syst`emes biologiques de type proie-pr´edateur. L’id´ee sous-jacente du mod`ele de Lotka-Volterra est que les popula-tions de consommateurs (pr´edateurs) et de ressources (proies) peuvent ˆetre trait´ees comme des particules interagissant dans un liquide ou un gaz et, par cons´equent, le taux de rencontre entre les consommateurs et les ressources serait proportionnelle au produit de leur masse. Les ´equations de Lotka-Volterra sont les suivantes :

         N (0) = N0, P (0) = P0, dN (t) dt = αN (t) − βN (t)P (t) dP (t) dt = δP (t)N (t) − γP (t) avec :

— N (t) la densit´e des proies, P (t) la densit´e des pr´edateurs au temps t ≥ 0, N0 et P0 ´etant les valeurs initiales des populations de proies et pr´edateurs. — dN (t)

dt ecrit la croissance de la population des proies au cours du temps, α ´etant la croissance naturelle des proies sans pr´edation et β la mortalit´e des proies due aux pr´edateurs.

dP (t)

dt ecrit la croissance de la population des pr´edateurs au cours du temps, δ ´etant la croissance des pr´edateurs en fonction des proies mang´ees et γ le taux de mortalit´e des pr´edateurs en absence de proies.

Nous utilisons ce mod`ele pour calculer les contraintes temporelles des diff´erents ´etats interm´ediaires (invariant et garde) de l’´evolution de la biomasse en fonc-tion des types d’´ev´enements d´eclencheurs. Ce mod`ele est bas´e sur un syst`eme d’´equations non-lin´eaires pour lequel nous avons propos´e une r´esolution analy-tique, sous certaines hypoth`eses (possibles grˆace `a la discr´etisation des niveaux de biomasse), nous permettant une r´esolution analytique moins coˆuteuse en temps et donc plus compatible avec un outil d’aide `a la d´ecision interactif [Zha14].

G´en´eration. Pour construire le r´eseau d’automates, l’algorithme g´en`ere chaque automate repr´esentant un sous-syst`eme de mani`ere ind´ependante, la complexit´e de chacun d´ependant du nombre d’´etats qualitatifs d´efinis par l’utilisateur et du nombre d’interactions avec les sous-syst`emes voisins. Pour chaque ´etat in-term´ediaire des automates esp`eces, un appel au mod`ele de Lotka-Volterra est in-voqu´e pour le calcul des contraintes temporelles. L’incertitude sur ces contraintes (valeurs des gardes et des invariants) d´epend d’un intervalle de confiance donn´e par l’utilisateur sur ses param`etres en entr´ee. Dans certains cas de figure, les horloges n´ecessitent une remise `a jour (lorsqu’une pression se sur-ajoute par exemple alors que la biomasse d’une esp`ece ´etait d´ej`a en cours d’´evolution). Ces diff´erentes mises en situation n’´etaient pas toujours pr´evues par le formalisme des automates tem-poris´es souvent appliqu´es `a des cas d’´evolution plus lin´eaires, et ont alors n´ecessit´e des ajustements un peu techniques mais n´eanmoins n´ecessaires pour que notre mod`ele ait du sens.

L’algorithme 2 d´ecrit la construction automatique du r´eseau d’automates. Chaque automate est tout d’abord cr´ee de mani`ere ind´ependante. L’algorithme commence par construire les ´etats stables et interm´ediaires en fonction du voisinage (autres esp`eces, pressions, ph´enom`enes climatiques) avant de rajouter les arcs et contraintes temporelles associ´ees.

Simplification du mod`ele. La g´en´eration du mod`ele peut amener `a un r´eseau d’automates de tr`es grande taille. L’analyse des contraintes temporelles port´ees par les transitions menant aux ´etats interm´ediaires des esp`eces montre de nombreuses similitudes dans les valeurs des invariants et des gardes. L’id´ee consiste donc `a r´eduire la taille des automates en d´etectant les ´etats interm´ediaires similaires et en les fusionnant. Ces ´etats interm´ediaires sont consid´er´es comme similaires s’ils poss`edent les mˆeme propri´et´es : mˆeme valeur qualitative port´ee par l’´etat, mˆemes ´etats but et origine pour les transitions entrantes et sortantes de ces ´etats. L’int´egrit´e du mod`ele reste garantie apr`es la fusion des ´etats, sa s´emantique ´etant la mˆeme puisque seules les contraintes temporelles sont agr´eg´ees. Un algorithme de clustering est appliqu´e sur les ´etats interm´ediaires des esp`eces. La distance utilis´ee

Algorithm 2 G´en´eration du mod`ele global de l’´ecosyst`eme Cr´eation d’un automate temporis´e Ai pour chaque esp`ece for all esp`eces do

1) Cr´eer les ´etats stables des N niveaux qualitatifs

2) Cr´eer les Nj ´etats interm´ediaires pour les j automates voisins for all ´etats interm´edaires do

a) cr´eer les arcs entrants : ´ev´enements re¸cus, remise `a z´ero des horloges b) ´etiqueter les arcs entrants avec les ´ev´enements possibles issus des voisins c) invariant, garde ← Lotka-Volterra-Routine()

d) ajouter l’invariant `a l’´etat

e) cr´eer l’arc sortant et l’´etiqueter avec la garde et l’´ev´enement ´emis end for

end for

3) Cr´eer les ´etats transversaux entre les ´etats interm´edaires : mise `a jour de l’horloge x = update(x)

4) Cr´eer les arcs de retours possibles

Cr´eation d’un automates temporis´e Aj pour chaque pression for all pression de pˆeche et perturbation environnementale do

Cr´eer les N niveaux qualitatifs donn´es par les utilisateurs Cr´eer les contraintes temporelles d´efinies par les utilisateurs end for

Cr´eation du mod`ele global A A = Ai1|| Ain· · · || Aj1 || Ajn

est la suivante : d = √

∆I2+ ∆G2 tel que ∆I (resp. ∆G) est la diff´erence entre les invariants (resp. gardes sortantes) de ces ´etats. L’´etat interm´ediaire r´esultat de chaque classe a pour invariant et garde sortant, la moyenne des valeurs des inva-riants et gardes des ´el´ements de sa classe. Il est possible de param´etrer le nombre d’´etats interm´ediaires maximum entre deux ´etats stables de biomasse. Des ´etudes sur des applications r´eelles ont montr´e que 12 ´etats interm´ediaires ´etaient un bon compromis pour maintenir la pr´ecision du mod`ele tout en garantissant des temps de r´eponse acceptables pour son exploration.