本系列文章的目的是要实现一个可以自动寻找迷宫路径的机器人,我们将会使用强化学习的方法训练一个机器人,它最终能够在一个迷宫中找到正确的路径,最终到达出口,而不会掉到坑里。我们要使用到的强化学习方法为Q Learning,它是最简单的一种强化学习方法。本系列将包含两篇文章。
在这第一篇文章中,我们将首先针对要实现的项目进行一个描述,来提出我们的问题,然后针对Q Learning做一个详细的解释,而在第二篇文章,我们将实际操练起来,实现Q Learning算法,从而训练出一个可以自动寻路的机器人。
1. 项目描述
假设我们有下图这样一个迷宫,在迷宫中,我们的机器人是那个红色的图标,S代表迷宫的入口,迷宫中有一些坑(图中的H - hole),当机器人掉下去以后就会摔坏,需要重新开始游戏,图中的F就是普通的地面,机器人可以正常的站在上边并从上边通过,我们的目的是,让机器人能够自动的寻找一条不掉到坑里的路径,能够到达迷宫出口G位置。
幸运的是,python里边有一个现成的库已经帮我们把迷宫游戏做好了,我们将专注于实现一个强化学习机器人来玩这个迷宫游戏。
Gym库就是帮我们提供迷宫游戏的库,它是一个专门供人们学习强化学习的库,里边带来很多经典的游戏或问题,可以通过强化学习解决,我们用到的迷宫就是其中之一,