D'une manière générale, depuis 1993, mes activités de recherche concernent les systèmes adaptatifs. Plusieurs points de vue m'intéressent :

Plan de la page :

Activités de recherche actuelles (1999-)

Apprentissage automatique et fouille de données

Progressivement, j'ai de plus en plus d'intérêt pour l'apprentissage automatique dans le cadre de la fouille de données. Cet intérêt est complémentaire de mes activités en apprentissage par renforcement. Quelques thèmes qui m'intéressent actuellement :

Apprentissage par renforcement

Je liste ci-dessous avec plus ou moins de détails les points sur lesquels je travaille actuellement (liste non exhaustive), et ceux qui m'intéressent plus généralement.

Mes mots-clés favoris : apprentissage par renforcement (ie., sans connaître la dynamique et en-ligne) ; grands espaces d'états ; algorithmique ; représentation de l'état et approximation de fonction ; logiciel efficace off-the-shelf

Approximation de fonctions en grande dimension pour l'apprentissage par renforcement (et l'apprentissage supervisé en général)

Un problème crucial en apprentissage par renforcement, que l'on rencontre également souvent en apprentissage automatique en général, est celui d'approximer une fonction réelle à partir d'un ensemble d'échantillons. Il existe un grand nombre de méthodes pour cela. Néanmoins, il n'y a pas de méthode qui marche vraiment bien pour un espace de grande dimension (et ici, « grand » est très modeste : disons 100 pour fixer les idées).

On se penche sur les méthodes d'approximation de fonctions dites non paramétriques. En particulier, on s'intéresse beaucoup aux méthodes des moindres carrées, avec une régularisation l1 qui fournissent des solutions très parcimonieuses. Ainsi, nous travaillons sur l'algorithme LARS en version noyautée. En 2006, on a introduit l'algorithme Equi-gradient descent (EGD) qui est une version à noyau, pour la régression et l'apprentissage par renforcement du LARS.
On peut voir l'algorithme EGD comme engendrant un grand nombre, voire une infinité comme on vient de l'étendre, de features/attributs décrivant l'état du PDM. Ensuite, l'algorithme sélectionne de bons attributs parmi ceux-ci.
L'EGD procède donc par une représentation en très grande dimension des données (comme toutes les méthodes à noyaux), suivie par une sélection des dimensions pertinentes.
Voir : le premier papier sur l'EGD et ce papier plus abouti.

L'un des problèmes avec ce type de méthodes est que le choix du noyau implique aussi le choix des hyper-paramètres du noyau (largeur de bande et matrice de covariance plus généralement pour un noyau gaussien par exemple). Ce choix n'est pas facile a priori et peut changer du tout au tout les résultats obtenus par l'algorithme. On peut utiliser l'EGD en le configurant de telle sorte qu'il cherche des noyaux gaussiens avec tel, tel ou tel hyper-paramétrage, mais c'est lourd (c'est ce que l'on a fait dans les premières publis). En 2008, on a proposé un algorithme original de LARS noyauté qui optimise aussi les hyper-paramètres. Ce papier est soumis, je le mets en ligne quand il sera accepté, ou quand le rapport de recherche sera prêt...

Représentation des états

On sait qu'en intelligence artificielle, il existe une « bonne » représentation pour tout problème, représentation extraordinaire qui rend le problème très facile à résoudre. Bien entendu, trouver cette représentation est équivalent, donc aussi difficile, que de résoudre le problème lui-même.
Pour la résolution d'un PDM, on a parfois une représentation naturelle-et-utilisable-dans-la-pratique de l'état de l'agent (par exemple, pour un système dynamique, on sait que sa position et sa vitesse à chaque instant suffisent). Dans des tas de problèmes de décision séquentielle, une telle représentation naturelle-et-utilisable-dans-la-pratique n'est même pas évidente (les jeux sont d'excellents exemples : échecs, dames, go, tétris, pacman, poker, ...).
On sait que pour un PDM, son état permet de déterminer de manière déterministe de l'action optimale à effectuer. Néanmoins, on constate expérimentalement que si l'on enrichit cet état, l'apprentissage du comportement optimal est beaucoup plus rapide. Donc, si l'état est suffisant pour apprendre, au moins en principe, une politique optimale, dans la pratique, on sait que l'adjonction d'information (qui peut sembler redondante) accélère l'apprentissage. Néanmoins, pour être utile, cette information doit bien entendu ne pas être corrélées linéairement avec celle déjà présente  par contre, une combinaison non linéaire des attributs constituant l'état peut se révéler grandement utile.
Nous menons donc une réflexion sur ce problème de découverte de features utiles.
Voir : dans le cadre d'une approche basée sur la fonction valeur, voir le papier d'ICML-A'2008 et le papier du workshop ECAI-ERLARS'2008. Pour une approche d'apprentissage direct d'une politique, voir le papier d'EWRL'2008. Pour une utilisation de la programmation génétique pour découvrir des features en RL, voir le papier d'EURO-GP'2008. Une synthèse de ces travaux est en cours de rédaction...

Complexité de la résolution d'un PDM

Depuis mes premiers travaux sur les algorithmes génétiques vers 1993, je m'intéresse à la complexité « en pratique » des algorithmes, plutôt qu'à leur complexité dans le pire des cas ou en moyenne.
J'essaie d'y voir un peu clair en ce qui concerne la résolution de PDM, quand on a un modèle de la dynamique, mais aussi quand on ne l'a pas.

Gradient naturel

Nous étudions la mise en œuvre pratique et générique de l'idée de gradient naturel, ainsi que l'évaluation de son apport dans le cadre de l'apprentissage par renforcement.
Voir : ce papier.

Mettre en œuvre sur de problèmes continus en dimension élevée

Dès que j'ai des algorithmes qui me conviennent, je me mets à faire des tests sur différents problèmes :

Bibliothèque logicielle off-the-shelf pour l'apprentissage par renforcement

La littérature en apprentissage pra renforcement et les sujets connexes compte des milliers de référence, des milliers d'idées d'algorithmes, ... Tout cela est éparse, plus ou moins validé expérimentalement, plus ou moins utile dans la pratique.
L'apprentissage par renforcement a ceci de particulier qu'il se déroule dans un contexte séquentiel, ce qui complique singulièrement la concpetion et la mise au point effective d'algorithmes et de programmes efficaces. Quand on regarde l'existant, il n'existe pour ainsi dire aucun logiciel qui fonctionne réellement de manière séquentiel, avec un réel souci d'efficacité et de fonctionnement sur le long terme. Il y a aussi toute une méthodoglogie d'expérimentation à imaginer.
J'essaie petit à petit de constituer une bibliothèque logicielle réellement séquentielle, efficace, ... aussi facile que possible à utiliser par un non expert, qui ne soit pas une « simple » collection d'implantations d'algorithmes, mais un logiciel tout-en-un, qui s'adapte au problème qu'il doit résoudre en choisissant le bon algorithme, le bon paramétrage, ... Il y a encore beaucoup de travail à faire.

Enseigner aux apprenants

Ici comme ailleurs, un algorithme d'apprentissage par renforcement peut voir ses performances transformées si l'on utilise les connaissances dont on dispose sur le problème à résoudre. Comme il s'agît ici d'algorithmes apprenant en interagissant avec son environnement, on peut imaginer de fournir des informations à l'agent au fur et à mesure de son apprentissage, comme un maître apprend à ses disciples. Il y a alors toute une « pédagogie » à développer à destination de ces apprenants.
Mes premiers essais selon cette idée sont dans le papier ECML'2002, dont se n'est absolument pas le thême principal. Néanmoins, dans la partie expérimentale, j'avais expérimenté l'idée d'aider un apprenant à sortir d'un labyrinthe en lui proposant des trajectoires lui montrant le chemin. J'avais aussi investigué le fait de données une trajectoire sous-optimale, à partir de laquelle l'algorithme apprend rapidement un comportement optimal, voire des trajectoires mauvaises, à partir desquelles il découvre assez vite qu'il peut faire bien mieux.
On a essayé d'aller plus loin sur ces idées (voir : le papier du workshop ECAI'2006). Il reste beaucoup de travail à faire.

Tansfert de compétences

On a aussi travaillé sur l'idée d'apprendre tout d'abord sur un problème simplifié, puis complexifier le problème lorsqu'une politique correcte a été apprise pour ce problème simplifié. On peut alors définir une séquence de problèmes allant du plus simple au problème que l'on veut réellement résoudre in fine. L'espoir est bien sûr qu'apprendre à résoudre un problème plus simple sera plus rapide et que le transfert d'une politique quasi optimale vers un problème plus complexe va améliorer considérablement la vitesse d'apprentissage.
Ces idées tournant autour du transfer learning ont été initialement proposées dans le résumé de la présentation à EWRL'2001, le résumé de la présentation à EWRL'2003, le tout étant dans l'article de synthèse.

Apprentissage d'un modèle

Tout en apprenant une politique, apprendre un modèle de la dynamique. Caractériser ce qui se passe quand on apprend en utilisant un modèle incomplet, faux, ...

Application à la modélisation de la dynamique du comportement animal

(C'était une activité forte jusqu'en 2005, moins forte actuellement.)

On cherche à modéliser et simuler l'adaptation du comportement (c'est-à-dire, son apprentissage) chez l'animal. Vivant dans un milieu en perpétuelle modification, l'animal adapte constamment son comportement à son environnement et poursuit donc constamment son apprentissage dans son milieu. Cette modification du comportement a été étudiée depuis la fin du XIXe siècle et a débouché sur des lois importantes du comportement.

