begin process at 2012 02 10 09:00:30
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Delphi

 > 

Archives

 > 

J'AI BESOIN D'AIDE !!!! :O

 > 

TPE I.A


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

TPE I.A

vendredi 12 novembre 2004 à 21:58:30 | TPE I.A

Eb0La

Bonjour à tous,

J'ai plusieurs questions et problèmes en Delphi. Apres quelques recherches peu fructueuses sur le net, j'ai décidé de venir vous soumettre mes interrogations.

Pour replacer le contexte: Je suis en Terminale S et les TPE (Soutenance, exposé) sont au programme. J'avais, depuis longtemps, envie d'étudié l'Intelligence Artificielle. Le TPE pouvait me permettre d'allié l'utile a l'agréable, puisque un des thèmes directeur est: « La robotique et la cybernétique ».

L'épreuve de TPE (qui conte pour le BAC), doit être agrémenté de "réalisations, productions". J'ai donc décidé de programmer (en Delphi) des "IA".

J'ai une idée principale (pas encore fixée, toute modifications sont possible):

-La réalisation d'un petit personnage (2D) réagirais face a sont environnement (éviter les murs, <les autres fonctions restent encore a définir>, ...).
J'aimerais que les caractéristiques du personnage (sa mémoire, son code génétique) soit contenu dans un fichier (.ini, .txt, ...) a part. Il en serai de même pour son environnement (maps). Enfin, il faudrait charger ces deux donnée dans un exécutable et lancer une simulation.
Le fait de mettre a part les caracterisitiques des personnages me permettra de les modifier facilement et de gérer plusieurs personnages avec des caractersistiques différentes.

J'ai déjà commencé une petite chose, mais tout est contenu dans un seul .exe. Si vous souhaitez jeter un oeil, vous pouvez télécharger les sources ici: http://skate-er.chez.tiscali.fr/IAP.rar

-Je viens donc vous demander votre avis a propos de mon idée de réalisation (comment pourrai-je réaliser mon personnage, fonctions possibles).
-Je suis preneur de toutes idées de réalisations en rapport avec l'I.A.
-Si vous voyez des modification a apporter a mon (tout) début de source, je suis très intéressé.

pour finir, j'ai quelques petites questions:

-Es ce que la fonction "Random" de Delphi est réellement aléatoire ? (j'ai été étonné par certains résultats la de la simulation de mon personnage ... essayez : pas de 1, vitesse de 4, le résultat est étrange).

-Comment faire en sorte qu'une phrase contenu dans une variable soit "découpé" et que l'on puisse reconnaître chaque mots de la phrase (reconnaissance des mots dans une phrase).

Exemple: J'entre une phrase dans une variable puis le prog me dit: Il y a tel mot, puis tel autre dans la phrase ...

Voila, je vous remercie d'avance

PS: Pour me contacter personnellement: Eb0La.controle-technologie@wb.st
vendredi 12 novembre 2004 à 22:54:38 | Re : TPE I.A

vincentstryckmans

Salut Ebola,

Tout d'abord je te souhaite bonne m... . Je n'y connais rien en AI, sauf que c'est pas un jouet de jardin d'enfant.

Pour tes questions, voici :

La fonction Random de Delphi, n'est pas tout à fait aléatoire.
Elle se base sur la date et l'heure du système. de là, un alogritme génère des nombres aléatoires jusqu'au moment où le nième nombre peut égaler le premier.
Pour éviter cela, il est nécessaire d'effecture la fonction randomize (si j'ai bonne mémoire, ma doc est au bureau et je surfe depuis la maison). Cette fonction va recréer un nouvel algoritme de génération de nombre aléatoire.

Bref pour être complètement aléatoire, chaque nombre généré par random devrait être précédé de randomize.


Pour ta recherche de mot dans une phrase, les diverses fonctions ANSI pour les textes peuvent t'aider.

Pour ma part, j'utilise un découpage de chaîne de caractères en insérant un symbôle que je ne sais n'avoir jamais besoin. Je m'explique :

L'appli que j'écris permet d'analyser les incidents survenus au sein du réseau ferré de Belgique.
Les diverses entités qui pourraient être impliquées dans l'incident sont codifiées par un nombre et un certain pourcentage d'implication puevent leur être attribué. Je codifie le tout comme suit :

\4/50\9/10\8/40

L'entité 4 est impliquée à 50 %, la 9 à 10% et la 8 à 40%.

Dans le code, je lis pas à pas la positions des \ , je découpe la chaîne en 4/50 9/10 8/40 et recherche ensuite la position des / pour différencié le numéro de l'entité et le %.

C'est pratique à la condition que ton caractère séparateur n'ait pas uhne signification dans ton texte. Dans ce cas, tu peux dédouble le séparateur s'il doit être considéré comme texte et non pas comme séparateur. Un peut comme '' dans une chaîne de caractère pour diere au compilateur qu'il s'agit du symbôle ' et non pas du terminateur de chaîne.

Si j'ai pas été clair, dis le.

@ +

Et comme disait ma grand-mère : il y a toujours du soleil derrière les nuages.

Vincent Stryckmans
samedi 13 novembre 2004 à 11:12:06 | Re : TPE I.A

Eb0La

Merci pour ta réponse,

Je vais donc me pencher sur la fonction "Randomize". Sinon, pour mon "découpage" de phrase, il faudrait qu'il soit fait selon les espaces (Es ce possible ? Comment puis-je realiser cela ?).

