ÎncepețiÎncepe gratuit

Selectarea acțiunii în DQN de bază

Funcția select_action() permite agentului să aleagă acțiunea cu cea mai mare valoare Q la fiecare pas.

Funcția primește ca argumente rețeaua Q și starea curentă, și returnează indexul acțiunii cu cea mai mare valoare Q.

Rețeaua Q este instanțiată ca q_network, iar o stare aleatorie a fost încărcată în mediul tău cu state = torch.rand(8), pentru a-ți oferi date de lucru.

Acest exercițiu face parte din cursul

Deep Reinforcement Learning în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Calculează valorile Q corespunzătoare fiecărei acțiuni din starea furnizată ca argument.
  • Obține indexul corespunzător acțiunii cu cea mai mare valoare Q.

Exercițiu interactiv practic

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

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)
Editează și rulează codul