Discussion:Algorithmique

message: Le Grand dictionnaire terminologique de l'Office québécois de la langue française semble indiquer, à ma grande surprise, que le mot « implémentation » soit un synonyme correcte de « mise en œuvre ». Est-ce un anglicisme ou un terme accepté en France ? 
-- Mathieugp 21 jun 2005 à 16:45 (CEST)
thread_title: Implémentation

message: Je pense que l'exemple d'algorithme des bonbons, que je poste ici en copie, n'illustre pas vraiment ce qu'est un algorithme en informatique, dans le sens où il ne résout pas de problème, mais donne simplement une suite d'instructions à réaliser
Exemple d'algorithme
# entrer dans le magasin
# prendre 150g de bonbons
# passer en caisse
# compter ses sous
# s'il reste plus de 1/2 € alors retourner au point 2
# sortir du magasin
Je propose de le remplacer par un lien sur la page d'un fameux problème d'informatique, du genre les tours de Hanoï.
--Kingmike 27 juillet 2005 à 10:48 (CEST)
thread_title:  Exemple d'algorithme 

message: Donald Knuth ayant joué un rôle fondamental dans le développement de l'algorithmique mathématique, une section de cet article devrait lui être consacrée.
===Liens externes===
*Donald E. Knuth, Professor Emeritus of The Art of Computer Programming at Stanford University
: Effectivement je pense que ce cher Knuth merite quelque chose dans cet article. Un lien interne, c'est sûr, une référence dans l'historique aussi, du genre : 'Donald E. Knuth est l'une des personnes qui a fait le plus avancer l'algorithmie durant ces dernières années...' . Une section, ca fait beaucoup je pense surtout qu'il y a déjà une bonne page sur lui (un peu courte certes). A.K. 30 mai 2006 à 12:15 (CEST)
thread_title:  Donald Knuth 

message: *Donald E. Knuth, Professor Emeritus of The Art of Computer Programming at Stanford University
: Effectivement je pense que ce cher Knuth merite quelque chose dans cet article. Un lien interne, c'est sûr, une référence dans l'historique aussi, du genre : 'Donald E. Knuth est l'une des personnes qui a fait le plus avancer l'algorithmie durant ces dernières années...' . Une section, ca fait beaucoup je pense surtout qu'il y a déjà une bonne page sur lui (un peu courte certes). A.K. 30 mai 2006 à 12:15 (CEST)
thread_title: Liens externes

message: Je trouve que cette section pourrait introduire la différence entre évaluation dans le pire cas et évaluation en moyenne.  De plus, je trouve que la même section règle un peu rapidement et à sens unique le problème que les algorithmiciens appellent presser la constante (squeezing the constant) et qui est important pratiquement.  Si dans un algorithme, la constante est 1 000 000, un algorithme logarithmique l'emporte.  De plus, les derniers gains d'une implantation se font dans les optimisations de moyen et bas niveau comme l'explique Jon Bentley dans son très beau  livre Writing efficient programs (Prentice Hall, Englewood Cliffs, 1982). Pierre de Lyon 25 juillet 2006 à 15:33 (CEST)
thread_title:  Complexité algorithmique 

message: Dans logique mathématique ? mathématiques ? informatique ? ou a part...?--Josce 27 septembre 2006 à 18:12 (CEST)
replies: text: Il me semble qu'en 2006, on doit la classer dans l'informatique.  Pierre de Lyon 28 septembre 2006 à 09:54 (CEST)
replies: text: Personnellement, je laisserais l'algorithmique dans la mathématique car l'informatique n'est pas la seule cliente de ses outils. Lacrymocéphale 1 septembre 2008 à 20:01 (CEST)
thread_title:  Ou classer "Algorithmique" dans la [[Liste des disciplines scientifiques]] ? 

