当前位置: 首页 > news >正文

围棋与育种

最近因为娃子报名了围棋课,我本着交一次课学两个人的态度,入门围棋,买了些书,听了些课,有所得。学了两个多月,现在6级水平,了解了基本的攻杀技巧,会判断输赢。

下面截图是今天的一盘棋,执黑胜利27子。

围棋作为最后被计算机攻克的棋牌类游戏,它的复杂度相对于其它游戏遥遥领先,之前没有接触过,一直感觉到高深莫测,也没有机会学习,这次入门围棋让我想到了很多,写篇博客介绍一下吧。

主要的想法:

  • 1,资源是有限的
  • 2,模块化的学习的必要性
  • 3,站在巨人的肩膀上
  • 4,自己的风格
  • 5,未来的育种
  • 6,勤而行之

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,比如基因编辑等,工具的应用不但可以提升效率,更重要的是他会有先行者的奖励,数据积累越多模型迭代越好预测准确性越高,庄周骑着大鱼说:“这就是蝴蝶效应”,因为效果可以叠加……

王者荣耀游戏中,庄周梦中蝴蝶扇起翅膀,对身边的敌人造成法术伤害,并增加范围内友军移动速度持续5秒,5秒内的连续命中会增加对敌人造成的伤害和叠加移动速度,最多5层;被动:每隔6秒,庄周会自动释放一次蝴蝶效应。

相关文章:

围棋与育种

最近因为娃子报名了围棋课,我本着交一次课学两个人的态度,入门围棋,买了些书,听了些课,有所得。学了两个多月,现在6级水平,了解了基本的攻杀技巧,会判断输赢。 下面截图是今天的一盘…...

Python第三方库纵览

Python第三方库纵览 知识点 更广泛的Python计算生态,只要求了解第三方库的名称,不限于以下领域: 网络爬虫、数据分析、文本处理、数据可视化、用户图形界面、机器学习、Web开发、游戏开发等 知识导图 1、网络爬虫方向 网络爬虫是自动进行HTTP访问并捕…...

测试.net开源音频库NAudio

微信公众号“dotNET跨平台”看到一篇文章《【.NET】使用NAudio实现录音功能》介绍基于NAudio实现录音功能(参考文献1)。NAudio是开源.net音频库,其支持播放多种格式的音频(WAV、AIFF、MP3、WMA等)、音频格式转换、录音…...

三方接口调用设计方案

在为第三方系统提供接口的时候,肯定要考虑接口数据的安全问题,比如数据是否被篡改,数据是否已经过时,数据是否可以重复提交等问题 在设计三方接口调用的方案时,需要考虑到安全性和可用性。以下是一种设计方案的概述&a…...

OLED透明屏全贴合技术:未来显示技术的突破性创新

在现代科技发展的浪潮中,OLED透明屏全贴合技术以其独特的优势和无限的应用前景引起了广泛的关注。 在这篇文章中,尼伽将深入探索OLED透明屏全贴合技术,介绍其优势和特点,并展望其在不同领域的应用前景。 一、OLED透明屏全贴合技术…...

map、sync.map、concurrent-map适用场景与源码解析

最近一直加班,无论工作日还是周末,虽然每天很忙但总感觉空空的,很少有时间停下来思考与总结。项目中各种甩锅,最后最苦逼的还是落到了研发的头上,文档编写、环境部署、问题排查虐得一遍又一遍。事情杂乱,研…...

分布式事物实现方案及优缺点

实现分布式事务是一个复杂的任务,涉及到许多技术和概念。在Java开发中,你可以借助一些框架和工具来实现分布式事务,以下是一些常见的方法: 1.两阶段提交(2PC) 这是一种经典的分布式事务处理方法。它涉及到…...

java使用@interface和反射来动态生成excel

