Meningkatkan sebuah kebijakan
Pada latihan sebelumnya, Anda menghitung nilai Q untuk setiap pasangan state-aksi di lingkungan MyGridWorld. Sekarang, Anda akan menggunakan nilai Q tersebut untuk meningkatkan kebijakan yang ada. Peningkatan kebijakan adalah langkah penting dalam reinforcement learning, di mana Anda menyempurnakan kebijakan dengan memilih aksi yang memaksimalkan utilitas yang diharapkan (nilai Q) di setiap state. Setelah meningkatkan kebijakan, Anda akan merender pergerakan baru sesuai kebijakan yang telah diperbaiki ini.
Lingkungan telah diimpor sebagai env, beserta nilai Q sebagai Q, dan fungsi render().
Latihan ini adalah bagian dari kursus
Reinforcement Learning dengan Gymnasium di Python
Petunjuk latihan
- Temukan aksi terbaik untuk setiap state berdasarkan nilai Q.
- Pilih
actionyang tepat berdasarkanimproved_policy. - Eksekusi
actionyang dipilih untuk mengamati hasilnya.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
improved_policy = {}
for state in range(num_states-1):
# Find the best action for each state based on Q-values
max_action = ____
improved_policy[state] = max_action
terminated = False
while not terminated:
# Select action based on policy
action = ____
# Execute the action
state, reward, terminated, truncated, info = ____
render()