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

PPO algoritmasını eğitme

Şimdi tanıdık A2C eğitim döngüsünü kullanarak PPO algoritmasını eğiteceksin.

Bu eğitim döngüsü, kırpılmış vekil amaç fonksiyonunun tüm avantajlarını kullanmaz; bu nedenle bu algoritmanın A2C'den çok daha iyi performans göstermesi beklenmez. Buradaki amaç, kırpılmış vekil amaç ve entropi bonusu etrafında öğrendiğin kavramları örneklemektir.

Bu egzersiz, kursun bir parçasıdır

Python ile Deep Reinforcement Learning

Kursa Göz Atın

Egzersiz talimatları

  • Aktör kaybından entropi bonusunu kaldır; \(c_{entropy}\) parametresi için 0.01 değerini kullan.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

for episode in range(10):
    state, info = env.reset()
    done = False
    episode_reward = 0
    step = 0
    while not done:    
        step += 1
        action, action_log_prob, entropy = select_action(actor, state)
        next_state, reward, terminated, truncated, _ = env.step(action)
        episode_reward += reward
        done = terminated or truncated
        actor_loss, critic_loss = calculate_losses(critic, action_log_prob, action_log_prob,
                                                   reward, state, next_state, done)
        # Remove the entropy bonus from the actor loss
        actor_loss -= ____ * ____
        actor_optimizer.zero_grad(); actor_loss.backward(); actor_optimizer.step()
        critic_optimizer.zero_grad(); critic_loss.backward(); critic_optimizer.step()
        state = next_state
    describe_episode(episode, reward, episode_reward, step)
Kodu Düzenle ve Çalıştır