股票操作之强化学习基础(二)(Q-learning、Sarsa、Sarsa-lambda)
1. Q-learning
Q-learning是强化学习一个比较基础的算法,很多强化学习的升级算法都是在q-learning的基础上进行升级的。
举个简单的例子:一个人在位置1,他需要到位置6,每次可以向左或者向右移动,但是他不知道位置6在他最右边,他只能自己去摸索如何到位置6。已知条件有在各个状态下向左或向右可到达的位置,到达6位置可以获得10奖励。
那他该怎么去学习呢?
Q-learning的一个核心就是对Q-table的学习,Q其实是quality的缩写。Q-table其实就是在当前状态不同动作的价值评估矩阵。状态在这个例子中可以表示为人所在的位置,动作的话包括向左移动和向右移动两个动作。这个Q-table的初始化可以表示成如下:
Q-table中的值就是quality。那他怎样去学习这个Q-table呢。
Step 1:根据Q-table中各个动作的价值,采用贪婪策略选择动作,以一个概率选择一个动作(优先选价值高的动作),从当前状态移动到下一个状态。(如果在位置1向左移动则还在位置1)