Tous les algorithmes reinforcement learning que j'ai lus sont généralement appliqués à un seul agent ayant un nombre d'actions défini. Existe-t-il des algorithmes d'apprentissage par renforcement pour prendre une décision en tenant compte d'un nombre variable d'actions? Par exemple, comment appliqueriez-vous un algorithme RL dans un jeu informatique où un joueur contrôle N soldats, et chaque soldat a un nombre aléatoire d'actions en fonction de son état? Vous ne pouvez pas formuler un nombre fixe d'actions pour un décideur global (c'est-à-dire "le général") car les actions disponibles changent continuellement à mesure que les soldats sont créés et tués. Et vous ne pouvez pas formuler un nombre fixe d'actions au niveau du soldat, puisque les actions du soldat sont conditionnelles en fonction de son environnement immédiat. Si un soldat ne voit aucun adversaire, alors il peut seulement être capable de marcher, alors que s'il voit 10 adversaires, alors il a 10 nouvelles actions possibles, attaquant 1 des 10 adversaires.Apprentissage par renforcement avec des actions variables
Répondre
Ce que vous décrivez n'a rien d'inhabituel. L'apprentissage par renforcement est un moyen de trouver la fonction de valeur d'un Markov Decision Process. Dans un MDP, chaque état a son propre ensemble d'actions. Pour procéder à l'application d'apprentissage par renforcement, vous devez définir clairement les états, les actions et les récompenses dans votre problème.
Si vous avez un nombre d'actions disponibles ou non pour chaque soldat selon certaines conditions, vous pouvez toujours modéliser cette action en sélectionnant un ensemble d'actions défini. Par exemple:
- Créer une « valeur d'utilité » pour chacun l'ensemble des actions pour chaque soldat
- Choisissez l'action d'une valeur plus élevée, sans tenir compte des actions qui ne sont pas disponibles à un moment donné
Si vous avez plusieurs cibles possibles, le même principe s'applique, sauf que vous modélisez votre fonction d'utilité pour prendre la désignation de cible comme paramètre supplémentaire et exécutez la fonction d'évaluation plusieurs fois (une pour chaque cible). Vous choisissez la cible qui a le plus grand "utilitaire d'attaque".
- 1. apprentissage par renforcement des réseaux de neurones
- 2. Apprentissage par renforcement et POMDP
- 3. Optimisation multi-critères avec apprentissage par renforcement
- 4. Apprentissage par renforcement - Optimisation des poids attribués
- 5. Apprentissage de renforcement Projets débutants
- 6. Renforcement Boostplateforme avec SCons
- 7. Paramètres par défaut des actions avec Django
- 8. Zend passant des variables entre les actions?
- 9. Méthodes d'apprentissage par renforcement qui mappent de continu à continu
- 10. Renforcement du terme Lucene avec des barres solaires
- 11. Exigences de renforcement des mots de passe avec django.contrib.auth.views.password_change
- 12. Génération de code avec apprentissage automatique
- 13. Yii :: get actions de contrôleur spécifiées par des actions()
- 14. Apprentissage ajax avec MVC3
- 15. Apprentissage des noms de spammeurs
- 16. conjugueront avec des actions IO
- 17. Apprentissage de l'API Introspection (utilisée par FxCop)
- 18. apprentissage Erlang
- 19. Web routage api - actions par défaut avec des actions personnalisées mis en correspondance deux fois
- 20. Apprentissage de l'analyse avec C++
- 21. Apprentissage Cappuccino
- 22. Apprentissage SDL en C
- 23. Établir des liens avec des actions personnalisées
- 24. Type de variables après les actions mathématiques
- 25. Introduction C++: auto-apprentissage
- 26. apprentissage nodeunit
- 27. Looping par des variables doubles
- 28. l'efficacité du renforcement contrainte solveurs SMT
- 29. sql d'auto-apprentissage, regroupement des résultats erreur
- 30. Apprentissage Unity 3D avec éclipses pour débutant
Comme je l'ai dit, les soldats ont aussi un nombre variable d'actions. Que voulez-vous dire en faisant de la cible de l'attaque un paramètre? – Cerin
Je veux dire: faites en sorte que l'algorithme RL prenne des informations sur la cible ou l'action spécifique que vous considérez comme une entrée supplémentaire. Vous pouvez ensuite l'appliquer à plusieurs cibles et/ou actions si nécessaire. Vous venez de réexécuter l'algorithme avec différentes cibles et/ou informations d'action pour chacun de ceux que vous envisagez. – mikera