我在mdp
用python实现(马尔科夫决策过程)时遇到问题。
我有这些矩阵:states: (1 x n)
.Transitionactions: (1 x m)
矩阵由以下代码计算:
p = np.zeros((n,n))
for t in range(l): # my data is a 1x100 matrix
p[states[t]-1, states[t+1]-1] = p[states[t]-1, states[t+1]-1] + 1
for i in range(n):
p[i,:] = p[i, :] / np.sum(p[i, :])
和此代码的奖励矩阵:
for i in range(l):
Reward = (states[i+1]-states[i])/(states[i])*100
为了获得最佳值,python中的“quantecon包”定义为:
ddp = quantecon.markov.DiscreteDP(R, Q, beta)
其中 Q : 转移矩阵应该是m x n x m
。
谁能帮我理解 Q 如何成为 (m,n,m) matirx?!先感谢您。