我将参加我学校的棋盘游戏 AI 比赛,并试图提出一些关于并发的想法以获得优势。我很可能会处于劣势,因为我将在 java 中实现它,而且我知道 c 或 c++ 会快得多。
似乎您不能将游戏树分成两半,因为移动顺序应该首先留下最好的移动,而且在给定深度传达当前的 alpha/beta 似乎很困难,甚至可能是不可能的. 我也将使用需要同步的转置表。
除了搜索之外,是否有第二个线程可以做的事情可以帮助搜索或提供某种类型的速度提升。每个 AI 将有 5 秒的时间进行移动,并且您的程序可以在对手思考的同时运行。
任何输入,无论多么晦涩,都将不胜感激。