Kom igångKom igång gratis

Skapa ett multi-armat banditproblem

Det multi-armade banditproblemet är ett klassiskt exempel inom förstärkningsinlärning. Det beskriver en situation där en agent måste välja mellan flera möjliga handlingar – eller "armar" – utan att känna till den förväntade belöningen för respektive val. Med tiden lär sig agenten vilken arm som ger högst belöning genom att utforska de olika alternativen. I den här övningen skapar du grundstrukturen för att simulera ett multi-armat banditproblem.

Biblioteket numpy har importerats som np.

Den här övningen är en del av kursen

Reinforcement Learning med Gymnasium i Python

Visa kurs

Övningsinstruktioner

  • Generera en array true_bandit_probs med slumpmässiga sannolikheter som representerar den verkliga underliggande framgångsgraden för varje bandit.
  • Initialisera två arrayer, counts och values, med nollor. counts håller reda på hur många gånger varje bandit har valts, och values representerar den uppskattade vinstannolikheten för varje bandit.
  • Skapa arrayerna rewards och selected_arms för att lagra de belöningar som erhålls och de armar som väljs i varje iteration.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

def create_multi_armed_bandit(n_bandits):
  	# Generate the true bandits probabilities
    true_bandit_probs = ____ 
    # Create arrays that store the count and value for each bandit
    counts = ____  
    values = ____  
    # Create arrays that store the rewards and selected arms each episode
    rewards = ____
    selected_arms = ____ 
    return true_bandit_probs, counts, values, rewards, selected_arms
Redigera och kör kod