Discussion:Théorie de la complexité (informatique théorique)

message: La différence entre C-complets et C-difficile me semble complètement fausse, et différente par exemple de la version anglophone.
Un problème P est C-complet si tout les problèmes de C peuvent être réduit à P. Si de plus P est lui même dans la classe C, alors P est C-complet. De manière générale, le paragraphe 4 ne me semble pas bien clair.
Laurent Vibert 12 novembre 2009 à 16:37 (CET)
thread_title: Définitions de C-complets et C-difficile

message: Citation:
Le problème P = NP revient à savoir si on peut résoudre un problème NP-Complet avec un algorithme polynomial. Les problèmes étant tous classés les uns à partir des autres — un problème est NP-Complet si l'on peut réduire un problème NP-Complet connu en ce problème —, faire tomber un seul de ces problèmes dans la classe P fait tomber l'ensemble de la classe NP, ces problèmes étant massivement utilisés, en raison de leur difficulté, par l'industrie, notamment en cryptographie — cf. la factorisation en nombres premiers). Ceci fait qu'on conjecture cependant que les problèmes NP-complets ne sont pas solubles en un temps polynomial. À partir de là plusieurs approches sont tentées :
le problème de la factorisation en nombres premiers n'est pas connu comme un problème NP-complet (mais on pense qu'il n'est pas dans P pour autant. Plus précisément il est connu pour être à la fois dans NP et co-NP, ce qui rend improbable qu'il soit NP-complet, car alors on aurait NP inclus dans co-NP)
: Merci d'avoir signalé cette erreur.  Bien sûr la factorisation d'un nombre est considérée comme très dure (elle est pour cela à la base de RSA), mais n'est pas un problème NP-complet.  D'autre part, l'article manque totalement de pédagogie et a une structure un peu abrupte.  Je l'ai donc mis en ébauche. Pierre de Lyon 7 novembre 2007 à 10:57 (CET)
thread_title: Erreurs

message: Il me semble qu'il y a un (plusieurs) problème dans l'article tel qu'il est actuellement dans la définition de machine non-déterministe:
les machines de Turing non-déterministes peuvent effectuer un nombre illimité d'opérations à la fois: c'est semi-vrai au mieux, et comme c'est la seule caractérisation qu'on en donne, on ne comprend pas comment on peut faire de la complexité sur de telles machines, dépourvues de limites.
Et elles ne sont pas aussi appelées machines à oracles: les deux notions sont complètement orthogonales. Les machines à oracle ont elles aussi leur importance en théorie de la complexité (pour définir la hiérarchie polynomiale), mais elles ne sont pas nécessaires pour ce qui est évoqué dans l'article pour l'instant. Je les retire donc pour le moment.
Il reste les deux autres détails qui me font douter aussi, et dont je ne pense pas qu'ils ajoutent à la clarté de l'article: je ne crois pas que la génération de nombres aléatoires ait quoi que ce soit à faire avec la théorie de la complexité, à moins de parler des classes aléatoires comme RP, BPP et les autres, et encore, au  moins dans les définitions que j'en connais, on ne parle pas de générateur aléatoire mais de machine non-déterministe dont on compte les chemins acceptants.
Enfin, les machines à ADN auraient à mon avis plus à faire dans un paragraphe les autres notions de complexité et les modèles de calcul exotiques que dans celui-là, mais comme je ne sais pas trop comment le présenter, je laisse en l'état.
Galbolle 26 septembre 2006 à 13:42 (CEST)
thread_title: Définitions des machines non-déterministes et à oracle

message: "Un problème est NP-Complet si il est dans NP, et si n'importe quel problème NP-Complet peut se réécrire à l'aide d'un algorithme polynomial comme un sous ensemble d'instance de ce problème".
Définir "NP-Complet" en utilisant le terme "NP-Complet", ça fait plutôt désordre, non ? :oD
François-Dominique 21 aoû 2004 à 09:18 (CEST)
replies: text: Enfin si : tout problème NP, donc a fortiori tout problème NP-Complet peut se ramener à tout autre problème NP-Complet. Mais c'est une conséquence de la définition. --Ąļḋøø 19 nov 2004 à 21:20 (CET)

text: Il y a peut être une manière plus habile de le dire. Mais la version précédente, qui ne précisait pas cela, n'était pas correcte : un algorithme NP est en effet un algorithme polynômial (mais pas forcément sur une machine déterministe).--Ąļḋøø 5 déc 2004 à 02:09 (CET)
thread_title:  Définition circulaire 

message: Je ne suis pas vraiment d'accord. Je trouve qu'il y a de la place pour les deux articles. Balancer l'article théorie de la compelxite a qqun qui vient timidement se rensigner sur la complexité algorithmique me parait un peu violent. Est il possible de retirer les bandeaux?
: Je suis bien d'accord: même si les titres sont proches, les deux articles sont très complémentaires et non redondants. Il faudrait rajouter quelques lignes à la fin de l'article sur la complexité algorithmique pour que le lecteur comprenne qu'elle est à la base de la théorie de la complexité (un peu comme l'addition et la multiplication sont à la base de l'algébre).Francis.sourd
Ayé j'ai enlevé le bandeaux et ai rajouté la petite phrase d'introduction en bas de complexité algorithmique.
as4 1 septembre 2005 à 20:42 (CEST)
replies: text: Je ne suis pas d'accord sur la fusion. La théorie de la complexité et la complexité algorithmique sont deux choses différentes. Le premier est de la calculabilité pure et donc s'intéressent à des problèmes et analyse la complexité dans un modèle de calcul (généralement les machines de Turing), alors que le second cherche à décrire la complexité d'un algorithme. Le fond est le même mais l'approche est totalement différente. Tom 7 juillet 2005 à 14:00 (CEST)
replies: text: Tom développe d'excellent argument ... pour la fusion ! Clairement, Théorie de la complexité est actuellement strictement informatique et même algorithmique, son titre doit absolument refléter son contenu. Inversement, le titre Théorie de la complexité doit plutôt renvoyer à complexité, théorie du chaos, etc. gem 11 juillet 2005 à 16:29 (CEST)
thread_title:  fusion avec complexité algorithmique 

