理解
- 马尔可夫性质 (Markov property),不必知道过去的信息,根据当前的状态就可以做出决策(产生奖励)。
- 马尔可夫决策过程(Markov Decision Process, MDP),具有马尔可夫性质的控制任务称为MDP
- 不具备Mp性质的问题可以通过插入状态信息,转换成MDP。例如给病人看病,需要了解过往情况才能判断,但如果将完整的就诊记录作为状态,则就可以变成MDP来解决。
- 智能体根据t1时刻的状态s1做出的动作a1,则环境产生了t2时刻的s2,这时候产生的奖励r2(实质是因为状态s1切换s2才给的奖励,而不是a1,a1本身就会造成状态的好坏变化才是重要的)再给到智能体,状态之间切换的概率称为转移概率(transition probability)。
- 策略函数(policy function),该状态下可能动作产生最大奖励的概率分布。例如E贪婪策略、softmax策略。
- 最优策略(optimal policy),在某个状态下能够使得累积奖励最大(argmax)的行动,强化学习的目标就是找到一个最优的策略,使得智能体能够在与环境的交互中最大化累积奖励。
- Q值(Q函数):它代表了智能体在某一状态下选择某个动作后,一直到最终状态的奖励总和的期望。换句话说,Q函数评估了在某个状态下采取某个动作的价值。更侧重于评估动作的价值,即在特定情境下执行某一动作的好坏
- V值(价值函数):它代表了智能体在一个状态下,一直到最终状态的奖励总和的期望。简言之,价值函数评估了某个状态本身的价值。更侧重于评估状态的价值,即在某一状态下的优劣。
实践
import numpy as np
# 定义转移矩阵
P = np.array([[0.9, 0.1],
[0.5, 0.5]])
# 初始状态
state = np.array([1, 0])
# 迭代次数
n_iterations = 10
# 马尔科夫链迭代
for _ in range(n_iterations):
state = np.dot(state, P)
print(state)
视频讲解