cost 86 ms
AI TicTacToe 游戏中的 Minimax 方法

[英]Minimax method in an AI TicTacToe game

下面的代码描述了一个AI TicTacToe游戏(主文件是game.py) 如您所见,程序员使用了 minimx 算法来最小化失败的可能性并最大化获胜的可能性。 现在,在尝试了解这种 minimax 方法的工作原理几天之后,我忍不住请你们向我解释一下。 1.将此代码添加到 player.py 背后 ...

如何解决这个线性规划问题?

[英]How to solve this linear programming problem?

考虑一组城市区域。 每个城区都有一个医疗急救服务站的建设候选。 建设救护站的费用由参数给定,全市建设救护站的总预算为5000万。 此外,如果车站建在城市 2 区,则不得在城市 6 区建站。确定在哪些城市区建造救护站,以使最大行驶时间最小化。 最佳的最长旅行时间是多少? 在市区 ∈ 建造车站的成本是 ...

如何在没有递归的情况下使用minimax算法?

[英]How to use minimax alalgorithm without recursion?

我正在开发一个程序,人们可以用电脑玩“井字游戏”。 我选择结构化文本作为我的开发语言,但它没有递归,所以我必须在没有递归的情况下开发它。 结果,我决定改用栈来代替,但我不知道如何将递归更改为栈。 我尝试使用像 BFS 这样的堆栈,而且我希望 minimax 可以做出最好的举动。 ...

极小极大算法导致递归错误

[英]minimax algorithm resulting a recursion error

我正在尝试使用 minimax 算法来实现这个基于回合的“格斗游戏”。 但是,我遇到了一些问题。 该代码在第一次运行时有效,但在第二次运行后出现错误。 我认为应用 alpha-beta 修剪可以解决问题,但它仍然是一样的。 RecursionError: maximum recursion dep ...

Minimax tic tac toe 并没有选择实际的最佳移动

[英]Minimax tic tac toe isn't choosing actual best move

我为 Minimax AI 井字游戏编写了 python 代码。 然而,Minimax 实际并没有选择最佳着法。 第一步似乎总是选择右上角,而所有其他动作几乎都是随机的。 它很容易被击败,这似乎是我代码中某处的错误。 感谢您的任何帮助。 界面代码: 极小极大代码: ...

NoneType 不可订阅 Minimax tic-tac-toe 游戏

[英]NoneType is not subscriptable for Minimax tic-tac-toe game

我有一个井字游戏,它为计算机“玩家”使用了极小极大算法。 Tkinter 部分有效,真人玩家正常工作。 然而,当计算机应该播放时,它给出了错误:“NoneType is not subscriptable”。 我不确定为什么。 我是否缺少其中一个变量的输入? 先感谢您。 这是我的代码: 我的极小极 ...

我的 negamax 实现中的转换表有什么问题?

[英]What is wrong with my transition table in my negamax implementation?

我正在 TypeScript 中编写国际象棋 AI,它使用 negamax 和 alpha beta 修剪来搜索可能的动作。 它使用两种启发式算法:一种是主要启发式算法,用于评估负极大树遍历中的叶节点,另一种是简单廉价的启发式算法,用于对树遍历的移动进行排序,以期从搜索中消除节点。 我试图实现一个 ...

为什么我的 minimax tic tac toe 试图覆盖玩家的移动?

[英]Why is my minimax tic tac toe trying to overwrite the player's move?

我一直在 python 中使用玩家对计算机组件开发井字游戏。 我使用/稍微更改了一些 minimax 代码以作为“计算机”玩家与我的游戏一起工作。 该游戏适用于 1 或 2 个动作,但随后“计算机”会尝试覆盖玩家的动作。 我一直在寻找明显的错误,但找不到问题所在。 感谢您的任何建议。 这是我的代码 ...

Minimax 算法在识别赢/输场景时错误地采取行动

[英]Minimax algorithm incorrectly acting upon recognizing win/loss scenarios

