photo Jacques Malenfant

professeur en informatique
Laboratoire d'Informatique de Paris 6 (LIP6)
Université Pierre et Marie Curie
Boîte courrier 169
4, Place Jussieu
F-75252 PARIS Cedex 05
Jacques.Malenfant[at]lip6.fr

téléphone (laboratoire) :
télécopie :
+33 (0) 1.44.27.88.01
+33 (0) 1.44.27.70.00

Qui suis-je ?

Je suis professeur d'informatique au sein de l'UFR Sciences de l'ingénieur et membre du laboratoire LIP6 de l'Université Pierre et Marie Curie. Je suis actuellement co-animateur de l'action transversale ALROB des GDR GPL et Robotique et vice-président en charge des parcours professionnels et des carrières de l'UPMC.

Après des études de baccalauréat en informatique-mathématique et de maîtrise ès sciences en informatique à l'Université Laval à Québec, j'ai poursuivi mes études de doctorat en informatique à l'Université de Montréal (thèse soutenue le 26 mars 1990). J'ai ensuite fait un stage post-doctoral au LITP (Université Pierre et Marie Curie) de 1990 à 1992 avant de devenir professeur à l'Université de Montréal (1992-96). En 1996-97, j'ai passé une année comme enseignant-chercheur à l'École des mines de Nantes avant de devenir professeur des universités à l'Université de Bretagne sud à Vannes (et Lorient). J'ai soutenu mon habilitation à diriger les recherches de l'Université de Nantes le 21 avril 1997. J'ai finalement rejoint l'Université Pierre et Marie Curie en 2003 par mutation.

Activités de recherche

Mes recherches actuelles s'articulent selon deux axes complémentaires :

  1. la conception d'un modèle à composants pour les systèmes cyber-physiques et plus particulièrement la robotique autonome et collective, et
  2. la conception d'architectures logicielles réparties pour l'informatique autonomique (« autonomic computing »), prenant en compte différentes approches de décision et appliquant les principes de la théorie du contrôle.

L'objectif des travaux sur les architectures logicielles pour la robotique autonome est de proposer un modèle de composants fondé sur l'utilisation d'interfaces riches à la Henzinger pour exprimer de manière déclarative toutes les contraintes de temps, de ressources et de communication de ces derniers de manière à les composer dans des assemblages et les déployer sur des plates-formes en assurant qu'ils soient corrects par construction. Et ils sont rendus corrects non seulement par la vérification des contraintes mais par l'utilisation de ces dernières dans un solveurs de contraintes pour déterminer les paramètres de configuration qui les rendent corrects. Ces travaux ont été réalisés dans le cadre de la thèse d'Olena Rogovchenko.

Concernant ce domaine des architectures logicielles pour la robotique autonome, je suis actuellement membre du comité de pilotage de la série de conférences Control Architectures of Robots dont j'ai organisé à Paris l'édition 2007. Je suis également membre du comité technique de l'IEEE Software Engineering for Robotics and Automation.

Concernant le domaine des architectures logicielles pour l'informatique autonomique, j'ai participé à un projet ANR ARPEGE, le projet SALTY, dont l'objectif était de proposer une architecture générique pour la boucle de contrôle autonomique. Je m'intéresse plus particulièrement à la partie « Décision » dans cette architecture, en proposant des approches de calcul automatique des politiques de décision (par exemple, apprentissage par renforcement) dont le cycle de vie est également géré de manière automatique (de l'initialisation jusqu'à la fin d'exploitation, en passant par les phases d'apprentissage et d'éventuelles détection de changements radicaux dans le modèle de comportement de l'élément géré, comme les mises à jour de son logiciel). Je m'intéresse également à la coordination à grande échelle des décisions des contrôleurs. La thèse d'Olga Melekhova s'est déroulée dans ce contexte.

Ces recherches actuelles se fondent sur mes travaux antérieurs dans les domaines de la mise en oeuvre d'architectures réflexives pour l'adaptation dynamique du comportement des logiciels. L'objectif général de mes recherches est de fournir de nouvelles abstractions de programmation pour l'auto-adaptabilité dynamique et le calcul autorégulé, en allant vers un contexte réparti et, à terme, celui des systèmes à grande échelle.

Je m'intéresse ou me suis aussi intéressé dans le passé à la contractualisation des propriétés non-fonctionnelles des composants logiciels, aux concepts et à la formalisation de l'approche réflexive, à la programmation par prototypes, à l'intégration au sein d'un même langages des concepts de la programmation logique, concurrente et objets, et enfin à l'application des processus markoviens commandés et leur résolution par programmation dynamique. Plus récemment, mes travaux ont aussi porté sur les architectures fondées sur les services.

Mes publications les plus marquantes en carrière sont :

Pour ceux et celles qui apprécient ou qui savent tirer une information utile de ces statistiques, mon h-index sur Google Scholar au 30 mai 2016 était de 17. Ma publication la plus citée a 136 citations ; il y en a 3 qui sont citées plus de 100 fois et 6 qui sont citées plus de 75 fois. DBLP compte 38 entrées à mon nom actuellement.

Mots-clés recherche : informatique autonomique (autonomic computing) ; contrôle en boucle fermée des architectures logicielles ; systèmes cyber-physiques (cyber-physical systems, CPS) ; architectures logicielles pour la robotique autonome ; architectures logicielles réflexives ; programmation contractuelle ; programmation par objets ; programmation répartie, embarquée et temps réel ; sémantique, conception et implantation des langages de programmation ; robotique intelligente autonome et collective.

Activités d'enseignement

Je suis actuellement responsable d'une unité d'enseignement de la spécialité STL du master d'informatique de l'UPMC :

Plus généralement, mon expérience d'enseignement inclut des cours de langages de programmation (concepts, implantation, sémantique), structures de données, introduction à la programmation (par objets, fonctionnelle, logique), et langages formels à différents niveaux de bac+1 à bac+5, en université (canadienne et française) et en école d'ingénieurs.

Pour ces enseignements, il m'est arrivé d'écrire des supports complets :


Date de dernière modification : 30 mai 2016