message: Il me semble qu'il manque une partie sur les débuts de l'algorithmique, notamment avec :
* Les travaux de Turing et de Church, qui permirent la définition rigoureuse de la notion d'algorithme
* La thèse de Church
* Les travaux de Gödel
* Le 10ème problème de Hilbert (important car il a été posé par Hilbert sans vraiment connaître ce qu'était précisément un algorithme).
:Tout cela existe sur les pages de ces sujets. Mais perso je ne classerai pas cela (classiquement) dans l'algo. On pourrait faire un renvoi. Outs 15 juillet 2007 à 13:02 (CEST)
thread_title: Les débuts de l'algorithmique

message: Cet article est proposé pour faire partie de la sélection Wikipédia:Sélection/Informatique. Cette page permet d'afficher aléatoirement un article parmis la sélection sur Portail:Informatique. Les articles sélectionnés représentent la vitrine du projet.
Vous êtes invités à vous exprimer sur la page suivante : Wikipédia:Sélection/Informatique/Algorithmique. Toutes les remarques d'amélioration sont les bienvenues, mais notez que puisque c'est un vote interne au projet, seuls les votes des participants déjà inscrits sur le projet informatique seront pris en compte. --T (d) 11 décembre 2007 à 13:26 (CET)
thread_title:  Proposition de sélection de cet article pour [[Portail:Informatique]] 

message: ----
Le terme algorithmie n'est pas correct. J'ai apporté quelques modifications concernant les heuristiques. Il faut noter
que certains problèmes ne seront jamais résolus, quand bien même nous aurions toute la puissance de calcul possible. De même, une heuristique fournit
généralement une solution approchée. Enfin, il peut exister plusieurs solutions exactes différentes. Bien à vous, --bd 213.103.47.200 25 oct 2004 à 09:58 (CEST)
replies: text: Depuis qu'on mes les nouveaux messages en haut des pages de discussion ;-) (Normalement, c'est en bas. Sans rancune !) FvdP (disc.) 10 jun 2004 à 18:09 (CEST)
replies: text: Je sais, mais c'est une provocation. Maintenant que le point est corigé, ça peut aller en bas :) Aurélien
----
diviser chacune des difficultés que j'examinerois, en autant de parcelles qu'il se pourroit, et qu'il seroit requis pour les mieux résoudre. Ce n'est pas plutôt une définition des algorithmes "diviser pour régner" ? --Turb 17 jul 2004 à 16:06 (CEST)
thread_title:  Objects trouvés 

