Jämföra policyer
Du har tillgång till två tillståndsvärdefunktioner (value_function_1 och value_function_2) som motsvarar två olika policyer i miljön MyGridWorld. Din uppgift är att jämföra dessa tillståndsvärdefunktioner tillstånd för tillstånd för att avgöra vilken policy som är mest effektiv.
Variabeln num_states finns tillgänglig för dig att använda.
Den här övningen är en del av kursen
Reinforcement Learning med Gymnasium i Python
Övningsinstruktioner
- Skapa en lista
one_is_bettermed booleska värden, där varje element kontrollerar om tillståndets värde ivalue_function_1är högre än eller lika med tillståndets värde ivalue_function_2. - Skapa en lista
two_is_bettermed booleska värden, där varje element kontrollerar om tillståndets värde ivalue_function_2är högre än eller lika med tillståndets värde ivalue_function_1.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
value_function_1 = {0: 1, 1: 2, 2: 3, 3: 7, 4: 6, 5: 4, 6: 8, 7: 10, 8: 0}
value_function_2 = {0: 7, 1: 8, 2: 9, 3: 7, 4: 9, 5: 10, 6: 8, 7: 10, 8: 0}
# Check for each value in policy 1 if it is better than policy 2
one_is_better = [____ >= ____ for state in range(num_states)]
# Check for each value in policy 2 if it is better than policy 1
two_is_better = [____ >= ____ for state in range(num_states)]
if all(one_is_better):
print("Policy 1 is better.")
elif all(two_is_better):
print("Policy 2 is better.")
else:
print("Neither policy is uniformly better across all states.")