Pemilihan aksi DQN dasar
Fungsi select_action() memungkinkan agen memilih aksi dengan Q-value tertinggi pada setiap langkah.
Fungsi ini menerima Q-network dan state saat ini sebagai argumen, lalu mengembalikan indeks aksi dengan Q-value tertinggi.
Q-network telah diinstansiasi sebagai q_network, dan sebuah state acak telah dimuat ke lingkungan Anda dengan state = torch.rand(8) sebagai data contoh untuk Anda gunakan.
Latihan ini adalah bagian dari kursus
Deep Reinforcement Learning dengan Python
Petunjuk latihan
- Hitung Q-value untuk setiap aksi pada state yang diberikan sebagai argumen.
- Peroleh indeks yang sesuai dengan aksi yang memiliki Q-value tertinggi.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
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)