..no::Blog

Pensées, Poèmes, Libre, Informatique

29 juin 2006

Ah mais mon bon monsieur, la glace ça fond !

Bon, dans mon précédent billet je vous livrais un génial tarball plein de jolis petits fichiers ruby tout mignons sans expliquer comment ça s'utilise ni même à quoi ça sert.

Alors imaginez un instant que vous êtes un joli marchand de glace en pleine campagne et en plein été. Dans le coin ou vous vous trouvez il y a 60 villages et vous voulez tous les visiter pour vendre vos glaces. Ah mais mon bon monsieur, la glace ça fond ! Vous ne pouvez donc pas vous permettre de prendre n'importe quel chemin, il faut que vous visitiez les 60 villages au plus vite. Or, et c'est là que nôtre pauvre glacier bute, il y a factorielle de 60, c'est à dire à peu près 10 puissance 82 chemins possibles ! Heureusement grâce au Wimax et à vôtre ordinateur portable, vous vous connectez sur cette page, et vous êtes sauvés !

En effet, ce super algorithme va vous permettre de trouver un des meilleurs chemins possibles pour visiter toutes les villes. Il vous suffira d'écrire un super fichier de configuration dans lequel chaque ligne représente une ville et est de la forme «NomDeLaVille Abcisse Ordonnée». Dans le tarball vous trouverez un fichier d'example nommé villes.txt. Une fois écrit ce fichier texte et enregistré sous un joli petit nom, pour sauver vos glaces il vous suffira de faire, dans le fichier extrait du tarball : $ ruby algogen.rb JoliPetitNomDeVotreFichier, de laisser tourner un moment et d'appuyer sur Control+C (ou d'envoyer un SIGTERM au processus) pour que les résultats s'affichent avec joie et entrain !

Si vous n'avez pas de glaces à vendre et vous voulez faire un simple test, faire simplement $ruby algogen.rb 10 fera travailler le script sur dix villes aléatoires.


Et pis une petite roadmap pour la route :

  • Éliminer les solutions redondantes
  • Introduire des mutations pour éviter la convergence
  • utiliser optparse pour parser la ligne de commande
  • Utiliser YAML pour le fichier de configuration ?
  • Rendre l'algorithme plus générique


Posté par Phlogistique à 14:38 - Informatique - Commentaires [0] - Rétroliens [0] - Permalien [#]

Commentaires

Poster un commentaire







Rétroliens

URL pour faire un rétrolien vers ce message :
http://www.canalblog.com/cf/fe/tb/?bid=104526&pid=2198964

Liens vers des weblogs qui référencent ce message :

 

La photo de mur est de flikr et sous licence Creative Commons 'by'