Python深度强化学习:基于Chainer和OpenAI Gym
上QQ阅读APP看书,第一时间看更新

1.2 本书的结构

如图1.4所示,深度强化学习在逐步融合新技术的同时得到了发展。所以如果不了解什么是深度学习和强化学习,那么编程就会变得很困难。

因此,本书首先在第2章中介绍深度学习,第3章介绍强化学习,然后在第4章中,对这两种学习进行整合并进入到深度强化学习的介绍。深度强化学习可有效应用于实体机器人和实际环境中。在第5章中,我们将创建一些可以实际移动的物体,并使用实际环境进行深度强化学习。

这样一来,即使是初学者也可以掌握深度学习、强化学习以及深度强化学习的机制,并最终朝着可将其应用于实际环境中而努力。

此外,第3章之后的所有章节都始终在解决“老鼠操作自动售货机上的按钮来学习获取食物的步骤”的问题。这个问题在本书中被称为“老鼠学习问题”(也称为“斯金纳箱”)。这在强化学习领域中是众所周知的问题,该问题如下:

老鼠学习问题

箱子里只有一只老鼠。

箱子里有一个带有两个按钮的自动售货机,自动售货机上有一个指示灯。每次按下图1.5中左侧的按钮(电源按钮),自动售货机的电源便会重复ON和OFF状态。当自动售货机的电源接通时,指示灯点亮。只有在电源接通时,按下右键(产品按钮)才会出现老鼠喜欢的食物。

017-1

图1.5 老鼠学习问题

那么,老鼠可以学习正确按下按钮的顺序吗?

人类只要稍加思考就能明白原理,令电源为ON状态,然后按下产品按钮。尽管这是一个非常简单的问题,但这个问题能很好地帮助理解强化学习。

然后,通过使用深度强化学习解决相同的问题,就可以了解强化学习(见第3章)和深度强化学习(见第4章)之间的区别。最后,我们将在实体机器上实现此问题,并使用深度强化学习(见第5章)来训练它。

通过这样的递进学习,就能够做出可以在实际环境中完成工作的程序。