message: Est-ce que cette terminologie est classique? Puisque O(n!) est égale à O(n^n), ne devrait-on pas plutôt citer cette complexité quoique je ne sache pas lui donner de nom? --Pierre de Lyon (d) 12 décembre 2009 à 18:22 (CET)
replies: text: Je n'ai jamais rencontré de truc en O(n!) ou O(n^n). Il faudrait que je réfléchisse où on peut trouver ça, j'imagine un truc de chemins dans K_n et regarder la littérature. (:Julien:) ✒ 14 décembre 2009 à 19:44 (CET)
replies: text: Le Problème du voyageur de commerce a une solution optimale calculable en O(n!) (voir l'Algorithme de Little) Spikyvins (d) 5 février 2012 à 12:50 (CET)
thread_title: Complexité factorielle

message: Il manque une description succincte des structures de données et structures de contrôle. Dans une version précédente http://fr.wikipedia.org/w/index.php?title=Algorithmique&oldid=47655328 j'avais mis :
Les concepts en œuvre en algorithmique sont en petit nombre, ils appartiennent à deux classes :
* les structures de contrôle
** séquences
** conditionnelles
** boucles
* les structures de données
** constantes
** variables
** tableaux
** structures récursives (listes, arbres, graphes)
avec quelques renvois à d'autres sections de wikipédia pour une définition complète. Cet ajout a été supprimé avec une explication courte "pas convaincu par ce parag "concept", c'est plus lié à la prog qu'à l'algo.".
L'équation "Algorithms + Data Structures = Programs" vient de
 author = {Wirth, Niklaus},
 title = {Algorithms + Data Structures = Programs},
 year = {1978},
 isbn = {0130224189},
 publisher = {Prentice Hall PTR},
 address = {Upper Saddle River, NJ, USA},
une autre équation intéressante pour légitimer mon ajout est :
* Kowalski, Robert (1979). "Algorithm=Logic+Control". Communications of the ACM 22 (7): 424–436. doi:10.1145/359131.359136. ISSN 0001-0782.
Ces deux citations, d'auteurs de références, montrent que l'algorithmique est liée à la notion de programme, de structures de données et de structures de contrôle, et que l'on ne peut définir algorithmique sans en faire mention.
Plus généralement, en regardant l'historique de cet article, j'observe qu'il est difficile d'apporter des contributions pour cet article, une modification sur 3 est un retour en arrière ! Au vu de l'article, c'est étonnant, car il est loin d'être idéal. Outre l'ajout que je souhaite voir :
* il manque un paragraphe ou une section sur la récursivité, 
* il manque une description sur les différents types d'algorithmes (glouton, diviser-et-régner, brut-force, combinatoire, aléatoire, ...), 
* il manque une section sur les problèmes classiques de l'algorithmique (complétude, correction, terminaison, complexité, ...)
* la section "exemple" demande à être complétée et illustrée (sont-ce les algorithmes qui sont décrits ou les problèmes, ou ni l'un ni l'autre ?) en particulier, quelques exemples paradigmiques pourraient être  développés à travers plusieurs algorithmes éventuellement (échange, tri, ...) 
* l'aspect 'complexité' est sur-développé (une seule section ou sous-section doit suffire)
* ...
L'article anglais est bien meilleur, sans être excellent non plus.
J'aimerais donc que l'on éclaire ma lanterne, dans quelle optique est écrit cet article "Algorithmique", en tant qu'informaticien, je ne m'y retrouve pas, la quotation Avancement : "B" me semble usurpée, mais je suis d'accord sur l'importance "Maximum" de cet article pour la communauté informatique. Comment améliorer cet article sans être "défait". 
Par ailleurs, "Algorithmique" nécéssite facilement un livre (ou plus), -mais le cours sur wikiuniversité est en panne !- je comprendrais que l'on veuille se limiter à une ou deux pages (mais alors il faut savoir ce que l'on veut y mettre) 
:Plutôt d'accord avec toutes ces remarques. En ce qui concerne le "revert" sur les concepts, je le comprends, car il présentait les choses de manière absolue : les concepts de l'algorithmique c'est ça, alors qu'il existe des approches algorithmiques comme le LISP sans véritable structure de contrôle, et sans séparation entre structure de donnée et de contrôle. Il aurait mieux valu dire : selon l'approche de N. Wirth, correspondant aux langages les plus répandus (Pascal, C, etc..) les bases de l'algorithmique sont.. Cordialement --Jean-Christophe BENOIST (d) 28 décembre 2009 à 11:22 (CET)
thread_title:  Algorithms + Data Structures = Programs 

message: Est-ce que l'on pourrait un peu restructurer (et développer) l'article de la manière suivante :
# Définition (repris)
# Historique (repris)
## Antiquité (repris)
## Étude systématique (repris)
# Vocabulaire (à voir)
# Exemples d’algorithmes (repris, à développer)
# Approche pratique (à écrire) : description des stratégies courantes (glouton, diviser-et-régner, brut-force, combinatoire, aléatoire, ...) ajout peut-être de la section "heuristique"
# Etude formelle (à écrire)
## Structures algorithmiques classiques (à écrire, ou a reprendre de la page discusssion) : structures de données, structures de contrôle, récursivité
## Complétude, correction, terminaison (à écrire)
## Complexité (repris, déplacé)
### Quelques indications sur l’efficacité des algorithmes (repris, déplacé, revoir le titre (?))
### Les heuristiques (repris, à déplacer vers approche pratique(?))
--Bdenis (d) 11 janvier 2010 à 11:32 (CET)
replies: text: Je trouve cette proposition pas mal. Je mettrais l'"Etude formelle" avant "Approche pratique" (les fondements avant l'application), et "Exemples d'algorithmes" après "Approche pratique" (même logique), mais c'est une question de goût. Cordialement  Jean-Christophe BENOIST (d) 11 janvier 2010 à 12:27 (CET)
thread_title:  proposition de changement dans le plan de l'article 

