Question

Mon projet de jouets pour apprendre et appliquer l'apprentissage par renforcement est:
- Un agent essaie d'atteindre un objectif Etat "en toute sécurité" et "rapidement" ....
- Mais il y a des projectiles et roquettes qui sont lancés à l'agent de la manière
. - L'agent peut déterminer la position des fusées -avec une bruit - que si elles sont « près de »
- L'agent doit alors apprendre à éviter de s'écraser dans ces fusées ..
- L'agent a -rechargable avec de temps carburant qui est consommé en mouvement l'agent
- Actions en continu : Accélération de l'avant - Tournage avec angle


J'ai besoin des conseils et des noms d'algorithmes RL qui conviennent ce cas ..
- Je pense qu'il est POMDP, mais je peux modéliser comme PEAD et simplement ignorer le bruit
? - Dans le cas POMDP, Quelle est la méthode recommandée pour évaluer la probabilité
? - Ce qui est préférable d'utiliser dans ce cas: fonctions Valeur ou Iterations Politique
? - Puis-je utiliser NN pour l'environnement de modélisation de la dynamique au lieu d'utiliser des équations explicites
? - Si oui, est-il un type spécifique / modèle de NN à recommander
? - Je pense que Les actions doivent être discrétisées, droit

Je sais que cela prendra du temps et des efforts pour apprendre un tel sujet, mais je suis impatient de ..
Vous pouvez répondre à certaines des questions si vous ne pouvez pas répondre à toutes ...
Merci

Était-ce utile?

La solution

Si ceci est votre première expérience avec le renforcement je recommande l'apprentissage à partir de quelque chose de beaucoup plus simple que cela. Vous pouvez commencer simple pour obtenir le blocage des choses et de passer ensuite à un projet plus complexe comme celui-ci. J'ai du mal avec POMDP et je travaille dans RL depuis un certain temps maintenant. Maintenant, je vais essayer de répondre à quelles questions je peux.

Je pense qu'il est POMDP, mais je peux modéliser comme PEAD et simplement ignorer le bruit?

Oui. POMDP signifie processus de décision de Markov partiellement Observable. La partie partiellement observable fait référence au fait que l'agent ne peut pas savoir l'état de parfaitement, mais peut l'estimer à partir d'observations. Dans votre cas, vous auriez l'emplacement de la fusée comme une observation qui peut avoir un peu de bruit, et sur la base des agents connaissances antérieures, vous pouvez mettre à jour la croyance de ce où les missiles sont. Cela ajoute beaucoup de complexité. Il serait beaucoup plus facile d'utiliser les emplacements de missiles comme et pas absolu de faire face à l'incertitude. Ensuite, vous auriez pas à POMDP d'utilisation.

Dans le cas POMDP, Quelle est la méthode recommandée pour évaluer la probabilité?

Je ne comprends pas votre question. Vous utilisez une certaine forme de règle de Bayes. C'est, vous avez une sorte de distribution qui est votre état de croyance (les probabilités d'être dans un état donné), ce serait votre distribution avant et basée sur l'observation que vous ajusterait cela et une distribution postérieure. Regardez dans la règle de Bayes si vous avez besoin de plus d'informations.

Quel est préférable d'utiliser dans ce cas: fonctions Valeur ou Iterations Politique

La plupart de mon expérience a été en utilisant des fonctions de valeur et les trouver relativement facile à utiliser / comprendre. Mais je ne sais pas quoi vous dire. Je pense que cela est probablement votre choix, je dois passer du temps à travailler sur le projet de faire un meilleur choix.

Puis-je utiliser NN à l'environnement dynamique modèle au lieu d'utiliser des équations explicites? Si oui, est-il un type / modèle de NN à recommander?

Je ne sais pas quoi que ce soit sur l'utilisation de NN à des environnements de modèle, désolé.

Je pense que Les actions doivent être discrétisées, droit?

Oui. Vous devez avoir une liste discrète des actions, et une liste discrète d'états. En général, l'algorithme choisira la meilleure action pour un état donné, et pour les algorithmes les plus simples (quelque chose comme QLearning) que vous venez de garder la trace d'une valeur pour chaque paire état-action donnée.

Si vous apprenez que tous ce genre de choses que je recommanderais le Sutton et Barto texte. Aussi, si vous voulez voir un exemple simple d'un algorithme de RL J'ai une classe de base très simple et un exemple en utilisant le haut github (écrit en Python). La classe abstract_rl est destiné à être étendu pour des tâches RL, mais il est très simple. simple_rl.py est un exemple d'une tâche simple (il est une grille simple avec une position étant l'objectif et il utilise QLearning que l'algorithme) en utilisant base_rl qui peut être exécuté et imprime des graphiques montrant la récompense au fil du temps. Ni sont très complexes, mais si vous êtes juste de commencer peut aider à vous donner quelques idées. J'espère que cela a aidé. Laissez-moi savoir si vous avez des questions plus ou plus spécifiques.

Autres conseils

Puis-je utiliser NN à l'environnement dynamique modèle au lieu d'utiliser des équations explicites? Si oui, est-il un type / modèle de NN à recommander?

Oui, les réseaux de neurones sont connus pour être en mesure de résoudre les tâches de prédiction. Cependant, cela dépend de comment vous définissez votre tâche: vous voulez que votre algorithme pour apprendre que pour contrôler l'environnement quand il sait qu'il est dynamique, ou voulez-vous apprendre à résoudre la tâche dans un environnement inconnu? Dans ce dernier cas est plus fréquent chez RL.

Je pense que Les actions doivent être discrétisées, droit?

Non, ils ne doivent pas être. Par exemple, des solutions Acteur-Critic travaillent pour des actions continues. J'ai aussi entendu parler de RL basée sur le processus gaussienne. Beaucoup de matériaux sur les deux solutions sont faciles à trouver par google.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top