Pour l'informaticien, ces lois doivent être formalisées. Cela a débouché sur les méthodes à base de différence temporelle (TD-learning), dans le cadre de l'apprentissage par renforcement. Si leur pertinence (ou plutôt, leur domaine de pertinence) est un sujet de réflexion en lui-même, ces méthodes peuvent être utilisés pour simuler l'adaptation du comportement animal.

On a commencé à construire un automate dont le comportement est basé sur ces algorithmes (voir la thèse de S. Delepoulle et lil-01-02). L'architecture de l'automate est un système multi-agents, chaque agent étant contrôlé par un algorithme TD. Les tâches à résoudre sont de nature non markovienne.

Des simulations ont montré qu'il reproduit de manière pertinente un certain nombre de points clés de la dynamique comportementale (courbe d'apprentissage, façonnage, extinction, ...).

On a aussi montré expérimentalement que ces lois du comportement (basé sur la loi de l'effet) peuvent résulter de l'évolution au cours des générations (voir )

Nous avons aussi travaillé à la modélisation des mouvements oculaires de suivi de cible (chez l'humain).

Mots-clés : apprentissage par renforcement

Collaboration : Jean-Claude Darcheville, Laurent Madelain et Yannic Miossec de l'
Unité de Recherche sur l'Evolution du Comportement et l'Apprentissage.

Cadre institutionnel : projet DYNAPP (Dynamique de l'Apprentissage) dans le programme « ACI Systèmes Complexes et Sciences Humaines et Sociales ».

Activités de recherche moins actuelles

Laboratoires virtuels (-2004) :

Traditionnellement basée sur des modèles numériques, la simulation de systèmes naturels est aujourd'hui envisagée via l'utilisation de modèles discrets à base d'agents informatiques. Ce type de modèles est très naturel pour l'informaticien et il fait son chemin depuis les années 1980 parmi les biologistes par exemple. Il est donc tentant d'explorer les capacités de ce type de modèles. En outre, la puissance et la disponibilité des ordinateurs permettent de réaliser des simulations d'assez grande ampleur sur une machine de bureau. Dès lors, on a imaginé un outil logiciel permettant de spécifier un modèle, de l'animer, d'en observer l'évolution et d'en analyser les résultats : un laboratoire virtuel.

On s'intéresse donc ici à la mise à l'épreuve de ce genre de modèles et à la spécification et la réalisation d'un laboratoire virtuel. Nous ne rejettons en aucun cas les modèles numériques, conscients que chaque type de modèles possède une niche de processus qu'il modélise bien ; aussi, la notion de couplage de modèles est-elle présente dans cette réflexion.

Le travail s'appuie en particulier sur la modélisation du comportement du copépode (zooplancton) dans son environnement (biologique : les autres copépodes, ses proies et ses prédateurs ; physique : les turbulences).

Mots-clés : couplage de modèles hétérogènes, expériences virtuelles, modélisation, simulation et validation.

Collaboration : Éric Ramat et Raphaël Duboz du Laboratoire d'Informatique du Littoral à Calais.

Cadre institutionnel : projet Mimosa soutenu par le GDR-PRC I3, une action de recherche dans le Programme National Environnement-Côtier (PNEC), le collège SMA.

Algorithmes évolutifs (1993-1999)

Pendant un certain nombre d'années, je me suis intéressé aux algorithmes génétiques, à leur hybridation, à leur utilisation pour la résolution de problèmes d'optimisation combinatoire (TSP, QAP, JSP) et à la notion de paysage adaptatifs. J'avais notamment essayé de trouver des moyens de mesurer a priori la difficulté d'une instance de problème d'optimisation combinatoire et comprendre d'où provient cette difficulté, pour pouvoir choisir, a priori, la meilleure heuristique pour résoudes une instance donnée.

Une espèce de synthèse de tout cela est disponible sous la forme de mon hdr. On pourra voir le papier ITOR'1999 qui fait une courte synthèse de ces travaux.

Ma thèse de doctorat et autour (1988-1993)

Il y a encore plus longtemps, ma thèse (janvier 1991, LIFL) concernait l'architecture et la programmation des supercalculateurs vectoriels (de type Cray Y-MP). Nous avions notamment développé différents langages de haut niveau de programmation vectorielle (Eva puis LSD), avec J-L. Dekeyser (directeur de thèse, LIFL) et Philippe Marquet (LIFL, à l'époque en thèse aussi) ; j'avais en particulier conçu le langage intermédiaire vectoriel multi-plate-formes dénommé Devil et écrit un compilateur de ce langage pour Cray Y-MP au cours d'un séjour post-doctoral au SCRI, à Tallahassee, Floride, en 1991. That was great fun!