Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1571 connectés 

  FORUM HardWare.fr
  Programmation
  C

  pb algorithme génétique

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

pb algorithme génétique

n°2072289
aliene28
Posté le 27-04-2011 à 23:38:14  profilanswer
 

Bonjour,  
je doit bientôt rendre un projet qui est de faire un jeu d'othello avec une intelligence artificiel.
pour cela on utilise une fonction alphabeta (amélioration de minmax) avec une fonction d'évaluation et un algorithme génétique pour optimiser les coefficients de cette fonction d'évaluation
seulement le problème c'est que l'algorithme génétique génère 10 générations puis fait une erreur de segmentation (normalement il devrais en générer 50). en tout cas il ne m'en fait que 10 sous ubuntu, sous windows il n'en fait même pas une.
je suppose que c'est parce qu'on a pas assez libéré la mémoire alloué pourtant on l'a libéré chaque fois que c'était possible sauf à un endroit ou ça me fait une erreur de segmentation si je le rajoute pourtant pr moi c'est là qu'il doit être. (c'est le free qui est en commentaire à la fin d'alphabeta)
 
voila les lien pour accéder au fichiers de codes :
pour avoir tous les fichiers et pouvoir essayer de compiler :
https://rapidshare.com/files/459497247/othello_IA.zip
 
juste la fonction Alphabeta où je n'arrive pas à rajouter le free sans que ça plante :
https://rapidshare.com/files/459497291/alphabeta.c
 
merci d'avance pour votre aide.

mood
Publicité
Posté le 27-04-2011 à 23:38:14  profilanswer
 

n°2072319
shaoyin
Posté le 28-04-2011 à 09:46:39  profilanswer
 

Est-ce que tu as essayé de lancer ton programme avec Valgrind ?  
Pour les problèmes d'allocation / libération de mémoire, cet outil est top !


Message édité par shaoyin le 28-04-2011 à 09:55:28
n°2072330
GrosBocdel
Posté le 28-04-2011 à 10:26:54  profilanswer
 

struct coup{
 int position;
 int couleur;
 int retournement[DIRECTIONS];
};
typedef struct coup * coup;
 
 
 
J'ai mal aux cheveux.

n°2072400
gelatine_v​elue
Posté le 28-04-2011 à 17:30:52  profilanswer
 

GrosBocdel a écrit :

struct coup{
 int position;
 int couleur;
 int retournement[DIRECTIONS];
};
typedef struct coup * coup;
 
 
 
J'ai mal aux cheveux.


 
+1

n°2072424
tpierron
Posté le 28-04-2011 à 19:09:42  profilanswer
 

Pour avoir essayé de débugger ton code, tout ce que j'ai pu voir c'est que tu accèdes à de la mémoire non initialisée, mémoire qui sera utilisée comme indice pour un tableau => seg fault. Valgrind permet effectivement de se rendre compte de ce genre de chose très rapidement.
 

GrosBocdel a écrit :

struct coup{
 int position;
 int couleur;
 int retournement[DIRECTIONS];
};
typedef struct coup * coup;
 
J'ai mal aux cheveux.


 :??: C'est quoi le problème ?

n°2072428
GrosBocdel
Posté le 28-04-2011 à 19:43:14  profilanswer
 

tpierron a écrit :

Pour avoir essayé de débugger ton code, tout ce que j'ai pu voir c'est que tu accèdes à de la mémoire non initialisée, mémoire qui sera utilisée comme indice pour un tableau => seg fault. Valgrind permet effectivement de se rendre compte de ce genre de chose très rapidement.
 


 

tpierron a écrit :


 :??: C'est quoi le problème ?


 
typedef struct coup * coup;  
 
coup est un pointeur sur coup;
Ca me fait mal.
 
après on se retrouve avec des :
coup meilleur_coup=(coup)malloc(sizeof(struct coup));
 
bon bah coucou alors!
 
 
edit: en tout cas, g++ a la gentillesse de refuser de compiler ça.


Message édité par GrosBocdel le 28-04-2011 à 19:53:23
n°2072492
aliene28
Posté le 29-04-2011 à 00:17:26  profilanswer
 

c'est vrai que c'était pas malin de le faire comme ça. Je pensais pouvoir m'en sortir avec des free(coups) mais en fait non.
 
du coup je me suis résolue à changer la structure et à mettre coup en structure et non en pointeur et effectivement ça marche très bien maintenant.
 
merci pour vos réponses

n°2072493
aliene28
Posté le 29-04-2011 à 00:19:28  profilanswer
 

enfin il a fallu qd même changer qques fonctions pour que ça fonctionne pour ceux qui voudrait essayer.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  pb algorithme génétique

 

Sujets relatifs
demande l'aide à comprendre l'algorithme MalgrangeSOS : résolution problème d'algorithme
supprimer une valeur d'un tableau (algorithme)probleme de tri en c. efficacité de l'algorithme..
Algorithme de mappingAlgorithme de reverb
Algorithme d'extraction de courbe[Recherche] Algorithme de cryptage asymétrique
Traduire une fonction aléatoire de l'algorithme en langage C ?!Algorithme de recommandation
Plus de sujets relatifs à : pb algorithme génétique


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR