Výběr akce v základním DQN
Funkce select_action() umožňuje agentovi vybrat v každém kroku akci s nejvyšší Q-hodnotou.
Funkce přijímá jako argumenty Q-síť a aktuální stav a vrací index akce s nejvyšší Q-hodnotou.
Q-síť je vytvořena jako instance q_network a náhodný stav byl načten do tvého prostředí pomocí state = torch.rand(8), aby sis měl/a s čím pracovat.
Toto cvičení je součástí kurzu
Deep Reinforcement Learning v Pythonu
Pokyny k cvičení
- Vypočítej Q-hodnoty odpovídající jednotlivým akcím v zadaném stavu.
- Získej index akce s nejvyšší Q-hodnotou.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
def select_action(q_network, state):
# Calculate the Q-values
q_values = ____
print("Q-values:", [round(x, 2) for x in q_values.tolist()])
# Obtain the action index with highest Q-value
action = torch.____.item()
print(f"Action selected: {action}, with q-value {q_values[action]:.2f}")
return action
select_action(q_network, state)