Donald Knuth

Un article de Wikipédia, l'encyclopédie libre.

Donald Knuth
Donald Knuth

Donald Ervin Knuth ([kəˈnuːθ][1]) (10 janvier 1938 à Milwaukee, Wisconsin - ) est un informaticien américain de renom et professeur émérite en informatique à l'université de Stanford[2] (en tant que « Professeur Émérite de l'Art de Programmer »). Il est un des pionniers de l'algorithmique et a fait de nombreuses contributions dans plusieurs branches de l'informatique théorique.

Il est l'auteur d'une centaine d'articles et d'une dizaine de livres sur l'algorithmique et les mathématiques discrètes ; les 3 premiers volumes de The Art of Computer Programming (le quatrième volume est inachevé à l'heure actuelle bien que commencé il y a presque 40 ans) demeurent des ouvrages de référence, ce qui est exceptionnel dans une science comme l'informatique, qui évolue très rapidement.

Afin d'avoir d'une bonne qualité de mise en page pour la deuxième édition de son The Art of Computer Programming, Knuth a créé deux logiciels libres, par la suite largement utilisés en typographie professionnelle et en mathématiques, TeX et Metafont. Son intérêt pour la typographie l'a également poussé à créer la police Computer Modern, police par défaut de TeX.

Sommaire

[modifier] Biographie

Né à Milwaukee, dans le Wisconsin, Knuth a reçu son bachelor's degree summa cum laude et son master's degree (les deux simultanément, le jury considérant son travail de B.Sc. comme valant un M.Sc.) en mathématiques en 1960 du Case Institute of Technology (devenu depuis université Case Western Reserve). Sa première analyse d'algorithme remonte à l'été 1962. Knuth découvre à cette occasion un lien entre l'efficacité d'un algorithme de hachage et des mathématiques remontant à Ramanujan. Il obtient ensuite son Ph.D (doctorat) en mathématiques au California Institute of Technology en 1963. En 1968, il devient membre de la faculté de l'université de Stanford, où il a préalablement reçu un titre académique créé à son intention : Professor Emeritus of the Art of Computer Programming. En 1971, Knuth est le premier à recevoir le prix ACM Grace Murray Hopper Award. Il a reçu de nombreuses autres distinctions honorifiques, entre autres le prix Turing, la National Medal of Science, la médaille John von Neumann[3] de l'IEEE, ainsi que le prix de Kyoto et la médaille Franklin. Il est élu membre associé de l'Académie des sciences française en 1992 et membre de la Royal Society en 2003. Il est marié à Nancy Jill Carter, et a deux enfants, John et Jennifer.

[modifier] Travaux

Les travaux de Donald Knuth concernent particulièrement l'algorithmique et les mathématiques discrètes, mais il a aussi créé des logiciels très utilisés encore aujourd'hui, TeX et Metafont.

[modifier] Contributions aux mathématiques

[modifier] Contributions à l’algorithmique

Don Knuth est le créateur de plusieurs algorithmes qui portent son nom, parmi lesquels :

[modifier] Les logiciels TeX et Metafont

Knuth est le créateur du système de composition de documents TeX et du système de création de polices Metafont.

La police de caractères Computer Modern
La police de caractères Computer Modern

Knuth, mécontent de la façon dont étaient imprimés ses livres, consacra plusieurs années de sa vie, à partir de 1977, pour écrire un logiciel lui permettant d'obtenir un rendu correct des formules mathématiques pour la typographie professionnelle. Il s'agit d'un langage à balises tel que le SGML, qui permet de se concentrer sur la structure du document et laisser au compilateur le travail de mise en page. Le but de Knuth quand il a créé TeX était d'avoir un langage de description de contenu permettant d'obtenir un rendu de grande qualité avec un minimum d'efforts et qui serait indépendant de l'architecture matérielle. Fourni avec ses sources, TeX est l'un des premiers logiciels libres, ou presque. En effet, la seule restriction que Knuth imposait à toute modification est qu'elle ne prît pas le nom de TeX. Le logiciel fut donc repris et amélioré par Leslie Lamport pour devenir LaTeX.

Metafont est un langage utilisé pour composer des polices matricielles qui fut utilisé par Knuth pour créer la police en:Computer Modern. Il a été développé en même temps que TeX. Le langage Metafont a lui aussi donné naissance à MetaPost qui permet de produire des figures PostScript à partir d'une description géométrique.

[modifier] Autres idées notables

Knuth est à l'origine de nombreux concepts de programmation. Parmi ceux-ci on peut citer :

[modifier] Ouvrages

[modifier] The Art of Computer Programming

Knuth est connu comme l'auteur de l'ouvrage The Art of Computer Programming (couramment appelé TAOCP), une des références dans le domaine de l'informatique, pour ne pas dire la bible (un mot cher à Knuth…) des informaticiens. Ce livre a établi un domaine : l'analyse d'algorithmes qui consiste à se servir des mathématiques pour étudier les performances (en temps, mémoire…) d'un algorithme sur l'ensemble de ses exécutions possibles.

