ComeçarComece de graça

Comparando políticas

Você recebeu duas funções de valor de estado (value_function_1 e value_function_2) correspondentes a duas políticas diferentes no ambiente MyGridWorld. Sua tarefa é comparar essas funções de valor de estado, estado por estado, para determinar qual política é mais eficaz.

A variável num_states está disponível para você usar.

Este exercício faz parte do curso

Reinforcement Learning com Gymnasium em Python

Ver curso

Instruções do exercício

  • Crie uma lista one_is_better de valores booleanos, em que cada elemento verifique se o valor do estado em value_function_1 é maior ou igual ao valor do estado em value_function_2.
  • Crie uma lista two_is_better de valores booleanos, em que cada elemento verifique se o valor do estado em value_function_2 é maior ou igual ao valor do estado em value_function_1.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

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.")
Editar e executar o código