Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Machine learning Qlearning-定义状态和奖励_Machine Learning_Reinforcement Learning_Q Learning_Reward - Fatal编程技术网

Machine learning Qlearning-定义状态和奖励

Machine learning Qlearning-定义状态和奖励,machine-learning,reinforcement-learning,q-learning,reward,Machine Learning,Reinforcement Learning,Q Learning,Reward,我需要一些帮助来解决一个使用Q-学习算法的问题 问题描述: 我有一个火箭模拟器,火箭随机飞行,有时还会坠毁。火箭有3个不同的发动机,可以打开或关闭。根据启动的发动机,火箭会朝不同的方向飞行 可以使用关闭/打开发动机的功能 任务: 构造一个Q-学习控制器,该控制器将转向火箭,始终面朝上 读取火箭角度的传感器可用作输入 我的解决方案: 我有以下国家: 我还有以下行动: 所有引擎都熄火了 左发动机打开 右发动机打开 中置发动机打开 左右逢源 左边和中间 右边和中间 以及以下奖励: 角度=0,奖

我需要一些帮助来解决一个使用Q-学习算法的问题

问题描述:

我有一个火箭模拟器,火箭随机飞行,有时还会坠毁。火箭有3个不同的发动机,可以打开或关闭。根据启动的发动机,火箭会朝不同的方向飞行

可以使用关闭/打开发动机的功能

任务:

构造一个Q-学习控制器,该控制器将转向火箭,始终面朝上

读取火箭角度的传感器可用作输入

我的解决方案:

我有以下国家:

我还有以下行动:

  • 所有引擎都熄火了
  • 左发动机打开
  • 右发动机打开
  • 中置发动机打开
  • 左右逢源
  • 左边和中间
  • 右边和中间
以及以下奖励:

角度=0,奖励=100 所有其他角度,奖励=0

问题:

现在问题是,这是奖励和状态的好选择吗?我可以改进我的解决方案吗?对其他角度有更多奖励更好吗


提前感谢

16个州x7个行动是一个非常小的问题

其他角度的奖励将帮助你更快地学习,但根据你的动力,以后可能会产生奇怪的行为

如果你没有动力,你可能会减少状态的数量,这将加快学习速度并减少内存使用(这已经很小了)。要找到最佳状态数,请尝试在分析指标时减少状态数,如多个游戏的奖励/时间步长,或多个游戏的平均误差(通过起始角度标准化)。某些状态表示可能比其他状态表示的性能要好得多。如果不是,请选择收敛最快的一个。这应该是相对便宜的小Q表

如果你想快速学习,你也可以尝试Q-lambda或其他一些改进的强化学习算法来利用时差学习


编辑:根据您的动态,这个问题实际上可能不适合作为马尔可夫决策过程。例如,您可能需要包括当前的轮换率。

尝试将较小的奖励放在所需州旁边的州。这将使你的经纪人学会更快地上篮。

这场比赛的目标是什么?在登月时像火箭一样着陆?还是说它需要在空中飞来飞去而不是坠毁?嗨!目标是使它面向北方并向上飞行。它一直在飞,但我需要让它飞起来。它不能崩溃。当它到达北方不能再往前走时,它就会重新开始。在我目前的解决方案中,它向上飞,但没有得到优化。我删除了我的上一条评论,所以目标是保持平衡,在恒定重力下不撞墙。谢谢你的澄清。