La rencontre avec l’informatique graphique : itinéraire d’un informaticien français

À l’automne 1985, les choses en sont là lorsqu’un informaticien de l’Université Louis-Pasteur de Strasbourg, Jean Françon, entre directement en contact, par téléphone, avec de Reffye. C’est ce contact tout à fait décisif qui va, par la suite, le replonger dans la recherche à temps plein. Afin de pouvoir expliquer les raisons de cette rencontre féconde et en réduire un tant soit peu le caractère passablement contingent, il nous faut au préalable revenir sur la carrière et l’approche scientifique et épistémologique de Jean Françon à l’époque. Car il est pour le moins curieux qu’un chercheur en informatique théorique contacte un agronome et un simulateur de plantes pour en attendre une aide, mieux : une collaboration. Ce qui est bien le cas. Ce contact va de surcroît contribuer à établir un lien solide entre la tradition de l’informatique graphique et la simulation réaliste des plantes née en France, sur le terrain. Comme nous allons le voir, il va constituer une première jonction et une première consolidation du travail de de Reffye. Cette jonction sera bien la première d’une succession de convergences qui vont contribuer à renforcer considérablement le poids de la simulation réaliste des plantes en France et dans le monde. C’est à travers cette reprise en main inattendue que le travail de 1979 va finalement se révéler séminal et non terminal.

Mais qui peut bien être ce chercheur en informatique graphique qui contacte spontanément de Reffye cette année-là ? Penchons-nous un moment sur sa formation et sur sa carrière. Jean Françon est né en 1937 1809 . Il avait commencé sa formation par des études de mathématiques à la fin des années 1950. En 1960, il effectua un stage d’été à la Compagnie des Machines Bull pendant lequel il apprit à programmer sur des calculateurs à cartes perforées. Ce fut son premier contact avec une technique qu’il jugea intéressante mais très lourde à mettre en œuvre. Il poursuivit alors sa formation par un DEA et une thèse de troisième cycle en physique théorique appliquée à la physique nucléaire auprès de l’Université de Strasbourg. Son travail portait sur un type de modélisation mathématique de phénomènes nucléaires. Cette modélisation était à comprendre au sens d’une simplification des équations théoriques et d’une représentation approchée conçue de manière à ce que le calcul soit possible. Il choisit cette matière, nouvelle pour lui, parce qu’il était sûr d’avoir une place dans le DEA de physique et qu’il était alors très soucieux de ne pas être envoyé comme soldat en Algérie. De fait, il vécut assez mal son passage des mathématiques à la physique à cause de sa formation mathématicienne qui, signe des temps, avait été très bourbakiste : les physiciens s’autorisaient à négliger les conditions d’applications des théorèmes, comme ceux qui portent sur les fonctions de Dirac, alors qu’on lui avait enseigné qu’il fallait s’interdire ce genre de pratique. Il se trouvait ainsi en porte-à-faux et il en conclut que le « sens physique » lui faisait défaut. Il ne poursuivit donc pas en physique et accepta d’être engagé comme ingénieur en informatique en 1965 au Centre de Recherche Nucléaire de Strasbourg 1810 . Il travailla d’abord essentiellement en lien avec des spécialistes de la physique. C’est à cette époque qu’il découvrit la programmation en FORTRAN à laquelle il se forma sur le tas. L’utilisation des ordinateurs prenait, dès ce moment-là, une autre dimension : la lourdeur mécanique de la programmation était atténuée. Quelques années plus tard, Jean Françon fut rattaché au Centre de calcul (CNRS) de Strasbourg Cronenbourg. C’est là qu’il eut l’occasion de diversifier ses collaborations : à côté de la programmation du calcul scientifique et de l’analyse numérique pour physicien, il programmait de l’analyse de texte pour des littéraires, voire pour des théologiens. Il conçut même un logiciel d’analyse des flux routiers à destination des géographes. C’est donc dans ce contexte qu’il apprit à pratiquer et à apprécier la pluridisciplinarité.

Mais peu à peu, cette utilisation un peu improvisée d’une technique encore mal maîtrisée, la programmation informatique, finissait par lui coûter. Son goût de la rigueur et de la maîtrise conceptuelle des techniques renaquit au contact des problèmes de plus en plus complexes de propagation d’erreur dans les programmes. Plus les programmes en langage évolué devenaient lourds, moins l’informaticien savait contrôler les erreurs. Elles pouvaient être dues soit à des problèmes d’arrondis, soit à une dépendance des opérations arithmétiques à l’égard des circuits de la machine (le hardware), soit encore à certaines faiblesses congénitales des langages comme le FORTRAN ou des systèmes d’exploitation, c’est-à-dire à des erreurs logicielles. Ainsi, dans l’appel d’une sous-routine en FORTRAN par exemple, ce dernier ne distinguait pas formellement les passages des paramètres par valeurs et par adresses. C’est-à-dire que le caractère local de certaines déclarations de variables à l’intérieur du sous-programme n’était pas toujours respecté. La distinction n’était pas clairement faite entre la dénomination symbolique et conventionnelle d’un paramètre et sa désignation physique par le renvoi à son adresse absolue dans la mémoire physique. Les niveaux syntaxique et sémantique étaient encore mélangés sur ce point. Ce qui était l’occasion de multiples erreurs de programmation difficilement repérables.

