围棋是我国传统“四艺”之一,文献所载可以追溯到春秋战国时期。如今,围棋已经变成国际通行的棋种。可是你知道吗,围棋不仅是我国的文化遗产,其中还隐藏着很多有趣的数学小知识。

(1)“千古无同局”中的数学原理

围棋中素来有“千古无同局”的说法,意思是围棋中没有完全相同的两盘棋局。事实上,这是一个数学问题,我们知道,棋盘上有横纵各19列,因而落子点有19乘19等于361个。下棋过程中,黑白双方交替落子于交叉点上,每下一子,后一子的可落子选择就要少一个。排除一切其他情况,单纯根据排列组合知识,第1手棋有2361种选择,第2手棋有2360种选择,第3手棋有2359种选择……这样,下完一局棋应有2361·2360·2359·…种供选择的方案,这显然是个很大数字。而围棋作为一种博弈的智慧,每个参与者的具体情况,如棋风、情绪等都会直接影响到每局的吃子情况,因而实际可能有的棋局情况远远多于以上数字,所以,便有了“千古无同局”的说法。

(2)“对杀”中的数学原理

围棋中常用的互搏手段有对杀,又称杀气,主要出现在中盘阶段。对杀不但直接决定棋局的走向,而且也影响着整盘棋的最终胜负。对杀中双方的气分为内气、外气和公气。内气是棋内部的气,也就是眼内的气;公气是对杀双方共有的气;其他气都称外气。对杀时紧气的顺序一般是先紧外气,再紧公气,最后紧内气。当黑白一方紧对方气时,对方通过吃己方的棋子可以增加对方的气。对杀只有两种结果:一是一方杀死另一方从而产生胜者;二是双方都杀不死对方从而产生双活。而究竟出现哪种结果取决于双方气的组成和气数的对比,我们可以用一个数学模型来解释这一点。

首先列表给出对杀双方气的情况,举其中一种情况进行分析(见下表):当双方都无公气时(c=0)或当双方都无内气且只有1口公气时(b1=b2=0,c=1),则:1)若a1+b1-(a2+b2)>0,则甲无条件杀乙;2)若a1+b1-(a2+b2)<0,则乙无条件杀甲;3)若a1+b1-(a2+b2)=0,则谁先下谁就杀死对方。掌握了这一点,就能在把握棋局上占尽先机。

(3)“多子围空方胜扁”中的数学原理

“多子围空方胜扁”是围棋的一句棋彦,这句话的意思是说,用多颗棋子围空的时候,棋型要尽量走成富有立体感的方形,从而达到棋子的效率最大化,这样可以形成大空的势态;如果走出扁的棋型,所占目数少,单颗棋子效率低,弹性小,围成的空间也小,形成的可行范围也随之变小,这也就是“方胜扁”的道理所在。其实,这是一个典型的效益最大化的数学原理的题目。我们把围棋的棋盘想象成一个平面,在棋子相同的情况下,我们如何能实现空间最大化。这就是最大值取得的条件,即矩形为正方形时围空的效率最高。很多棋手就是利用了这一点,下棋过程中有意走出方形,从而围出更大的空间。

围棋作为古人的智慧结晶,蕴藏着很多知识。棋盘、棋彦、对局等都有值得我们思考的数学原理。

本作品为“科普中国-科学原理一点通”原创

举报/反馈

