Kaygan Frozen Lake üzerinde politikayı değerlendirme
Kaygan bir Frozen Lake ortamında, yalnızca öğrenilmiş bir Q-tablosundan politikayı çıkarmak, etkinliğini ölçmek için yeterli değildir. Öğrenilmiş bir politikanın uygunluğunu doğru şekilde değerlendirmek için birden çok bölüm oynayıp elde edilen ortalama ödülü gözlemlemelisin. Bu egzersiz, eğitim sırasında rastgele bir politikayı izleyerek oluşturulan temel çizgiye (baseline) karşı öğrenilmiş politikanın etkinliğini karşılaştırır. Görevin, öğrenilmiş politikayı birkaç bölüm boyunca çalıştırmak ve topladığın ortalama ödüllere göre performansını analiz etmek; bunu rastgele politika aşamasında toplanan ortalama ödüllerle karşılaştırmaktır.
Q Q-tablosu, num_states, num_actions ve avg_reward_per_random_episode senin için önceden yüklendi.
NumPy kütüphanesi np olarak içe aktarıldı.
Bu egzersiz
Python ile Gymnasium'da Reinforcement Learning
kursunun bir parçasıdırEgzersiz talimatları
- Her yinelemede, öğrenilmiş Q-tablosu
Q'ya göre yapılacak en iyi eylemi seç. - Öğrenilmiş bölüm başına ortalama ödülü
avg_reward_per_learned_episodeolarak hesapla.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
for episode in range(10000):
state, info = env.reset()
terminated = False
episode_reward = 0
while not terminated:
# Select the best action based on learned Q-table
action = ____
new_state, reward, terminated, truncated, info = env.step(action)
state = new_state
episode_reward += reward
reward_per_learned_episode.append(episode_reward)
# Compute and print the average reward per learned episode
avg_reward_per_learned_episode = ____
print("Average reward per learned episode: ", avg_reward_per_learned_episode)
print("Average reward per random episode: ", ____)