La NP-complétude en quelques mots
Dr. Claude Tadonki, Chercheur, Université de Genève

La NP-Completude est probablement le sujet le plus délicat de  l'informatique théorique. En résumé, la question est de savoir, étant donné d'une part une propriété logique facile à vérifier, et d'autre part un sous-ensemble fini , s'il existe ou non un élément de cet ensemble qui satisfait la propriété. En amont, il s'agit en fait d'un probleme de décision portant sur une instance donnée pour laquelle on doit se prononcer sur le fait qu'elle satisfait ou non une propriété, et en fournir une preuve (certificat) facile à vérifier. En pratique, la preuve en elle-meme est ce qu'on recherche. Les ensembles concernés ici sont ceux dont le "noyaux" est de tres petite taille et permet de generer tous les elements de l'ensemble au travers d'un mecanisme naturel. C'est le cas par exemple des jeux de lotterie. Le joueur est invité à choisir quelque numéros (rarement plus de dix!) parmi un ensemble raisonnable de valeurs (rarement plus de cinquante!). Le nombre de combinaisons possible est astronimique (meme si on n'en est pas trop conscient lorsqu'on joue!) pourtant le noyau de cet ensemble est visiblement insignifiant (il tient sur un bout de papier!). Le cas de la lotterie est particulier, car le bon numéro ne vérifie aucune propriété prédéfinie (du moins c'est ce que je pense!). On peut tout de meme mettre une logique dans ce jeu en demandant par exemple de trouver une combinaison dont la juxtaposition forme un nombre premier dont la some des chiffres est paire (toute lotterie qui s'y essayerait à partir de maintenant devra me payer mes droits!). Vérifier qu'un nombre donné est premier est une tache facile (c'est vrai!), encore moins que la somme de ses chiffres est paire. On a donc un jeu qui consiste à fournir un nombre premier avec une somme de chiffres qui est paire (facile à vérifier!) dans un espace dont le noyau tient sur un bout de papier (donc visiblement abordable!). Je parie que si un tel jeu est lancé, vous allez tous vous jeter sur votre ordinateur et lui demander de traquer la clef du Pérou. Rassurez-vous, il y a de forte chance que la réponse vous vienne toujours de la télé lors du tirage (comme d'habitude n'est ce  pas ?).  Beaucoup de problemes ont cette charactéristique, à savoir qu'ils sont d'un réel intérêt, faciles  à formuler et à "contenir", mais en realite difficiles à résoudre de maniere déterministe. De  tels problèmes sont dits NP(-P?) (dans le jargon de la complexité).
Techniquement, les problèmes NP peuvent etre  résolus efficacement si on admet la possibilité d'explorer simultanement plusieurs directions. En fait, le chemin qui mène a la solution est "court", mais le problème est de trouver ce chemin sans se laisser innonder de tentatives infructeuses. C'est comme dans un labyrinthe, la distance entre le point de depart et la sortie est courte, a condition de prendre le bon chemin, autrement on risque de parcourir une distance beaucoup plus importante, vraiment beaucoup plus. Parmi les problèmes NP,  il y en a qui ont une proprété toute particulière, ce sont les problèmes dits NP-complets.  Le sort de tous les problèmes NP est lié à celui des problèmes NP-complets (les VIP, Very Important Problems). En effet,  si on arrive à prouver (ou à infirmer) la difficulté intrinsèque d'un probleme NP-complet, il en  sera de même pour tous les problèmes NP (-P).
Le premier problème NP-complet, la satisfaisabilité  d'une formule logique binaire, a été établi en 1971 par Stephen Cook. Depuis lors, de nombreux autres problèmes NP-complets ont été identifiés ou prouvés (liste), par un  mécanisme (transitif) de réduction (lire l'ouvrage de référence Computers and Intractability: A Guide to the Theory of NP-Completeness (lien) de Michael R. Garey et David S. Johnson) . Ces problèmes sont de plus en plus nombreux, probablement  plus nombreux que ceux dont les tentatives de solutions inquiètenent vraiment. Prenons un exemple: parmi les  valeurs 4,5, 12, 17, 6, 11, 7, 9, 15, 18, 8, 11, 3, 19, 1, sauriez-vous me dire s'il existe un  sous-ensemble dont la somme est égale à 37. Je suis sûr que vous avez essayer de trouver ce  sous-ensemble. C'est ainsi, les problèmes NP-complets incitent toujours à les résoudre. Dans mon exemple  précédent, vous n'allez pas passer le même temps selon qu'il y a une solution ou non. Ceci est  une autre facette de la dance. Il est intuitivement plus aisé de s'en sortir lorsqu'il y a une  solution que lorsqu'il n'y en a pas, car dans le deuxième cas, vous risquez de tout explorer  avant d'aboutir à une conclusion d'inexitence. Seuls les mathématiques (ou le bon sens si vous  voulez, mais après il faut se justifer) permettent de tirer ce genre de conclusion sans une quelconque exploration  (mais pour y arriver, il faut sans doute réduire ses distractions de beaucoup!. Si vous ne  trouvez rien, personne ne saura que c'est pour cette raison que vous aviez l'air triste pendant  une période de votre vie, à vous de voir).
Deux conjectures trônent en ce moment dans le monde la complexite,  celle qui affirme que les problèmes NP-complets sont réellement difficiles, et celle qui affirme  que les questions d'existence et d'inexistence ne sont pas quantitativement pareilles. Celui qui  élucidera l'une de ces questions pourra sans doute fonder une réligion et avoir de sérieux  adeptes. Je lui conseillerai de faire son voeux de pauvreté beaucoup plus tard, car un prix d'un  montant d'1 million de dollars a été mis en jeu par the Clay Mathematics Institute à ce sujet (quand je pense qu'il y a des gens qui  en gagnent autant juste en se prêtant au jeu d'un spot publicitaire).
Il est clair que la question sous-jacente e la NP-complétude est celle de la dépendance à une énumération exhaustive. Il est des domaine ou l'on dispose de procédés efficaces pour trouver des solutions, pourtant l'espace de recherche est infini. Le cas le plus connu est celui de l'optimisation différentiable. Mon avis personnel est le suivant: on ne peut s'affranchir d'une énumération exhaustive que s'il y a un lien logique entre les solutions potentielles. Il faut donc trouver ce lien, ou encore prouver qu'il n'en existe pas, on n'y échappe vraiment pas!!!!

Liens intéressants / Interesting links