1. Učit se
  2. /
  3. Kurzy
  4. /
  5. Deep Reinforcement Learning v Pythonu

Connected

cvičení

Fixní Q-targety

Chystáš se trénovat Lunar Lander s fixními Q-targety. Nejprve je potřeba vytvořit online síť (která vybírá akci) i cílovou síť (používanou pro výpočet TD-targetu).

Musíš také implementovat funkci update_target_network, kterou budeš volat při každém tréninkovém kroku. Cílová síť se neaktualizuje gradientním sestupem – místo toho ji update_target_network postupně přibližuje váhám Q-sítě o malý krok, takže zůstává v čase stabilní.

Pozor: jen pro toto cvičení pracuješ s velmi malou sítí, aby bylo snadné vypsat a prozkoumat její state dict. Má jedinou skrytou vrstvu o velikosti 2; action space i state space mají také dimenzi 2.

Funkce print_state_dict() je v prostředí k dispozici pro výpis state dictu.

Pokyny

100 XP
  • Získej .state_dict() jak cílové, tak online sítě.
  • Aktualizuj state dict cílové sítě jako vážený průměr parametrů online sítě a cílové sítě – jako váhu online sítě použij tau.
  • Načti aktualizovaný state dict zpět do cílové sítě.