基本概念
学习链接 (johnjim0816.com)https://johnjim0816.com/joyrl-book/#/
在学习过程中个人做出的每一次尝试都是是一次决策(decision)
好的结果称为奖励( reward ),坏的结果称为惩罚( punishment )或者负的奖励。最终通过一次次的决策来实现目标,这个目标通常是以最大化累积的奖励来呈现的,这个过程就是序列决策( sequential decision making )过程。
强化学习就是解决序列决策问题的有效方法之一,对于任意问题,只要能够建模成序列决策问题或者带有鲜明的试错学习特征,就可以使用强化学习来解决。
强化学习的方向
多智能体强化学习(multi-agent reinforcement learning,MARL)
1. 非静态问题:环境的状态不仅由智能体的动作决定,还受到其他智能体的动作的影响。
2. 信号问题:智能体之间可能需要进行通信以合作或竞争,应该如何高效地通信并从信号中学习。
3. 信誉分配问题:在多智能体的合作任务中,如何确定每个智能体对于整体目标的贡献或责任。
4. 复杂博弈场景:引入博弈论来找到环境中的纳什均衡或其他均衡策略。
从数据中学习(learn from demostration)
1. 模仿学习:在奖励函数难以明确定义或者策略本身就很难学出来的情况下,通过模仿人类的行为来学习到一个较好的策略。(从专家数据中学习策略)
行为克隆(behavioral cloning,BC):将每一个状态-动作对视为一个训练样本,并使用监督学习的方法(如神经网络)来学习一个策略。易受到分布漂移( distribution shift )的影响。
2. 逆强化学习(inverse reinforcement learning,IRL):通过观察人类的行为来学习到一个奖励函数,然后通过强化学习来学习一个策略。易受到噪声的影响。(从人类数据中学习奖励函数)
3. 从人类反馈中学习(reinforcement learning from huamn feedback,RLHF):从人类标注的数据中学习奖励模型来进行微调(fine-tune)。
4. 离线强化学习(offline reinforce learning)与批量强化学习(Batch Reinforcement Learning, BRL):要求智能体(agent)从固定的一个数据集中进行学习,而不能进行探索。
5. 世界模型(world model)
探索策略( exploration strategy )
如何在探索和利用之间做出权衡。在探索的过程中,智能体会尝试一些未知的动作,从而可能会获得更多的奖励,但同时也可能会遭受到惩罚。而在利用的过程中,智能体会选择已知的动作,从而可能会获得较少的奖励,但同时也可能会遭受较少的惩罚。
结合进化算法来提高探索的效率,避免局部最优。
NEAT(neuro evolution of augmenting topologies)和PBT(population based training)
实时环境(real-time environment)
在实际应用中,智能体往往需要在实时或者在线环境中进行决策,在这种情况下训练不仅会降低效率(实时环境响应动作更慢),而且还会带来安全隐患(训练过程中可能会出现意外)。
离线强化学习( offline reinforcement learning ),即在离线环境中进行训练,然后将训练好的模型部署到在线环境中进行决策。离线环境和在线环境之间可能存在着分布漂移,即两个环境的状态分布不同,使得训练好的模型在在线环境中可能会出现意外。
世界模型( world model ),即在离线环境中训练一个世界模型,然后将世界模型部署到在线环境中进行决策。世界模型的思路是将环境分为两个部分,一个是世界模型,另一个是控制器。世界模型的作用是预测下一个状态,而控制器的作用是根据当前的状态来决策动作。世界模型存在的问题是预测误差会导致控制器的决策出错。
多任务强化学习(multi-task reinforcement learning)
在实际应用中,智能体往往需要同时解决多个任务,如何在多个任务之间做出权衡。
联合训练( joint training ):将多个任务的奖励进行加权求和,然后通过强化学习来学习一个策略。
分层强化学习( hierarchical reinforcement learning ):将多个任务分为高层策略和低层策略。高层策略决策当前的任务,而低层策略决策当前任务的动作。这样就可以通过强化学习来学习高层策略和低层策略,从而解决多任务强化学习的问题。可能存在的问题是高层策略的决策可能会导致低层策略的决策出错。