message: Complexité algorithmique et Théorie de la complexité (bandeaux ôtés le 1 septembre sans fusion)
Je ne suis pas trop sur mais quand on regarde les lines dans les autres langues il semble qu'il s'agit exactement du même sujet mais je ne sais pas quel nom est le plus correct. Pseudomoi 3 jul 2005 à 15:03 (CEST)
replies: text: Je ne suis pas d'accord sur la fusion. La théorie de la complexité et la complexité algorithmique sont deux choses différentes. Le premier est de la calculabilité pure et donc s'intéressent à des problèmes et analyse la complexité dans un modèle de calcul (généralement les machines de Turing), alors que le second cherche à décrire la complexité d'un algorithme. Le fond est le même mais l'approche est totalement différente. Tom 7 juillet 2005 à 14:00 (CEST)
replies: text: Tom développe d'excellent argument ... pour la fusion ! Clairement, Théorie de la complexité est actuellement strictement informatique et même algorithmique, son titre doit absolument refléter son contenu. Inversement, le titre Théorie de la complexité doit plutôt renvoyer à complexité, théorie du chaos, etc. gem 11 juillet 2005 à 16:29 (CEST)
thread_title: Discussion transférée depuis PàF

message: Voilà, j'ai fusionné les 3 articles redondant (ou plutot, inclus les uns dans les autres).
* "Classe de complexité" contenait moins d'information que celui là, je n'ai pas récupéré grand chose ;
* "Classe de complexité P et NP" contenait des discussions sur le sujet que j'ai intégrées dans l'article ;
Dans la foulée, j'ai corrigé quelques détails qui m'apparaissait érroné et j'ai rajouté quelques détails (notamment un petit bout sur les machines à ADN.
Évidemment, c'est sans doute loin d'etre parfait compte tenu du formalisme du domaine, mais je pense ne pas avoir laisser passer de grosses erreurs. En revanche, l'article parait encore assez hermétique au non initié (il faudrait peut-etre se fendre de quelques images de graphes et des patates pour les ensembles...).
--Manproc 26 juin 2006 à 15:58 (CEST)
thread_title:  Fusion avec Classe de complexité P et NP *ET* Classe de complexité 

message: Si L et LOGSPACE désignent la même chose, comment nomme-t-on la classe des problèmes solvables en temps logarithmique ? - Eusebius [causons] 24 janvier 2008 à 09:16 (CET)
replies: text: Essentiellement on ne la nomme pas: si on prend comme modèle de calcul des machines de Turing, il faut de toute façon un temps linéaire pour déplacer la tête de lecture jusqu'à la dernière lettre de l'entrée. Donc si ton problème peut dépendre de toute l'entrée, tu es en temps linéaire. Je ne crois pas que même avec des machines RAM cette classe soit intéressante. - Galbolle 25 janvier 2008 à 18:12 (CET)
replies: text: D'accord merci, j'aurais sans doute pu trouver ça tout seul, mais réfléchir c'est tellement fatigant... - Eusebius [causons] 26 janvier 2008 à 07:45 (CET)
replies: text:  Je ne sais pas s'il y a des problèmes « intéressants » en temps logarithmique, mais je sais qu'il y a des problèmes de décision, « raisonnablement » intéressant, qui ne nécessitent pas forcément de lire toute la donnée, par exemple il y a des problème de décision qui ne nécessitent de lire que le premier caractère et sont donc en temps constant.  Pierre de Lyon (d) 26 janvier 2008 à 10:35 (CET)
replies: text:  Accessoirement, avec une machine de Turing si on n'a pas au moins un temps linéaire pour aller jusqu'à la fin de l'entrée, on ne peut pas connaître sa taille. Du coup on ne peut pas s'arrêter en temps logarithmique. Pour que TIME(f(n)) soit une classe de complexité digne de ce nom, il faut que f soit constructible en temps, ce qui implique qu'elle soit plus grande que l'identité. Un paragraphe là-dessus serait d'ailleurs le bienvenu à l'occasion. Galbolle 28 janvier 2008 à 17:05 (CET)
replies: text: Je ne comprends pas cet argument.  Pourriez-vous être plus explicite. Pierre de Lyon (d) 30 janvier 2008 à 18:14 (CET)
replies: text:  Une fonction f est constructible en temps s'il existe une machine qui sur toute entrée de taille n s'arrête en temps f(n). Les théorèmes de théorie de la complexité (Savitch, hiérarchie...) s'appliquent en général à des classes de la forme TIME(f(n)) avec f constructible. C'est donc une bonne notion de classe non pathologique. Galbolle 31 janvier 2008 à 13:58 (CET)
replies: text: Je ne comprends pas plus. Pierre de Lyon (d) 1 février 2008 à 21:10 (CET)
replies: text: Il y a deux choses. D'abord, une classe TIME(f(n)), avec f(n) = o(n) ne peut contenir que des problèmes en temps constant. Pour s'en convaincre, il suffit de constater que si f(N) < N, alors sur une machine qui fonctionne en temps f(n), sur une entrée de taille N, ne peut pas lire le dernier caractère de l'entrée, ni connaître sa taille. Donc sur une entrée x de taille supérieure, elle se comporte comme sur le préfixe de x taille N. Elle s'arrête donc sur toute entrée en un temps borné par une constante. D'autre part, pour éviter les cas pathologiques comme celui-ci, ou du type TIME(g(n)) avec g complètement artificielle et incalculable, la plupart des théorèmes de complexité commencent par «soit g constructible en temps…». La définition de constructible en temps (en:Constructible function) est qu'il existe vraiment une machine M qui s'arrête en temps g. Je me demande s'il est bon de présenter cette notion dans l'article: elle n'est pas nécessaire à la compréhension intuitive, mais elle intervient réguliérement comme hypothèse dans les théorèmes classiques.Galbolle 1 février 2008 à 22:49 (CET)
thread_title:  Temps logarithmique 

