大家好,我是邓飞。
围棋作为最后被计算机攻克的棋牌类游戏,它的复杂度相对于其它游戏遥遥领先,之前没有接触过,一直感觉到高深莫测,也没有机会学习,这次入门围棋让我想到了很多,写篇博客介绍一下吧。
1. 资源是有限的
下围棋,是你走一步,对手走一步,所以要发挥出每一步的价值,围棋,是围地盘,地盘大的赢。要确保自己能围很多地盘,还要能守住,才是目的。所谓:“金角银边草肚皮”,就是说,角落最好围,因为可以利用两边的线,边是齐次,中间最难围,所以下围棋是先占角,然后拆边,最后中腹作战。围棋中的三个阶段:布局,中盘,官子。
经济学中讲,人的资源是有限的,人的欲望是无限的,如何把有限的资源更大效率的利用,满足更多的欲望,这是一个学问。下围棋也是这样,利用效率的高低,也分为不同的级别,古人分为九品,其中一品等级最高。
一品入神、二品坐照、三品具体、四品通幽、五品用智、六品小巧、七品斗力、八品若愚、九品守拙。
育种中也是这样,资源总是有限的,资金有限,人员有限,土地有限,种质有限,时间有限,要怎么搭配如何选择才能效率最高效果最好,这确实需要好好思考规划。体会到资源是有限的,才会不断把目标记于心中,在行动中认识到意义,就像每个细胞可以克隆为一个整体,每个工作也能体会对整体的意义,每个棋子彼此的配合,一花一世界,一叶一菩提。
个人的时间分配也是这样,时间是有限的,注意力是有限的,或者享受生活,或者努力工作,切勿浑浑噩噩,不知所措。下棋少走俗手,多走本手,走妙手。尼采有云:力的过剩就是力的证明。
2. 模块化的学习的必要性
做育种时,数量遗传学是基础,配合力、育种值、类群划分这些概念不是可有可无的东西,这是基础模块。围棋也有各种模块化的学习,比如各种定式以及定式的常见变化,就像搭积木一样,有些招式是连接在一起的,这有点像GWAS中的LD概念,高度连锁,如果下棋时对方走无理手,后面会吃亏。
围棋发展到现在,经过多少前辈总结淘汰,保留的都是可行度很高的定式,所以学习围棋,学习定式,就是学习一个一个的模块。育种也是这样,有很多模块化的东西,比如同质选配、异质选配有很多规则,选择强度与群体变异情况,包括类群内和类群间的组配模式,有很多模块。模块可以用于组合,也可以打破创建新的模块,但是创造性的模块要建立在掌握的基础上,围棋不是一堆散落的棋子随意组合,育种也不是一些种质随意的组配,都有一定的定式和模块。
关于定式和模块的学习,围棋中有棋谱和死活题,育种中有推广品种的育成历史,这些就像围棋比赛九段棋手的棋谱,可以模仿,可以研究理解,可以修改创新。
关于编程学习,模块化的包,比如R包,python包,在此基础上可以自己编写函数和包去满足自己的需求,这些模块化的东西比从头开始制造轮子要更高效。
3. 站在巨人的肩膀上
柯洁被问到今天的棋手强还是古代的棋手强,柯洁说:现在的棋手计算力要强于古人,我觉得整体而言,现在的棋手要高于古人,当然顶尖的国手计算力还是可以和如今的九段一决高下的,毕竟人类的智力没有多少进化,对于离群点的国手,今人古人应该差异不大。
关于计算力,围棋中计算力的高低,每个人不一样,有些人算得快算得远,但这个东西更多的是可以训练的,特别是大量死活题的训练,对于计算力的提升帮助很大。围棋老师说:一万道题,入段轻轻松松,就是说的这种情况。
同理,现在的育种水平整体高于过去,就像现在的品种普遍吊打过去的品种,不是过去的品种退化了,而是现在的品种变强了。育种利用的是育种值,遗传进展不停止,育种就一直往前进。
对于育种家,这个“家”也称为高手,到“家”的过程中,也要像围棋算力提升一样,不断地做死活题,思考--操作--复盘总结,组配--观测--分析--总结,把这个过程不断地输入自己的大脑,然后大脑建立一个模型,建立一个反射弧,然后成为育种专家,成为育种家。
4. 自己的风格
下围棋可以感受到不同人的风格,有些棋手喜欢战斗,有些擅长防守,有些重视实地,有些更偏外势,风格各异,比如“宇宙流”,“中国流”,“清源流”等。
育种家也有自己的风格,有些高产,有些稳产,有些局部优势大,有的抗性特别好。具体原因,有种质资源的原因,更多的是育种家的选择。因为育种有很多目标,选择不同,自然结果也不同。就像每个棋手,棋子都是一样的,下法不同,自然风格也不一样。
人工智能AlphaGo战胜人类,目前普遍使用的腾讯的人工智能软件“绝艺”,人类完全不是对手,人工智能成为棋手下棋中的评分器,这一手胜率降低了30%,这一手胜率提升了40%,人工智能以一种数学的角度去判断落子的效率,AI风格席卷棋届。育种中也有这种趋势。
5. 未来的育种
就像围棋有了AI风格,育种中的商业化育种也降低了个人风格的影响,数据决策,测产、测试、分析等流程搭建和维护成为了主要,育种家依赖数据做决策,从围棋发展的角度上看,未来的育种应该也是这个趋势。
6. 勤而行之
最初,人类根本不相信计算机能下过人类,象棋90年代都已经被破解,而2015年之前的计算机的围棋最高水平也不过是三段,对于九段棋手计算机连陪玩的资格都不够,随着AlphaGo的出现,人工智能以一种飞速的发展打破了人类的认知,AlphaGo1.0李世石还可以赢一局,AlphaGo2.0对柯洁三比零胜利,后面人类就再也没有赢过一局。这就是数据模型的力量,
现在的围棋比赛,人工智能成为了落子效率的标准,而人工智能之前的比赛成为了神仙打架,很多招式人类也很难看懂,匪夷所思。
未来的育种,包括很多决策,估计都会向这个方向走。
老子有云:“上士闻道,勤而行之;中士闻道,若存若亡;下士闻道,大笑之。不笑不足以为道。”,现在围棋中很多AI定式,比如点三三,几乎每局比赛都会出现,很多棋手也找人工智能陪练。对于育种,也应该有所启示,勤而行之。
好消息是,育种的评价维度很多,不像围棋有胜负清晰,而且每人只能一步一步走。人工智能在育种选择的应用,也只能是环节化的应用,比如基因组选择……
但是,要看到,未来的趋势,就像现在围棋比赛中大家都有AI定式,一些新的方法必将改变育种的流程和育种家的选择,比如DH+GS,比如基因编辑等,工具的应用不但可以提升效率,更重要的是他会有先行者的奖励,数据积累越多模型迭代越好预测准确性越高,庄周骑着大鱼说:“这就是蝴蝶效应”,因为效果可以叠加……
7. 所以,数据分析师应该怎么学围棋
先把AlphaGo配置上吧。
为何要搭建自己的AI围棋,腾讯围棋和野狐围棋,AI复盘都要钱,99围棋只给出最佳选点,但是没有给出变化图。所以,自己搭建一个AI围棋,用于复盘野狐围棋和99围棋的棋谱,是一个比较好的解决方案。
折腾的结果:
目前战绩1:8,野狐1段:

