Besoin d'algorythme !!

inkydjango Messages postés 45 Date d'inscription mercredi 18 décembre 2002 Statut Membre Dernière intervention 3 décembre 2009 - 27 août 2009 à 20:00
jdmcreator Messages postés 647 Date d'inscription samedi 30 décembre 2000 Statut Membre Dernière intervention 20 juillet 2012 - 31 août 2009 à 03:41
Salut a tous !!

N'hésitant à faire appel à la grande richesse des codeurs de ce site, j'ai un nouveau probleme

En effet, j'ai un extrait de code ci dessous, qui a besoin d'une grande amelioration. Le but de celui-ci est pour un mmorg en navigateur. C'est un jeu dans lequel on se deplace dans la galaxie a travers des vortex qui teleporte votre flotte (EmpireUniverse2 pour les curieux). Pour choisir le chemin le plus court nous avons besoin d'un calculateur de trajectoire :

Le code en vigueur pour l'ensemble des 20 000 joueurs en ligne est celui ci:
Il tourne sur une matrice de 1000*1000 cases


function Calcul_Chemin($Depart,$Arrive,&$Distance,$Saut,$tabvortex) {
$Chemin = array();
for($i=$Saut;$i< sizeof($tabvortex);$i++) {
$D1 = Calcul_Distance($Depart,$tabvortex[$i]["IN"]);
$D2 = Calcul_Distance($Arrive,$tabvortex[$i]["OUT"]);
if($D1 + $D2 < $Distance) {
if(!isset($Cheminold)) $Cheminold = $Chemin;
$Chemin = $Cheminold;
$Chemin[sizeof($Chemin)] = $i;
$CheminResult = Calcul_Chemin($tabvortex[$i]["OUT"],$Arrive,$D2,i+1,$tabvortex) ;
$Chemin = array_merge($Chemin,$CheminResult);
$Distance = $D1 + $D2;
}
}
return $Chemin;
}


Il fonctionne mais ne trouve pas le chemin le plus court, il prends le premier chemin plus court que la ligne droite qu'il trouve, ce qui pose probleme.

Quelqu'un aurait il l'experience pour reussir ce challenge.

Notre cher codeur officiel du site php demande de l'aide^^

Lien de telechargement du site complet:
http://app216.free.fr/eu2/dist/

merci d'avance

1 réponse

jdmcreator Messages postés 647 Date d'inscription samedi 30 décembre 2000 Statut Membre Dernière intervention 20 juillet 2012 7
31 août 2009 à 03:41
Bonjour,

Regarde ici : RECHERCHE DU PLUS COURT CHEMIN - ALGO DE DIJKSTRA - EN JAVASCRIPT

Cordialement

JDMCreator
--------
Participez au nouveau projet : la wiki sur le javascript !
fr.jsinfo.wikia.com
0
Rejoignez-nous