1、对象类上搞注解 public class ReportExecuteDetailDto { // 项目信息 private String regionCode; // 大区编号 ExcelColumn(order 0, title "大区") private String regionName; // 大区名称 ExcelColumn(order 14, tit…...

【微服务】04-Polly实现失败重试和限流熔断

文章目录 1. Polly实现失败重试1.1 Polly组件包1.2 Polly的能力1.3 Polly使用步骤1.4 适合失败重试的场景1.5 最佳实践 2.Polly实现熔断限流避免雪崩效应2.1 策略类型2.2 组合策略 1. Polly实现失败重试 1.1 Polly组件包 PollyPolly.Extensions.HttpMicrosoft.Extensions.Htt…...

如何使用HTML5新增的标签来构建语义化的页面结构?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ <header>&#xff1a;⭐ <nav>&#xff1a;⭐ <main>&#xff1a;⭐ <section>&#xff1a;⭐ <article>&#xff1a;⭐ <aside>&#xff1a;⭐ <footer>&#xff1a;⭐ <figure> 和 &l…...

Vmware 虚拟机挂起恢复后发现无法 Ping 通,无法连接到主机

解决办法 进入对应主机中&#xff0c;切换到 root 账户&#xff0c;重启网络服务。 systemctl stop NetworkManager systemctl restart network在网上还找到了另一种解决方法&#xff1a; 在网卡配置文件中增加参数 NM_CONTROLLED"no"。 在 Centos 7 中修改如下所…...

Web自动化测试之图文验证码的解决方案

对于web应用程序来讲&#xff0c;处于安全性考虑&#xff0c;在登录的时候&#xff0c;都会设置验证码&#xff0c; 验证码的类型种类繁多&#xff0c;有图片中辨别数字字母的&#xff0c;有点击图片中指定的文字的&#xff0c;也有算术计算结果的&#xff0c;再复杂一点就是滑…...

软考高级系统架构设计师系列论文九十:论分布式数据库的设计与实现

软考高级系统架构设计师系列论文九十:论分布式数据库的设计与实现 一、分布式数据库相关知识点二、摘要三、正文四、总结一、分布式数据库相关知识点 软考高级系统架构设计师系列之:分布式存储技术...

Day 84:网络结构与参数

单层数据 package dl;/*** One layer, support all four layer types. The code mainly initializes, gets,* and sets variables. Essentially no algorithm is implemented.*/ public class CnnLayer {/*** The type of the layer.*/LayerTypeEnum type;/*** The number of …...

vue2.6及以下版本导入 TDesign UI组件库

TDesign 官方文档:https://tdesign.tencent.com/vue/components/button 我们先打开一个普通的vue项目 然后 如果你是 vue 2.6 或者 低于 2.6 在终端执行 npm i tdesign-vue如果你是 2.7 或者更高 执行 npm i tdesign-vuenaruto这里 我们 以 2.6为例 因为大部分人 用vue2 都是…...

VR/AR/眼镜投屏充电方案(LDR6020)

VR眼镜即VR头显&#xff0c;也称虚拟现实头戴式显示设备&#xff0c;随着元宇宙概念的传播&#xff0c;VR眼镜的热度一直只增不减&#xff0c;但是头戴设备的续航一直被人诟病&#xff0c;如果增大电池就会让头显变得笨重影响体验&#xff0c;所以目前最佳的解决方案还是使用VR…...

区分什么是Java内存模型(JMM)和 JVM运行时数据区

文章目录 一、概念区分1、什么是内存模型&#xff1f;什么是&#xff08;内存区域&#xff09;运行时数据区&#xff1f;2、为什么要有Java内存模型&#xff1f;2.1、硬件的效率与一致性2.2、 CPU和缓存的一致性2.2.1、为什么需要CPU cache&#xff1f;2.2.2、三级缓存&#xf…...

Flask狼书笔记 | 04_表单

文章目录 4 表单4.1 HTML表单4.2 使用Flask-WTF4.3 处理表单数据4.4 表单进阶实践小记 4 表单 表单是和用户交互最常见的方式之一&#xff0c;本章涉及的Python包由WTForms、Flask-WTF、Flask-CKEditor。&#xff08;p104&#xff09; 4.1 HTML表单 通过<form>标签创建…...

RabbitMQ+springboot用延迟插件实现延迟消息的发送

延迟队列&#xff1a;其实就是死信队列中消息过期的特殊情况 延迟队列应用场景&#xff1a; 可以用死信队列来实现&#xff0c;不过死信队列要等上一个消息消费成功&#xff0c;才会进行下一个消息的消费&#xff0c;这时候就需要用到延迟插件了&#xff0c;不过要线在docker上…...

多线程和并发(1)—等待/通知模型

一、进程通信和进程同步 1.进程通信的方法 同一台计算机的进程通信称为IPC&#xff08;Inter-process communication&#xff09;&#xff0c;不同计 算机之间的进程通信被称为 RPC(Romote process communication)&#xff0c;需要通过网络&#xff0c;并遵守共同的协议。**进…...

[特殊字符] 智能合约中的数据是如何在区块链中保持一致的?

&#x1f9e0; 智能合约中的数据是如何在区块链中保持一致的&#xff1f; 为什么所有区块链节点都能得出相同结果&#xff1f;合约调用这么复杂&#xff0c;状态真能保持一致吗&#xff1f;本篇带你从底层视角理解“状态一致性”的真相。 一、智能合约的数据存储在哪里&#xf…...

变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析

一、变量声明设计&#xff1a;let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性&#xff0c;这种设计体现了语言的核心哲学。以下是深度解析&#xff1a; 1.1 设计理念剖析 安全优先原则&#xff1a;默认不可变强制开发者明确声明意图 let x 5; …...

iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘

美国西海岸的夏天&#xff0c;再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至&#xff0c;这不仅是开发者的盛宴&#xff0c;更是全球数亿苹果用户翘首以盼的科技春晚。今年&#xff0c;苹果依旧为我们带来了全家桶式的系统更新&#xff0c;包括 iOS 26、iPadOS 26…...

ETLCloud可能遇到的问题有哪些?常见坑位解析

数据集成平台ETLCloud&#xff0c;主要用于支持数据的抽取&#xff08;Extract&#xff09;、转换&#xff08;Transform&#xff09;和加载&#xff08;Load&#xff09;过程。提供了一个简洁直观的界面&#xff0c;以便用户可以在不同的数据源之间轻松地进行数据迁移和转换。…...

Module Federation 和 Native Federation 的比较

前言 Module Federation 是 Webpack 5 引入的微前端架构方案&#xff0c;允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...

LangChain知识库管理后端接口:数据库操作详解—— 构建本地知识库系统的基础《二》

这段 Python 代码是一个完整的 知识库数据库操作模块&#xff0c;用于对本地知识库系统中的知识库进行增删改查&#xff08;CRUD&#xff09;操作。它基于 SQLAlchemy ORM 框架 和一个自定义的装饰器 with_session 实现数据库会话管理。 &#x1f4d8; 一、整体功能概述 该模块…...

vulnyx Blogger writeup

信息收集 arp-scan nmap 获取userFlag 上web看看 一个默认的页面&#xff0c;gobuster扫一下目录 可以看到扫出的目录中得到了一个有价值的目录/wordpress&#xff0c;说明目标所使用的cms是wordpress&#xff0c;访问http://192.168.43.213/wordpress/然后查看源码能看到 这…...

c# 局部函数 定义、功能与示例

C# 局部函数&#xff1a;定义、功能与示例 1. 定义与功能 局部函数&#xff08;Local Function&#xff09;是嵌套在另一个方法内部的私有方法&#xff0c;仅在包含它的方法内可见。 • 作用&#xff1a;封装仅用于当前方法的逻辑&#xff0c;避免污染类作用域&#xff0c;提升…...

【把数组变成一棵树】有序数组秒变平衡BST,原来可以这么优雅!

【把数组变成一棵树】有序数组秒变平衡BST,原来可以这么优雅! 🌱 前言:一棵树的浪漫,从数组开始说起 程序员的世界里,数组是最常见的基本结构之一,几乎每种语言、每种算法都少不了它。可你有没有想过,一组看似“线性排列”的有序数组,竟然可以**“长”成一棵平衡的二…...

Java后端检查空条件查询

通过抛出运行异常&#xff1a;throw new RuntimeException("请输入查询条件&#xff01;");BranchWarehouseServiceImpl.java // 查询试剂交易&#xff08;入库/出库&#xff09;记录Overridepublic List<BranchWarehouseTransactions> queryForReagent(Branch…...