BayesChess论文中启发式函数的定义是什么?

人工智能 定义 文件 启发式 贝叶斯网络
2021-10-20 02:53:42

我正在阅读BayesChess:基于贝叶斯网络的计算机国际象棋程序(Fernandez,Salmeron;2008)

它是一个使用贝叶斯网络的国际象棋引擎。下面提到第 3 节中的启发式函数。

这里启发式是根据 838 个参数定义的。

有 5 个参数表示每个棋子的值(卒、后、车、马和象 - 国王不被评估,因为它必须始终在棋盘上),1 个参数用于控制国王是否处于检查状态,64用于评估棋子在棋盘上每个方格上的位置的参数(即总共 786 个参数,对应 64 个方格 × 每种颜色 6 个棋子 × 2 种颜色),最后还有 64 个参数用于评估棋子的位置在最后阶段的棋盘上的国王。

上面这句话包含了启发式函数使用的参数。但是我没有找到真正的定义。启发式函数的实际定义是什么?

3个回答

到目前为止,国际象棋(或者,实际上,任何游戏)代理最常见的启发式评估函数形式是简单的线性函数。至少当我们谈论手工制作的特征时,当然,最近几年对深度神经网络的所有炒作都是不同的。因此,如果在这样的论文中没有明确说明他们的启发式评估函数是什么样的,你可以相对安全地假设它只是一个线性函数。

使用线性函数,我的意思是你有特征向量ϕ(s)为您的州s,以及权重向量θ, 和评价f(s)一个国家的s简单地由点积给出(将特征值的所有乘法与其相应的权重相加):

f(s)=ϕ(s)θ=iϕi(s)×θi(s),

下标在哪里i表示采取ith向量的元素。

启发式可以理解为规则。通常,启发式被认为是针对特定问题的策略。 专家系统是人工智能的早期形式,它利用基于规则的决策。在玩游戏的环境中,启发式可以是纯粹的策略

启发式函数将包括一些预定义的决策规则。Russell 和 Norvig 有一篇关于知情(启发式)搜索策略的精彩章节。

启发式函数是最常见的形式,其中将问题的附加知识传授给搜索算法。
人工智能:一种现代方法;3.5.pdf _

h(n) 相对于 f(n) 或 g(n)

启发式只是意味着它是由人类手工构建的。假设你给每件作品的价值一个初始值。这是一种启发式方法,因为它只是由人类定义的。但是,如果贝叶斯过程要修改人类给出的初始值,那将是一个非启发式的事情。

因此,除了查找人类给出的初始参数是什么之外,没有要搜索的函数定义。