Artificial intelligence 强化学习中马尔可夫状态数的减少

Artificial intelligence 强化学习中马尔可夫状态数的减少,artificial-intelligence,reinforcement-learning,Artificial Intelligence,Reinforcement Learning,我开始玩弄强化学习(使用萨顿书)我无法完全理解必须减少马尔可夫状态空间,而另一方面又不假设什么重要什么不重要之间的矛盾。 背景 在跳棋的例子中,萨顿说不应该给游戏中的某些动作分配奖励,比如击败对手的棋子。他声称,这可能会优化人工智能,使其在比赛中无法获胜。因此,奖励应该只给予你想要达到的结果(如赢得比赛) 问题1 假设一个(德州扑克)扑克AI,只有玩家的手和桌上的牌处于马尔可夫状态。这有大约52*51*50*49*48*47*46/1*2*3*4*5*6*7个状态。现在假设我们希望AI将玩家的资

我开始玩弄强化学习(使用萨顿书)我无法完全理解必须减少马尔可夫状态空间,而另一方面又不假设什么重要什么不重要之间的矛盾。

背景

在跳棋的例子中,萨顿说不应该给游戏中的某些动作分配奖励,比如击败对手的棋子。他声称,这可能会优化人工智能,使其在比赛中无法获胜。因此,奖励应该只给予你想要达到的结果(如赢得比赛)

问题1

假设一个(德州扑克)扑克AI,只有玩家的手和桌上的牌处于马尔可夫状态。这有大约52*51*50*49*48*47*46/1*2*3*4*5*6*7个状态。现在假设我们希望AI将玩家的资金池+赌注考虑在内。如果我们假设8名玩家每人拥有1-200.000美元,这将使马尔可夫状态空间方法成为“无限数量的组合”

问题2

一个州的削减策略可能是将参与者的现金分为穷人、中等或富人。这严重减少了我们的状态空间,但是,我怎么知道a)3个组就足够了?b) 每个群体的辨别极限是什么


干杯,

当状态空间变得太大时,通常的方法是使用函数近似来减少状态空间。这里的关键是,你在相似的州之间推广奖励。当然,这需要您通过利用领域知识提出有意义的特性来使用。不幸的是,没有一种算法既能解决特征选择问题,又能解决控制问题,同时又能保证最优性(在多项式时间内),我们也不希望发明任何算法

为了回答你的问题,1)即使是在8人限制的德克萨斯州holdem'中的初学者水平的表现也远远超出了目前最先进的研究水平。查看当前“世界上最好的电脑扑克玩家”的研究。也就是说,您可以尝试将空间划分为任意功能,如:(player[1]。cash>1000)0:1,(player[1]。cash>2500)0:1,等等


2) 很难知道您的表示有多好,通常人们只是运行它,直到它开始收敛,并查看它的性能如何…

一种建议的减少RL中状态空间的方法是通过使用状态操作层次结构。你可以把它分解成更小的变量,比如x1,x2,x3,而不是一个状态变量X。然后测量它们的过渡频率并确定它们之间的相关性(例如,当x2=abc时,x1通常会发生变化)。然后,您可以制定一项政策,解释如何最好地转换变化较快的变量,以改变变化较慢的变量,从而最大化回报

这种方法还是比较新的,我不知道它有任何公开的实现。然而,有几篇论文提出了可能的实现方案。假设是人类定义的层次结构,而描述了学习层次结构和策略的方法。

添加到@fairidox point(我同意):如果玩家的现金罐在1-200000之间,则按照他们所说的函数近似,如果玩家处于1000美元或1001美元的状态,他们不会改变自己的行为,这是合乎逻辑的。现在,正如你在问题2中提到的,选择这些任意边界有一个问题


同样的逻辑也适用于在一个物理空间中拥有一个机器人,在这个物理空间中,机器人在一个空间中的状态可能与右侧1毫米的状态具有相同的值。如果我们没有近似,那么我们可能会争辩说,我们还应该为0.5mm、0.25mm等设置一个新状态。萨顿和巴托(以及大卫·西尔弗讲座)讨论了这方面的瓷砖编码,我认为这可能也适用于您的扑克示例。

听起来很有趣,但我不确定如何应用这一点。对于扑克游戏,是(a)你的牌还是(b)你的赌注与你的资金持有量是最高水平?这两种方法我都可以支持。让人工智能先把你的状态空间划分成函数近似值,然后用它们来做真正的工作,听起来很有趣:-)我刚刚在原始帖子上看到了日期。我通过“相关”侧边栏找到了这条线索,并认为我可以提供帮助。请随意删除。