如何用python实现可列折扣马尔科夫决策过程实例的构造
最近在最近在学习马尔科夫决策过程,想要找一些离散折扣马尔科夫决策过程,状态集可列,行动集有限,报酬函数有界的实例,尝试过搜论文或者直接搜,找到的好像都不是很理想。请问大家有没有什么好的方法?或者如果要自己想要写算法构造这样的实例的话应该如何去构造呢?
还有想要学习这方面的python编程的话,各位有没有比较推荐的教材?
看了蛮多篇文章,但是自己开始写就有一种无从下手的感觉TAT
谢谢大家Orz
import numpy as np # 初始化状态转移矩阵 transition_matrix = np.array([[0.7, 0.3], [0.4, 0.6]]) # 初始化折扣矩阵 discount_matrix = np.array([[0.1, 0.2], [0.3, 0.4]]) # 初始化状态值函数 state_value_function = np.array([[0, 0], [0, 0]]) # 迭代更新状态值函数 while True: new_state_value_function = np.zeros((2, 2)) for i in range(2): for j in range(2): new_state_value_function[i, j] = discount_matrix[i, j] + np.sum(transition_matrix[i, j] * state_value_function[i, :]) if np.sum(np.abs(state_value_function - new_state_value_function)) < 1e-4: break state_value_function = new_state_value_function # 输出状态值函数 print(state_value_function)