【问题标题】:Tic Tac Toe - BFS Like Algorithm井字游戏 - 类似 BFS 的算法
【发布时间】:2012-11-11 05:04:49
【问题描述】:

我正在考虑自己的算法来实现井字游戏。这将是一台计算机对抗系统。我想实现的算法将是一个哈希图,其中包含用户每个选定节点的所有获胜节点。系统将轮询用户选择的密钥的哈希映射,并将随机选择一个获胜的移动选项。可以删除用户或系统之前选择的选项或将其设置为布尔值 true。这主要是基于阻塞的算法。欢迎对此提出任何想法或意见。

系统哈希映射

<1,<2,3,4,7,5,9>>
<2,<1,3,5,8>>
<3,<1,2,6,9,5,7>>
<4,<1,7,5,6>>
<5,<2,8,4,6>>
<6,<3,9,5,4>>
<7,<1,4,8,9,5,3>>
<8,<2,5,7,9>>

系统将根据用户的键选择随机选择哈希映射的条目之一。我知道这不是一个非常可扩展的方法,但我想知道一些关于此的 cmets。系统/用户已经选择的每个条目都可以设置为假/删除,因此这可能不是问题。

【问题讨论】:

    标签: hashmap tic-tac-toe


    【解决方案1】:

    您的方法可能会奏效,但这不是一个很好的解决方案。

    与其将包含游戏状态及其各自获胜动作的硬编码散列传递给系统,我宁愿实现一种算法,以便计算机可以自行计算最佳动作。您可能会考虑一些众所周知的算法:

    Minimax

    Negamax

    Alpha-beta pruning

    此外,通过使用算法,您将增加程序的可扩展性。

    【讨论】:

    • 谢谢。我已经看到了这种算法,但还没有继续实施它们。我的游戏逻辑是硬编码的,但是当我继续实现它时,我无法真正驯服系统的行为。由于参赛者完全是随机的,因此在某些比赛中更难,在其他比赛中更容易。我希望确定游戏的难度级别,我认为 Minimax 简单,alpha beta 中等是最好的方法。任何其他想法也完全受欢迎。感谢您的评论
    猜你喜欢
    • 2015-12-02
    • 1970-01-01
    • 1970-01-01
    • 2011-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-17
    • 1970-01-01
    相关资源
    最近更新 更多