【问题标题】:solving 4 puzzle with tree用树解决 4 个难题
【发布时间】:2014-04-08 11:20:29
【问题描述】:

我正在尝试解决 4 盒拼图问题。根据我的经验,我的逻辑是每个数字都与空格交换,然后到达正确的位置。

我有这个:

1 3
2

我的目标状态:

1 2
3

什么是使用方法:(键:R->右,D->下;上->上;L->左)

                    1 3
                    2
                 R/         D|  up\   \L
                 /           |     \   \
               1 3          1      (not possible boundary exists)    
                 2          2 3

         R/  D|  up\   \L
         /    |     \   \ 
                3       1 3
              1 2       2
         ...............
        .................

这就是我正在做的事情,但我每次都处于某些树相同的状态,但不是正确的目标状态。如果我使用错误的树方法或算法,请告诉我。因为我通过互联网学习后正在实现这种树。

【问题讨论】:

  • 我不是数学家,但我很确定您至少需要 3x2 才能在这里找到解决方案,2x2 是不可能的,因为您没有“备用”行为搬家准备一块。

标签: data-structures machine-learning artificial-intelligence reinforcement-learning q-learning


【解决方案1】:

算法没有错。只是没有解决办法。没有办法从你的初始状态到最终状态。

【讨论】:

  • 好的,谢谢。这让我很困惑。我想可能有办法。无论如何谢谢
【解决方案2】:

并非所有 4 个谜题 的实例都是可解决的,下图显示了状态图,可以看出有 2 个连通分量。

如上图所示,目标状态(编码为0123)属于这些组件之一,该组件中的所有实例都是可解的。从另一个组件中,无法达到目标状态,因此这些实例都无法解决。

我们也可以用Q-learning解决4-puzzle,上图也显示了该问题的奖励公式。更多细节可以在 https://sandipanweb.wordpress.com/2017/03/24/solving-4-puzzles-with-reinforcement-learning-q-learning-in-python/?frame-nonce=8531adb87d

【讨论】:

    猜你喜欢
    • 2012-05-10
    • 2023-02-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-12
    • 1970-01-01
    相关资源
    最近更新 更多