Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1452 connectés 

  FORUM HardWare.fr
  Programmation
  Algo

  [Algo]Recherche du plus court chemin

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Algo]Recherche du plus court chemin

n°329755
Burps
Posté le 11-03-2003 à 18:02:57  profilanswer
 

Salut
 
Que connaisez-vous comme algorithme de recherche de plus court chemin.
Je connais Dijkstra, qui permet de prendre le parcours le plus rapide sur un reseau de bus par exemple
 
Maintenant, toujours sur mon reseau de bus, je recherche un algo qui choisirait un trajet avec le MINIMUM de changements, (pour les handicapés par expl...) : qu'est-ce que vous connaissez ?
 
Sinon, vous connaissez d'aures algo susceptibles de m'interesser ?
Merci de votre aide


Message édité par Burps le 11-03-2003 à 19:43:53
mood
Publicité
Posté le 11-03-2003 à 18:02:57  profilanswer
 

n°329774
buddy lemb​eck
Posté le 11-03-2003 à 18:12:22  profilanswer
 
n°329781
walli
Posté le 11-03-2003 à 18:15:42  profilanswer
 


 
 :pfff:  t'es pas sérieux là au moins...

n°329782
Loom the G​loom
Even coders get the blues...
Posté le 11-03-2003 à 18:16:32  profilanswer
 
n°329785
the real m​oins moins
Posté le 11-03-2003 à 18:17:20  profilanswer
 

walli a écrit :


 
 :pfff:  t'es pas sérieux là au moins...
 

bon en meme temps s'il sait pas ce qu'est un algo, il peut pas avoir compris la question [:spamafote]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°329787
walli
Posté le 11-03-2003 à 18:18:31  profilanswer
 

the real moins moins a écrit :

bon en meme temps s'il sait pas ce qu'est un algo, il peut pas avoir compris la question [:spamafote]


 
euh... c'est très gros tout de même...  :heink:  

n°329788
bobuse
Posté le 11-03-2003 à 18:18:47  profilanswer
 

J'ai un cours sur les parcours de graphes chez moi, je regarderai ce soir si je l'ai pas jeté :D


---------------
get amaroK plugin
n°329790
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 11-03-2003 à 18:19:15  profilanswer
 

the real moins moins a écrit :

bon en meme temps s'il sait pas ce qu'est un algo, il peut pas avoir compris la question [:spamafote]


Bin dans ce cas, on s'abstient de répondre, non ? :??:


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°329791
benou
Posté le 11-03-2003 à 18:21:05  profilanswer
 


[:rofl][:rofl][:rofl][:rofl]
je sais pas de qui il est le multi mais en tout cas y me fait bien délirer !!! :lol:

n°329793
buddy lemb​eck
Posté le 11-03-2003 à 18:21:55  profilanswer
 

walli a écrit :


 
 :pfff:  t'es pas sérieux là au moins...
 


j'essaye de résoudre un topic [:spamafote]
je ne vais pas me contenter de poster dans blabla, faut que je participe !
mais je vous avais bien dit que je connaissais rien en prog !

mood
Publicité
Posté le 11-03-2003 à 18:21:55  profilanswer
 

n°329816
darklord
You're welcome
Posté le 11-03-2003 à 18:42:36  profilanswer
 

buddy lembeck a écrit :


j'essaye de résoudre un topic [:spamafote]
je ne vais pas me contenter de poster dans blabla, faut que je participe !
mais je vous avais bien dit que je connaissais rien en prog !


 
bon c qui le propriétaire de ce multi à la con? :o


---------------
Just because you feel good does not make you right
n°329817
the real m​oins moins
Posté le 11-03-2003 à 18:44:45  profilanswer
 

DarkLord a écrit :


 
bon c qui le propriétaire de ce multi à la con? :o

tu le demandes encore? [:spamafote]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°329820
antp
Super Administrateur
Champion des excuses bidons
Posté le 11-03-2003 à 18:46:56  profilanswer
 

buddy lembeck a écrit :


j'essaye de résoudre un topic [:spamafote]
je ne vais pas me contenter de poster dans blabla, faut que je participe !
mais je vous avais bien dit que je connaissais rien en prog !


 
Si c'est pour continuer à poster n'importe quoi tu vas finir pas ne plus pouvoir poster du tout :p


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°329834
nraynaud
lol
Posté le 11-03-2003 à 19:17:19  profilanswer
 

Burps a écrit :

Salut
 
Que connaisez-vous comme algorithme de recherche de plus court chemin.
Je connais Dijkstra, qui permet de prendre le parcours le plus rapide sur un reseau de bus par exemple
 
Maintenant, toujours sur mon reseau de bus, je recherche un algo qui choisirait un trajet avec le MINIMUM de changements, (pour les handicapés par expl...) : qu'est-ce que vous connaissez ?
 
Sinon, vous connaissez d'aures algo susceptibles de m'interesser ?
Merci de votre aide


 
tu reprends le même graphe et tu fout 1 comme poids à chaque ligne, quelque soit la distance parcourue. Et tu refais un Dijkstra.
 
