ÎncepețiÎncepe gratuit

Implementarea regulii de actualizare Double Q-learning

Double Q-learning este o extensie a algoritmului Q-learning care ajută la reducerea supraestimării valorilor acțiunilor, menținând și actualizând două tabele Q separate. Prin separarea selecției acțiunii de evaluarea acesteia, Double Q-learning oferă o estimare mai precisă a valorilor Q. Acest exercițiu te ghidează prin implementarea regulii de actualizare Double Q-learning. A fost generată o listă Q care conține două tabele Q.

Biblioteca numpy a fost importată ca np, iar valorile gamma și alpha au fost preîncărcate. Formulele de actualizare sunt prezentate mai jos:

Image showing the update rule of Q1.

Image showing the update rule of Q2.

Acest exercițiu face parte din cursul

Reinforcement Learning cu Gymnasium în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Decide aleatoriu care tabel Q din Q va fi actualizat pentru estimarea valorii acțiunii, calculând indexul său i.
  • Efectuează pașii necesari pentru a actualiza Q[i].

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

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] = ____
Editează și rulează codul