1

这段代码:

R = ql.matrix([ [0,0,0,0,1,0],
        [0,0,0,1,0,1],
        [0,0,100,1,0,0],
        [0,1,1,0,1,0],
        [1,0,0,1,0,0],
        [0,1,0,0,0,0] ])

来自 :

https://github.com/PacktPublishing/Artificial-Intelligence-By-Example/blob/47bed1a88db2c9577c492f950069f58353375cfe/Chapter01/MDP.py

R 被定义为“每个状态的奖励矩阵”。这个矩阵中的状态和奖励是什么?

# Reward for state 0
print('R[0,]:' , R[0,])

# Reward for state 0
print('R[1,]:' , R[1,])

印刷 :

R[0,]: [[0 0 0 0 1 0]]
R[1,]: [[0 0 0 1 0 1]]

[0 0 0 0 1 0]state0 和[0 0 0 1 0 1]state1 吗?

4

1 回答 1

1

根据使用该示例的书,R表示从一个当前状态s到另一个下一个状态的转换的奖励s'

具体来说,R与下图相关:

在此处输入图像描述

矩阵中的每一行R代表一个从AF的字母,每一列代表一个从AF的字母。这些1值代表图形的节点。即,R[0,]: [[0 0 0 0 1 0]]意味着您可以从一个状态s=A转到下一个状态s'=E并获得 1 的奖励。同样,R[1,]: [[0 0 0 1 0 1]]意味着如果您从BF或,您将获得 1 的奖励D。目标似乎是实现并保持在 中C,获得最大的奖励。

于 2020-02-09T22:15:16.770 回答