Si tu veux distance + nb de changements en mème temps, tu donne une distance en plus comme pénalité à chaque changement, mais t'as pas fini de te battre pour la choisir, car il n'y a pas de solution unique.
 
edit : saloperie de clavier espiguouin + ortho
 
edit2 : pourquoi dans la catégorie ADA ?¿?¿?


Message édité par nraynaud le 11-03-2003 à 19:27:38
n°329840
Osama
Posté le 11-03-2003 à 19:20:43  profilanswer
 

Burps a écrit :

Salut
 
Que connaisez-vous comme algorithme de recherche de plus court chemin.
Je connais Dijkstra, qui permet de prendre le parcours le plus rapide sur un reseau de bus par exemple
 
Maintenant, toujours sur mon reseau de bus, je recherche un algo qui choisirait un trajet avec le MINIMUM de changements, (pour les handicapés par expl...) : qu'est-ce que vous connaissez ?
 
Sinon, vous connaissez d'aures algo susceptibles de m'interesser ?
Merci de votre aide


 
Je pense que tu peux facilement réutiliser Dijkstra pour résoudre ton problème, en l'arrangeant un peu. La première idée qui me vient à l'esprit serait d'affecter, au fur et à mesure que l'algorithme progresse, un surcoût aux arcs correspondants à des changements de lignes. Ainsi celà éliminerait les parcours optimales avec beaucoup changements, le réglage qualitatif se faisant au niveau du choix des surcoûts à appliquer.
 
peu de surcoûts : on accepte les chemins optimaux, mais avec pas mal de changements
beaucoup de surcoûts : on a un nombre de changements minimal, au risque d'avoir des trajets beaucoup plus longs

n°329853
antp
Super Administrateur
Champion des excuses bidons
Posté le 11-03-2003 à 19:42:08  profilanswer
 

nraynaud a écrit :


 
edit2 : pourquoi dans la catégorie ADA ?¿?¿?


 
rhaa j'avais pas vu :o
 
 
Burps >> Y a une catégorie Algo, c'est pas pour rien hein :o


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°329856
Burps
Posté le 11-03-2003 à 19:43:19  profilanswer
 

nraynaud a écrit :


 
edit2 : pourquoi dans la catégorie ADA ?¿?¿?


 
Parceque c'est une erreur, ca devait etre dans la catégorie Algo ;)
 
Sinon, les solutions que vous me proposez me plaisent moyennement...

n°329862
nraynaud
lol
Posté le 11-03-2003 à 19:49:13  profilanswer
 

Burps a écrit :


Sinon, les solutions que vous me proposez me plaisent moyennement...


 
Si tu trouves mieux , tu m'emvoie un MP car je suis plutôt curieux.
Car rien qu'à la main avec ton plan de métro c'est la merde (prends gare du nord-Montparnasse par ex.).

n°329885
bobuse
Posté le 11-03-2003 à 20:22:17  profilanswer
 

nraynaud a écrit :


 
tu reprends le même graphe et tu fout 1 comme poids à chaque ligne, quelque soit la distance parcourue. Et tu refais un Dijkstra.
 


Tout à fait ! C'est a ce que j'ai pensé en relisant le topic


---------------
get amaroK plugin
n°1242872
Zogzog4
Posté le 10-11-2005 à 08:27:04  profilanswer
 

--------------------------------------------------------------------------------------------------
---------------------------Fin du sujet precedent  :) ----------------------------------------------
--------------------------------------------------------------------------------------------------
 
(Pardon pour les accents => clavier qwerty)
 
Salut,
 
Je profite de ce sujet deja ouvert pour poser un probleme du meme ordre:
Les sites comme Mappy utiliseraient des algorithmes de recherche base sur Dijkstra. Mais dans le cas d'une recherche a grande echelle (comme un parcours Madrid - Berlin), Dijkstra ne me parrait plus vraiment adapte, en raison de l'explosion combinatoire qui en resulte.
 
Connaissez vous les formes d'optimisations utilisees?
a) un systeme informatique TRES puissant?  :D  
b) une optimisation au niveau des graphes? Par exemple, creer un graphe de plus haut niveau dont chaque noeud representerait une zone plus ou moins large de la carte reelle... Les arcs liant les noeuds representeraient les autoroutes, ou le meilleurs vecteur de transport?  
la premiere recherche se ferait donc sur ce graphe, puis le systeme analyserait les chemins sur la carte reelle concernant le point depart et le point d'arrivee?
c) utilisaton d'une heuristique?
d) ....?
 
Des idees, des liens?
Merci  :jap:

n°1242873
0x90
Posté le 10-11-2005 à 08:31:23  profilanswer
 

L'idée d'un calcul à plusieurs niveaux me semble pas mauvaise...


---------------
Me: Django Localization, Yogo Puzzle, Chrome Grapher, C++ Signals, Brainf*ck.
n°1243748
Zogzog4
Posté le 11-11-2005 à 05:09:54  profilanswer
 

0x90 a écrit :

