So sánh các policy
Bạn được cung cấp hai hàm giá trị trạng thái (value_function_1 và value_function_2) tương ứng với hai policy khác nhau trong môi trường MyGridWorld. Nhiệm vụ của bạn là so sánh hai hàm giá trị trạng thái này theo từng trạng thái để xác định policy nào hiệu quả hơn.
Biến num_states đã được cung cấp để bạn sử dụng.
Bài tập này là một phần của khóa học
Reinforcement Learning với Gymnasium trong Python
Hướng dẫn bài tập
- Tạo danh sách
one_is_bettergồm các giá trị boolean, trong đó mỗi phần tử kiểm tra xem giá trị của trạng thái trongvalue_function_1có lớn hơn hoặc bằng giá trị của trạng thái trongvalue_function_2hay không. - Tạo danh sách
two_is_bettergồm các giá trị boolean, trong đó mỗi phần tử kiểm tra xem giá trị của trạng thái trongvalue_function_2có lớn hơn hoặc bằng giá trị của trạng thái trongvalue_function_1hay không.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
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.")