From c2cae98fc1e602db57d0dcc981fede59fdc70df4 Mon Sep 17 00:00:00 2001 From: Sergiu Ivanov Date: Sun, 31 May 2020 19:16:00 +0200 Subject: [PATCH] Reorder my research works in chronological order. --- recherche.tex | 696 +++++++++++++++++++++++++------------------------- 1 file changed, 346 insertions(+), 350 deletions(-) diff --git a/recherche.tex b/recherche.tex index 8456c04..60d01f0 100644 --- a/recherche.tex +++ b/recherche.tex @@ -26,240 +26,173 @@ travaille sur les méthodes formelles pour la médecine de précision et pour les systèmes complexes. Mes travaux de recherche ont donné lieu à de nombreuses collaborations -nationales et internationales, notamment avec Rudolf \textsc{Freund} -et Ion \textsc{Petre}. +nationales et internationales, notamment avec Nicolas \textsc{Glade}, +Rudolf \textsc{Freund} et Ion \textsc{Petre}. -Dans cette section, je résume d'abord ma thèse, puis d'autres -résultats obtenus pendant mon doctorat et par la suite de ma carrière -scientifique. +Dans cette section, je résume les résultats obtenus pendant mon +doctorat et par la suite de ma carrière scientifique, dans l'ordre +chronologique inverse. -\subsection{Travaux de thèse} -Ma thèse porte sur la puissance d'expression et l'universalité de -modèles de calcul inspirés par la biologie. Les travaux présentés se -structurent en quatre parties. Dans la première il s'agit de la -puissance d'expression des systèmes d'insertion/effacement ({\em - insertion-deletion systems}), un modèle de réécriture de chaînes de -symboles formels par les opérations d'insertion et d'effacement. La -deuxième partie du manuscrit se focalise sur l'universalité des -réseaux de processeurs évolutionnaires ({\em networks of evolutionary - processors}), qui est une formalisation d'un ensemble des unités de -traitement de chaînes de caractères reliés en réseau. La troisième -partie considère les machines à registres universelles à deux et à -trois registres, ainsi qu'une généralisation de ce modèle. La dernière -partie porte sur l'universalité des réseaux de Petri avec des arcs -inhibiteurs. +\subsection{Travaux au laboratoire IBISC} +Avec mon intégration au sein de l'équipe COSMO du laboratoire IBISC, +ma recherche a connu une plus grande ouverture sur l'étude des +systèmes complexes, notamment dans le contexte de la médecine de +précision. Cette ouverture correspond à la vision que j'avais au +démarrage de mes travaux de thèse et suit naturellement aux travaux +formels que j'ai réalisés. -Nous rappelons que l'universalité est la propriété d'une classe de -modèles de calcul d'avoir un objet, dit universel, qui peut répliquer -les résultats de n'importe quel autre objet de cette classe, la -simulation pouvant éventuellement se faire à un codage près. D'autre -part, la complétude computationnelle est la propriété d'une classe de -contenir, pour tout langage récursivement énumérable, un objet qui -l'engendre. +\subsubsection{Thérapies séquentielles pour la médecine de précision} +La {\em médecine personnalisée} est un domaine scientifique émergeant +ayant pour objet de définir de nouveaux paradigmes en {\em médecine} +afin de {\em personnaliser} le traitement au +patient~\cite{BianeD17,BianeDK16,Caraguel2016}. Elle fonde cet +objectif dans l'analyse des données omiques (génomiques, +intéractomiques, etc.) dans la perspective d'étudier les pathologies à +l'échelle moléculaire. L'un des enjeux majeur dans ce domaine est +d'assister à la prise de décision clinique afin de guider le suivi +thérapeutique. -\subsubsection{Systèmes d'insertion/effacement} -Les opérations d'insertion et d'effacement sont connues depuis -longtemps dans la théorie des langages formels, surtout la variante -sans contexte qui généralise les opérations de concaténation et -quotient, deux opérations -fondamentales~\cite{Haussler82,KariPhD}. L'inspiration qui a motivé -l'introduction de l'insertion et l'effacement vient de la -linguistique, car elles semblent modéliser assez précisément les -procédés de construction des phrases dans une langue -vivante~\cite{Marcus69,PaunKluwer97}. Il a été montré récemment que -l'étude de l'insertion de l'effacement est intéressante du point de -vue biologique, car ses opérations formalisent l'hybridation erronée -des brins d'ADN ({\em mismatched DNA annealing})~\cite{PRSbook}. De -plus, il a été découvert que même l'édition de l'ARN ({\em RNA - editing}) réalisée par certains protozoaires consiste généralement -en des ajouts et des suppressions dans des brins d'ARN. +La médecine des réseaux cherche à atteindre les objectifs de la +médecine personnalisée en intégrant les données disponibles pour un +patient dans des modèles formels de systèmes dynamiques à base de +graphes~\cite{BianeD17,BianeDK16}. L'un de ces modèles sont les +réseaux booléens : des ensembles de fonctions booléennes agissant sur +un ensemble fini de variables booléennes. Ces réseaux commencent leur +évolution à partir d'un état initial et ensuite mettent à jour les +valeurs de certaines des variables selon les valeurs des fonctions +booléennes associées. Souvent, une seule variable est modifiée à la +fois (mode de mise à jour asynchrone), ce qui correspond bien aux +dynamiques observées des réseaux biologiques. -De manière intuitive, une règle d'insertion rajoute une sous-chaîne à -une chaîne de caractères dans un contexte donné. Une règle -d'effacement agit de la façon duale : elle supprime une sous-chaîne -d'une chaîne de caractères, dans un contexte donné. Un système -d'insertion/effacement ({\em insertion-deletion system}) possède -un ensemble fini de règles d'insertion -et d'effacement ; il engendre un langage en appliquant ces règles -séquentiellement à un ensemble fini de mots dits axiomes. La -complexité d'un système d'insertion/effacement est décrite par le -6-uplet $(n,m,m'; p,q,q')$ dit taille, où les premiers trois composants -représentent la longueur maximale de la sous-chaîne insérée et la -taille maximale des contextes à gauche et à droite, alors que les -trois derniers composants décrivent les mêmes paramètres pour les -règles d'effacement. +Les réseaux booléens pouvant représenter assez naturellement divers +réseaux biologiques, et particulièrement les réseaux de signalisation, +l'étude des propriétés dynamiques de ce modèle permet de faire des +conclusions non triviales sur les propriétés du système biologique +représenté. Notamment, l'étude~\cite{BianeD17} montre une application +de cette approche à l'inférence des causes du cancer du sein. Plus +concrètement, des réseaux booléens avec des variables de contrôle sont +introduits ; la thérapie devient alors une modification des ces +variables de contrôle qui dévie les trajectoires du réseau booléen +vers les états stables désirés (sains). -Dans le cadre de ma thèse nous nous sommes intéressés tout d'abord à -des systèmes d'insertion/ef\-face\-ment de taille $(1,m,0; 1,q,0)$, -c'est-à-dire aux systèmes dans lesquels toutes les règles n'ont pas de -contexte à droite et insèrent ou suppriment un caractère. Nous avons -montré que ces systèmes engendrent tous les langages rationnels et -même certains langages algébriques. D'un autre côté, nous avons prouvé -que pour tout système de taille $(1,m,0;1,q,0)$ avec $m\geq 2$ ou -$q\geq 2$ il existe un système de taille $(1,2,0; 1,1,0)$ et un autre -de taille $(1,1,0; 1,2,0)$ qui le simule. Nous nous sommes -intéressés aussi aux systèmes de taille $(1,1,0;1,1,0)$ qui, malgré -leur simplicité apparente, peuvent engendrer des langages -non algébriques. Afin de mieux analyser le comportement dynamique de -ces systèmes, nous avons introduit un outil de représentation -graphique de leurs dérivations. +Au sein de l'équipe COSMO, je me penche davantage sur les extensions +possibles de ces techniques. En effet, dans~\cite{BianeD17}, les +valeurs des variables de contrôle sont fixées une fois : au début de +l'évolution du réseau. Or, des thérapies séquentielles semblent être +plus efficaces, car celles-ci permettent de piloter plus finement les +trajectoires du réseau contrôlé (par +exemple,~\cite{mandon2017}). Actuellement, nous nous penchons sur le +problème de définition de contrôle séquentiel d'un réseau, tout en +gardant des temps raisonnables d'analyse par ordinateur. -Nous avons ensuite considéré les systèmes d'insertion/effacement avec -trois mécanismes de contrôle : contrôle par graphe ({\em graph - control}), contrôle semi-conditionnel ({\em semi-conditional - control}) et contextes aléatoires ({\em random context - control}). Nous avons prouvé que les systèmes équipés de ces -mécanismes sont Turing complets avec de très petites -règles. Notamment, nous avons prouvé que le contrôle semi-conditionnel -augmente la puissance d'expression des systèmes -d'insertion/effacement de taille $(1,0,0;1,0,0)$, c'est-à-dire des -systèmes avec des règles sans contexte, et les rend Turing complets. +\subsubsection{Méthodes formelles pour le véhicule autonome} +La conception de l'automobile autonome est l'un des objectifs +magistraux de l'industrie et la science modernes ; en effet, un +véhicule capable de se conduire lui-même en respectant le code de la +route et la sécurité des acteurs du trafic permettra de lever de +nombreux verrous dans les domaines de la logistique, du transport de +personnes et de marchandises, etc. La conception d'un tel véhicule +pose des défis importants dont l'affrontement nécessite une véritable +synergie interdisciplinaire. -Les résultats concernant les systèmes d'insertion/effacement avec des -mécanismes de contrôle ont été publiés -dans~\cite{DBLP:conf/membrane/IvanovV13,DBLP:journals/fuin/0001V15}. +Dans cette optique d'interdisciplinarité, je participe au travaux de +l'équipe COSMO qui étudient le véhicule autonome non pas comme un +objet physique suivant des trajectoires sur une route réelle, mais +comme un agent interagissant avec d'autres dans un espace virtuel +linéaire. Cette représentation éloigne le modèle de la réalité +physique, certes, mais elle nous permet d'aller au-delà de la sécurité +routière et d'étudier le {\em confort} additionnel que des protocoles +de {\em communication} pourrait procurer aux usagers de la route. -Nous avons continué l'étude de la puissance d'expresison des systèmes -d'insertion/effacement de tailles $(1,2,0;1,1,0)$ et $(1,1,0;1,2,0)$ -avec contrôle par graphe et nous avons montré que deux états dans le -graphe de contrôle suffisaient pour rendre ces systèmes Turing -complets~\cite{DBLP:conf/mcu/0001V15}. Cela améliore la construction -utilisant trois états présentée dans ma thèse. Afin de faire cette -construction améliorée nous avons introduit les règles d'insertion et -d'effacement étendues ; dans ces règles les contextes ne sont plus des -chaînes de caractères prédéfinies, mais peuvent être des langages -rationnels. - -\subsubsection{Réseaux de processeurs évolutionnaires} -Les réseaux de processeurs évolutionnaires ({\em networks of - evolutionary processors}) sont un modèle de calcul -inspiré par l'activité des organites d'une cellule biologique ou par -la collaboration des cellules d'un tissu~\cite{CMVMS2001,CVS97}. Un -processeur évolutionnaire peut effectuer en parallèle des opérations -élémentaires (insertion, effacement, substitution d'un symbole) sur -toutes les chaînes de caractères qu'il contient. Les processeurs sont -connectés en réseau et échangent les chaînes de caractères qu'ils -produisent. Ils disposent de filtres à l'entrée et à la sortie, ce qui -leur permet de ne pas prendre en compte certaines chaînes. - -La complétude computationnelle des réseaux de processeurs -évolutionnaires a été montrée dès leur -introduction~\cite{CMVMS2001,CVS97}. Des variations au modèle ont été -proposées plus tard et prouvées Turing complètes elles -aussi~\cite{AMVR2006,CMVMS2003}. Nous nous sommes intéressés plutôt à -l'universalité et à la minimisation du nombre de règles -dans les réseaux universels. Nous -avons ainsi construit des réseaux universels à 4, 5 et 7 règles -seulement, avec des fonctions de codage différentes. -Ces résultats on été publiés dans~\cite{DBLP:journals/jalc/0001RV14}. - -\subsubsection{Machines à registres} -Les machines à registres sont un modèle de calcul classique, dérivé -directement de la machine de Turing~\cite{Minsky1961,Wang:1957}. Une -telle machine possède un nombre fini de registres, qui peuvent -contenir des entiers non négatifs. Le programme d'une machine à -registres est une liste étiquetée d'instructions élémentaires : -l'incrément d'un registre, le décrément d'un registre et le teste si -un registre est vide. Les machines à registres sont ainsi -très proches de l'organisation des ordinateurs digitaux habituels. - -Il a été montré que les machines à registres sont Turing complets et -qu'en plus n'importe quelle fonction calculable sur les entiers non -négatifs peut être calculée par une machine à deux registres si les -entrées de la fonction sont déjà encodées, ou à trois registres si la -machine doit faire l'encodage par elle-même~\cite{minsky67}. Cela -implique l'existence de machines à deux registres et à trois registres -universelles. Néanmoins, aucun programme d'une telle machine n'a été -présenté dans la littérature, or une telle construction concrète -permet d'estimer la taille de structures universelles dérivées et de -les optimiser ensuite. Dans ma thèse nous avons donc appliqué la -procédure décrite dans~\cite{minsky67} pour construire des machines à -deux et à trois registres universelles en simulant les machines -universelles présentées en~\cite{Korec}. - -Nous nous sommes aussi intéressés à la façon dont les machines à -registres sont simulées par d'autres modèles de calcul tels que -systèmes de réécriture de multiensembles, réseaux de Petri, ou réseaux -de processeurs évolutionnaires. Nous avons remarqué que tous ces -modèles peuvent simuler plusieurs instructions d'une machine à -registres en un seul pas. Autrement dit, ces instructions sont souvent -trop élémentaires. Dans le but de définir un modèle proche aux -machines à registres, mais qui utiliserait des instructions plus -expressives, nous avons proposé les machines à registres généralisées -({\em generalised register machines}). Une telle machine peut -effectuer plusieurs incréments, décréments, ou tests si un registre -est à zéro en une seule transition. - -Les machines à registres habituelles peuvent être vues comme des -machines à registres généralisées qui n'exécutent qu'une seule -opération par transition. Dans une telle machine il est possible de -réduire le nombre d'états en utilisant des transitions plus -complexes. Dans ma thèse nous avons appliqué cette réduction pour -construire des machines à registres universelles à 7 états seulement, -cela en simulant les constructions présentées dans~\cite{Korec}. - -\subsubsection{Systèmes de réécriture de multiensembles et réseaux de Petri} -La dernière partie de ma thèse porte sur l'universalité des systèmes -de réécriture de multiensembles avec des inhibiteurs et aussi des -réseaux de Petri avec des arcs inhibiteurs --- deux modèles qui sont -fondamentalement similaires. En effet, un état (marquage) d'un réseau -de Petri est décrit par une fonction qui associe à chaque place le -nombre de jetons qu'elle contient ; or le marquage est un -multiensemble sur l'alphabet des symboles qui désignent les -places. Les transitions de réseaux de Petri correspondent ainsi aux -règles de réécriture de multiensembles. - -Il a été montré que savoir si un marquage peut être atteint par un -réseau de Petri donné est décidable~\cite{Mayr:1981}. La même -affirmation est donc valable dans le cas des systèmes de réécriture de -multiensembles simples. Plusieurs variations ont été proposées afin -d'étendre la puissance d'expression de ces modèles, dont l'idée des -inhibiteurs. Dans les réseaux de Petri, un arc inhibiteur entre une -place et une transition empêche celle-ci de se déclencher si la place -n'est pas vide. De la même manière, on peut munir une règle de -réécriture de multiensembles d'une collection de symboles qui ne -doivent pas être présents pour que la règle soit applicable. Il a été -prouvé que les réseaux de Petri avec des arcs inhibiteurs et les -systèmes de réécriture de multiensembles avec des inhibiteurs sont -Turing complets~\cite{BMVPR2002,Reinhardt08}, car ils peuvent simuler -assez directement les machines à registres. - -Dans ma thèse nous avons construit plusieurs réseaux de Petri avec des -arcs inhibiteurs universels. Nous avons défini la taille d'un réseau -comme étant le 4-uplet $(p,t,i,d)$ où $p$ est le nombre de places, $t$ -est le nombre de transitions, $i$ est le nombre d'arcs inhibiteur et -$d$ et le nombre maximal d'arcs incidents à une transitions (le degré -maximal). Nous nous sommes proposé de construire des réseaux de Petri -universels tout en minimisant chacun de ces paramètres. Nous avons -notamment décrit des réseaux universels avec quatre et cinq places -uniquement et d'autres avec deux et trois arcs inhibiteurs (les -chiffres varient selon l'encodage des entrées et des sorties). Il est -remarquable que deux est le nombre minimal d'arcs inhibiteurs -nécessaires pour atteindre la complétude computationnelle : les -réseaux de Petri avec un seul arc inhibiteur ne sont pas Turing -complets~\cite{Reinhardt08}. - -Même si les résultats portant sur l'universalité présentés dans la dernière partie -de ma thèse apparaissent sous la forme de réseaux de Petri, la -correspondance directe avec les systèmes de réécriture de -multiensembles permet de formuler immédiatement les mêmes résultats -pour ceux-ci. - -Les résultats de ma thèse portant sur les réseaux de Petri universels -ont été publiés -dans~\cite{DBLP:conf/dcfs/0001PV14,DBLP:journals/corr/IvanovPV13,DBLP:journals/jalc/Alhazov0PV16}. +Le cadre de cette étude est posé dans les articles bientôt publiés de +Jeremy \textsc{Sobieraj}. Ma contribution se cantonne actuellement à +l'étude du confort des usagers sur une voie d'insertion, mais je +compte élargir mon investissement. \subsection{Travaux hors thèse et postdoctoraux} Avant le début de ma thèse et pendant mon doctorat j'ai travaillé sur des problèmes qui n'étaient pas directement liés à ceux qui sont exposés dans le manuscrit. Ces travaux se situent également dans le cadre du calcul naturel et de la théorie des langages formels. En -tant que postdoc, je travaille sur la modélisation biomécanique du +tant que postdoc, j'ai travaillé sur la modélisation biomécanique du squelette cellulaire. Dans les sections suivantes, je donne plus détails par rapport aux travaux de recherche sus-cités. +\subsubsection{Modélisation biomécanique du squelette cellulaire} +Les plaquettes sanguines (thrombocytes) sont des cellules sanguines +responsables pour les premières phases de l'hémostase : l'arrêt de +saignement après la blessure de la paroi d'un vaisseau sanguin. Les +plaquettes transforment le fibrinogène présent dans le plasma sanguin +en structures fibreuses qui bouchent la plaie. Dans son état normal, +la paroi d'un vaisseau secrète de l'oxyde nitrique qui empêche +l'activation des plaquettes. Lorsque la paroi est lésée, le manque de +l'oxyde nitrique induit l'activation des plaquettes. + +Lors de l'activation, les plaquettes sanguines subissent une +transformation de forme rapide (à l'échelle de quelques minutes) : +ayant normalement la forme d'un disque, elle rétrécissent et +deviennent des sphères. Il a été montré que ce changement de forme +est dû à l'activité du squelette cellulaire, constitué des fibres +d'actine et de tubuline (figure~\ref{fig:platelets}). +\begin{figure} + \centering + \begin{subfigure}[t]{.4\textwidth} + \centering + \includegraphics[height=30mm]{pics/platelet-round} + \caption{Dans l'état passif, le cytosquelette a la forme d'un + anneau.} + \end{subfigure} + \hspace{5mm} + \begin{subfigure}[t]{.4\textwidth} + \centering + \includegraphics[height=30mm]{pics/platelet-folded} + \caption{Lors de l'activation, le cytosquellette rétrécit et + induit une transition vers la forme sphérique.} + \end{subfigure} + \caption{Le squelette cellulaire régit le changement de la forme des + plaquettes sanguines lors de l'activation.} + \label{fig:platelets} +\end{figure} +Le but de mon projet est de développer un outil de modélisation +biomécanique des fibres de tubuline (microtubules) pour ensuite +analyser leur rôle dans l'activation des plaquettes. + +L'outil de modélisation que je suis en train de développer devra +réaliser les trois fonctions suivantes : +\begin{itemize} +\item représentation informatique de la dynamique microtubules à + travers un modèle masse-ressort paramétrable, +\item représentation informatique de l'action des moteurs moléculaires + qui assurent l'adhésion et le déplacement relatif des microtubules, +\item affichage graphique des simulations effectuées. +\end{itemize} + +L'outil est développé en C++, un langage qui possède quelques +propriétés clefs : +\begin{itemize} +\item acceptation quasi universelle dans le milieu de la modélisation + biologique; +\item représentation naturelle de concepts abstraits via la syntaxe + pour la programmation objet; +\item contrôle fin sur l'usage de diverses ressources, permettant + l'optimisation ciblée des applications. +\end{itemize} + +L'outil logiciel sera intégré dans le framework de modélisation +biologique générique développé par Nicolas \textsc{Glade}. Pour rendre +cela possible, nous employons des techniques de programmation objet +et, en partie, de programmation fonctionnelle. Les outils développés +dans ce cadre ne seront donc pas ad hoc (comme habituel dans la +modélisation biologique), mais pourront être réutilisés dans des +simulations différentes, y compris dans l'étude des systèmes complexes +non-biologiques. Nous consacrons également un effort important à +l'accessibilité des outils aux modélisateurs qui ne possèdent pas +forcement de l'expertise en programmation objet ou en C++ : nous +accompagnons les nouveaux utilisateurs et, à terme, nous mettrons en +œuvre un système graphique de conceptions de modèles. + \subsubsection{Systèmes à membranes} Le modèle des systèmes à membranes a été introduit par Gheorghe Păun qui s'est inspiré de la nature et du fonctionnement de la cellule @@ -485,158 +418,221 @@ une définition formelle de la modélisation tire, en parti, son inspiration des travaux d'Andrée Ehresmann~\cite{Ehresmann12} sur les processus évolutifs à mémoire. -\subsubsection{Modélisation biomécanique du squelette cellulaire} -Les plaquettes sanguines (thrombocytes) sont des cellules sanguines -responsables pour les premières phases de l'hémostase : l'arrêt de -saignement après la blessure de la paroi d'un vaisseau sanguin. Les -plaquettes transforment le fibrinogène présent dans le plasma sanguin -en structures fibreuses qui bouchent la plaie. Dans son état normal, -la paroi d'un vaisseau secrète de l'oxyde nitrique qui empêche -l'activation des plaquettes. Lorsque la paroi est lésée, le manque de -l'oxyde nitrique induit l'activation des plaquettes. +\subsection{Travaux de thèse} +Ma thèse porte sur la puissance d'expression et l'universalité de +modèles de calcul inspirés par la biologie. Les travaux présentés se +structurent en quatre parties. Dans la première il s'agit de la +puissance d'expression des systèmes d'insertion/effacement ({\em + insertion-deletion systems}), un modèle de réécriture de chaînes de +symboles formels par les opérations d'insertion et d'effacement. La +deuxième partie du manuscrit se focalise sur l'universalité des +réseaux de processeurs évolutionnaires ({\em networks of evolutionary + processors}), qui est une formalisation d'un ensemble des unités de +traitement de chaînes de caractères reliés en réseau. La troisième +partie considère les machines à registres universelles à deux et à +trois registres, ainsi qu'une généralisation de ce modèle. La dernière +partie porte sur l'universalité des réseaux de Petri avec des arcs +inhibiteurs. -Lors de l'activation, les plaquettes sanguines subissent une -transformation de forme rapide (à l'échelle de quelques minutes) : -ayant normalement la forme d'un disque, elle rétrécissent et -deviennent des sphères. Il a été montré que ce changement de forme -est dû à l'activité du squelette cellulaire, constitué des fibres -d'actine et de tubuline (figure~\ref{fig:platelets}). -\begin{figure} - \centering - \begin{subfigure}[t]{.4\textwidth} - \centering - \includegraphics[height=30mm]{pics/platelet-round} - \caption{Dans l'état passif, le cytosquelette a la forme d'un - anneau.} - \end{subfigure} - \hspace{5mm} - \begin{subfigure}[t]{.4\textwidth} - \centering - \includegraphics[height=30mm]{pics/platelet-folded} - \caption{Lors de l'activation, le cytosquellette rétrécit et - induit une transition vers la forme sphérique.} - \end{subfigure} - \caption{Le squelette cellulaire régit le changement de la forme des - plaquettes sanguines lors de l'activation.} - \label{fig:platelets} -\end{figure} -Le but de mon projet est de développer un outil de modélisation -biomécanique des fibres de tubuline (microtubules) pour ensuite -analyser leur rôle dans l'activation des plaquettes. +Nous rappelons que l'universalité est la propriété d'une classe de +modèles de calcul d'avoir un objet, dit universel, qui peut répliquer +les résultats de n'importe quel autre objet de cette classe, la +simulation pouvant éventuellement se faire à un codage près. D'autre +part, la complétude computationnelle est la propriété d'une classe de +contenir, pour tout langage récursivement énumérable, un objet qui +l'engendre. -L'outil de modélisation que je suis en train de développer devra -réaliser les trois fonctions suivantes : -\begin{itemize} -\item représentation informatique de la dynamique microtubules à - travers un modèle masse-ressort paramétrable, -\item représentation informatique de l'action des moteurs moléculaires - qui assurent l'adhésion et le déplacement relatif des microtubules, -\item affichage graphique des simulations effectuées. -\end{itemize} +\subsubsection{Systèmes d'insertion/effacement} +Les opérations d'insertion et d'effacement sont connues depuis +longtemps dans la théorie des langages formels, surtout la variante +sans contexte qui généralise les opérations de concaténation et +quotient, deux opérations +fondamentales~\cite{Haussler82,KariPhD}. L'inspiration qui a motivé +l'introduction de l'insertion et l'effacement vient de la +linguistique, car elles semblent modéliser assez précisément les +procédés de construction des phrases dans une langue +vivante~\cite{Marcus69,PaunKluwer97}. Il a été montré récemment que +l'étude de l'insertion de l'effacement est intéressante du point de +vue biologique, car ses opérations formalisent l'hybridation erronée +des brins d'ADN ({\em mismatched DNA annealing})~\cite{PRSbook}. De +plus, il a été découvert que même l'édition de l'ARN ({\em RNA + editing}) réalisée par certains protozoaires consiste généralement +en des ajouts et des suppressions dans des brins d'ARN. -L'outil est développé en C++, un langage qui possède quelques -propriétés clefs : -\begin{itemize} -\item acceptation quasi universelle dans le milieu de la modélisation - biologique; -\item représentation naturelle de concepts abstraits via la syntaxe - pour la programmation objet; -\item contrôle fin sur l'usage de diverses ressources, permettant - l'optimisation ciblée des applications. -\end{itemize} +De manière intuitive, une règle d'insertion rajoute une sous-chaîne à +une chaîne de caractères dans un contexte donné. Une règle +d'effacement agit de la façon duale : elle supprime une sous-chaîne +d'une chaîne de caractères, dans un contexte donné. Un système +d'insertion/effacement ({\em insertion-deletion system}) possède +un ensemble fini de règles d'insertion +et d'effacement ; il engendre un langage en appliquant ces règles +séquentiellement à un ensemble fini de mots dits axiomes. La +complexité d'un système d'insertion/effacement est décrite par le +6-uplet $(n,m,m'; p,q,q')$ dit taille, où les premiers trois composants +représentent la longueur maximale de la sous-chaîne insérée et la +taille maximale des contextes à gauche et à droite, alors que les +trois derniers composants décrivent les mêmes paramètres pour les +règles d'effacement. -L'outil logiciel sera intégré dans le framework de modélisation -biologique générique développé par Nicolas \textsc{Glade}. Pour rendre -cela possible, nous employons des techniques de programmation objet -et, en partie, de programmation fonctionnelle. Les outils développés -dans ce cadre ne seront donc pas ad hoc (comme habituel dans la -modélisation biologique), mais pourront être réutilisés dans des -simulations différentes, y compris dans l'étude des systèmes complexes -non-biologiques. Nous consacrons également un effort important à -l'accessibilité des outils aux modélisateurs qui ne possèdent pas -forcement de l'expertise en programmation objet ou en C++ : nous -accompagnons les nouveaux utilisateurs et, à terme, nous mettrons en -œuvre un système graphique de conceptions de modèles. +Dans le cadre de ma thèse nous nous sommes intéressés tout d'abord à +des systèmes d'insertion/ef\-face\-ment de taille $(1,m,0; 1,q,0)$, +c'est-à-dire aux systèmes dans lesquels toutes les règles n'ont pas de +contexte à droite et insèrent ou suppriment un caractère. Nous avons +montré que ces systèmes engendrent tous les langages rationnels et +même certains langages algébriques. D'un autre côté, nous avons prouvé +que pour tout système de taille $(1,m,0;1,q,0)$ avec $m\geq 2$ ou +$q\geq 2$ il existe un système de taille $(1,2,0; 1,1,0)$ et un autre +de taille $(1,1,0; 1,2,0)$ qui le simule. Nous nous sommes +intéressés aussi aux systèmes de taille $(1,1,0;1,1,0)$ qui, malgré +leur simplicité apparente, peuvent engendrer des langages +non algébriques. Afin de mieux analyser le comportement dynamique de +ces systèmes, nous avons introduit un outil de représentation +graphique de leurs dérivations. +Nous avons ensuite considéré les systèmes d'insertion/effacement avec +trois mécanismes de contrôle : contrôle par graphe ({\em graph + control}), contrôle semi-conditionnel ({\em semi-conditional + control}) et contextes aléatoires ({\em random context + control}). Nous avons prouvé que les systèmes équipés de ces +mécanismes sont Turing complets avec de très petites +règles. Notamment, nous avons prouvé que le contrôle semi-conditionnel +augmente la puissance d'expression des systèmes +d'insertion/effacement de taille $(1,0,0;1,0,0)$, c'est-à-dire des +systèmes avec des règles sans contexte, et les rend Turing complets. -\subsection{Travaux au laboratoire IBISC} +Les résultats concernant les systèmes d'insertion/effacement avec des +mécanismes de contrôle ont été publiés +dans~\cite{DBLP:conf/membrane/IvanovV13,DBLP:journals/fuin/0001V15}. -Avec mon intégration au sein de l'équipe COSMO du laboratoire IBISC, -ma recherche a connu une plus grande ouverture sur l'étude des -systèmes complexes, notamment dans le contexte de la médecine de -précision. Cette ouverture correspond à la vision que j'avais au -démarrage de mes travaux de thèse et suit naturellement aux travaux -formels que j'ai réalisés. +Nous avons continué l'étude de la puissance d'expresison des systèmes +d'insertion/effacement de tailles $(1,2,0;1,1,0)$ et $(1,1,0;1,2,0)$ +avec contrôle par graphe et nous avons montré que deux états dans le +graphe de contrôle suffisaient pour rendre ces systèmes Turing +complets~\cite{DBLP:conf/mcu/0001V15}. Cela améliore la construction +utilisant trois états présentée dans ma thèse. Afin de faire cette +construction améliorée nous avons introduit les règles d'insertion et +d'effacement étendues ; dans ces règles les contextes ne sont plus des +chaînes de caractères prédéfinies, mais peuvent être des langages +rationnels. -\subsubsection{Thérapies séquentielles pour la médecine de précision} -La {\em médecine personnalisée} est un domaine scientifique émergeant -ayant pour objet de définir de nouveaux paradigmes en {\em médecine} -afin de {\em personnaliser} le traitement au -patient~\cite{BianeD17,BianeDK16,Caraguel2016}. Elle fonde cet -objectif dans l'analyse des données omiques (génomiques, -intéractomiques, etc.) dans la perspective d'étudier les pathologies à -l'échelle moléculaire. L'un des enjeux majeur dans ce domaine est -d'assister à la prise de décision clinique afin de guider le suivi -thérapeutique. +\subsubsection{Réseaux de processeurs évolutionnaires} +Les réseaux de processeurs évolutionnaires ({\em networks of + evolutionary processors}) sont un modèle de calcul +inspiré par l'activité des organites d'une cellule biologique ou par +la collaboration des cellules d'un tissu~\cite{CMVMS2001,CVS97}. Un +processeur évolutionnaire peut effectuer en parallèle des opérations +élémentaires (insertion, effacement, substitution d'un symbole) sur +toutes les chaînes de caractères qu'il contient. Les processeurs sont +connectés en réseau et échangent les chaînes de caractères qu'ils +produisent. Ils disposent de filtres à l'entrée et à la sortie, ce qui +leur permet de ne pas prendre en compte certaines chaînes. -La médecine des réseaux cherche à atteindre les objectifs de la -médecine personnalisée en intégrant les données disponibles pour un -patient dans des modèles formels de systèmes dynamiques à base de -graphes~\cite{BianeD17,BianeDK16}. L'un de ces modèles sont les -réseaux booléens : des ensembles de fonctions booléennes agissant sur -un ensemble fini de variables booléennes. Ces réseaux commencent leur -évolution à partir d'un état initial et ensuite mettent à jour les -valeurs de certaines des variables selon les valeurs des fonctions -booléennes associées. Souvent, une seule variable est modifiée à la -fois (mode de mise à jour asynchrone), ce qui correspond bien aux -dynamiques observées des réseaux biologiques. +La complétude computationnelle des réseaux de processeurs +évolutionnaires a été montrée dès leur +introduction~\cite{CMVMS2001,CVS97}. Des variations au modèle ont été +proposées plus tard et prouvées Turing complètes elles +aussi~\cite{AMVR2006,CMVMS2003}. Nous nous sommes intéressés plutôt à +l'universalité et à la minimisation du nombre de règles +dans les réseaux universels. Nous +avons ainsi construit des réseaux universels à 4, 5 et 7 règles +seulement, avec des fonctions de codage différentes. +Ces résultats on été publiés dans~\cite{DBLP:journals/jalc/0001RV14}. -Les réseaux booléens pouvant représenter assez naturellement divers -réseaux biologiques, et particulièrement les réseaux de signalisation, -l'étude des propriétés dynamiques de ce modèle permet de faire des -conclusions non triviales sur les propriétés du système biologique -représenté. Notamment, l'étude~\cite{BianeD17} montre une application -de cette approche à l'inférence des causes du cancer du sein. Plus -concrètement, des réseaux booléens avec des variables de contrôle sont -introduits ; la thérapie devient alors une modification des ces -variables de contrôle qui dévie les trajectoires du réseau booléen -vers les états stables désirés (sains). +\subsubsection{Machines à registres} +Les machines à registres sont un modèle de calcul classique, dérivé +directement de la machine de Turing~\cite{Minsky1961,Wang:1957}. Une +telle machine possède un nombre fini de registres, qui peuvent +contenir des entiers non négatifs. Le programme d'une machine à +registres est une liste étiquetée d'instructions élémentaires : +l'incrément d'un registre, le décrément d'un registre et le teste si +un registre est vide. Les machines à registres sont ainsi +très proches de l'organisation des ordinateurs digitaux habituels. -Au sein de l'équipe COSMO, je me penche davantage sur les extensions -possibles de ces techniques. En effet, dans~\cite{BianeD17}, les -valeurs des variables de contrôle sont fixées une fois : au début de -l'évolution du réseau. Or, des thérapies séquentielles semblent être -plus efficaces, car celles-ci permettent de piloter plus finement les -trajectoires du réseau contrôlé (par -exemple,~\cite{mandon2017}). Actuellement, nous nous penchons sur le -problème de définition de contrôle séquentiel d'un réseau, tout en -gardant des temps raisonnables d'analyse par ordinateur. +Il a été montré que les machines à registres sont Turing complets et +qu'en plus n'importe quelle fonction calculable sur les entiers non +négatifs peut être calculée par une machine à deux registres si les +entrées de la fonction sont déjà encodées, ou à trois registres si la +machine doit faire l'encodage par elle-même~\cite{minsky67}. Cela +implique l'existence de machines à deux registres et à trois registres +universelles. Néanmoins, aucun programme d'une telle machine n'a été +présenté dans la littérature, or une telle construction concrète +permet d'estimer la taille de structures universelles dérivées et de +les optimiser ensuite. Dans ma thèse nous avons donc appliqué la +procédure décrite dans~\cite{minsky67} pour construire des machines à +deux et à trois registres universelles en simulant les machines +universelles présentées en~\cite{Korec}. +Nous nous sommes aussi intéressés à la façon dont les machines à +registres sont simulées par d'autres modèles de calcul tels que +systèmes de réécriture de multiensembles, réseaux de Petri, ou réseaux +de processeurs évolutionnaires. Nous avons remarqué que tous ces +modèles peuvent simuler plusieurs instructions d'une machine à +registres en un seul pas. Autrement dit, ces instructions sont souvent +trop élémentaires. Dans le but de définir un modèle proche aux +machines à registres, mais qui utiliserait des instructions plus +expressives, nous avons proposé les machines à registres généralisées +({\em generalised register machines}). Une telle machine peut +effectuer plusieurs incréments, décréments, ou tests si un registre +est à zéro en une seule transition. -\subsubsection{Méthodes formelles pour le véhicule autonome} -La conception de l'automobile autonome est l'un des objectifs -magistraux de l'industrie et la science modernes ; en effet, un -véhicule capable de se conduire lui-même en respectant le code de la -route et la sécurité des acteurs du trafic permettra de lever de -nombreux verrous dans les domaines de la logistique, du transport de -personnes et de marchandises, etc. La conception d'un tel véhicule -pose des défis importants dont l'affrontement nécessite une véritable -synergie interdisciplinaire. +Les machines à registres habituelles peuvent être vues comme des +machines à registres généralisées qui n'exécutent qu'une seule +opération par transition. Dans une telle machine il est possible de +réduire le nombre d'états en utilisant des transitions plus +complexes. Dans ma thèse nous avons appliqué cette réduction pour +construire des machines à registres universelles à 7 états seulement, +cela en simulant les constructions présentées dans~\cite{Korec}. -Dans cette optique d'interdisciplinarité, je participe au travaux de -l'équipe COSMO qui étudient le véhicule autonome non pas comme un -objet physique suivant des trajectoires sur une route réelle, mais -comme un agent interagissant avec d'autres dans un espace virtuel -linéaire. Cette représentation éloigne le modèle de la réalité -physique, certes, mais elle nous permet d'aller au-delà de la sécurité -routière et d'étudier le {\em confort} additionnel que des protocoles -de {\em communication} pourrait procurer aux usagers de la route. +\subsubsection{Systèmes de réécriture de multiensembles et réseaux de Petri} +La dernière partie de ma thèse porte sur l'universalité des systèmes +de réécriture de multiensembles avec des inhibiteurs et aussi des +réseaux de Petri avec des arcs inhibiteurs --- deux modèles qui sont +fondamentalement similaires. En effet, un état (marquage) d'un réseau +de Petri est décrit par une fonction qui associe à chaque place le +nombre de jetons qu'elle contient ; or le marquage est un +multiensemble sur l'alphabet des symboles qui désignent les +places. Les transitions de réseaux de Petri correspondent ainsi aux +règles de réécriture de multiensembles. -Le cadre de cette étude est posé dans les articles bientôt publiés de -Jeremy \textsc{Sobieraj}. Ma contribution se cantonne actuellement à -l'étude du confort des usagers sur une voie d'insertion, mais je -compte élargir mon investissement. +Il a été montré que savoir si un marquage peut être atteint par un +réseau de Petri donné est décidable~\cite{Mayr:1981}. La même +affirmation est donc valable dans le cas des systèmes de réécriture de +multiensembles simples. Plusieurs variations ont été proposées afin +d'étendre la puissance d'expression de ces modèles, dont l'idée des +inhibiteurs. Dans les réseaux de Petri, un arc inhibiteur entre une +place et une transition empêche celle-ci de se déclencher si la place +n'est pas vide. De la même manière, on peut munir une règle de +réécriture de multiensembles d'une collection de symboles qui ne +doivent pas être présents pour que la règle soit applicable. Il a été +prouvé que les réseaux de Petri avec des arcs inhibiteurs et les +systèmes de réécriture de multiensembles avec des inhibiteurs sont +Turing complets~\cite{BMVPR2002,Reinhardt08}, car ils peuvent simuler +assez directement les machines à registres. +Dans ma thèse nous avons construit plusieurs réseaux de Petri avec des +arcs inhibiteurs universels. Nous avons défini la taille d'un réseau +comme étant le 4-uplet $(p,t,i,d)$ où $p$ est le nombre de places, $t$ +est le nombre de transitions, $i$ est le nombre d'arcs inhibiteur et +$d$ et le nombre maximal d'arcs incidents à une transitions (le degré +maximal). Nous nous sommes proposé de construire des réseaux de Petri +universels tout en minimisant chacun de ces paramètres. Nous avons +notamment décrit des réseaux universels avec quatre et cinq places +uniquement et d'autres avec deux et trois arcs inhibiteurs (les +chiffres varient selon l'encodage des entrées et des sorties). Il est +remarquable que deux est le nombre minimal d'arcs inhibiteurs +nécessaires pour atteindre la complétude computationnelle : les +réseaux de Petri avec un seul arc inhibiteur ne sont pas Turing +complets~\cite{Reinhardt08}. + +Même si les résultats portant sur l'universalité présentés dans la dernière partie +de ma thèse apparaissent sous la forme de réseaux de Petri, la +correspondance directe avec les systèmes de réécriture de +multiensembles permet de formuler immédiatement les mêmes résultats +pour ceux-ci. + +Les résultats de ma thèse portant sur les réseaux de Petri universels +ont été publiés +dans~\cite{DBLP:conf/dcfs/0001PV14,DBLP:journals/corr/IvanovPV13,DBLP:journals/jalc/Alhazov0PV16}. \subsection{Projets de programmation} Lors de mon parcours, j'ai réalisé plusieurs