L'idée d'un calcul à plusieurs niveaux me semble pas mauvaise...


 
Oui, c'est ce qui me semble le plus adequat...
En se basant sur cette orientation:
a) Soit regrouper un ensemble de noeuds en un seul,
b) soit garder le meme graphe en ne considerant que les types de routes rapides (autoroutes, voies express...) pour les trajets dont les points de depart et d'arrivé sont eloignés d'une certaine distance. Ca elaguerait toutes les petites routes. On aurait donc un meme graphe dont la densité serait variable en fonction de l'éloignement des points de départ et d'arrivée. Il faudrait donc gérer de maniere optimale le probleme d'élagage des arcs, car il n'est pas le meme partout: pres des points de depart et d'arrivee, la totalite du graphe doit etre considerée.
c) ....?
 
Dans le cas a), il s'agirait de construire un graphe de plus haut niveau, et dans le cas b), d'elaguer le graph existant en fonction de la nature des arcs...
 
EDIT: Ou encore, en se basant sur la solution "heuristique" citée plus haut, lancer un Dijkstra "normal", mais en arretant le parcours a partir d'un noeud si il s'éloigne trop de la destination (selon un critere géographique) par rapport à la solution optimale... Cela permettrait de bloquer un parcours qui va dans des direction estimàes "abérantes". L'evaluation (la fonction d'arret de la recherche a partir d'un noeud) devrait etre assez souple pour permettre de petits détours qui font gagner du temps, au final.
 
Curieusement, je ne trouve pas de documentation sur cette question. Les seules optimisations concernent l'algorithme de Dijkstra proprement dit, mais le gain de compléxité en temps ne semble  pas suffisant (sauf erreur de ma part) pour résoudre le probleme à grande échelle.
 
Comme ci les solutions implementées chez Mappy, ViaMichelin ou Autoroute66 étaient des solutions "maisons" gardées secretes. Il doit pourtant éxister une "théorie" concernant ce type de problemes ^^
 
J'ai bien trouvé un rapport de stage d'une equipe des Mines, mais ca reste assez léger, car ils ne travaillent que sur un réseau de bus. Ce n'est donc pas le meme probleme, et une adaptation de Dijkstra suffit amplement.
 
Vraiment personne n'a de références/connaissances précises sur cette questions?


Message édité par Zogzog4 le 11-11-2005 à 07:22:44
n°1245757
rnoizet
Posté le 15-11-2005 à 07:11:25  profilanswer
 

Y'a l'algorithme A*, pour lequel on cherche à relier deux points appartenant à un graphe.
 
Chaque chemin est doté d'un poids défini à partir d'heuristiques (par exemple la distance restant à parcourir jusqu'à l'arrivée).
 
On part du départ, on fait la liste des points accessibles, et on calcule le poids associé à chaque arc qui nous permet d'avancer.  
 
On choisit le meilleur chemin, on supprime le point de la liste, et on ajoute à la liste les nouveaux points accessibles grâce à notre avancée.
 
On recommence jusqu'à ce que le point d'arrivée ait été trouvé avec le meilleur chemin (donc on continue à chercher un chemin même si on a atteint l'arrivée, jusqu'à ce que tous les poids de la liste des points restants soient supérieurs au poids associé au point d'arrivée qu'on a trouvé).
 
Je sais pas si c'est clair, ni si c'est ce que vous appellez l'algorithme de Dijkstra...

Message cité 1 fois
Message édité par rnoizet le 15-11-2005 à 07:14:24
n°1245941
Zogzog4
Posté le 15-11-2005 à 13:12:35  profilanswer
 

rnoizet a écrit :

Y'a l'algorithme A*...


 
Merci  :jap:  
Effectivement, l'A* offre une solution au probléme. Je le connaissais dans d'autres contextes (théorie des jeux), mais je n'avais pas fait le lien avec ce contexte ^^
 
J'ai égallement recu deux liens tres intéressants sur un autre forum, si quelqu'un en a besoin...

Citation :


C'est effectivement un sujet de recherche. J'ai récemment vu une conférence intéressante de Dorothea Wagner dont voici l'article:
 
http://i11www.ilkd.uni-karlsruhe.d [...] utf-03.pdf
 
Un autre papier trouvé par Google:
http://citeseer.ist.psu.edu/holzer04combining.html


n°1252007
darksith
Posté le 24-11-2005 à 02:11:48  profilanswer
 

Essaye le "pathfinding" chez google !

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Algo

  [Algo]Recherche du plus court chemin

 

Sujets relatifs
Recherche une commande pour windows[ASM , ALGO]Extraire des données d'une disquette
Recherche de chaine de caracteres...moteur de recherche intranet
[php] question de chemin relatifFaire une recherche sur un champ avec une certaine tolérance
[master des CSS] recherché urgent :)[C] Vous voyez une erreur d'algo dans ce programme de calcul en // ?
[ALGO]parcours total d'un tableau en 3d [update projet fini][algo avec alg'exec] j'ai besoin d'aide sur les fonctions et procédure
Plus de sujets relatifs à : [Algo]Recherche du plus court chemin


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR