4
创建国际象棋引擎,机器学习与传统引擎?
我既是国际象棋玩家,也是计算机程序员。我会说下棋和编程是我花费最多时间做的两件事。自然,我想创建自己的引擎,并最终创建Lichess机器人。 继去年AlphaZero对Stockfish表现出色之后,我正在考虑是否应该使用机器学习(某种类型的神经网络,可能使用Tensorflow)或传统的,硬编码的启发式算法来创建此引擎。 与其他种类的硬编码相比,我对神经网络不太熟悉。不过,对于我来说,这可能还是学习神经网络的一种好方法。 我正在考虑的另一件事是,使用哪种语言对引擎进行编码是否重要。我知道许多国际象棋引擎都使用C ++,这是我以前从未使用过的。我使用了其他基于C的语言,它们执行许多相同的操作,但语法大多不同。我最熟悉Swift和Javascript,但也熟悉Python,并认为它可以帮到我。 因此,就创建尽可能强大的国际象棋引擎而言,我应该使用神经网络还是硬编码?