开始使用免费开始使用

比较策略

已为您提供了在 MyGridWorld 环境下,对应两种不同策略的两个状态价值函数(value_function_1value_function_2)。您的任务是逐个状态进行比较,判断哪种策略更加有效。

变量 num_states 已可直接使用。

本练习是课程的一部分

Python 中的 Gymnasium 强化学习

查看课程

练习说明

  • 创建布尔列表 one_is_better,其中每个元素用于判断在对应状态下,value_function_1 的取值是否大于或等于 value_function_2 的取值。
  • 创建布尔列表 two_is_better,其中每个元素用于判断在对应状态下,value_function_2 的取值是否大于或等于 value_function_1 的取值。

交互式实操练习

通过完成这段示例代码来试试这个练习。

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.")
编辑并运行代码