Aan de slagBegin gratis

Epsilon-greedy-functie definiëren

In RL is de epsilon-greedystrategie een balans tussen exploratie en exploitatie. Deze methode kiest met kans epsilon een willekeurige actie en met kans 1-epsilon de best bekende actie. Het implementeren van de functie epsilon_greedy() is cruciaal voor algoritmen zoals Q-learning en SARSA. Het helpt het leerproces van de agent door zowel de omgeving te verkennen als bekende beloningen te benutten, en dat is het doel van deze oefening.

De numpy-bibliotheek is geïmporteerd als np.

Deze oefening maakt deel uit van de cursus

Reinforcement Learning met Gymnasium in Python

Bekijk cursus

Oefeninstructies

  • Schrijf binnen de functie de juiste voorwaarde voor een agent om de omgeving te verkennen.
  • Kies bij verkennen een willekeurige action.
  • Kies bij benutten de beste action volgens de q_table.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

epsilon = 0.2
env = gym.make('FrozenLake')
q_table = np.random.rand(env.observation_space.n, env.action_space.n)

def epsilon_greedy(state):
    # Implement the condition to explore
    if ____ < ____:
      	# Choose a random action
        action = ____
    else:
      	# Choose the best action according to q_table
        action = ____
    return action
Code bewerken en uitvoeren