我是靠谱客的博主 眯眯眼老虎,最近开发中收集的这篇文章主要介绍Q-Learning 自己思路详细讲解,运行原理(走迷宫)附上代码,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Q-Learning 自己思路详细讲解,运行原理(走迷宫)

网上太多翻译原文或者根据原文改进的思路写的文章,基本理论都一样的,没有说明核心理论是怎么样。我来讲解一下我对Q-Learning的理解,全部原创希望你们能读完,因为理解对写代码来说非常重要,所以我把代码附上不让你们白读,本文不太长。

最后附上C++可执行代码,直接复制到main即可运行,且代码清除明了。

本文:具体介绍了一下贪心系数的存在意义和Q-table为什么这样填充值和为什么使用随机action。

根据我的理解Q-learning是一个不断重复学习,后得到一个相对好的Q-table,然后agent会根据这个Q-table找到最好的解。
全代码核心思想:Q-table如何来的,为什么这样来的
我们用迷宫来讲解:其实每次更新Q-table的值的时候就代表agent就已经开始走迷宫了,在最初的时候agent是乱走的,然后开始根据奖励的程度来走。

2.为什么agent会乱走?

因为Q-table里面没有任何的值指引agent该如何走,那么agent就会乱走。

3.那agent怎么样乱走的呢?

这个时候我们通过赋值随机值给action让agent可以随机走一个地方,同时并记录这一步可以获得的奖励。比如这一次游戏你走了右边,那么你要在当前点记录走右边会获得多少奖励。当你开始第二轮游戏又来到这个点的时候你就可以找出4或8个方向哪个点的奖励最大,然后走啊走最后走到终点,就代表完成了一次游戏。那么这个时候Q-table就会有相对的值在里面。值如何来的

最后

以上就是眯眯眼老虎为你收集整理的Q-Learning 自己思路详细讲解,运行原理(走迷宫)附上代码的全部内容,希望文章能够帮你解决Q-Learning 自己思路详细讲解,运行原理(走迷宫)附上代码所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(45)

评论列表共有 0 条评论

立即
投稿
返回
顶部