message: Je trouve la bibliographie largement améliorable. Le "Computational Complexity" de Papadimitriou et le Garey-Johnson sont deux incontournables. On pourrait rajouter le très récent "Computational Complexity: A Modern Approach" de Sanjeev Arora et Boaz Barak, qui tend à s'imposer comme une référence (et qui a le bon goût d'être disponible sous forme de Drafts à l'adresse suivante. Pour les références en français, le Lassaigne/de Rougemont est une bonne référence, mais l'"Introduction à la calculabilité" ne me semble pas avoir sa place ici. Enfin, le "Modal Logic" me semble parfaitement inapproprié, et la référence de l'article de Hermann et Lescanne aurait à mon avis plus sa place en note par rapport à la partie "Le problème ouvert P=NP" qu'en référence générale sur le sujet. Cela dit, ce n'est peut-être pas la bonne façon de faire, je ne suis pas très expert wikipédien. 
Dernière chose, il y a peut-être moyen de trouver une référence en français plus moderne que le Lassaigne/de Rougemont qui commence à sérieusement dater... (même s'il est excellent ;-)). 
Je ferai des modifications d'ici peu si personne ne s'y oppose !--Grob (d) 8 novembre 2009 à 17:51 (CET)
replies: text: Tout cela parait de bon aloi. On t'en prie !  --Jean-Christophe BENOIST (d) 8 novembre 2009 à 19:19 (CET)

text: Modifications faites. J'ai finalement laissé l'article de Hermann et Lescanne qui peut être intéressant. Au passage, je pense que cette page ne présente qu'une partie de la complexité algorithmique (en fait la complexité booléenne), et qu'on pourrait signaler l'existence de la complexité quantique, la complexité algébrique, etc... Ces domaines étant par exemple présent dans la conférence "Computational Complexity Conference". J'essaierai de réfléchir à une bonne méthode pour en parler dès que j'aurai le temps  --Grob (d) 9 novembre 2009 à 00:49 (CET)
thread_title: Bibliographie

message: Bonjour,
Je compte créer prochainement une page séparée pour Problème NP-complet, il me semble que c'est une notion assez importante pour faire l'objet d'un article en elle-même (il n'y a qu'à voir quelles sont les pages liées à celle-ci).
J'ai commencé une traduction (libre) de la version anglaise sur Utilisateur:Nordald/Problème NP-complet, mais je vois que certains articles spécifiques sur les classes de complexités ont déjà été fusionnés dans Théorie de la complexité des algorithmes, donc je demande d'abord : avez-vous des commentaires ou des objections sur la création de l'article Problème NP-complet ?
Cordialement,
Nordald (d) 14 mai 2010 à 00:38 (CEST)
replies: text: Notion très importante en effet, qui mérite largement un article. Pour ma part, aucun problème, au contraire. Ce qui avait été fusionné était deux articles, qui se recouvraient beaucoup, et aux contours imprécis. Le destin de cet article est de donner lieu maintenant à des sous-article plus précis, ce qui est le cas pour cet article. Bon courage pour la traduction et pour l'article ! Cordialement --Jean-Christophe BENOIST (d) 14 mai 2010 à 01:45 (CEST)
replies: text: Je suis aussi favorable à la création d'un article intitulé Problème NP-complet. --Pierre de Lyon (d) 14 mai 2010 à 11:17 (CEST)
replies: text: Merci de vos réponses, je m'occupe donc de développer cet article (pour l'instant, toujours sur ma page utilisateur). Bonne journée, Nordald (d) 14 mai 2010 à 13:55 (CEST)
replies: text: Voilà, une première version est en ligne dans l'espace principal : Problème NP-complet. Je n'ai suivi la version anglaise que partiellement. N'hésitez pas à me faire part de vos remarques et critiques et/ou à modifier l'article. Il y a maintenant une certaine redondance entre cet article et celui-ci, qu'il faudra sans doute retravailler un peu. Nordald (d) 15 mai 2010 à 22:39 (CEST)
replies: text: A première vue, c'est du très bon travail. Toutes mes félicitations et mes encouragements. Je regarderais de manière plus attentive plus tard. Cordialement --Jean-Christophe BENOIST (d) 16 mai 2010 à 10:28 (CEST)
thread_title:  Article séparé pour NP-complet 

