Add a section about an algebra of models.
This commit is contained in:
parent
5a0bf1d0be
commit
5b9ea9a11b
2 changed files with 159 additions and 0 deletions
|
@ -16,3 +16,48 @@
|
|||
biburl = {http://dblp.uni-trier.de/rec/bib/conf/pads/PotierSM13},
|
||||
bibsource = {dblp computer science bibliography, http://dblp.org}
|
||||
}
|
||||
|
||||
@article{Chilton2014146,
|
||||
title = "An algebraic theory of interface automata ",
|
||||
journal = "Theoretical Computer Science ",
|
||||
volume = "549",
|
||||
number = "",
|
||||
pages = "146 - 174",
|
||||
year = "2014",
|
||||
note = "",
|
||||
issn = "0304-3975",
|
||||
doi = "http://dx.doi.org/10.1016/j.tcs.2014.07.018",
|
||||
url = "http://www.sciencedirect.com/science/article/pii/S0304397514005611",
|
||||
author = "Chris Chilton and Bengt Jonsson and Marta Kwiatkowska",
|
||||
keywords = "Component-based design",
|
||||
keywords = "Interfaces",
|
||||
keywords = "Specification theory",
|
||||
keywords = "Compositionality",
|
||||
keywords = "Refinement",
|
||||
keywords = "Substitutivity",
|
||||
keywords = "Synthesis "
|
||||
}
|
||||
|
||||
@article{rozenbergzoom2014,
|
||||
author = {EHRENFEUCHT, ANDRZEJ and ROZENBERG, GRZEGORZ},
|
||||
title = {ZOOM STRUCTURES AND REACTION SYSTEMS YIELD EXPLORATION SYSTEMS},
|
||||
journal = {International Journal of Foundations of Computer Science},
|
||||
volume = {25},
|
||||
number = {03},
|
||||
pages = {275-305},
|
||||
year = {2014},
|
||||
doi = {10.1142/S0129054114500142},
|
||||
|
||||
URL = {http://www.worldscientific.com/doi/abs/10.1142/S0129054114500142},
|
||||
eprint = {http://www.worldscientific.com/doi/pdf/10.1142/S0129054114500142}
|
||||
}
|
||||
|
||||
@misc{wholecell,
|
||||
title = {Whole-cell modelling web page},
|
||||
howpublished = {\url{http://www.wholecell.org/}}
|
||||
}
|
||||
|
||||
@misc{combio,
|
||||
title = {Combio web page},
|
||||
howpublished = {\url{http://combio.abo.fi/}}
|
||||
}
|
||||
|
|
114
recherche.tex
114
recherche.tex
|
@ -796,6 +796,120 @@ direction (\cite{DBLP:conf/pads/PotierSM13}, par exemple) ; je
|
|||
voudrais appliquer l'expérience que j'ai acquise pour contribuer à ces
|
||||
études.
|
||||
|
||||
\subsubsection{Algèbres de modèles}
|
||||
L'un des problèmes centraux dans l'étude de systèmes complexes et
|
||||
celui de composition de
|
||||
modèles~\cite{Chilton2014146,rozenbergzoom2014}. Un système complexe
|
||||
en tant qu'entité du monde réel est représenté par son modèle qui doit
|
||||
souvent refléter certains aspects de sa complexité. On peut distinguer
|
||||
deux approches à la représentation de la complexité. La première
|
||||
consiste en l'imitation directe de toutes les caractéristiques
|
||||
pertinentes du système ; le modèle construit pourra dans ce cas
|
||||
répliquer le comportement du système modélisé, mais ne sera pas
|
||||
forcement facile à comprendre. C'est notamment le cas de projets
|
||||
récents qui visent à prédire le phénotype d'une cellule biologique à
|
||||
partir de son génotype~\cite{wholecell} : les modèles de la cellule
|
||||
fournis par ces projets combinent de manière ad hoc plusieurs modèles
|
||||
existants dans le but d'assurer une modélisation fidèle ; cependant
|
||||
les raisons derrière la plupart de comportements restent
|
||||
inexpliquées. L'un des buts d'une telle approche serait de créer un
|
||||
moule de la cellule biologique qui pourrait être ensuite utilisé pour
|
||||
tourner des simulations et pour éviter ainsi une partie d'expériences
|
||||
in vitro qui sont coûteuses et de longue durée.
|
||||
|
||||
L'autre approche à la représentation de la complexité est de modéliser
|
||||
certaines propriétés locales nécessaires pour que le comportement
|
||||
globale du modèle corresponde à celui du système. Cette approche
|
||||
pourrait offrir une vue beaucoup plus détaillée sur les liens entre
|
||||
les causes et les effets dans le système, et donnerait dans l'idéal
|
||||
des façons de décomposer le modèle en sous-parties modulaires,
|
||||
c'est-à-dire des parties dont les homologues on espérerait trouver
|
||||
dans les modèles des autres systèmes. Toutefois, il est clair que ce
|
||||
type d'analyse nécessite une compréhension plus profonde du système à
|
||||
modéliser mais aussi des techniques de modélisation. Je souhaiterais
|
||||
me concentrer sur ces techniques et travailler vers la formulation des
|
||||
véritables algèbres de modèles, dans le cadre desquelles on pourrait
|
||||
construire des modèles plus complexes à partir des plus simples, mais
|
||||
aussi retrouver des blocs en lesquels un modèle existant peut être
|
||||
décomposé.
|
||||
|
||||
Des résultats très intéressants sur un outil formel de combinaison de
|
||||
modèles ont été présentés dans~\cite{Chilton2014146}. L'article
|
||||
utilise les {\em automates d'interface} (interface automata) pour
|
||||
représenter un composant d'un modèle. Un automate d'interface est
|
||||
défini comme un alphabet d'événements d'entrée, un alphabet
|
||||
d'événements de sortie, un ensemble de chaînes sur les deux alphabets
|
||||
qui décrit les suites d'interactions possibles entre l'automate et
|
||||
l'environnement, ainsi qu'un ensemble de chaînes qui mène l'automate
|
||||
vers un état d'erreur. Une relation de raffinement est définie pour
|
||||
les automates d'interface et ensuite des opération de compositions
|
||||
sont introduites de sorte à être compatibles avec la relation de
|
||||
raffinement.
|
||||
|
||||
La définition d'automates d'interface étant très générale, les
|
||||
propriétés démontrées dans~\cite{Chilton2014146} sont applicables pour
|
||||
une classe très large de modèles. Malheureusement, cette généricité
|
||||
implique aussi que l'on ne peut déduire que des conclusions assez
|
||||
générales pour être applicables à toute situation. Ce problème est
|
||||
fort difficile à contourner, car il est inhérent à tout langage
|
||||
générique. Dans ma recherche je compte utiliser le langage de la
|
||||
théorie des catégories pour attaquer la modélisation modulaire.
|
||||
|
||||
Une catégorie est l'un des formalismes qui abstraient la notion de
|
||||
structure mathématique elle-même. Une catégorie est défini comme une
|
||||
collection d'« objets » et de « flèches » entre les objets, aucune
|
||||
restriction n'étant imposée sur ce qu'un « objet » peut être, alors
|
||||
que les flèches doivent respectée quelques propriétés de composition
|
||||
très simples. (Le manuscrit~\cite{Adamek04} peut servir de référence.)
|
||||
En plus d'être très générale, la terminologie de la théorie des
|
||||
catégories admet des intuitions graphiques naturelles.
|
||||
|
||||
Malgré sa généralité, le langage des catégories permet de construire
|
||||
certains objets non-triviaux. Par exemple, la figure~\ref{fig:prod}
|
||||
défini l'objet produit $X_1\times X_2$ pour des objets $X_1$ et $X_2$
|
||||
d'une catégorie quelconque. Dans la catégorie des ensembles, le
|
||||
produit correspond au produit cartésien, dans la catégorie des groupes
|
||||
le produit correspond au produit direct, etc. La figure~\ref{fig:prod}
|
||||
définit le produit $X_1\times X_2$ comme un objet avec deux flèches
|
||||
$\pi_1$ et $\pi_2$ qui vont vers $X_1$ et $X_2$ respectivement, tel
|
||||
que si on prend n'importe quel autre objet $Y$ avec deux flèches $f_1$
|
||||
et $f_2$ vers $X_1$ et $X_2$, il existe une seule flèche de $Y$ vers
|
||||
$X_1\times X_2$ telle que $\pi_1\circ f = f_1$ et $\pi_2 \circ f =
|
||||
f_2$ (le diagramme est dit commutatif dans ce cas).
|
||||
|
||||
\begin{figure}[h]
|
||||
\centering
|
||||
\begin{tikzpicture}[node distance=9mm]
|
||||
\node (y) {$Y$};
|
||||
\node[below=of y] (x1x2) {$X_1\times X_2$};
|
||||
\node[base left=of x1x2] (x1) {$X_1$};
|
||||
\node[base right=of x1x2] (x2) {$X_2$};
|
||||
|
||||
\draw[->] (y) -- node[midway,auto,swap] {$f_1$} (x1);
|
||||
\draw[->] (x1x2) -- node[midway,auto] {$\pi_1$} (x1);
|
||||
\draw[->] (y) -- node[midway,auto] {$f_2$} (x2);
|
||||
\draw[->] (x1x2) -- node[midway,auto,swap] {$\pi_2$} (x2);
|
||||
\draw[->,dashed] (y) -- node[pos=.65,auto] {$\exists! f$} (x1x2);
|
||||
\end{tikzpicture}
|
||||
\caption{La définition d'un produit dans une catégorie}
|
||||
\label{fig:prod}
|
||||
\end{figure}
|
||||
|
||||
Il existe d'autres façons de construire des objets composés qui, grâce
|
||||
à la généralité des catégories, pourraient être appliquées à des
|
||||
modèles très différents. L'avantage de l'approche catégorique par
|
||||
rapport à celle proposée dans~\cite{Chilton2014146} seraient que, dans
|
||||
la théorie des catégories, il est aussi possible de préciser
|
||||
formellement quelles propriétés une catégories devrait avoir pour
|
||||
qu'une certaine manière de composer les objets soit
|
||||
faisable. Autrement dit, le langage des catégories est assez général
|
||||
pour pouvoir formuler des propriétés très générales concernant des
|
||||
classes vastes d'objets aussi bien que des propriétés bien concrètes,
|
||||
valables dans certains cas particuliers uniquement. Je souhaite donc
|
||||
m'investir dans l'exploration des possibilités d'appliquer l'approche
|
||||
catégorique à la composition de modèles afin de contribuer à l'étude
|
||||
de systèmes complexes.
|
||||
|
||||
\subsection{Old}
|
||||
|
||||
Mon projet de recherche vise tout d'abord à approfondir les travaux
|
||||
|
|
Loading…
Reference in a new issue