python 中的以下minimax算法旨在找到给定连接四板中可能移动的值。 它由另一个 function computer_move调用,也如下所示。 预期行为: minimax将返回基于棋盘 state 和玩家的 position 的评估。 如果玩家是一个,它返回最高值移动的评估。 如果玩家是 ...

带递归的井字游戏

[英]Tic tac toe with Recurrsion

我正在学习 Java 课程,我们最近开始制作井字游戏机器人。 我们的最终目标是只制作一个有一点点策略的机器人,但我离完成一个完美的机器人已经很近了。 我们还没有正式学习递归,所以我很困惑为什么我的 minimax 算法没有输出写入值。 它返回的最高值是 0(平局),因此它只是将它的移动放在下一个可用 ...

Minimax 算法表现异常

[英]Minimax algorithm behaving strangely

我正在做作业。 我想创建一个由计算机模拟和玩的游戏。 这是一个合乎逻辑的游戏,目标是收集最多且价值最高的代币。 程序首先要求以这种格式输入(“END”表示输入结束,正在努力将其删除): 字母代表方向,如东、西、北、南。 指示后的数字是具有价值的标记。 您只能从一个方向的末端拾取标记。 收集最有价值的 ...

在 Shell 中写了一个 TicTacToe 并且计算效果不佳

[英]Wrote a TicTacToe in Shell and the compute is not playing nice

电脑总是在第一个空的地方播放,我也不知道为什么。 当我在位置 1 播放时,计算机会在位置 2 播放,依此类推。 如果 minimax function 总是返回 1,则不会有任何改变。 发生了什么? 注意:我的棋盘是 1 到 9。如果计算机赢了,check_win 给我 10,如果是人类,则为 -1 ...

修改算法以克服游戏的 minimax 问题

[英]Modify the algorithm to overcome the problem with the minimax for the game

玩家轮流移动。 一个玩家先移动。 任何玩家都可以移动到未被占用的相邻方块,或者可以从棋盘的一端传送到另一端,前提是另一端未被占用。 例如,如果 A 在第二个节点,B 在节点 5 可以 go 到 4 和 1。如果 B 获胜(占据 1 个单元格),游戏值为 -1,如果 A 获胜(占据 5 个单元格),游 ...

实现 Minimax 算法的问题

[英]Issues implementing the Minimax Algorithm

我一直在尝试为一个简单的国际象棋机器人实现一个 Minimax 算法,我觉得我理解它背后的基础知识和一般原则,但我的代码并没有真正起作用,我正试图找出原因。 这是我的 function 用于生成 boardScore。const boardScore = (fen) => { // f ...

获取字符串中的极小极大移动

[英]Get minimax move in string

我正在按照这个伪代码在 Java 中编写我的代码。 除了实际捕捉到最佳动作外,一切都很清楚并且按预期工作。 似乎我在最大化玩家条件中添加的if 条件返回了当前棋盘中的最后一个可玩动作。 所以它总是淡化。 我怎样才能跟踪最好的移动? 这是伪代码 ...

为什么我的井字棋极小极大算法不能阻止某些对角线移动?

[英]Why does my tic tac toe minimax algorithm not block certain diagonal moves?

我几乎已经完成了我的 tic tac toe minimax 的逻辑并且它运行得很好。 但我仍然发现人工智能似乎弄错了一些对角线移动。 例如,如果您玩 3、6、5 和 7 方格,您将获胜。 由于某种原因,它不会挡住底角。 这是递归地获得我们计算机可以取得的最好成绩的 minimax 调用: 这 ...

需要帮助找到我的井字游戏极小极大算法中的问题

[英]Need help finding the problem in my tic-tac-toe minimax algorithm

一段时间以来,我一直在构建我的井字游戏项目,并且一直遇到使用 minimax 实现无与伦比的 AI 的问题。 我现在处于游戏几乎完全正常运行的地步,只是我在网格上有一个特定的正方形没有按预期工作。 如中所示,它似乎解释了数组中除了索引 [8] 处的正方形之外的所有结果。 它似乎避免将自己放在那里或 ...


 
粤ICP备18138465号  © 2020-2023 STACKOOM.COM