高逸人
(大连市第二十四中学,辽宁 大连 116000)
组合数学在软件工程领域中的应用研究
高逸人
(大连市第二十四中学,辽宁 大连 116000)
在信息时代,计算机得到了普遍的推广运用。计算机是现代的一种用于高速计算的电子计算机器,它能够按照程序运行,自动、高速处理海量数据。组合数学是一门研究离散对象的学科,而计算机的核心就是处理离散对象,因此,计算机的出现带动了组合数学的发展,而组合数学的发展则为21世纪的计算机革命奠定了基础。组合数学的发展改变了传统数学中分析和代数占统治地位的局面。
计算机;离散对象;组合数学;软件工程
广义上的“组合数学”就是离散数学,狭义的“组合数学”则是研究满足一定条件组合模型的存在、计数和构造等方面的问题。计算机的兴起带动了组合数学的发展,组合数学可以说是计算机的基础,在国外已成为十分重要的学科。计算机基本上只用2个数字表达信息——“0”和“1”,因此计算机科学就是算法科学,它处理的对象就是众多离散的数据。现代数学主要研究的是最一般的数量关系和空间形式,可以分为2大类:一类是研究连续对象,另一类则是研究离散对象。
组合数学是一门古老又年轻的学科,几千年前就已经萌芽,近年来才开始兴起。组合数学使数学家争论不断,目前还没有得出统一的结论。但可以肯定的是,组合数学是数学学科中的重要分支,主要研究离散结构的存在、计数、分析和优化等问题。因为计算机科学就是算法科学,它处理的对象就是众多离散的数据。计算机的出现、发展给组合数学带来了新的灵感,组合数学因此得到了飞速发展,改变了传统数学中分析和代数占统治地位的局面。组合数学的研究内容也包括满足一定条件的组态,因此组合数学研究的对象都是按照某种规则的安排。一切推理和发现,不管是否用语言描述,都能归结为如数、字、声、色这些元素经过某种组合的有序集合。数学家凭借组合数学的思想解决了很多有名的数学难题。
仔细观察一张世界地图会发现,如果一种颜色代表一个国家,为了便于区分,相邻的国家颜色不能相同,那么只需要4种颜色就能保证每2个相邻的国家的颜色不同,并且把各个国家清楚地表达出来。这个结论是一个著名的世界数学难题,一经提出,就引起了很多数学家的研究兴趣。但是众多优秀的数学家苦思冥想一个多世纪都未能通过理论证实这个结论,直到计算机的出现,计算机能高速处理海量的数据并且拥有强大的计算能力,可以为复杂的研究对象建立数学模型,节省了人工计算的时间。在1976年,数学家通过计算机运算证明了四色猜想。目前,很多数学家仍在探索这个问题,希望能找到更简单的方法证明这个理论。
船夫过河这个数学问题在中小学生的数学游戏中就有。一个船夫要把一只狼、一只羊和一棵白菜运过河。问题是当人不在场时,狼要吃羊,羊要吃白菜,而他的船每趟只能运其中的一个。他怎样才能把三者都运过河呢?这可以转变为一个很典型、很简单的组合数学问题。
对于学习软件的学生来说,组合数学是一门难度较大的学科。组合数学是计算机的基础,组合数学推动了计算机的发展,计算机也促进了组合数学的发展。事实上,很多著名的程序员数学都很拔尖,比如比尔·盖茨、求伯君等。一个拥有良好数学基础的程序员掌握计算机语言更快,找出更加简单便利的算法也更轻松。如今,计算机已经融入了人们的生活,基本上家家户户都有一台计算机,人们使用计算机也不单单只是为了计算,学习、工作、娱乐各个方面,计算机都有渗透。计算机的发展离不开数学的计算,因此有人把计算机科学称为算法的科学。美国政府在算法领域的投入巨大,因此美国在计算机领域的研究也一直走在世界的前列。
对于程序员来说,组合数学的作用很大,因为在软件工程的很多领域都要运用到组合数学,下面将列举说明。
公钥密码体制RSA是目前最有影响力和最常用的公钥加密算法,它能够抵抗到目前为止已知的绝大多数密码攻击。以RSA体制为基础,将为底的幂剩余函数、毕达哥斯作加组合变换可以消除RSA的周期,加大破译的难度,提高公钥密码体制的安全性。这种改进在密码领域引起了不小的轰动,它加大了算法的难度,以目前的计算技术想要破解计算仍然很困难。
组合数学是一种研究离散对象的基础数学,集合、图像都是它的研究对象。它不仅仅在软件工程中具有极高的研究价值,在企业管理、交通规划、战争指挥、金融分析等领域也有重要的应用,组合数学可以说已经渗透到人们生活的方方面面了。
由于组合数学需要分析众多的离散对象,计算烦琐复杂,发展阻力较大,然而计算机的出现正好解决了这一问题。计算机强大的计算能力,使组合数学突飞猛进地发展。将组合数学运用到天气预报中,可以说是天气预报的一种改革,分区分级计算降水量等可以提高天气预报的精确度。
四色问题是数学界著名的难题,它的结论简单但是众多优秀的数学家苦思冥想一个多世纪都未能通过理论证实这个结论。因为它的实际计算量太大,人工难以完成。直到1976年数学家通过计算机运算证明了四色猜想,在数学界引发了巨大的轰动。目前,仍有很多研究组合数学的学者在探索这个问题,希望能找到更简单的方法证明这个理论。
组合数学是一门既广博又深奥的学科,它是研究离散数学的科学,只要事物可以按照某种事物安排都可以运用组合数学,它已经渗透到生活的方方面面。组合数学需要综合数据建立数学模型,但这并不意味着组合数学只是进行计算,解决组合数学需要灵活变通,需要技巧和方法,一旦找到开启难关的钥匙,将不需要复杂烦琐的计算。这就是组合数学吸引众多数学家研究的特有的魅力。计算机的出现带动了组合数学的发展,而组合数学的发展则为21世纪的计算机革命奠定了基础。
[1]闫淑芳.组合数学中相邻与不邻问题的几种一般性的解法[J].邢台学院学报,2009(4).
[2]周敏,张世禄.一个组合数学新定理[J].西华师范大学学报(自然科学版),2008(4).
[3]李萍.利用组合数学化简汉诺塔问题[J].电脑开发与应用,2008(6).
[4]高洁.浅谈组合数学的应用与教学[J].中国科技信息,2005(15).
[5]邓秀芬.组合数学中的圆排列[J].科教文汇(下旬刊),2009(11).
〔编辑:刘晓芳〕
TP311.5;O157
A
10.15913/j.cnki.kjycx.2017.23.143
2095-6835(2017)23-0143-02