message: === Comment on invente des histoires ===
Dans les années 1960 et au début des années 1970, alors qu'on en était à découvrir des algorithmes fondamentaux (tris tels que quicksort, arbres couvrants tels que les algorithmes de Kruskal ou de Prim), on ne mesurait pas leur efficacité. On se contentait de dire : « cet algorithme (de tri) se déroule en 6 secondes avec un tableau de 50 000 entiers choisis au hasard en entrée, sur un ordinateur IBM 360/91. Le langage de programmation PL/I a été utilisé avec les optimisations standards. » (cet exemple est imaginaire)
A mon avis c'est un peu n'importe quoi, puisque von Neumann donne dans son First Draft of a Report on the EDVAC un algorithme de tri en O(n log n).  Il avait donc bien conscience de la complexité des algorithmes.--Pierre de Lyon (d) 31 décembre 2010 à 11:39 (CET)
replies: text: Oui. Je pense que les créateurs des algorithmes (von Neumann, Knuth etc..) ne pouvaient qu'avoir conscience au moins d'une certaine forme de complexité des algorithmes (sinon, comment formaliser leur efficacité et comparer différents algorithmes ?). Tout dépend de qui désigne le "on", qui semble désigner tour à tour créateurs et utilisateurs. Je pense que l'idée générale de la phrase est de dire quelque-chose comme : "à cette époque la notion de complexité n'était pas très formalisée, et réservée aux créateurs des algorithmes, qui avaient chacun leur notion de la chose". Mais est-ce vrai ? Je n'ai pas de source sur cet historique. --Jean-Christophe BENOIST (d) 31 décembre 2010 à 12:00 (CET)
replies: text: A mon avis c'est de la pseudo histoire. Je supprime donc cette affirmation non pas parce qu'elle n'est pas étayée, mais parce qu'elle est fausse. --Pierre de Lyon (d) 4 janvier 2011 à 16:57 (CET)
replies: text: Je viens de lire l'article de Knuth "The Dangers of Computer Science Theory" où il trace l'origine de l'analyse des algorithmes de tri à la thèse de Demuth en 1954.  Comme les premiers algorithmes datent des Babyloniens, au début du deuxième millénaire avant JC, il est difficile de dater précisément le début de l'analyse des algorithmes, je pense qu'il faut donc rester vague sur la date.  Puis-je enlever la première demande de date ? --Pierre de Lyon (d) 5 janvier 2011 à 12:07 (CET)
replies: text: Ceci écrit, j'ai ajouté les références à Demuth et à Knuth qui donnent donc des dates précises pour la deuxième demande de date.--Pierre de Lyon (d) 5 janvier 2011 à 15:16 (CET)

text:  J'en profite aussi pour relever une erreur classique qui consiste à confondre l'origine de l'algorithmique avec celle de la calculabilité et de l'informatique. Les scientifiques concevaient des algorithmes bien avant Turing et Ecker et Maulchy. --Pierre de Lyon (d) 5 janvier 2011 à 15:29 (CET)
replies: text:  J'ai retiré ma première demande de date mise essentiellement car avant ton intervention une date était donnée et j'ai cru à une omission. Sinon l'algorithmique c'est bien sûr plus ancien que la calculabilité, penser aux recettes en tout genre (cuisine) ou à l'algo d'Euclide (même s'il n'est p.-e. pas de lui) ou technique du boulier, pour rester en maths pour exemple. --Epsilon0   ε0 5 janvier 2011 à 19:02 (CET)

text: La démonstration de la complexité minimale du tri en n Log(n) à partir de l'entropie est connue (par exemple p.3 de ). Mais je ne sais pas si c'est Knuth qui en est à l'origine. C'est possible. --Jean-Christophe BENOIST (d) 5 janvier 2011 à 21:45 (CET)
thread_title:  Histoire 

message: Dans les années 1960 et au début des années 1970, alors qu'on en était à découvrir des algorithmes fondamentaux (tris tels que quicksort, arbres couvrants tels que les algorithmes de Kruskal ou de Prim), on ne mesurait pas leur efficacité. On se contentait de dire : « cet algorithme (de tri) se déroule en 6 secondes avec un tableau de 50 000 entiers choisis au hasard en entrée, sur un ordinateur IBM 360/91. Le langage de programmation PL/I a été utilisé avec les optimisations standards. » (cet exemple est imaginaire)
A mon avis c'est un peu n'importe quoi, puisque von Neumann donne dans son First Draft of a Report on the EDVAC un algorithme de tri en O(n log n).  Il avait donc bien conscience de la complexité des algorithmes.--Pierre de Lyon (d) 31 décembre 2010 à 11:39 (CET)
replies: text: Oui. Je pense que les créateurs des algorithmes (von Neumann, Knuth etc..) ne pouvaient qu'avoir conscience au moins d'une certaine forme de complexité des algorithmes (sinon, comment formaliser leur efficacité et comparer différents algorithmes ?). Tout dépend de qui désigne le "on", qui semble désigner tour à tour créateurs et utilisateurs. Je pense que l'idée générale de la phrase est de dire quelque-chose comme : "à cette époque la notion de complexité n'était pas très formalisée, et réservée aux créateurs des algorithmes, qui avaient chacun leur notion de la chose". Mais est-ce vrai ? Je n'ai pas de source sur cet historique. --Jean-Christophe BENOIST (d) 31 décembre 2010 à 12:00 (CET)
replies: text: A mon avis c'est de la pseudo histoire. Je supprime donc cette affirmation non pas parce qu'elle n'est pas étayée, mais parce qu'elle est fausse. --Pierre de Lyon (d) 4 janvier 2011 à 16:57 (CET)
replies: text: Je viens de lire l'article de Knuth "The Dangers of Computer Science Theory" où il trace l'origine de l'analyse des algorithmes de tri à la thèse de Demuth en 1954.  Comme les premiers algorithmes datent des Babyloniens, au début du deuxième millénaire avant JC, il est difficile de dater précisément le début de l'analyse des algorithmes, je pense qu'il faut donc rester vague sur la date.  Puis-je enlever la première demande de date ? --Pierre de Lyon (d) 5 janvier 2011 à 12:07 (CET)
replies: text: Ceci écrit, j'ai ajouté les références à Demuth et à Knuth qui donnent donc des dates précises pour la deuxième demande de date.--Pierre de Lyon (d) 5 janvier 2011 à 15:16 (CET)

