【问题标题】:Difference between Chess Engine and Chess Architecture国际象棋引擎和国际象棋架构之间的区别
【发布时间】:2015-07-31 14:46:43
【问题描述】:
我正在阅读一些关于国际象棋引擎开发的技术论文。
我遇到了一些术语,即。 Computer-Chess Engine 和 Computer-Chess Architecture 经常。
-
Chess Engine 基本上是一个计算机程序,可以分析国际象棋的位置并做出最佳国际象棋动作的决策
-
Chess Architecture 是一组组件以及它们之间的关系。
两者之间有哪些其他差异(如果有)?我对这两者感到困惑。
【问题讨论】:
标签:
computer-science
chess
【解决方案1】:
典型computer chess architecture 的元素具有确定性起源并计算精确结果,例如
- 移动信息(移动生成器)
- 攻击信息(攻击检测器)
- 棋盘信息(执行和撤消动作)
- 方信息(静态交换评估器)
因此,computer chess architecture 应理解为实现基本棋盘表示、基本棋子表示和下棋游戏的基本算法的模块。
一个computer chess engine是
的组成
- 计算机国际象棋架构
- 顺序和并行搜索
- 静态和交互式评估
- 换位表
- 移动排序算法
- 时间管理
- 用户界面。
computer chess architecture 由computer chess engine 的所有算法和数据结构组成。
【解决方案2】:
我会尝试一下,根据我的理解,我认为架构是指算法的结构和大规模并行处理系统或其处理节点的方式。比如《深思》和《深蓝》中的那些。例如,国际象棋程序可以使用 alpha-beta 剪枝方法来确定下一个国际象棋棋步,这只是查看下一个有限回合内所有可能的棋步/结果的蛮力方法:http://en.wikipedia.org/wiki/Alpha-beta_pruning
正如您所说,国际象棋引擎是一种可以下棋的计算机程序。国际象棋引擎经过编程,通过生成移动来解决国际象棋游戏的复杂性。