message: La partie "Exemples d’algorithmes et d'applications" est peu homogène, pas très structurée, etc ...
Que pensez-vous de :
Titre : Exemples d’algorithmes, de problèmes, d'applications ou domaines d'application
Il existe un certain nombre d’algorithmes classiques, utilisés pour résoudre des problèmes ou plus simplement pour illustrer des méthodes de programmation. On se référera aux articles suivants pour de plus amples détails (voir aussi liste des algorithmes) :
* Algorithmes ou problèmes classiques (du plus simple ou plus complexe)
** échange, ou comment échanger les valeurs de deux variables : problème classique illustrant la notion de variable informatique (voir aussi  Structure de données)
** Algorithmes de recherche, ou comment retrouver une information dans un ensemble structuré ou non (par exemple Recherche dichotomique)
** algorithme de tri, ou comment trier un ensemble de nombres le plus rapidement possible ou en utilisant le moins de ressources possible
** Problème du voyageur de commerce, Problème du sac à dos et autres algorithmes ou approximations de solutions pour les problèmes combinatoires difficiles (dit NP-complets) 
* Algorithmes ou problèmes illustrant la programmation récursive (voir aussi algorithme récursif)
** tours de Hanoï
** huit dames, placer huit dames sur un échiquier sans qu’elles puissent se prendre entre elles 
** Suite de Conway
** algorithme de dessins récursifs pour le Tapis_de_Sierpiński_(programme_informatique), la Courbe du dragon, le flocon, ...
* Algorithmes dans le domaine des mathématiques
** calcul de la Factorielle d'un nombre, de la Fonction d'Ackermann ou de la suite de Fibonnacci
** algorithme du simplexe, qui minimise une fonction linéaire de variables réelles soumises à des contraintes linéaires
** Fraction continue d'un nombre quadratique, permettant d'extraire une racine carrée
* Algorithmes pour et dans le domaine de l'informatique
** Cryptologie et compression de données
** Informatique musicale
** Algorithme génétique en informatique décisionnelle
** Analyse et compilation des langages formels (voir Compilateur et Interprète (informatique))
** Allocation de mémoire (ramasse-miettes)
BDenis.--90.27.16.32 (d) 27 mai 2010 à 10:22 (CEST)
thread_title:  Restructuration des exemples 

message: Merci Epsilon pour l'ajout, dont l'article avait bien besoin. Mais en le lisant, on se pose la question de savoir si c'est un RI sur l'algorithmique ou un algorithme. "L'algorithmique est l’ensemble des règles et des techniques qui sont impliquées dans la définition et la conception d'algorithmes". Je suis parfaitement d'accord avec cette définition. Mais la suite du RI ne parle pas du tout des "règles et des techniques pour définir un algorithme" mais parle de ce qu'est un algorithme, et pourrait très bien être le RI de algorithme.
Il faudrait vraiment recentrer l'article sur les méthodes de conception des algorithmes, et non sur les algorithme, ou alors il faudrait fusionner cet article avec Algorithme. Cordialement --Jean-Christophe BENOIST (discuter) 5 février 2015 à 17:14 (CET)
replies: text: Mmmh. Il n'y a pas eu d'ajout d'epsilon0, mais un revert de vandalisme. Sinon sur le fond, je suis d'accord avec toi. J'ai essayé un truc. J'aime pas trop « étude » parce que donne un goût d'a posteriori alors que l'algorithmique fournit aussi des outils de conception d'algo (a priori). Et « production », ça fait trop orienté industriel. Cordialement, (:Julien:) ✒ 7 février 2015 à 10:32 (CET)
thread_title:  Paragraphe introductif 

message: Je serais pour supprimer ce paragraphe qui doit dater.  En effet, c'est un puits sans fond et il y a peu de chances que nous soyons exhaustif un jour. --Pierre de Lyon (discuter) 14 septembre 2015 à 18:12 (CEST)
replies: text: Euh, sur le principe, il me semble évident qu'une section "exemple" ne prétend pas à l’exhaustivité. On devrait plutôt réfléchir à des exemples pertinents et un tant soi peu variés. — TomT0m [bla] 14 septembre 2015 à 18:18 (CEST)
replies: text: Bien sûr, même Wikipédia ne peut prétendre à l'exhaustivité!  Mais je constate un biais dans le choix des domaines choisis. --Pierre de Lyon (discuter) 14 septembre 2015 à 18:36 (CEST)
thread_title:  Exemples d’algorithmes, de problèmes, d'applications ou domaines d'application 