text:  J'en profite aussi pour relever une erreur classique qui consiste à confondre l'origine de l'algorithmique avec celle de la calculabilité et de l'informatique. Les scientifiques concevaient des algorithmes bien avant Turing et Ecker et Maulchy. --Pierre de Lyon (d) 5 janvier 2011 à 15:29 (CET)
replies: text:  J'ai retiré ma première demande de date mise essentiellement car avant ton intervention une date était donnée et j'ai cru à une omission. Sinon l'algorithmique c'est bien sûr plus ancien que la calculabilité, penser aux recettes en tout genre (cuisine) ou à l'algo d'Euclide (même s'il n'est p.-e. pas de lui) ou technique du boulier, pour rester en maths pour exemple. --Epsilon0   ε0 5 janvier 2011 à 19:02 (CET)
thread_title:  Comment on invente des histoires 

message: Encore moi.  J'ai lu les articles historiques de Knuth (il se trouve que ça tombe pile avec les besoins d'un article que j'écris).  Je note qu'il ne parle pas de la théorie de l'information comme fondement de l'analyse d'algorithme.  J'ai l'impression que l'article lui prête des pensées qu'il n'a pas. --Pierre de Lyon (d) 5 janvier 2011 à 21:00 (CET)
replies: text: La démonstration de la complexité minimale du tri en n Log(n) à partir de l'entropie est connue (par exemple p.3 de ). Mais je ne sais pas si c'est Knuth qui en est à l'origine. C'est possible. --Jean-Christophe BENOIST (d) 5 janvier 2011 à 21:45 (CET)
thread_title:  Knuth et la théorie de l'information 

message: Knuth signale une analyse d'algorithme de 1894 parue dans l'Intermédiaire mathématique de 1894.  Quelqu'un saurait-il si cet ouvrage est disponible en ligne? --Pierre de Lyon (d) 5 janvier 2011 à 21:06 (CET)
thread_title:  L'intermédiaire mathématique de 1894 

message: Bonjour,
Je trouve que cet article, n'est pas très clair, et mélange complexité des algorithmes et des problèmes.
En général lorsque l'on parle de "théorie de la complexité", il s'agit d'étudier la complexité des problèmes. Et le terme "complexité des algorithmes" est plus ou moins un abus de langage je crois. Wiki en utilise plutot "analysis of algorithms"
wiki (en):
A key distinction between analysis of algorithms and computational complexity theory is that the former is devoted to analyzing the amount of resources needed by a particular algorithm to solve a problem, whereas the latter asks a more general question about all possible algorithms that could be used to solve the same problem.
Donc déja je pense que la première chose à faire et de changer le titre et l'intro.
Qu'en pensez-vous?
--Pparent (d) 20 juin 2012 à 12:03 (CEST)
replies: text: Je pense qu'il y a consensus sur ce qu'il convient de faire. Il n'y a "plus qu'à". Le premier qui n'hésite pas aura raison !  --Jean-Christophe BENOIST (d) 20 juin 2012 à 12:26 (CEST)
thread_title:  Confusion complexité Algorithme/problème 

message: Bonjour, 
merci de donner votre avis sur Modèle:Palette Théorie de la complexité.
Cordialement, --Roll-Morton (d) 11 décembre 2012 à 12:20 (CET)
thread_title:  Palette complexité 