Jean Françon décide alors de faire de la recherche et de se lancer dans une thèse d’Etat sur ce genre de difficultés. Il choisit de s’attaquer aux problèmes de la complexité des programmes de tri. Lorsque l’on a à effectuer un tri entre des données, par exemple alphabétique, il faut souvent les comparer une à une et cela demande un travail très long à la machine. Le programme est dit complexe si les comparaisons doivent être faites une à une. Mais il y a parfois la possibilité d’utiliser des techniques permettant de diminuer le nombre de ces comparaisons. Cela permet d’améliorer les performances en temps de calcul du programme en abaissant sa complexité algorithmique. Or, être capable de désigner les conditions rigoureuses d’application de ce genre de techniques exige d’entrer de plain-pied dans un domaine des mathématiques difficile appelé la combinatoire énumérative 1811 . Conscient de cela, Françon s’inscrit en thèse d’informatique théorique auprès du mathématicien strasbourgeois Dominique Foata. Foata était au départ un mathématicien qui n’entretenait pas de rapport avec l’informatique. Mais il était spécialiste de combinatoire. Or, le célèbre informaticien de Stanford, Donald Knuth, avait montré dans son The Art of Programming que les algorithmes de tri s’apparentaient à de l’analyse au moyen de combinatoires. Dans son deuxième tome, encore inédit, mais dont Foata possédait un manuscrit dès 1971, Knuth étudiait plus particulièrement le tri et la recherche d’informations (Sorting and Searching). Or, la recherche d’informations recourt elle aussi à des théorèmes de l’analyse combinatoire dès lors qu’elle utilise des arbres binaires de recherche par exemple.

À partir de 1971 donc, à côté de ses activités d’ingénieur, Françon travaille à prolonger le travail de Knuth sur quelques problèmes encore ouverts : dans sa thèse de 1979, il contribue à la production de quelques théorèmes nouveaux à valoir sur les algorithmes de tri. Mais, de son point de vue, son approche reste fondamentalement mal comprise de son directeur de thèse car ce dernier n’apprécie pas le sens de l’application informatique concrète qu’il a conservé malgré tout, par-delà son approche mathématique. Formé au départ sur le tas dans un contexte d’ingénierie informatique (il a déjà 42 ans lorsqu’il soutient sa thèse), Françon développe des mathématiques pour l’informatique mais pas pour les mathématiques elles-mêmes ; ce qui lui est vivement reproché. En fait, l’informatique est pour lui une science à part entière et qui, en tant que telle, a certes besoin des mathématiques mais ne se confond surtout pas avec elles. Dans son rapport avec les mathématiques, l’informatique possède pour lui un statut comparable à celui des sciences de la nature comme la physique. Mais, à l’époque, le point de vue de Françon sur ce sujet se trouve très marginal en France. En fait, à cause de sa forte séparation d’avec les recherches en mathématiques appliquées 1812 dès les années 1950, l’exercice et l’enseignement de l’algorithmique et de l’informatique théorique dans l’Université française avaient très vite été accaparés et remis dans les mains de mathématiciens et non d’ingénieurs ou de chercheurs qui auraient pu travailler dans le pluridisciplinaire, à l’image de Knuth. C’étaient souvent des mathématiciens combinatoriciens qui s’étaient proclamés, sur le tard, informaticiens spécialistes de l’algorithmique. Au début des années 1980, Françon subit encore directement les conséquences de ce clivage : les mathématiciens ne le reconnaissent pas comme quelqu’un de sérieux. Et il ne pourra d’ailleurs jamais réellement enseigner sa spécialité d’origine, la combinatoire énumérative. De leur côté, les physiciens et les chimistes universitaires considèrent l’informatique comme une simple technique et non comme une science en soi. Françon doit donc lutter sur ces deux flancs pour la reconnaissance de son travail et de son approche.

Notes
1809.

Pour ces informations, voir notre entretien [Françon, J. et Varenne, F., 2001].

1810.

À l’époque, ce centre dépend de l’enseignement supérieur, comme l’Institut de Physique Nucléaire d’Orsay. Plus tard, il sera rattaché au CNRS et sera nommé IN2P3.

1811.

Cette partie de l’analyse combinatoire se penche plus particulièrement sur le dénombrement des permutations réalisables sur un objet à n éléments. Dans le cas le plus simple, ce nombre est égal à n ! Mais cela devient rapidement difficile, non trivial, lorsque la structure de l’objet subit des contraintes et se complexifie un peu.

1812.

Effectuées surtout dans les centres de calcul et dans les écoles d’ingénieurs à partir de la fin des années 1950. À titre indicatif, en 1959, suite à l’échec du programme de fabrication de l’ordinateur français autour de Couffignal, l’Université française est dotée d’autorité de quatre ordinateurs à destination des universités de Paris, Grenoble, Toulouse et Strasbourg. Ce sont les écoles d’ingénieurs qui, à Grenoble et à Toulouse, vont bénéficier de la machine. À Strasbourg, il devait servir à l’observatoire. Mais ce sont surtout les mathématiciens universitaires qui vont s’accaparer les formations en informatique, cela en rupture avec tout contexte de recherche appliquée.