Au niveau de mon TPE, l'I.A est trop vaste et trop compliqué pour être étudié en détails. Je souhaite faire une soutenance ciblé sur un point particulier de l'I.A. Rien ne m'empeche de faire quelque chose de simple.

@+


PS: je n'est pas bien compris cela:
"Tout d'abord je te souhaite bonne m... . Je n'y connais rien en AI, sauf que c'est pas un jouet de jardin d'enfant."

PS (bis): je ne met pas encore "reponse acceptée !" pour ammener d'autres visiteurs à exposer leurs points de vue, idées de réalisation,etc ...
samedi 13 novembre 2004 à 11:57:30 | Random : Attention.

florenth

Membre Club
Oui, random utilise l'heure systeme pour generer des nombres aléatoires.
Mais il est bien mentionné que randomize ne doit être appele qu'une fois dans tout le programme. C'est dit dans l'aide de delphi.

Mais fait un test avec RandomRange(0,1000) et compares tous ces nombres, je peut te dire que rares sont ceux qui sont égaux ... sauf si tu génere plus de 1000 nombres ...

Florent

Si tu ne te plantes pas ......
tu ne poussera jamais
samedi 13 novembre 2004 à 12:37:19 | Re : TPE I.A

japee

Membre Club Administrateur CodeS-SourceS
Exemple concret de l'utilisation de Randomize.

Simulation du résultat d'un jet de dé :

var Num: Integer;
begin
Randomize;
Num := Random(6) + 1; // résultat aléatoire de 1 à 6 compris
Label1.Caption := IntToStr(Num);
end;


J'avais fait une étude statistique des résultats obtenus. C'était , à mon avis largement suffisamment aléatoire, et tout à fait satisfaisant pour mon petit jeu de Yam ;)

Bon courage.

N'oubliez pas de valider "Réponse acceptée" si ça vous convient, de toute manière vous ne pouvez pas valider autre chose !
mardi 16 novembre 2004 à 16:10:56 | Re : TPE I.A

divadav

Membre Club
Salut !!

Sympa ton petit développement !!


Il y a bien quelques fonctions assez simples à coder, qui permettraient d'étudier une IA...

Il suffirait de construire une sorte de labyrinthe qui constituerait l'univers du perso. [ce que tu veux faire, je crois]

Au lieu de faire bouger ton personnage de manière aléatoire, le code génétique de ton perso pourrait être composé de l'ordre de base dans lequel les mouvements sont fait + du pourcentage de déplacements aléatoires du perso.

Ainsi, tu pourra créer facilement plusieurs perso et étudier leur comportement dans le labyrinthe (arrivent-ils à sortir ? en combien de mouvement ? etc...)

Ce n'est qu'un exemple de codage basique. La (très) grosse difficultée d'une IA est sa capacité d'apprentissage... Et là tout de suite comme ça, je sais pas trop quoi lui apprendre, et comment...

D'autant plus que l'apprentissage doit-être assez rapide si tu veux pouvoir faire une démo pdt tes TPE...

En tout cas, le projet est intéressant...


Keep Cool & Be Wild
Divad
Pour me contacter : forum@laumaille.net


Cette discussion est classée dans : delphi, contenu, personnage, phrase, tpe


Répondre à ce message

Sujets en rapport avec ce message

clic sur un mot, une phrase en delphi [ par papillotte ] Papillotte j'aimerais savoir s'il est possible de recuperer (selectionner) le mot lors d'un clic sur ce mot , et lo le maitrise des fichier sous delphi [ par kaderkimo ] salut a tous mon problem est :    j'ai plusieurs fichier text qui contien des mots.  et j'est une phrase a l'entrer chaque mot  de cette phrase appa Envoyer le contenu d'un TEdit dans un TStringGrid [ par saravana ] slt a tous je suis nouveau en delphi et jai un ptit problèm je cherche le code pour que le contenu dun edit soit envoyé dans un tstringgrid sachant qu delphi et msaccess database [ par azeklousaid ] Bonjour tout le monde et merci d avance pour votre aide. Comment utiliser les objets de delphi pour afficher le contenu des tables/view de ms access d equivalent PrintArea pour delphi [ par pratrick ] Messieurs Bonjour j'ai une petite question qui est toute bête je n'arrive pas à faire une zone d'impression sur excel j'ai tente sans succès [code=pa TDrawGrid lire le contenu d'une cellule [ par cleecky ] Bonjour à tous ! J'espère trouver parmi vous un connaisseur du TDrawGrid... En effet, il semblerait que ce composant n'est pas trop utilisé ou en tout InstallShield Express pour Delphi 5 [ par VALEYRE39 ] Bonjour, Depuis de nombreuses années j'utilise la version livrée avec Delphi 5 Professionnel d'Installshield Express pour diffuser les petites applica Base de données Paradox 6 sous Windows 7 [ par hhiteprat ] J'utilise Delphi 6 et j'ai migré sur Windows 7. Je n'ai pas de problème de compatibilité avec Delphi en lui même mais avec le moteur de bases de donné utiliser codec [ par oregon ] Bonjour a tous, Je poste ce petit message pour posez une question au sujet de l'usage des codec en delphi. Je n'est trouvé aucune information traitant help me plz for journal d'accée des utilisateurs de mon proge delphi [ par hassous ] salut tous le monde voila j a'ai creer un projet delphi avec des tables informix et sql server 2005 + j ai fais 2 table sous sql sever (journal et uti


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,671 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales