Vous voulez mettre en place un apprentissage par renforcement de connexion de quatre agents

StackOverflow https://stackoverflow.com/questions/8801136

  •  25-10-2019
  •  | 
  •  

Question

Je veux mettre en oeuvre un agent de connexion d'apprentissage par renforcement quatre. Je ne suis pas sûr comment le faire et comment il devrait ressembler. Je connais bien les aspects théoriques de l'apprentissage de renforcement, mais ne sais pas comment ils devraient être mis en œuvre.

Comment faut-il faire? Dois-je utiliser TD (lambda) ou Q-apprentissage, et comment les arbres minmax venir à cela? Comment mon travail de fonctions Q et V (qualité de l'action et la valeur de l'Etat). Comment puis-je marquer ces choses? Quelle est ma politique de base que j'améliorer, et quel est mon modèle? Une autre chose est de savoir comment dois-je enregistrer les états ou statesXactions (selon l'algorithme d'apprentissage). Dois-je utiliser des réseaux de neurones ou non? Et si oui, comment?

Je suis en utilisant JAVA.

Merci.

Était-ce utile?

La solution

Cela pourrait être un problème plus difficile que vous le pensez, et voici pourquoi:

espace d'action pour le jeu est le choix de la colonne de laisser tomber un morceau dans. espace d'état pour le jeu est une grille MxN. Chaque colonne contient jusqu'à M éléments répartis entre les 2 players.This signifie qu'il y a (2 M + 1 -1) N états. Pour une carte standard de 6x7, ce qui sort à environ 10 15 . Il en résulte que vous ne pouvez pas appliquer l'apprentissage reinforement au problème directement. La fonction de valeur d'état est pas lisse, si Naïf Fonction d'approximation ne travaillerait.

Mais pas tout est perdu. D'une part, vous pouvez simplifier le problème en séparant l'espace d'action. Si l'on considère la valeur de chaque colonne séparément, sur la base des deux colonnes à côté, vous réduisez N à 3 et la taille de l'espace d'état à 10 6 . Maintenant, ce qui est très facile à gérer. Vous pouvez créer un tableau pour représenter cette fonction de la valeur et le mettre à jour en utilisant un algorithme de RL simple, comme SARSA.

Notez que le gain pour le jeu est très retardé, vous pouvez utiliser des traces d'admissibilité pour accélérer l'apprentissage.

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