一、系统说明
本系统是一个基于强化学习的自主迷宫求解平台,集成了迷宫生成、智能体训练、模型评估和可视化展示等核心功能。系统支持30×30、70×70、100×100三种尺寸的迷宫,采用Q-Learning和DQN两种强化学习算法,能够自主探索迷宫环境并学习最优路径。系统提供图形化界面展示智能体求解过程,支持实时训练监控和训练曲线可视化,同时具备GIF动图生成功能,可动态展示智能体的探索路径。系统还包含完整的测试评估机制,通过成功率和路径长度等指标对模型性能进行量化评估,为迷宫寻路问题提供了完整的解决方案。

完整代码请点击这里下载
二、强化学习智能体自主求解迷宫设计实现
强化学习智能体采用Q-Learning和DQN两种算法实现自主求解。智能体通过状态空间(迷宫格子坐标)感知环境,动作空间定义了上下左右四个移动方向。采用epsilon-greedy策略平衡探索与利用:初期以高概率随机探索,逐步降低探索率转向利用已学知识。核心学习过程基于贝尔曼方程,通过状态-动作值函数(Q值)的迭代更新来逼近最优策略。每执行一步,智能体获得即时奖励:撞墙-1、每步-0.05、到达终点+100。通过大量回合训练,智能体逐步学习到从起点到终点的最优路径。为提升大尺寸迷宫的训练效率,系统优化了学习率、探索率衰减等超参数,并引入检查点机制支持训练中断恢复。


三、迷宫生成功能
系统采用递归回溯算法生成完美迷宫,从起点开始随机选择方向打通墙壁,确保任意两点间有且仅有一条路径。为避免大尺寸迷宫递归溢出问题,将算法改为迭代实现(使用栈结构),支持100×100等大型迷宫生成。生成结果保存为JSON格式,包含迷宫矩阵、起点终点坐标等信息,并提供最短路径计算功能(基于BFS算法)。

四、可视化功能
系统提供Pygame图形化界面,实时展示智能体在迷宫中的移动轨迹和训练过程。界面包含迷宫渲染、智能体位置标记、路径可视化等元素,支持缩放以适应不同尺寸的迷宫。为满足无图形界面环境需求,还提供基于matplotlib的静态图片保存功能,可生成迷宫布局、探索路径、训练曲线等可视化图片。
五、GIF动图生成功能
系统支持将智能体破解迷宫的完整过程生成GIF动图,动态展示探索路径。通过PIL库采集训练过程中的关键帧(每10步保存一帧),设置最大帧数限制(100帧)以控制文件大小。生成的GIF包含起点、终点、智能体位置和探索轨迹,直观展示智能体的学习过程和求解策略。
六、模型评估功能
系统提供完整的模型评估机制,支持单迷宫测试和批量测试集评估。评估指标包括成功率、平均路径长度、最短路径长度、路径效率等。为避免跨尺寸评估导致的状态空间不匹配问题,系统实现了单尺寸评估功能,确保模型尺寸与测试迷宫严格对应。评估结果可保存为JSON格式,便于后续分析。
七、批量训练功能
系统支持批量训练多种尺寸的迷宫模型,自动根据迷宫复杂度计算合适的训练回合数。每个尺寸独立训练并保存到对应目录,避免模型混淆。训练过程中自动保存检查点,支持中断后恢复训练。系统还提供快速验证功能(500回合测试),帮助用户快速验证训练流程是否正常。
八、训练监控与诊断功能
系统提供实时训练监控,每100回合显示成功率、平均奖励、路径长度等关键指标。训练完成后自动生成训练曲线图(奖励曲线、成功率曲线、回合长度曲线)和统计分布图,帮助用户了解训练收敛情况。内置诊断工具可快速定位成功率问题,检查训练参数、模型状态和测试配置,提供优化建议。
九、多算法支持
系统实现了Q-Learning和DQN两种强化学习算法。Q-Learning采用表格型Q值存储,适合小尺寸(30×30)迷宫,训练速度快且易于调试。DQN基于深度神经网络,使用经验回放和目标网络技术,适合大尺寸(70×70、100×100)迷宫,能够处理更大规模的状态空间。用户可根据迷宫尺寸选择合适的算法。