CommencezCommencez gratuitement

Implémenter la règle de mise à jour du Double Q-learning

Le Double Q-learning est une extension de l'algorithme de Q-learning qui aide à réduire la surestimation des valeurs d'action en maintenant et en mettant à jour deux tables Q distinctes. En découplant la sélection de l'action de son évaluation, le Double Q-learning fournit une estimation plus précise des valeurs Q. Cet exercice vous guide pour implémenter la règle de mise à jour du Double Q-learning. Une liste Q contenant deux tables Q a été générée.

La bibliothèque numpy a été importée sous np, et les valeurs gamma et alpha ont été préchargées. Les formules de mise à jour se trouvent ci-dessous :

Image showing the update rule of Q1.

Image showing the update rule of Q2.

Cette activité fait partie du cours

Reinforcement Learning avec Gymnasium en Python

Voir le cours

Instructions de l’exercice

  • Décidez au hasard quelle table Q dans Q mettre à jour pour l'estimation de la valeur d'action en calculant son indice i.
  • Effectuez les étapes nécessaires pour mettre à jour Q[i].

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

Q = [np.random.rand(8,4), np.random.rand(8,4)] 
def update_q_tables(state, action, reward, next_state):
  	# Get the index of the table to update
    i = ____
    # Update Q[i]
    best_next_action = ____
    Q[i][state, action] = ____
Modifier et exécuter le code