IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Méthodes prédictives Discussion :

NN : format/interprétation des valeurs


Sujet :

Méthodes prédictives

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 20
    Points : 16
    Points
    16
    Par défaut NN : format/interprétation des valeurs
    Bonjour,

    Je suis en train de réaliser un agent artificiel contrôlant un tank dans un environnement 2D, grâce à un réseau de neurones.

    J'aimerais avoir l'avis de personnes expérimentées dans le domaine des réseaux de neurones, notamment en ce qui concerne le format des données d'entrée du réseau, et comment interpréter les valeurs en sortie.

    Pour les entrées : Est-il préférable de normaliser les valeurs ? Par exemple, pour la "santé" actuelle du tank, mieux vaut-il donner le rapport SANTE_ACTUELLE/SANTE_MAX ou bien SANTE_ACTUELLE directement ? En gros, est-ce mieux de formater toutes les entrées entre 0 et 1, plutôt que d'en avoir qui vont jusqu'à 500, tandis que d'autres peuvent varier entre -2 et 0.5 ?

    Pour les sorties : La technique que j'utilise actuellement est d'avoir défini des actions scriptées, et faire exécuter au tank une de ces actions si le neurone de sortie correspondant donne une valeur supérieure ou égale à 1.0. Est-ce une bonne technique ? Mieux vaut-il considérer en valeurs de sorties des grandeurs continues comme l'angle du chassis à atteindre, l'angle de la tourelle à atteindre, de combien de mètres avancer, etc... Plutôt que des déclencheurs d'actions scriptées ?

    Merci beaucoup pour vos réponses sur le sujet

    PS : Pour information, ces agents artificiels sont placés dans le cadre d'une optimisation des poids par essaim particulaire, en les entrainant contre un tank totalement scripté. Si quelqu'un a déjà travaillé sur un tel concept, je serais heureux d'obtenir d'éventuels conseils ^^.

  2. #2
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 860
    Points
    11 860
    Par défaut
    Je n'ai jamais bossé sur un tel projet.

    Toutefois, j'ai pas mal étudié la théorie des NN (jusqu'à écrire un article dessus : http://alp.developpez.com/tutoriels/...x-de-neurones/) et tout ce que je peux te dire c'est la chose suivante.
    Un réseau de neurones est un modèle qui permet soit d'approcher une fonction (une fonction qui déciderait de ce que doit faire ton tank, en l'occurence), soit de classifier des vecteurs (dont les composantes sont les informations que tu donnes en entrée au RdN) (au fond ces 2 "types" sont les mêmes mais pour la compréhension il est peut-être meilleur de les différencier).

    Donc soit tu te dis que tu approches une fonction de décision et lorsque cette fonction renvoie une valeur plus grande que 1, tu déclenches tel script. Soit tu te dis que tu classes des informations et au final tu vois que cela revient au-même.

    Un réseau de neurones, aussi compliqué qu'il soit, est capable d'apprendre. Toutefois, je doute que ce soit à lui de calculer l'angle de tir, la puissance & compagnie. Pour ça, des formules mathématiques suffisent.

    Donc je dirais qu'à priori, gardes la modélisation actuelle, c'est à dire qu'en fonction des valeurs, tu déclenches tel ou tel script.

    Au passage, il y a des méthodes qui sont peut-être plus adaptées à ce genre de choses. Regarde les techniques d'IA qui s'occupent de la prise de décision.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 20
    Points : 16
    Points
    16
    Par défaut
    Merci pour la réponse.

    En fait le sujet de mon projet est avant tout d'utiliser l'optimisation par essaim particulaire pour réaliser des agents intelligents. La technique la plus adaptée pour le cas des tanks est de leur donner un NN chacun, les faire se battre en duels un certain nombre de fois, et les poids synaptiques de leurs réseaux de neurones évolueront vers un optimum en terme d'efficacité. Les réseaux de neurones sont les plus adaptés pour cette méthode.

    Je vais garder mon idée de déclencheurs de scripts, mais je pense que la deuxième solution pour les sorties demande simplement plus (ou peut-être beaucoup plus) d'entrainement.

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 20
    Points : 16
    Points
    16
    Par défaut
    Cependant j'aimerais savoir s'il est vraiment indispensable que les valeurs en entrée du réseau soient normalisées :

    Pour les entrées : Est-il préférable de normaliser les valeurs ? Par exemple, pour la "santé" actuelle du tank, mieux vaut-il donner le rapport SANTE_ACTUELLE/SANTE_MAX ou bien SANTE_ACTUELLE directement ? En gros, est-ce mieux de formater toutes les entrées entre 0 et 1, plutôt que d'en avoir qui vont jusqu'à 500, tandis que d'autres peuvent varier entre -2 et 0.5 ?
    Car dans le cas d'une distance à un objet, le fait de normaliser n'est peut-être pas super...

    Merci

Discussions similaires

  1. DataTable Format des valeurs dans les cellules
    Par Neodream dans le forum C#
    Réponses: 3
    Dernier message: 04/03/2010, 11h01
  2. Interprétation des valeurs NULL et '' (double quotes)
    Par thatsallfunk dans le forum Administration
    Réponses: 2
    Dernier message: 09/01/2009, 15h21
  3. Controler le format d'affichage des valeurs numeriques dans un statictext
    Par soforan dans le forum Interfaces Graphiques
    Réponses: 4
    Dernier message: 18/06/2008, 20h57
  4. DataGridView et format des valeurs dans les cellules
    Par saultapt dans le forum Windows Forms
    Réponses: 5
    Dernier message: 17/06/2008, 16h55
  5. souci avec le format des valeurs numériques.
    Par LESOLEIL dans le forum Langage
    Réponses: 9
    Dernier message: 05/04/2006, 16h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo