不瞒众位,本人也经常用软件拆棋。不懂的是,看见软件分析一个局面时,比如分析到10层,走马八进七得分是+500;然后又分析到11层走炮三平九,得分是+300,结果实际一般选择走炮三平九。我就不懂了,是到第11层算到了马八进七不成立?还是不如炮三平九好?应用软件练棋时发现,一般软件总是选择分析层数最多的招法,但是细细拆来,有时候也不是分析最多的那招就最好。哪位能指点为何?软件是怎么编辑的?另外软件自我学习功能有吗?比如曾经这种走法吃亏了,下次就不选择了?
当然我的软件是很一般的低端的。电脑配置也比较低,但是软件还是比我厉害多了。
当计算到第10层的时候是500分,当再深算一步的时候,这个500分的着法不成立,变成了100分或负分,于是软件开始计算另一路变化(即显示出来的第11层着法)。
太低层数的着法不能看(因为常常在变),通常20层以上的着法较为稳定些(只往深入算,不再变换新路子)。
这与象棋软件的算法有关,一般象棋软件都使用搜索树的算法,每一步都是树上的一个节点,比如红走跑二平五,黑有三种应对,这三种应对红又分别有几种应对,软件中的层就是搜索的步树,当然有些步没必要搜下去,软件会给每一步打分,分数低的会被剪掉,你说的第10层的招法在第11层已经被剪掉了,大致是这样吧,现在技术可能做得更好
象棋软件没有自学习的能力,就是一个搜索优化的过程,但这一技术应用到围棋上会出现困难,需要计算的情况太多了,所以现在围棋都是有深度强化学习的技术,具有自学习的能力,
对象棋而言,如果从开局就搜索,需要耗费时间多,所以现在都把常用的开局做出小的数据库,防止软件里,称为开局库,开始那几步照着走就行了
谢谢各位高人指点!不过我个人认为有的问题就在开局库里面!我们理所应当地把过去棋谱认为正确的走法,做成库,其实有些是有问题的。