Implementacja reguły aktualizacji w podwójnym Q-uczeniu
Podwójne Q-uczenie (Double Q-learning) to rozszerzenie algorytmu Q-uczenia, które pozwala ograniczyć przecenianie wartości akcji. Osiąga się to przez utrzymywanie i aktualizowanie dwóch oddzielnych tablic Q. Dzięki rozdzieleniu wyboru akcji od jej oceny podwójne Q-uczenie zapewnia dokładniejsze szacowanie wartości Q. To ćwiczenie przeprowadza cię przez implementację reguły aktualizacji w tym algorytmie. Lista Q zawierająca dwie tablice Q została już przygotowana.
Biblioteka numpy została zaimportowana jako np, a wartości gamma i alpha są wstępnie załadowane. Wzory aktualizacji znajdziesz poniżej:


To ćwiczenie jest częścią kursu
Uczenie przez wzmacnianie z Gymnasium w Pythonie
Instrukcje do ćwiczenia
- Losowo zdecyduj, którą tablicę Q z listy
Qzaktualizować w celu oszacowania wartości akcji – oblicz jej indeksi. - Wykonaj niezbędne kroki, aby zaktualizować
Q[i].
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
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] = ____