Problème avec le tri du couvain! - Algo - Programmation
Marsh Posté le 01-12-2007 à 20:36:12
Faudra faire une section matlab/octave/scilab un jour...
Pour que l'on puisse t'aider, il faudrait que tu nous donnes ton script octave de départ, et plus de précisions sur le tri en question. (à priori, ca ressemble plus à un probleme de classification, qu'a un probleme de tri pur et dur).
Marsh Posté le 01-12-2007 à 20:37:46
Je déplace ton sujet dans algorithme, je pense que tu auras plus de réponse vu que ton sujet n'est pas en C.
Pour ton sujet, il faut simplement gérer des états, par exemple "1" fourmi, "2" objet, "3" fourmi + objet.
En gros, l'algo doit se présenter à peu près comme ça :
TANT QUE des objets sont sur le tableau (en gros, tant que des cases >=2 existent)
POUR CHAQUE fourmi PARMI toutes les fourmis du tableau
SI fourmi sans objet
ALORS
Marquer l'objet le plus proche comme destination
SINON
Le couvain est la prochaine destination.
FIN SI
Calculer le chemin vers la prochaine destination.
Avancer la fourmi d'une case sur ce chemin.
SI la case contient un objet
ALORS
La "fourmi vide" devient une "fourmi avec objet"
SINON SI la case est le couvain
ALORS
La "fourmi avec objet" devient une "fourmi vide"
FIN SI
FIN POUR
FIN TANT QUE
Evidemment, la partie ardue, c'est trouver l'objet le plus proche et calculer un chemin vers une destination.
edit : plein de réponses sur google : http://www.google.fr/search?q=tri+du+couvain
edit 2 : par contre j'ai l'impression que le déplacement des fourmis est aléatoire sur les sites que je zieute... ce qui simplifie la tache.
Marsh Posté le 02-12-2007 à 11:37:56
Elmoricq a écrit : edit 2 : par contre j'ai l'impression que le déplacement des fourmis est aléatoire sur les sites que je zieute... ce qui simplifie la tache. |
Pas seulement sur les sites que tu zieutes, mais aussi dans le sujet qu'elle a decrit a debut!
D'ailleurs j'ai l'impression que l'algorithme n'a pas vraiment de fin au vu des exemples que l'on voit sur internet et que prendre/deposer un oeuf depend de statistiques.
Pour le deplacement des fourmis aleatoires, en tirant un nombe 1<=n<=4 ou le nombre tiré correspond a un déplacement NORD, EST, SUD, OUEST.
Marsh Posté le 02-12-2007 à 12:02:37
breizhbugs a écrit : |
Ah oui tiens.
Marsh Posté le 02-12-2007 à 16:13:45
Merci beaucoup à tous de vous être intérressés à mon problème! Vous venez de me retirer une épine du pied! Je pense que grâce aux pistes que vous m'avez donné je pourrai me débrouiller demain!
Merci encore à tous!
Salut!
Marsh Posté le 01-12-2007 à 14:47:46
Bonjour à tous!
Je suis étudiante en biologie et j'ai un petit problème avec un TP de programmation! Comme je ne voyais pas comment me dépatouiller avec le sujet, j'ai fait des recherches sur le net qui n'ont pas donné grand chose et je ne connais personne qui pourrait m'aider. Dans ma classe ils se refilent tous le même algorithme, seulement recopier bêtement ne m'intéresse pas! Je sollicite donc votre aide pour éclaircir quelques points du TP! J'ai bien lu vos règles et je ne demande absolument pas que vous fassiez le travail à ma place, je suis seulement coincée et j'ai besoin de l'aide de quelques experts.
Bon si vous avez eu le courage de lire ma vie jusque là je vais attaquer avec mon sujet! lol
Le TP est basé sur des fourmis qui doivent ranger le couvain (la fourmilière). On nous demande d'écrire la programmation de la simulation du tri. J'ai déjà une piste pour l'algorithme principal, mais j'ai un problème avec le déplacement aléatoire de mes fourmis Je sais postitionner mes fourmis sur un tableau à 2 dimensions, mais je ne sais pas les déplacer et encore moins leur faire "attraper" un objet ou pas (elles doivent ranger 2 types d'objets différents).
Si ça peut vous éclairer on programme sur Octave...
Je suis désolée je ne sais pas si j'ai été claire ou pas, mais ça fait 2 semaines que je désespère d'avoir le déclic et comme le TP est lundi c'est en dernier recours que je poste ici. N'hésitez pas à m'envoyer un MP ou un mail si vous ne voulez pas me demander de précisions sur le forum.
Merci beaucoup d'avance et bonne journée!