c语言围棋原理,围棋中的数学原理相关推荐

  1. 【转载】word2vec 中的数学原理详解

    文章目录 一.前言 二.预备知识 三.背景知识 四.基于 Hierarchical Softmax 的模型 五.基于 Negative Sampling 的模型 六.若干源码细节 原文传送门: wor ...

  2. 转:word2vec 中的数学原理详解

    1,目录和前言 https://blog.csdn.net/itplus/article/details/37969519 2,预备知识:逻辑回归.贝叶斯公式.霍夫曼树 https://blog.cs ...

  3. 魔术中的数学艺术系列讲座(三)——魔术中的数学原理

    魔术中的数学艺术 白色 (3)魔术中的数学原理 REC 白色 作者简介: 田汸,腾讯算法工程师,MatheMagician原创公众号作者.主攻NLP,擅长统计算法,数学建模.业余研究魔术16年,是资深 ...

  4. C语言函数在硬件中的执行原理

    目录 01.什么是函数? 02.函数和硬件的联系 03.调用时的堆栈信息 04.使用SkyEye全数字仿真进一步了解底层函数执行的原理 01.什么是函数? 众所周知,C语言的应用程序总是以「main」 ...

  5. 约瑟夫问题与魔术(五)——魔术《自我匹配的奇迹》中的数学原理

    特别通知:2020马丁加德纳聚会已于本周开始在线上举行,MatheMagician也将在10.18周日晚8点带来题为<数学魔术的魅力>讲座,详情请点击: 2020中国纪念马丁·加德纳聚会线 ...

  6. 机器学习中的数学原理——梯度下降法(最速下降法)

    好久没更新了,确实是有点懒了,主要是这两天返乡在隔离(借口).这个专栏主要是用来分享一下我在机器学习中的学习笔记及一些感悟,也希望对你的学习有帮助哦!感兴趣的小伙伴欢迎私信或者评论区留言!这一篇就更新 ...

  7. Python机器学习中的数学原理详解(补充勘误表)

    数学是机器学习和数据科学的基础,任何期望涉足相关领域并切实领悟具体技术与方法的人都无法绕过数学这一关.在一篇题为<放弃幻想,搞AI必须过数学关>的网文中,作者一针见血地指出想从事AI相关工 ...

  8. 机器学习中的数学原理——随机梯度下降法

    这个专栏主要是用来分享一下我在机器学习中的学习笔记及一些感悟,也希望对你的学习有帮助哦!感兴趣的小伙伴欢迎私信或者评论区留言!这一篇就更新一下<白话机器学习中的数学--随机梯度下降法>! ...

  9. 机器学习中的数学原理——过拟合、正则化与惩罚函数

    通过这篇博客,你将清晰的明白什么是过拟合.正则化.惩罚函数.这个专栏名为白话机器学习中数学学习笔记,主要是用来分享一下我在 机器学习中的学习笔记及一些感悟,也希望对你的学习有帮助哦!感兴趣的小伙伴欢迎 ...

最新文章

  1. Selenium v2.45.0 发布,此版本现已提供下载:http://selenium-rele
  2. Storm中Numbus,zookeeper,Supervisor,worker作用,Storm任务提交过程,Storm组件本地目录树,Storm zookeeper目录树
  3. C语言调用WIN32 API学习之6鼠标与键盘响应
  4. delphi7存取配置文件与sqlserver数据库连接_SQL Server基础知识概念要点详细讲解
  5. GitHub(从安装到使用)
  6. python history文件_【python之路19】文件操作
  7. java 清空stringbuffer_JAVA中清空StringBuffer变量
  8. mysql数据库永久链接_PHP使用数据库永久连接方式(mysql_pconnect)操作MySQL的是与非...
  9. Verilog实现独立按键消抖(状态机)
  10. Sass 基本特性-基础 笔记
  11. Spring Security 3多用户登录实现之二 多登录界面展示
  12. 小程序开发合同_如何开发微信小程序?
  13. 【Practical】线性空间
  14. lua table是否为空的判断
  15. android学生成绩查询代码,android学生成绩查询系统.pdf
  16. kali启动后出现Resuming from hibernation错误
  17. 【Linux】如何将ntfs硬盘挂载到home目录下并具有读写权限
  18. 新零售潮退后,其连锁管理观念依然坚挺
  19. mysql某一列 赋值_[MySQL]定时把某一列值赋值给另一列
  20. 计算机应用基础说课稿的模板,计算机应用基础说课稿

热门文章

  1. 配置邮箱和邮件大小限制 !
  2. 男人冬季吃羊肉有哪些好处男人冬季吃羊肉有哪些好处
  3. SQL Server 2017的Linked Server配置触发的bug“Exception Code = c0000005 EXCEPTION_ACCESS_VIOLATION”...
  4. 极智硬件 | 国产CPU大荟萃 且听我一一道来
  5. 电信主机托管费用_电信服务器托管费用
  6. Gitstack CVE-2018-5955命令执行漏洞分析
  7. 如何查看suse系统服务器sn,suse 配置 - sncder的个人空间 - OSCHINA - 中文开源技术交流社区...
  8. 关于树的最全知识就在这里了
  9. nokia x android 界面,诺基亚(NOKIA)X手机主界面评测-ZOL中关村在线
  10. 自定义控件 - 流式布局(CofferFlowLayout)