Zacznij terazZacznij za darmo

Rozwiązywanie CliffWalking za pomocą strategii epsilon-zachłannej

Środowisko CliffWalking to klasyczny punkt odniesienia do testowania algorytmów RL. To świat siatki, w którym agent musi znaleźć ścieżkę od stanu startowego do stanu docelowego, omijając po drodze klify. Strategia epsilon-zachłanna pozwala agentowi skutecznie eksplorować środowisko i uczyć się unikania klifów, maksymalizując skumulowaną nagrodę. Twoim zadaniem jest rozwiązanie tego środowiska przy użyciu strategii epsilon-zachłannej, obliczenie nagród uzyskanych w każdym epizodzie treningowym i zapisanie ich na liście rewards_eps_greedy.

To ćwiczenie jest częścią kursu

Uczenie przez wzmacnianie z Gymnasium w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • W ramach epizodu wybierz akcję action za pomocą funkcji epsilon_greedy().
  • Kumuluj otrzymaną nagrodę reward w zmiennej episode_reward.
  • Po każdym epizodzie dołącz łączną wartość episode_reward do listy rewards_eps_greedy w celu późniejszej analizy.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

rewards_eps_greedy = []
for episode in range(total_episodes):
    state, info = env.reset()
    episode_reward = 0
    for i in range(max_steps):
      	# Select action with epsilon-greedy strategy
        action = ____
        next_state, reward, terminated, truncated, info = env.step(action)
        # Accumulate reward
        ____        
        update_q_table(state, action, reward, next_state)      
        state = next_state
    # Append the toal reward to the rewards list 
    ____
print("Average reward per episode: ", np.mean(rewards_eps_greedy))
Edytuj i uruchom kod