message: Bonjour,
je propose de revoir un peu la section qui énumère les classes : on pourrait peut-être faire quelque chose de plus général pour les classes indiquées (par exemple : "les classes sur machine déterministes en temps bornée sont définies par ... les grands exemples sont ...") et rajouter des choses notamment un mot sur les classes probabilistes (ZPP (complexité) etc. pour lesquelles j'ai commencé à faire des pages) et les classes "crypto" : PCP, IP, AM etc..
Qu'en pensez-vous ?
--Roll-Morton (d) 23 janvier 2013 à 17:50 (CET)
replies: text: En fait, je ne vois pas bien ce que tu veux dire. Ce que je crois comprendre est que tu voudrais supprimer l'énumération des classes P, NP etc.. pour le remplacer par un paragraphe plus général qui décrit comment et sur quels critères sont définies les classes, et citer quelques grands exemples de classes, mais pas pas toutes. Le problème est qu'il n'y a pas (en général) d'article détaillé sur les classes, et que cet article est pour le moment le seul réceptacle d'informations précises et détaillées sur chaque classe. Mais je n'ai pas du comprendre ce que tu as voulu dire. L'idéal serait de dire : j'aimerais faire comme dans telle source par exemple. Cordialement --Jean-Christophe BENOIST (d) 23 janvier 2013 à 18:19 (CET)

text: Pas de problème pour moi. Tous mes encouragements ! Il faudrait tout de même conserver une énumération des classes, avec le lien interne, mais cela va de soi (?) Cordialement --Jean-Christophe BENOIST (discuter) 27 janvier 2014 à 17:58 (CET)
thread_title:  Restructuration de la partie "classes" 

message: Bonjour,
un petit message pour signaler le modèle:Complexity Zoo qui permet mettre plus facilement des liens externes vers ... le Complexity Zoo.
--Roll-Morton (d) 24 février 2013 à 10:32 (CET)
thread_title:  Modèle Complexity Zoo 

message: Bonjour, 
merci d'aller donner votre avis sur discussion portail : informatique théorique#complexités.
--Roll-Morton (discuter) 7 octobre 2013 à 17:46 (CEST)
thread_title:  complexités : renvoi vers une autre discussion 

message: Les quantités de ressources sont déclinées en temps et espace. Quid de la quantité de ressources en énergie? Est-ce que cela ressortit aussi de la théorie de la complexité? --Pierre de Lyon (discuter) 8 mars 2014 à 17:15 (CET)
replies: text: j’aurai tendance à dire que c'est fonction de la mémoire utilisée et du temps du calcul. Voire juste du nombre d'instructions si on considère que la lecture et l’écriture ont un coût et que le coût des lectures/écritures est borné par le nombre d'instructions pour exécuter l’algorithme. Donc la complexité en énergie (qui n'est pas définie pour une machine de Turing, donc ça n’a pas trop de sens) serait la même que la complexité en temps, asymptotiquement. Si on veut faire des vrais tests de coût énergétique après ça dépend de pas mal de facteurs de l’architecture et des algorithmes utilisés j’imagine ... — TomT0m [bla] 8 mars 2014 à 17:24 (CET)
replies: text: Avec le calcul réversible (article anglais bien meilleurs, tiens, un article à améliorer), on peut atteindre - théoriquement - un coût en énergie nul. En revanche, je n'ai jamais rien vu concernant des classes de complexités énergétiques. --Jean-Christophe BENOIST (discuter) 8 mars 2014 à 17:58 (CET)
replies: text:  Ça ne me dit rien sur le plan théorique, par contre j'ai déjà vu des études expérimentales, notamment dans des contextes de calcul distribué.--Roll-Morton (discuter) 8 mars 2014 à 18:58 (CET)
replies: text: Du côté théorique, il y a en:Landauer's principle. Zandr4[Kupopo ?] 2 juillet 2014 à 09:48 (CEST)
replies: text:  Peut-on dire qu'il y a bien une notion de « ressource énergétique », mais qu'aucun résultat scientifique décisif n'a été obtenu? En conséquence on pourrait signaler ce type de ressource comme une piste potentielle de recherche. --Pierre de Lyon (discuter) 2 juillet 2014 à 10:05 (CEST)
replies: text: J'ai plutôt l'impression qu'il y a un ensemble épars de résultats scientifiques, comme le principe de Landauer, mais qu'il reste à les organiser pour établir cette notion. Mais les bases semblent encore mouvantes, comme les débats sur le principe de Landauer, qui sont aussi lié aux débats (plus que centenaire) sur le démon de Maxwell, qui n'est pas encore clairement résolu. J'ai l'impression que si on se lance dans des recherches sur cette notion, on arrive très vite dans la thermodynamique, avec ses problèmes et paradoxes en cours, c'est très inter-disciplinaire. --Jean-Christophe BENOIST (discuter) 2 juillet 2014 à 10:19 (CEST)
thread_title:  Quantité de ressources 

