Chemistry 版 (精华区)
发信人: zjliu (秋天的萝卜), 信区: Chemistry
标 题: 电脑象棋和量子化学——计算量子化学的新思路(三)
发信站: BBS 哈工大紫丁香站 (Thu Mar 31 09:41:02 2005)
电脑象棋和量子化学
——计算量子化学的新思路
黄晨 * 2005年3月
(* 联系地址:复旦大学化学系表面化学实验室,eMail:morning_yellow@elephantbase
.net)
C.第一性原理和经验参数
C1. 什么是第一性原理?什么是经验参数?
C2. 电脑象棋的第一性原理是什么?
C3. 电脑象棋有哪些经验参数?
C4. 量子化学的第一性原理是什么?
C5. 量子化学的半经验方法和经验参数是如何产生的?
C6. 什么是启发?它在电脑象棋中是如何运用的?
C7. 计算量子化学中的经验方法是如何为从头计算服务的?
C1. 什么是第一性原理?什么是经验参数?
作为评价事物的依据,第一性原理和经验参数是两个极端。第一性原理是某些硬性
规定或推演得出的结论,而经验参数则是通过大量实例得出的规律性的数据,这些数据
可以来自第一性原理(称为理论统计数据),也可以来自实验(称为实验统计数据)。
但是就某个特定的问题,第一性原理和经验参数没有明显的界限,必须特别界定。
如果某些原理或数据来源于第一性原理,但推演过程中加入了一些假设(这些假设当然是
很有说服力的),那么这些原理或数据就称为“半经验的”。
C2. 电脑象棋的第一性原理是什么?
象棋是一种硬性规定的游戏,因此规则就是第一性原理。对于电脑象棋来说,“最
小-最大”的搜索策略也属于第一性原理的范畴。
尽管“最小-最大”的搜索策略中涉及到局面评估的问题,局面评估需要涉及到大量
经验参数,但是根据规则,判断胜负的条件只有是否将死对方。所以,仅仅依靠第一性
原理,让电脑下棋是可以实现的,只要为象棋规则制订了电脑程序,并根据“最小-最大
”策略进行搜索就可以了。
除此以外,另一个非常重要的第一性原理就是例胜残局,例如国际象棋中的车对单
王、马象对单王等残局,任何一个例胜残局都必定存在一套无懈可击的取胜方案。因此
对于电脑象棋程序来说,具备完整的残局知识是非常重要的,很多象棋程序甚至带有庞
大的残局库,这对程序的棋力来说丝毫没有负作用,而且更加强了程序思路的严密性。
C3. 电脑象棋有哪些经验参数?
电脑象棋程序的算法由两部分组成,一部分是搜索算法,大部分搜索算法是从经验
中获得的(只有Alpha-Beta裁剪不属于经验原理)。另一部分是局面评估算法,除了形成
杀棋的局面和例胜残局外,其他局面的评估都需要依靠经验参数。
在局面评估的诸多参数中,子力价值是首要的,例如在国际象棋中,后通常是9分,
车5分,马象3分,兵1分(实际上兵的价值浮动性极大)。这些数据主要来源于大量残局实
例(因为国际象棋往往在残局阶段才分出胜负),通常一方分值高于对方4分就可以取得胜
利。然而这种规律也有例外,例如双马就无法取胜单王,而弱方多一个兵时反而有赢的
机会。所以子力价值可以说是半经验的参数。
除此以外,开局套路是典型的经验原理。流行的开局套路,都是前人在大量对局中
总结出的经验,但不遵循开局套路的着法并不意味着坏的着法。因此很多电脑象棋程序
都带有庞大的开局库,这对程序的棋力当然有帮助,但是这种不严密的做法并不能确保
电脑下出好棋,因为目前还无法证实有没有新的开局比现有的开局更好。
C4. 量子化学的第一性原理是什么?
量子化学的第一性原理是指多电子体系的Schr?dinger方程,但是光有这个方程是无
法解决任何问题的,为此计算量子化学提出一个称为“从头计算”(ab initio)的原理作
为第一性原理,除了Schr?dinger方程外还允许使用下列参数和原理:
(1) 物理常数,包括光速c、Planck常数h、电子电量e、电子质量me以及原子的各种
同位素的质量,尽管这些常数也是通过实验获得的。(在国际单位值中,光速是定义值,
Planck常数是测量值,在原子单位制中则相反,详细原理请参阅笔者整理的《关于单位
制、物理常数和不确定度的资料》一文。)
(2) 各种数学和物理的近似,最基本的近似是“非相对论近似”(Schr?dinger方程
本来就是非相对论的原理)、“绝热近似”(由于原子核质量比电子大得多,而把原子核
当成静止的点处理)和“轨道近似”(用一个独立函数来描述一个独立电子的运动)。
量子化学的从头计算方法就是在各种近似上作的研究。例如最基本的从头计算方法H
artree-Fock方法,是建立在自洽场近似的基础上的,除此之外还有Xa方法、密度泛函方
法等等,都运用了不同近似原理。
由于诸多近似方法的使用,“从头计算”方法并不是真正意义上的第一性原理,但
是其近似方法的运用使得量子计算得以实现。从头计算的结果具有相当的可靠程度,某
些精确的从头计算产生的误差甚至比实验误差还小。
C5. 量子化学的半经验方法和经验参数是如何产生的?
量子化学中的“半经验方法”与“从头计算”没有明显的界定,区别就在于近似程
度的不同。大多数半经验方法是由从头计算方法(主要是自洽场方法)改进而来的,它们
在从头计算的基础上作了很大的近似以提高计算速度,而计算结果则只能为定性分析提
供依据。
比半经验方法精确度更低的称为分子力场方法,它们完全依靠经验参数来支持,这
些参数是通过对大量体系进行的从头计算得到的,在整理参数时还必须作统计处理。
C6. 什么是启发?它在电脑象棋中是如何运用的?
对第一性原理的直接运用往往无法产生高的效率,有时需要用一些经验方法作引导
。在电脑象棋中称为启发,而在计算量子化学中,则称为“猜”。
电脑象棋的一个最基本的搜索原理称为Alpha-Beta,它可以对搜索树作有效而严格
的裁剪。但是Alpha-Beta方法产生的效率受分枝搜索的顺序影响很大,而对哪些着法进
行优先搜索,却没有第一性原理可寻。大量实验表明,下面的启发方法可以提高裁剪效
率:
(1) 吃子启发:即优先考虑吃子的着法,特别是吃大子的着法,这种启发方法只适
用于象棋,而且完全依赖于“子力价值”这一经验参数,所以该方法是“绝对经验”的
方法;
(2) 杀手或历史启发:即考虑别的分枝上比较好的着法,大量尝试表明这种方法适
用于各种棋类游戏,但由于不同分枝上的局面没有必然联系,所以这种启发方法称不上
第一性原理;
(3) 迭代加深启发:搜索到一定的深度需要很长时间,但是可以考虑浅一层的搜索
,分值大的着法可以在深一层的搜索中优先考虑,显然这种方法不是第一性原理,但是
加深一层搜索会产生截然不同的结果,这种情况在象棋中毕竟不会经常发生,所以事实
上这种启发非常有效。
C7. 计算量子化学中的经验方法是如何为从头计算服务的?
目前计算量子化学的绝大部分方法,都是以Hartree-Fock自洽场方法为基础的,“
自洽场”本身就是一个迭代公式,迭代收敛标志着计算完成。然而迭代是否收敛,或者
收敛速度的快慢,受初始条件影响很大,在没有第一性原理可以给出答案时,就需要通
过“猜”来决定初始轨道的,而猜的方法恰恰是经验方法。
在构型搜索中往往也会采用类似的方法,单点计算的精确度确实影响构型搜索的结
果,但是从头计算会使得收敛速度降低。所以初始的最不确定的构型进行搜索时,往往
先使用经验方法。等到搜索结束,构型接近精确构型时,再使用精度高的从头计算方法
来搜索,这样可以节省很多时间。
--
我的友情测试更新了,欢迎测试!
╔═══════════════════╗
║★★★★★友谊第一 比赛第二★★★★★║
╚═══════════════════╝
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 天外飞仙]
※ 来源:·哈工大紫丁香 http://bbs.hit.edu.cn·[FROM: 202.118.229.*]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.380毫秒