大家好, 欢迎回来｡
在这堂课中, 我们将设置我们的环境,
我想为那些想尝试自己解决这个问题的人介绍这个更高层次的概述｡
这在上节课中可能看起来很熟悉, 你们看到了｡
所以如果你看了, 我很抱歉｡
我们很快就过一遍｡
重要的事情先说｡
在这个项目中, 我们的目标是尽可能简单, 因为我们不需要导入太多的库｡
我们基本上就是用NumPy来做这个｡
我们只需要将NumPy导入为NP, 通常是numpy的公共引用｡
我们还希望设置环境, 如您所见｡
我们将很快地再回顾一遍, 作为一个概述｡
Q学习的第一步是我们要定义一个邮递员必须导航的环境｡
我们需要建立这样的环境, 这样我们就可以真正地迭代和通过它｡
在这节课中, 环境将由状态､ 行为和奖励组成｡
状态和动作是Q学习代理的输入, 而可能的动作是代理, 输出是我们可以思考的状态,
并将此图像视为我们的表示｡
我们环境中的状态是城市中所有可能的位置, 我们可以称之为示例城市｡
其中一些位置是城市边界, 这将是我们的黑色广场, 而其他位置是岛屿,
邮递员可以使用通过城市旅行｡
这些是白色的方块｡
绿色正方形表示物品包装和运输区域｡
黑色和绿色的方块是我们称之为终结状态｡
总的来说, 我们的目标, 或者说我们的代理人的目标, 我们想要使用最短路径｡
我们希望我们的代理了解项目包装区, 罐子, 绿色和所有其他地点之间的最短路径, 在城市中,
邮递员是允许旅行｡
在上图中, 我们在城市中有121个可能的州或位置｡
这些状态以11 × 11的网格排列｡
因此, 每个位置可以通过其行和列索引来标识｡
那么我们的第一步是什么呢？
我希望你们能开始思考如何定义它｡
我们需要定义环境｡
这是一个很好的例子, 说明了我们的形象以及我们将如何实现它｡
那么, 您将如何建模呢？
请记住, 我们使用的是NumPy,
所以我们需要定义这些边界, 我们可以定义一个3d numpy数组来保存每个状态和动作对的当前Q值, 就像我们看到的表示一样｡
对于那些不熟悉的人, 或者是新的, 或者你只是想复习一下,
这门课的i a z手册非常有帮助, 强烈推荐｡
那我们现在要做什么？
事实上我们可以｡
让我快速地展开一下, 这样我们可以更容易地查看它｡
让我添加一些代码单元格｡
我们要定义一个三维numpy数组｡
你会怎么做？
因此, 我们有一些选择, 但最直接和简单的选择, 让我们称之为环境行｡
罗丝把它设为11.
是11乘11的｡
然后我们还可以做一个环境, 给列加下划线｡
我们也可以将其设置为11｡
最后, 我们可以设置Q值, 因为我们需要将numpy与环境行和环境列相加｡
我们可以将Q值设为等于NumPy个零, 我们需要使用环境行, 环境列｡
我们有了3D numpy数组, 我们的3D环境表示集｡
太棒了｡
现在, 我们将在这里结束讨论, 但我希望大家开始考虑如何解决此问题,
因为您已经设置了环境｡
作为提示, 接下来您需要做的是设置操作｡
您的代理需要能够在环境中移动｡
那你会怎么表示呢
这道题你怎么写？
我们把它关了吧｡
在下一个视频中, 我们将重新回顾这些操作｡
太棒了｡
下一个视频里见｡