Labyrinthe StringGrid

doubledj Messages postés 3 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 26 janvier 2009 - 16 sept. 2005 à 22:42
PoulpHunter Messages postés 51 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 8 avril 2009 - 23 sept. 2005 à 00:48
Voici le travail que je doit faire:

Objectifs


-Mettre en œuvre des capacités d’analyse et de conception de programme;


-Gérer une pile en mémoire dynamique;


-Consolider des techniques de gestion de composants visuels;


Le contexte :un problème de labyrinthe

L’expérience du rat dans un labyrinthe est un classique de l’étude du comportement animal.Elle consiste à placer un rat dans une grande boîte sans dessus et divisée en cases.Des cloisons limitent les déplacements d’une case à l’autre dans la plupart des directions.Des observateurs étudient le comportement du rat qui tente de trouver un chemin qui le conduira de la case d’entrée vers la case de sortie.Il y a une seule sortie où le rat peut déguster un fromage comme récompense de son effort.


Une stratégie assez connue consiste à avancer jusqu'à un cul-de-sac puis à revenir sur ses pas jusqu'à une nouvelle direction à explorer.L’idée est de répéter l’expérience jusqu’à ce que le rat fasse sans erreur le parcours de l’entrée vers la sortie.On mesure “l’intelligence” du rat au nombre d’essais nécessaires pour effectuer le parcours sans erreur.


Dans l’environnement Delphi, implantez un programme qui permettra de reproduire l’expérience du rat dans un labyrinthe.Ce programme initialisera un tableau représentant le labyrinthe, puis essaiera de trouver la sortie par un jeu d’essais et d’erreurs, c'est d'avancées et de reculs.


Contraintes d’opération du programme

-Le labyrinthe sera représenté comme un damier à cases blanches accessibles (0) et à cases noires interdites (1);les cases d’entrée et de sortie seront clairement identifiées.


-Aucune donnée n’est requise et l’on ajustera la vitesse de progression du “rat” pour apprécier son évolution dans le labyrinthe.


-Les cases atteintes seront marquées en vert.Les cases atteintes mais parcourues à rebours (cases sur des trajets sans issue) seront marquées en jaune.


-On devra prévoir le cas d’un labyrinthe avec une sortie inaccessible.



Le labyrinthe

Il s’agit d’un tableau à deux dimensions (11, 15) à initialiser comme celui ci-contre :


,
entrée010001100011011

100011011100101

011000011110011

010111101101100

110100101110011

001101110100101

011110011111111

001101101111101

110001101100000

001111100011110

010011111011110sortie

J'aimerais avoir de l'aide, des conseils sur la structure, si vous avez des idées.
Vous pouvez-vous amuser a le faire héhé
Merci!!

1 réponse

PoulpHunter Messages postés 51 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 8 avril 2009
23 sept. 2005 à 00:48
Tu t'es déjà intéressé a l'IA ? les réseaux neuronaux, sa pourrait être cool de faire sa !!!
Jvais un peu regarder mais je garanti rien...
Perso. jme suis mis a GLScene ( c'est pour programmer trés simplement des graphics en OpenGL ) sa donnerais bien de le faire en 3D aussi ...
Mais tu as combien de temps pour le faire en fait
Et qu'entend tu par "Gérer une pile en mémoire dynamique"
Il faut programmer en ASM ou quoi
0
Rejoignez-nous