開始使用免費開始

為一個策略計算狀態價值

在相同的確定性環境 MyGridWorld 中,你現在需要評估上一題所定義策略的效果。你會透過為此策略下的每個狀態計算狀態價值函式來完成這件事。

環境已載入為 env,並提供所需變數(terminal_statenum_statespolicygamma)。

本練習屬於課程

使用 Python 的 Gymnasium 進行強化學習

檢視課程

練習說明

  • 完成 compute_state_value() 函式,計算在給定策略下每個狀態的價值。
  • 建立一個 state_values 字典,鍵為 state,值為該狀態的價值。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Complete the function
def compute_state_value(state):
    if state == terminal_state:
        return ____
    action = ____
    _, next_state, reward, _ = env.unwrapped.P[state][action][0]
    return ____

# Compute all state values 
state_values = {____: ____ for ____ in range(____)}

print(state_values)
編輯並執行程式碼