Programmation par contraintes - Programmation
Marsh Posté le 16-02-2002 à 13:31:05
C'est bien loin tout ça donc je ne vais pas me risquer à des explications détaillées, mais tu peux reagarder du côté de Prolog. En gros c'est un langage dans lequel on décrit le problème, les contraintes, plutôt que la manière de le résoudre (comme on le ferait en programmation impérative). Prolog se charge ensuite de faire l'exploration combinatoire pour trouver la solution.
http://pauillac.inria.fr/~diaz/gnu-prolog/
Marsh Posté le 16-02-2002 à 13:55:13
Merci pour le lien.
Ca ne m'avance pas énormément dans la mesure où je comprends pas la moitié des termes que tu me dis (hé oui, je suis faible).
Je vais essayer de négocier pour changer mon sujet vers le coté Prolog, ca pourrais etre préférable pour moi.
Marsh Posté le 16-02-2002 à 14:38:57
en gros, tu définis des règles qui régissent ton problème.
ex : pour trouver le chemin dans un labyrinthe, à la place de faire tout un algorythme, tu vas définir que ton bonhomme ne peux pas avancer si il y a un mur devant lui, qu'il est possible de tourner, et que si le bonhomme avance, il sera une case plus loin, etc ...
ensuite tu définis le but : se trouver sur la case de sortie. Puis tu laisses le programme trouver la solution (le chemin) en fonction de ces contraintes que tu as définies.
C'est assez marrant de voir qu'on arrive à résoudre des problèmes super complexes en quelques lignes ...
ex d'exercice qu'on peut résoudre super simplement avec ce genre de programation : ftp://ftp.lifl.fr/pub/users/routi [...] er2000.pdf (l'exercice 6).
(c'était mon exams d'IA )
Marsh Posté le 16-02-2002 à 16:02:49
c clair , en prolog , tu passe 2 semaine pour pondre 15 lignes de codes ,mais c d'une puissance incroyable .
par exemple pour placer n reines sur un echiquier de nxn casees ( on l'a fait en C et en prolog pour comparer , ben en C , c relativemtn violent )
Marsh Posté le 16-02-2002 à 23:33:24
flo850 a écrit a écrit : c clair , en prolog , tu passe 2 semaine pour pondre 15 lignes |
n'importe quoi.
C'est pas si sorcier que ca !
Marsh Posté le 17-02-2002 à 14:07:45
Je commence à comprendre tout doucement le principe. Quelqu'un disposerait-il d'un support de cours sur Prolog et la programmation par contraintes, car c avec ca que je vais ptet réussir à m'y mettre dedans pour arriver à pondre un mémoire technique et à l'expliquer devant le jury.
Marsh Posté le 17-02-2002 à 17:30:48
benou a écrit a écrit : n'importe quoi. C'est pas si sorcier que ca ! |
c'est vraiment une uatre apporche de la programmation.
des qu'oin veut faire un truc un poil compliqué , c'est super destabilisant
par exemple , on a du refire une achine de turing en prolog , un peu violent quand meme.
cybervince > notre prof n'as pas mi sen ligne les cours de prolog ( je viens de verifier ), mais je pense qu'avec une recherche sous google avec prolog+cours+france tu devrai trouver
Marsh Posté le 17-02-2002 à 20:14:16
flo850 a écrit a écrit : c'est vraiment une uatre apporche de la programmation. des qu'oin veut faire un truc un poil compliqué , c'est super destabilisant par exemple , on a du refire une achine de turing en prolog , un peu violent quand meme. cybervince > notre prof n'as pas mi sen ligne les cours de prolog ( je viens de verifier ), mais je pense qu'avec une recherche sous google avec prolog+cours+france tu devrai trouver |
C'est pas évident à trouver justement, car on trouve que des planning de cours ou alors des programmes d'enseignement, mais pas les cours complets. Enfin bon, je ne desespère pas.
Marsh Posté le 17-02-2002 à 23:00:29
flo850 a écrit a écrit : c'est super destabilisant |
ca c'est clair que pour être déstabilisant, c'est déstabilisant !
Marsh Posté le 18-02-2002 à 11:30:10
Moi aussi je suis déstabilisé par ce sujet, mais bon, j'essaie de faire avec.
QQn aurait-il des cours de Prolog assez basiques avec des exemples, ca pourrais m'être assez utile.
[jfdsdjhfuetppo]--Message édité par cybervince--[/jfdsdjhfuetppo]
Marsh Posté le 18-02-2002 à 21:18:16
y a des liens vers des tutorels pour prolog et plein d'autres trucs :
http://perso.wanadoo.fr/mikael.mec [...] sinfo.html
Marsh Posté le 18-02-2002 à 21:19:00
en français : http://cuisung.unige.ch/Wang/notes.prolog/
Marsh Posté le 18-02-2002 à 21:19:22
brefg : http://www.google.fr/search?hl=fr& [...] %3Dlang_fr
Marsh Posté le 18-02-2002 à 21:54:12
ReplyMarsh Posté le 20-02-2002 à 21:15:14
merciiiiiiii bcps pour les liens, c sympa, je vais les approfondir
Marsh Posté le 21-02-2002 à 10:11:48
Tu dois surement faire ca pour une cours ou un TP d'IA. Tu n'as pas un prof qui t'encadre ?
Pierre-Antoine Queloz, 1998-05-29 a écrit : L'intérêt pour la programmation par contraintes vient du fait que l'utilisateur n'a pas besoin de programmer la procédure de recherche lui-même. Il peut ainsi se concentrer sur la manière de modéliser son problème qui donnera la résolution la plus efficace. Il dispose donc d'un outil qui lui permet de vérifier que son modèle est bien conçu et de le résoudre par les meilleurs algorithmes et heuristiques existants. Par ailleurs, la recherche de la solution peut être très efficace car les contraintes peuvent servir à guider l'exploration et à éliminer rapidement de grandes régions de l'espace qui ne contiennent pas de solution. Des publications récentes indiquent que la programmation par contraintes permet de résoudre certains CSP plus rapidement que les approches mathématiques telles que la programmation linéaire ou la programmation en nombre entiers. En outre, les contraintes prédéfinies sont souvent nombreuses et facilitent le travail de modélisation du problème. Un dernier avantage de la programmation par contraintes est qu'elle offre une certitude quant la réponse qu'elle donne, soit que la solution est optimale, soit qu'il n'y a aucune solutions. Cette certitude n'existe pas avec les techniques de "recherche locale" telles que recuit simulé, recherche tabou ou algorithmes génétiques. |
Un lien vers un crous de programmation logique :
http://cui.unige.ch/isi/ofsi00/prolog.pdf
Marsh Posté le 21-02-2002 à 10:14:28
Nan, en fait c pour un mémoire technique sur La Programmation par Contraintes.
On est censé étudier un sujet qu'on ne connais pas, et le maitriser en quelques jours. Donc on a pas de prof pour nous encadrer dans ce domaine la, surtout que tout le monde à un sujet différent.
Marsh Posté le 21-02-2002 à 10:24:30
J'avais compris que c'etait pour un memoire technique... Ce que j'aimerais savoir c'est dans que cadre tu dois le faire. Bref tu fais quoi comme etudes et c'est pour quel genre de cours qu'on te demande ca.
En fait si ce n'est pas pour faire de l'IA je ne vois pas vraiment a quoi sert la programmation par contraintes.
Ceci dit si c'est uniquement pour vous apprendre a decouvrir rapidement un sujet inconnu je trouve que ce temps pourrait etre consacre a des domaines plus interessants voir novateurs (sans etre nouveaux)
Marsh Posté le 23-02-2002 à 13:34:11
C'est un sujet attribué de façon arbitraire, et moi je suis tombé dessus. Sinon, notre formation est Chargé de Projet en Alternance, et mon sujet, n'a aucun rapport avec notre formation, ce qui fais que c'est uniquement histoire de nous faire faire un mémoire technique. Et pour compliquer les choses, l'admin a décidé de donner des sujets de dev aux passionnés de Réseau, et vice versa.
Marsh Posté le 16-02-2002 à 13:07:27
Quelqu'un sait-il en quoi ca consiste ?
Je dois rédiger un mémoire technique dessus, et à vrai dire, je plane complètement.
Et les quelques retours des moteurs de recherche sont assez compliqués.
Merci d'avance
---------------
SaulGoodman.fr: Actus sur la série Better Call Saul