Cet Art de Programmer que promeut Knuth consiste est le message suivant : plutôt que de hacker en assembleur et de faire gagner quelques secondes au programme (ce serait une optimisation qui a son mérite mais qui n'est pas universelle ni pérenne car elle dépend trop de la machine sur lequel tournera l'algorithme), il vaut mieux prendre du recul sur le problème considéré, en extraire les structures combinatoires en jeu, étudier via les outils mathématiques ad hoc les propriétés typiques de ces structures (Knuth établit très souvent le comportement en moyenne en utilisant des techniques de séries génératrices), ce qui permet au final de mieux affûter l'algorithme à utiliser, et d'avoir ainsi de gigantesques gains d'efficacité. C'est également là le sens qu'il faut donner à son aphorisme « L'optimisation prématurée est la racine de tous les maux (ou presque) en programmation ».

Knuth consacre désormais presque toute son énergie à achever les 7 volumes de TAOCP (la première édition du premier volume remonte à 1968 et seulement les trois premiers volumes ont paru ainsi que trois fascicules du quatrième volume).

[modifier] Computers & Typesetting

Il s'agit de l'ensemble constitué par :

[modifier] Autres livres

Knuth est également l'auteur de 3:16 Bible Texts Illuminated (1991), ISBN 0895792524, dans lequel il tente d'examiner la Bible par une analyse du chapitre 3, verset 16 de chaque livre. Chaque verset est accompagné d'une calligraphie produite par un groupe de calligraphistes dirigés par Hermann Zapf. L'ouvrage n'a pas été traduit en français.

[modifier] Personnel

[modifier] Un geek

Knuth est une figure de l'informatique, connue pour son humour geek : il offre par exemple une prime de 2,56 dollars pour chaque faute typographique ou erreur découverte dans ses livres sous prétexte que « 256 cents font un dollar hexadécimal » (pour les erreurs de son ouvrage 3:16 Bible Texts Illuminated la prime est cependant de 3,16 dollars). Les numéros de version de TeX convergent vers pi, c’est-à-dire que les versions se suivent de la sorte : 3, 3.1, 3.14, etc., les numéros de version de Metafont convergent eux vers e. Il a également mis en garde les utilisateurs d'un de ses logiciels ainsi : « Faites attention aux bugs dans ce code ; je n'ai fait que démontrer qu'il était correct, je ne l'ai pas essayé » [4]).

Knuth a cessé d'utiliser le courrier électronique en prétendant qu'il s'en était servi entre 1975 et le 1er janvier 1990, et que cela suffisait pour toute une vie. Il trouve plus efficace de tenir une correspondance en « mode batch », et y consacrer une journée tous les trois mois, en répondant par courrier « classique ».

[modifier] Anecdotes

Knuth apprécie la musique et aime en particulier jouer de l'orgue. Dans sa propre maison, il dispose d'un orgue qu'il a construit lui-même. Knuth nie cependant avoir tout talent particulier pour jouer de cet instrument.

Il est marié à Jill Knuth, qui a publié un livre sur la liturgie et réalisé les illustrations du livre sur les nombres surréels[5]. Ils ont deux enfants. Avec elle, il collectionne les photographies de panneaux de signalisation routière (signalisation de danger de forme losangée) américain, s'intéressant évidemment aux plus surprenants[6].

Knuth a publié son premier article dans un magazine scolaire en 1957. À forte teneur humoristique, celui-ci a été publié dans le numéro de juin 1957 du magazine américain MAD.

[modifier] Citations

  • « Attention aux bugs dans le code ci-dessus. Je ne l'ai pas testé, j'ai seulement prouvé qu'il était correct. »
  • « La science est ce que nous comprenons suffisamment bien pour l'expliquer à un ordinateur. L'art, c'est tout ce que nous faisons d'autre. » (1996)[7]
  • « L'optimisation prématurée est la racine de tous les maux (ou presque) en programmation. »[8]
  • « Je définis Unix comme 30 définitions différentes des expressions régulières vivant sous le même toit. »[9]
  • « Une formule mathématique ne devrait jamais être la "propriété" de qui que ce soit ! Les mathématiques appartiennent à Dieu. »[10]

[modifier] Récompenses

[modifier] Voir aussi

[modifier] Liens internes

[modifier] Liens externes

[modifier] Références

  1. "Frequently Asked Questions" sur la page personnelle de Knuth. La prononciation proposée est Ka-NOUSS.
  2. (en) http://www-cs-faculty.stanford.edu/~knuth/.
  3. Liste des lauréats de la médaille John von Neumann
  4. FAQ sur le site personnel de Donald Knuth
  5. Donald Ervin Knuth, Surreal Numbers: How Two Ex-Students Turned on to Pure Mathematics and Found Total Happiness : A Mathematical Novelette, Addison-Wesley Professional (1974) - ISBN 0201038129
  6. site des panneaux.
  7. Avant-propos au livre A=B
  8. "Computer Programming as an Art" discours de réception du Turing Award 1974
  9. chapitre 33 du livre Digital Typography, p. 649.
  10. chapitre 1 du livre Digital Typography, p. 8.

Certains renseignements viennent de son CV [pdf].