AI适用于静态环境

时间:2014-03-22 22:16:03

标签: algorithm machine-learning artificial-intelligence reinforcement-learning agent

我有一个网格环境,每个单元格中都包含一个静态代理。当我的代理人进入一个单元格时,这个单元格中的静态代理可能会从我那里拿走分数,给我分数,或什么也不做。我的代理人无法观察相邻的细胞,直到它们移动到一个细胞中,它只能向上,向下,向左或向右移动。

这名经纪人在探索时无法学习。它从特定角落进入网格,并且可能只从该角落离开。如果代理设法成功探索环境并返回健康状况良好的角落,那么它可以从其收集的经验中学习,其中包括它访问的(行,列)位置和属性位于这些位置的静态代理。如果代理商'健康在探索,游戏结束时降至零。但我可以根据需要重新开始探索。

每个静态代理具有三种形状中的一种,三种颜色中的一种,以及两种尺寸中的一种。它还有一个相关的"奖励",表示它添加/删除了多少点。

在这种环境中的每一步都让我失去了一分。我想设计一个能够正确识别与此网格中每种静态代理相关的奖励的代理。

请问有人可以推荐一种学习和/或进化方法来解决这个问题吗?由于代理人可能无法观察相邻方块的限制,我此刻陷入困境。我不确定如何从单独遇到的(行,列)和静态代理属性中学习这个测试环境中的任何内容。

1 个答案:

答案 0 :(得分:1)

显然,与此问题相关的最佳学习方法之一是Reinforcement Learning,更具体的Q-Learning

你会找到一个很好的起点here 提示:Q-learning是众所周知的,我不会在这里重复其他人,但我在这里给出了关键点。

在每个步骤中跟踪发生的事情(奖励/惩罚 - 不需要代理类型,......如果环境保持固定并且您想要学习此环境而不是代理)使用例如阵列(幸运的是,你到目前为止,我还没有学到任何东西!)。继续这样做直到代理停止,正如你所说的那样有两个原因:

  1. 代理人的健康状况降至零:什么都不做! (丢弃阵列)
  2. 代理从另一个角落离开:将以下规则应用于数组
  3. 中的值

    enter image description here