APP下载

关于中国象棋人机对战的自学方法分析

2015-05-09马麟

青年文学家 2015年33期
关键词:中国象棋

摘  要:相较国际象棋人机对战程序的开发,中国象棋人机对战的设计更具有难度,然而我国相关学者人数并不多,具备研发人机对战自学习能力的学者更为缺乏。本文探究了通过激励学习算法训练神经网络、利用有效的算法学习两种中国象棋人机对战自学习办法,以便为中国象棋人机对战的开发提供参考。

关键词:中国象棋;人机对战;自学习

作者简介:马麟(1966-),女,河北清河人,本科学历,陕西省体育运动学校中职讲师,国家级象棋大师,国家级象棋裁判,多次进入全国女子个人锦标赛前六名,研究方向:中国象棋。

[中图分类号]:G891  [文献标识码]:A

[文章编号]:1002-2139(2015)-33--01

自从国际象棋研发人机对战系统后,世界各国学者将研究目标转向规则、棋路更为复杂的中国象棋。中国象棋是一种将两军对战转化为利用棋子博弈的游戏,对战双方在下棋时,充分活跃自身的思维,将形象思维与逻辑思维的作用发挥到极致。

一、中国象棋人机对战的自学习的具体方法

(一)通过激励学习算法训练神经网络

象棋对战机器的学习方法共有三种:激励学习、监督学习以及无监督学习。其中监督学习必须由导师辅助完成,导师在智能体运行状态时,告知智能体正确动作,并要求智能体记忆。无监督学习中只存在输入集,之后通过输入集之上的实例进行分组学习。激励学习是人类在智能体在接触环境过程中,通过给予智能体即时简单的奖励信号,使智能体在不断的尝试中,逐渐趋向合理的行为。激励学习有别于其他方法,区别在于人类并不告知智能体行为的对错,而是让其主动与外界接触,不断尝试,借由收到的奖惩信息,积累学习经验,以便确认哪种行为可以收到奖励信号,从而对这种行为进行学习,无限逼近最优行为。

现今,棋类博弈算法多采用TD学习算法以及Q-学习算法。TD学习算法结合了蒙塔卡洛思想与动态规划思想,一方面TD算法无需借助系统模型的帮助,即可从智能体所获取的经验中进行学习。另一方面,TD算法与动态规划的运行过程相同,迭代通过预估所得的值函数。Q-学习算法与TD算法的主要区别在于,Q-在进行学习迭代时,采取状态-动作对等奖赏以及采用Q*(s,a)作为估计函数,而不同于TD函数所采用的状态奖赏和V(s),因此智能体在每次进行学习迭代时都需对行为过程进行全面考察,以保证其规范学习过程。

神经网络应用广泛,各种问题均可以借助神经网络帮助解决,其作用主要有三类:分类、模式识别、函数逼近。BP神经网络得到广泛普及,成为目前非线性控制系统中使用的主流神经网络模型,因其能够解决当多层网络存在隐层时,导致学习存在障碍的问题。BP算法属监督学习,对神经网络训练而言,只能通过批量提供输入输出对的方法进行。然而许多实际应用的智能体不能识别最优策略,因此无法获取输入输出对。因此可将BP神经网络与激励网络融合为一体,形成新模型:RBP模型,该模型能够帮助BP网络从实际系统中获取学习经验,并以此作为参考改变学习策略,其过程是向最优策略无限逼近的过程,且在学习过程中无需由导师进行监督。该模型可以将所学知识用以训练精神系统,从而使网络逐渐达到最优状态。现将神经网络运用于棋类对战机器中,使其作为棋类对战的评估函数,机器通过不断地对战,利用激励学习算法对网络物产进行预测,进而训练神经网络,机器可通过误差反向传播的方法,对节点的权值进行反复的修正,从而使棋类评估函数愈发精确。

(二)利用有效的学习算法学习更合理的参数

无论评估函数有多复杂,都可以将其列作多项式。中国象棋的评估函数中至少含有五个方面的要点,而每一要点中又包含许多参数值,线性的将其组合在一起从而得到最终评估值。然而这样编出的程序,其棋力的高低,完全取决于编程者对象棋的理解,之后即使通过手调节,也很难提高机器的棋力。

若评估函数由经验累积而得,其参数也必定是由经验的积累而产生。因此利用某种学习算法以修改评估函数中的各个参数,则能达到更为理想的效果,机器的下棋水平逐渐提升。

相机对战机器可利用瞬时差分TD算法以寻求最为合适的参数组合。TD属激励学习,设计者可将全部棋子子力值配置归一,同时结合Alpha-Beta搜索方法,利用TD算法修该棋子的子力值,以达到有过中国象棋参数的目的。

棋子子力值更新的具体公式如下:

其中:

和分别代表棋子的权值和当前局势中该棋子对己方提供的优势。设我方棋子“车”,计算时除以2,若你场上“车”的数量为二,而对方为一,则计算返还值为。

先将前式的梯度与求和展开:

之后让机器进行大量的游戏对战,为机器提供经验值,一定数量的练习之后,即可使机器与他人对战。

二、结束语:

就目前来说,中国象棋人机对战博弈技术的研究尚处于探索阶段,拥有极大的发展空间。由研究象棋机器博弈的所得的技术成果,不只可以用做娱乐,也可用做保护社会安全,模拟城市可能出现的危险,或进行军事对战模拟综合提升我国军事力量,人机对战技术的研究无论理论意义或是应用前景都有其不可替代的价值。

参考文献:

[1]陈业鹏. 基于Alpha-Beta搜索算法的中国象棋人机对战的设计与实现[J]. 计算机光盘软件与应用,2012,04:197-199.

[2]周明明. 基于专家系统和蒙特卡罗方法的计算机围棋博弈的研究[D].南京航空航天大学,2012.

猜你喜欢

中国象棋
王跑跑
走特色发展之路 谱学校发展华章
——邯郸市展览路小学校园象棋活动侧记
快乐的朋友
马踏连营
马踏连营
中国象棋博弈程序中边界判断的优化方法研究
大博士回答
为业余棋手诊脉
中国象棋棋盘
让山村学校彰显棋类特色