Bonjour

Je souhaite coder un algorithme d'optimisation par colonie de fourmis, le plus simple possible, mais surtout, plutot que de recopier betement des sources, bien le comprendre.
J'ai donc chercher dans google, et trouvé sur http://web.archive.org/web/200208121...gorithmes.html
un début d'algorithme, que voici :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
    max_phéromone = 0;
    Pour Ville_courante allant de 1 à N
      Si Ville_courante pas encore visitée
        Si Phéromone[Ville_précédente, Ville_courante] > max_phéromone
          Ville_suivante = Ville_courante
          max_phéromone = Phéromone[Ville_précédente, Ville_courante]
      FinSi
    FinPour
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part
      Pheromone[i, j] = (1 - alpha) Pheromone[i, j] + alpha * K
Néanmoins je me pose toujours quelques petites questions:
- Lors de la première itération, les pheromones ne seront présentes nulle part. Comment les fourmis choisiront elles leurs villes de destination ? Au hasard ? Ou en fonction de la distance de cette ville par rapport à celle de départ ?
- Une fois que les fourmis ont visité chacune toutes les villes, que se passe t'il ? Le résultat est il trouvé, ou faut il réinitialiser les fourmis encore et encore ?
- Comment le plus court chemin est trouvé ? S'agit t'il des x chemins comportant le plus de phéromones ? Ou alors, au bout d'un certains nombre d'itérations, le chemin que les fourmis suivent ( en supposant qu'elles stockent en mémoire l'ordre des villes qu'elles visitent )

Merci
Floopy