message: La phrase : « On qualifie de NP-difficile ou NP-complets (s'il appartient à NP) les problèmes décisionnels, c'est-à-dire ceux dont la réponse est de type binaire (oui/non, vrai/faux, 1/0, …). On qualifie parfois par convention de NP-difficiles les problèmes d'optimisation associés à un problème de décision NP-complets ou NP-difficile, c'est-à-dire que la réponse est de type numérique. » est du charabia pour moi.  Je propose de la supprimer. --Pierre de Lyon (discuter) 1 juillet 2014 à 14:56 (CEST)
replies: text: D'accord pour la suppression! --Pparent (discuter) 1 juillet 2014 à 15:16 (CEST)
replies: text:  D'accord aussi.--Roll-Morton (discuter) 1 juillet 2014 à 16:40 (CEST)
replies: text:  OK je supprime. --Pierre de Lyon (discuter) 2 juillet 2014 à 09:18 (CEST)
thread_title:  Phrase incompréhensible 

message: Bonjour, j'ai rajouté l'exemple du voyageur de commerce. Dans l'ensemble, je trouve que l'article manque d'exemples. Aussi, je propose de ː
* de rajouter plus d'exemples
* de déplacer le gros des présentations des classes de complexité vers l'article "Classe de complexité"
* de fusionner la partie "introduction" et "problème algorithmique" (elles disent la même chose)
* Le texte est très indigeste des fois. Par exemple ː "Les problèmes C-difficiles sont les majorants de C et les problèmes C-complets sont les plus grands éléments de C.". Quel est l'intérêt de dire cela ? Puis plus loin "Quand on parle de problèmes P-complets ou P-difficiles on s'autorise uniquement des réductions dans LOGSPACE.". Alors que c'est dit nul part que les problèmes P-complets sont intuitivement les problèmes non parallélisables. Bref, des intuitions autour des définitions. Là, c'est un peu "brutal".
J'aimerai bien que l'on discute de tout cela. Qu'en pensez-vous ? --Fschwarzentruber (discuter) 31 mai 2016 à 23:52 (CEST)
replies: text: En ce qui me concerne tu peux y aller, j'ai toujours reculé à reprendre cet article. --Roll-Morton (discuter) 1 juin 2016 à 08:54 (CEST)
thread_title:  Rendre l'article plus pédagogique 

message: a créé une section Histoire pour suggérer qu'une telle section devrait exister. A mon avis ça sera assez difficile à écrire, en la séparant de l'histoire de l'analyse d'algorithme.  Donc il faudrait plutôt songer à écrire une article en soi-même qui s'intitulerait « Histoire de l'analyse d'algorithme et de leur complexité ».  Ceci dit, je viens de jeter un coup d'oeil à la préface du livre « Selected Papers on Analysis of Algorithms » de Knuth où il explique comment le domaine de l'analyse d'algorithmes a eu du mal à émerger.  Nous aurons donc du mal à en trouver les origines et cela risque d'être du travail inédit que nous devrions plutôt laisser aux historiens. En tout cas, je suis volontaire pour travailler sur ce projet d'Histoire de l'analyse d'algorithme et de leur complexité s'il voit le jour.  A part les live de Knuth déjà cité, je ne connais pas d'autres références qui pourraient nous aider.  Voir aussi à ce sujet la discussion sur la page d'Ada Lovelace à laquelle jai participé. --Pierre de Lyon (discuter) 3 octobre 2017 à 10:06 (CEST)
replies: text: Ça risque de ne pas être différent de la présentation des grands résultats. Du coup, je ne suis pas sûr que ça soit très intéressant et ça risque de n'être que des redites. --Pierre de Lyon (discuter) 3 octobre 2017 à 11:25 (CEST)
replies: text:  Je ne vois pas où les grands résultats sont présentés : théorème de Cook, de Savitch, de Toda, etc. Et tout ça, je pense que ça serait chouette de l'avoir raconté dans une section "Histoire". Non ? --Fschwarzentruber (discuter) 11 octobre 2017 à 19:15 (CEST)
replies: text:  Si on trouve une bonne source qui parle de l'histoire de la complexité, je pense que c'est une bonne idée, sinon ça risque d'être difficile, on a pas forcement le recul... --Roll-Morton (discuter) 11 octobre 2017 à 23:36 (CEST)
replies: text:  Je pense comme Roll-Morton que nous manquons de recul. Quand commence l'analyse d'algorithme et la complexité : avec Lamé, avec Gödel (et son intuition de problèmes NP-complets)?  Il faudrait un ouvrage de référence qui à mon avis n'existe pas.  --Pierre de Lyon (discuter) 12 octobre 2017 à 11:05 (CEST)
replies: text:  En cherchant un peu j'ai trouvé A Short History of Computational Complexity par Fortnow. Je n'ai pas encore vraiment regardé, je ne sais pas à quel point c'est utilisable, mais l'auteur est une référence. C'est souvent difficile d'expliquer le processus sans rentrer dans les détails (théorème de Toda, sans définir PP, #P, les oracles etc.), et j'ai peur que ce soit le cas dans ce texte. --Roll-Morton (discuter) 12 octobre 2017 à 14:09 (CEST)
replies: text:  Tout d'abord, merci pour cette référence. L'introduction doit être compréhensible de tous. Mais wikipedia est une encyclopédie : un article n'est pas un cours mais "doit" offrir un tour du sujet. Même si le lecteur non averti ne comprend pas tout, il a un aperçu global de l'histoire du domaine. --Fschwarzentruber (discuter) 12 octobre 2017 à 16:36 (CEST)
replies: text:  Oui oui, c'est sûr. Bon je pense que maintenant que l'on a une référence on peut faire quelque chose. Je dis juste qu'il ne faut pas que ça se transforme en une liste de pointeurs vers d'autres articles, et que c'est difficile.--Roll-Morton (discuter) 12 octobre 2017 à 17:10 (CEST)
replies: text:  Oui, l'avis de Pierre est intéressant aussi. L'aspect historique peut être dilué dans les autres sections aussi. Du coup, pas de nouvelle section mais juste une section sur les grands résultats en plus. Et pour le reste, on dilue. --Fschwarzentruber (discuter) 12 octobre 2017 à 18:27 (CEST)
thread_title:  Histoire de la Complexité 

message: Dans la liste des problèmes ouverts en complexité, il n'y a que des problèmes généraux, mais pas de problème particuliers et ça me gêne,  Comme si la recherche en complexité n'était qu'affaire de grands problème type P=NP ! .  J'entends par « particuliers » des problèmes comme la minimisation des fonctions convexes qui  a été un grand problème ouvert de 47 à 79 ou le problème de l'isomorphisme de graphes. N'étant pas spécialiste de ces questions, je ne peux pas en être le rédacteur principal.--Pierre de Lyon (discuter) 12 octobre 2017 à 11:33 (CEST)
replies: text: Pour l'isomorphisme de graphe je suis d'accord, mais pour le reste ça devient rapidement spécifique, et c'est difficile d'évaluer à quel point ce sont des problèmes remarquables qui méritent d'apparaître (on pourrait mettre des problème de bornes inf sur les circuits mais quels sont ceux qui sont emblématiques..?). Je pense qu'en générale une section «problème ouvert» n'est pas très encyclopédique, c'est plutôt du niveau recherche, mais dans notre cas il est impossible de ne pas parler de P=NP...--Roll-Morton (discuter) 12 octobre 2017 à 17:16 (CEST)
replies: text:  Je ne demande évidemment de ne pas parler des problèmes généraux (comme P=NP). je demande que l'on montre, par des exemples, que la théorie de la complexité s'intéresse aussi aux problèmes particuliers.  Ceci dit, dire que le simplexe est spécifique c'est assez étonnant ! --Pierre de Lyon (discuter) 13 octobre 2017 à 10:26 (CEST)
replies: text:  Ah pardon, je n'avais pas compris ta remarque. Pour moi il y a quand même une distinction entre l'analyse d'algorithme qui s'intéresse à la complexité de problèmes spécifiques, et la théorie de la complexité qui est plus structurelle. Certes on s’intéresse parfois à des « problèmes clés » mais c'est surtout parce qu'ils ont une influence sur le tableau global. Enfin c'est mon point de vue. --Roll-Morton (discuter) 13 octobre 2017 à 14:10 (CEST)
replies: text:  Cette définition de théorie de la complexité est trop restrictive. On parle bien de la complexité de l'algorithme de tri et pas de son analyse. D'autre part, les liens sur la complexité d'algorithmes spécifiques, renvoient sur cet article, car c'est le seul qui parle de la complexité des algorithmes. Il y a donc quelque chose à faire. --Pierre de Lyon (discuter) 13 octobre 2017 à 15:03 (CEST)
replies: text:  La théorie de la complexité est généralement vue comme l'étude 1) la définition et l'étude de modèles de calcul 2) la classification des problèmes algorithmiques en fonction de leur complexité intrinsèque. (cf. Dexter C. Kozen, dans Theory of Computation, Lecture 1. p. 3). --Fschwarzentruber (discuter) 13 octobre 2017 à 15:22 (CEST)
replies: text:  Je veux bien, mais alors il faudra modifier les liens qui pointent vers cet article alors qu'ils devraient pointer vers un article analyse d'algorithme à créer.   L'article Algorithmique ne remplit pas ce rôle. Pour ne donner qu'un exemple de mauvais lien, la section complexité algorithmique de l'article Algorithmique ne devrait pas dire que l'article développé est celui-ci, puisque comme vous venez de le dire, il ne traite pas d'analyse d'algorithmes spécifiques.  --Pierre de Lyon (discuter) 13 octobre 2017 à 15:38 (CEST)

text:  P. S. J'indique dans la discussion de l'article algorithmique ce qu'il faudrait mettre dans un article analyse d'algorithme. --Pierre de Lyon (discuter) 13 octobre 2017 à 15:44 (CEST)
replies: text:  Je vois. Juste deux remarques. 1) le domaine qui étude les algorithmes proprement dits (dont leurs complexités, etc.) s'appelle l'algorithmique. Y-a-t-il besoin d'un article sur la complexité des algos en particulier ? 2) Aussi, l'analyse d'un algo n'est pas déconnectée de la théorie de la complexité. L'analyse d'un algorithme donne une borne supérieure de complexité (par exemple, l'algo de tri fusion donne une borne supérieure en O(n log n) pour le problème du tri par comparaison). Du coup, ce n'est pas stupide de pointer ici aussi. --Fschwarzentruber (discuter) 13 octobre 2017 à 16:21 (CEST)

text:  Pour ce qui est des liens, je fais souvent pointer vers complexité en temps qui me semble plus pertinent. Pour ce qui est de la position de la frontière, il est possible que je sois influencé par le vocabulaire anglo-saxon, qui n'est peut-être pas le même que le vocabulaire français. --Roll-Morton (discuter) 14 octobre 2017 à 15:08 (CEST)
replies: text:  Pour moi l'algorithmique est l'art d'écrire des algorithmes, pas l'art de les analyser en complexité.  Regardez l'article algorithmique, il n'y a qu'une petite section sur la complexité.  D'autre part, l'algorithmique et l'écriture des algorithmes ont existé bien avant qu'on les analyse en complexité (20 siècle entre l'algorithme d'Euclide et son analyse en complexité par Lamé).  J"aurais envie de dire que vous avez un biais, probablement pour deux raisons: votre communauté scientifique est celle de la complexité abstraite, pas celle des livres de Knuth, ni celle de la sémantique et vous avez appris "en même temps"  complexité et algorithmique. --Pierre de Lyon (discuter) 14 octobre 2017 à 15:42 (CEST)
thread_title:  Problèmes ouverts en complexité 

message: est un argument d'autorité qui ne m'impressionne pas.  Il faut donner une citation d'un auteur reconnu qui dit cela et pas seulement le mettre en commentaire d’une modification.  Limiter la complexité à une complexité en temps est une attitude ringarde des années 1970.   Aujourd'hui des travaux émergent pour considérer outre la complexité en espace, la complexité en énergie.  En ces temps de COP26, pensons au gaspillage énergétique des algorithmes et des ordinateurs. Comme le fait remarquer Roll-Morton, il existe un article complexité en temps.
Pierre de Lyon (discuter) 14 novembre 2021 à 16:45 (CET)
thread_title:  Par défaut "complexité d'un problème=temps de calcul" ! … et ce n'est pas un point de vue mais le résumé des articles fr en de 

message: Si on va sur l'article O, on est renvoyé à celui-ci, à propos des notations de Landau, or rien n'y est dit sur leur usage dans l'analyse de la complexité des algorithmes.  Un vide à combler. Pierre de Lyon (discuter) 14 juin 2022 à 10:34 (CEST)
thread_title:  Les notations de Landau