BaşlayınÜcretsiz Başlayın

Her-ziyaret Monte Carlo'yu uygulama

Every-Visit Monte Carlo yöntemi, First-Visit varyantından farklı olarak, bir durum-eylem çifti her göründüğünde değerleri günceller; yalnızca ilk karşılaşmada değil. Bu yaklaşım, bölümlerden gelen tüm bilgileri kullanarak politikanın kapsamlı bir değerlendirmesini sağlarken, bölüm içinde ne zaman ortaya çıktıklarına bakılmaksızın tüm örnekleri dahil ettiği için değer tahminlerinde daha fazla varyans da oluşturabilir. Görevin, num_episodes bölüm boyunca eylem-değer fonksiyonu Q'yu tahmin eden every_visit_mc() fonksiyonunun uygulamasını tamamlamak.

Durum-eylem çiftleri anahtar olacak şekilde başlatılmış ve önceden yüklenmiş returns_sum ve returns_count sözlükleri ile generate_episode() fonksiyonu sana sağlandı.

Bu egzersiz

Python ile Gymnasium'da Reinforcement Learning

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • generate_episode() fonksiyonunu kullanarak bir bölüm üret.
  • Bir bölüm içindeki her durum-eylem çifti için getirileri ve sayılarını güncelle.
  • Tahmini Q-değerlerini hesapla.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

Q = np.zeros((num_states, num_actions))
for i in range(100):
  # Generate an episode
  episode = ____
  # Update the returns and their counts
  for j, (state, action, reward) in ____:
    returns_sum[(state,  action)] += sum(____)
    returns_count[(state,  action)] += ____

# Update the Q-values for visited state-action pairs 
nonzero_counts = ____
Q[nonzero_counts] = ____
    
render_policy(get_policy())
Kodu Düzenle ve Çalıştır