你好,我是郭震(zhenguo)
今天重新发布强化学习第10篇:强化学习Q-learning求解迷宫问题 代码实现
我想对此篇做一些更加详细的解释。
1 创建地图
创建迷宫地图,包括墙网格,走到墙网格就是负奖励。
注意:空白可行走网格奖励值设置为负数,比如-1, 是为减少路径中所经点数;如果设置为大于0的奖励值,路线中会出现冗余点。
import numpy as np
# 创建迷宫地图
exit_coord = (3, 3)
row_n, col_n = 4, 4
maze = np.zeros((row_n, col_n)) - 1
# 走出迷宫奖励10个积分
maze[exit_coord] = 10
# 走到墙网格,扣除10个积分
maze[(0, 3)] = -10
maze[(1, 0)] = -10
maze[(1, 2)] = -10
maze[(2, 2)] = -10
maze[(3, 0)] = -10
![888105d5875b3741f2044f4ec4ef842b.png](https://img-blog.csdnimg.cn/img_convert/888105d5875b3741f2044f4ec4ef842b.png)
2 定义动作
定义动作集合
# 定义动作集合
action_n = 4
actions =