这里,我把自己的配置好的文件,进行了整理,里面安装包、配置文件,都是完整的,直接配置使用。

安装Sabaki
最新版:https:///SabakiHQ/Sabaki/releases/tag/v0.52.2
文件夹已经下载的事最新版:

打开之后的界面:

配置Sabaki的中文菜单:

找到参数设置界面,选择语言为简体中文:

配置Katago智能AI引擎
文件夹中的文件,这几个名字后面有用:

Katago文件名:
exe是引擎,gz是权重文件,cfg是参数文件,三个文件名需要在设置中体现
点击Sabaki中的设置,点击引擎:

D:\weiqi\Sabaki+Katago1.45\Katago1.4.5\katago-v1.4.5-opencl-windows-x64\katago.exe
gtp -model kata20bs530.bin.gz -config default_gtp.cfg
time_settings 0 5 1具体配置的文字版介绍:
然后点击引擎,点击图标,开始初始化:


上面初始化完成,就可以用AI下棋了。

Katago配置的Sabaki使用说明
点击AI分析后,会给出每一步棋的胜率变化,以及下一步棋的推荐选点,绿色的是第一选择,齐次是红色的,其它没有颜色的不推荐。
右上角是胜率的变化曲线。
右下角是每个棋的分支,主分支是实际下棋的路线,尝试下棋就会有分支,以及分支的分支,可以尝试很多可能。
把鼠标放在推荐的选点上,会给出5~10步的AI推荐应对棋,用于展示可能得变化。
如何用Katago复盘野狐围棋的棋谱
网上有把Katago链接到野狐围棋上,这里不做介绍,我们用AI不是为了作弊,而是为了学习,更好的复盘。所以,可以把野狐上自己或者别人下的棋谱下载到电脑上,用Katago复盘,加快自己的理解。
打开电脑版的野狐围棋,找到棋谱,保存棋谱,格式为sgf文件。

用Sabaki打开,用Katago复盘时显示无法同步,主要是因为贴目没有设置,设置一下就可以了。

在对局信息中,设置贴目7

然后按F4快捷键,就可以智能分析棋局了:

如果觉得Sabaki的棋子摆得有点歪,可以设置一下:

就不歪了:
99围棋棋谱AI复盘
登录电脑版的99围棋,找到棋谱:

找到棋谱:保存棋谱:

用Sabaki打开,设置一下贴目,就可以用Katago分析了:

Sabaki和Katago软件下载:本公众号(育种数据分析之放飞自我)回复:围棋,获得下载链接。
资源推荐:
1,快来领取 | 飞哥的GWAS分析教程
2,飞哥汇总 | 入门数据分析资源推荐
3,数量遗传学,分享几本书的电子版
4,R语言学习看最新版的电子书不香嘛?
5,书籍及配套代码领取--统计遗传分析导论
6,飞哥的学习圈子