message: Copie de ma réponse dans ma page de discussion privée: 
:Effectivement, le terme cheminement logique est flou, mais la notion d'étape est trop vague et trop imprécise. Elle pourrait convenir tout aussi bien avec la définition de schéma ou d'analyse... En consultant les différentes définitions proposées par les dictionnaires en lignes (encyclopédie Larouse, Académie francaise, L'internaute ,etc) il ressort que le terme « ensembles de règles » fait consensus : exemples tirés de quelques définitions :  Processus constitué par un ensemble d'opérations et de règles opératoires …, Ensemble de règles opératoires dont l'application permet de résoudre ...en appliquant dans un ordre précis une suite finie de règles , etc. Exit donc la notion d'étape .
:Mention spéciale pour l'Encyclopédie Universalis qui propose à mon sens la définition la plus précise : Un algorithme consiste en la spécification d'un schéma de calcul, sous forme d'une suite d'opérations élémentaires obéissant à un enchaînement déterminé. Mais la reprendre tel quel serait du plagiat.
:En application du principe de moindre surprise , je suggérerai comme définition pour algorithme celle proposée dans WK sur l'article homonyme : Un algorithme est une suite finie et non ambiguë d’opérations ou d'instructions permettant de résoudre un problème ou d'obtenir un résultat donné. D'ailleurs ne faudrait-il pas fusionner les deux articles ?--Yond29 (discuter) 10 octobre 2015 à 11:06 (CEST)
replies: text: Je suis assez contre la fusion, parce que ce sont deux concepts liés mais distincts (qui doivent être cernés l’un par rapport à l’autre, clairement les algorithmes en sport, on sait pas trop ce que c'est et ce n’est pas le sujet principal de l’article algorithme, faudrait peut être même encore séparer les articles). Ce genre de distinction apparaît clairement lorqu'un tente d'exprimer des choses clairement dans Wikidata : on se retrouve avec des interwikis foireux et des confusions de concepts ou finalement à cause de fusion maladroite on arrive à dire que l’algorithme de Dijkstra est une instance d'algorithmique, ce qui n’a pas de vraiment de sens. Un algorithme est un sujet notable en soi, avec une définition propre, l’algorithmique est une science qui étudie ces objets. Ils méritent deux éléments distincts sur Wikidata et deux articles distincts liés à ces éléments pour qu'on ait des définitions claires. — TomT0m [bla] 10 octobre 2015 à 12:55 (CEST)
replies: text: Je pense aussi que les articles Algorithmique et Algorithme ne devraient pas être fusionnés. --Pierre de Lyon (discuter) 10 octobre 2015 à 17:37 (CEST)
thread_title:  Définition algorithme - Fusion avec article algorithme 

message: J'avais supprimé la référence à Descartes, sans voir cette discussion et je vous prie de m'excuser.  J'avais considéré qu'elle n'était appuyée par aucune référence (comble, pas même une référence à Descartes lui-même, à part une vague référence bateau au Discours de la Méthode).  S'il existe un cours d'algorithmique qui mentionne Descartes, il faut absolument le citer.  Pour moi la référence aurait plus à voir avec la méthode Diviser pour régner qu'avec l'algorithmique en général.  En revanche Leibniz me parait plus avoir parlé d'algorithme et il n'est pas mentionné. --Pierre de Lyon (discuter) 19 septembre 2017 à 18:58 (CEST)
replies: text: Si on regarde bien le contexte de la citation de Descartes , à savoir les points premier, troisième et dernier, on voit qu'il s'agit de méthodes de raisonnement (méthodes d'analyse) pas de méthodes de calcul. --Pierre de Lyon (discuter) 19 septembre 2017 à 23:30 (CEST)
thread_title:  Suppression  

message: Il me semble que l'affirmation  appartient au siècle dernier.  Au   on dirait .  On peut aussi dire , mais il est vrai que cet aspect de consommation est complètement occulté dans cet article. --Pierre de Lyon (discuter) 10 mai 2020 à 19:09 (CEST)
replies: text: Très juste. --Pierre de Lyon (discuter) 10 mai 2020 à 23:31 (CEST)
thread_title:  Entre deux algorithmes informatiques de complexité identique, on utilisera celui dont l’occupation mémoire est moindre.