关于作者

 一个毕业于北京大学数学力学系,在中国科学院计算所、计算中心和网络中心工作过,在澳大利亚科工组织DMS、香港浸会学院数学系和中国21世纪议程管理中心等处工作过,多次获国家和中科院科技奖并享受政府特殊津贴的退休老头。现在在【中国科普博览】网“科学新语林”栏目里开设一个《数学与计算机》的个人专栏,愿和爱好数学与计算机的各界网友和青少年朋友,谈谈对数学与计算机的看法、想法。

《常用算法之智能计算 (一) 》:智能计算概述

张建中
2018年10月09日
智能计算(Intellectual Computing,IC),也称计算智能(Computational Intelligence,CI)或软计算(Soft Computing,SC),是受人类组织、生物界及其功能和有关学科内部规律的启迪,根据其原理模仿设计出来的求解问题的一类算法。智能计算所含算法的范围很广,主要包括神经网络、机器学习、遗传算法、模糊计算、蚁群算法、人工鱼群算法、粒子群算法、免疫算法、禁忌搜索、进化算法、启发式算法、模拟退火算法、混合智能算法等类型繁多、各具特色的算法。以上这些智能计算的算法都有一个共同的特点就是通过模仿人类智能或生物智能的某一个或某一些方面而达到模拟人类智能、实现将生物智慧、自然界的规律等设计出最优算法,进行计算机程序化,用于解决很广泛的一些实际问题。当然,智能计算的这些不同研究领域和算法各有各的特点,虽然它们具有模仿人类和生物智能的共同点,但是在具体实现方法上还存在一些不同点。例如人工神经网络模仿人脑的生理构造和信息处理的过程,模拟人类的智慧;模糊计算模仿人类语言和思维中的模糊性概念,也是模拟人类的智慧;进化计算模仿生物进化过程和群体智能过程,模拟大自然的智慧等。

智能计算(摘自互联网)

智能计算,借鉴仿生学的思想,基于生物体系的生物进化、细胞免疫、神经细胞网络等诸多机制,用数学语言抽象描述的计算方法,是基于数值计算和结构演化的智能,是智能理论发展的高级阶段。智能计算有着传统计算无法比拟的优越性,它的最大特点就是不需要对问题自身建立精确的数学模型,非常适合于解决那些因为难以建立有效的形式化模型而用传统的数值计算方法难以有效解决、甚至无法解决的问题。
随着计算机系统智能性的不断增强,由计算机自动和委托完成任务的复杂性和难度也在不断增加。所以,智能计算也可以看作是一种经验化的计算机思考性的算法,是人工智能体系的一个分支,是辅助人类去处理各式问题的具有独立思考能力的系统。
智能计算是借助自然界、特别是生物界规律的启示,根据其规律,设计出求解问题的算法。数学、物理学、化学、生物学、心理学、生理学、神经科学和计算机科学等诸多学科的现象与规律都可能成为智能计算算法的基础和思想来源。从相互关系上来看,智能计算属于人工智能的一个分支。现在,智能计算的发展也面临严峻的挑战,其中一个重要原因就是智能计算目前还缺乏坚实的数学理论基础,还不能像物理、化学、天文等学科那样非常自如地运用数学工具解决各自的计算问题。虽然神经网络具有比较完善的理论基础,但是像进化计算等一些重要的智能算法还没有完善的数学基础;智能计算算法的稳定性和收敛性的分析与证明还处于研究的开始阶段。通过数值实验方法和具体应用手段检验智能计算算法的有效性和高效性是研究智能计算算法的重要方法。从其本质上来看,智能计算是仿生的、随机化的、经验性的,大自然也是随机性的、具有经验性的,抽取大自然的这一特性,自动调节形成经验、取得可用的结果。这些方法还具有以下共同的要素:自适应的结构、随机产生的或指定的初始状态、适应度的评测函数、修改结构的操作、系统状态存储结构、终止计算的条件、指示结果的方法、控制过程的参数等等。计算智能的这些方法具有自学习、自组织、自适应的特征和简单、通用、健壮性强、适于并行处理等优点。在并行搜索、联想记忆、模式识别、知识自动获取等方面得到了广泛的应用,取得了诸多开创性的成果。
这里所说的“软计算”是相对于“硬计算”而言的。所谓“硬计算”是指传统的数值计算,具有可用的完善数学模型,坚实的数学理论基础,主要特征是严格、确定和精准。但是硬计算并不适合处理现实生活中的许多问题,如汽车驾驶、人脸识别、信息检索等,软计算通过对不确定、不精确及不完全取值的容错以取得低代价的解决方案和稳定性,模拟自然界中智能系统的生化过程(人的感知、脑结构、生物进化和免疫等)来有效的处理日常工作、科研和生产中遇到的诸多问题。当然,软、硬计算的说法只是相对而言的,很难进行严格的定义和区分。
智能计算跟数值计算的目的是一样的,即通过计算得到令人满意的接近真解的近似解,再拿这个近似解代替真解来说明和解决问题。一般情况下,很多问题是没有解析解的,这时可以通过数学建模、用计算方法来求数值解;当遇到问题特别复杂,用传统计算方法计算量太大或很难在计算机上实现时,可以考虑采用智能算法。
计算智能是受大自然智慧和人类智慧的启发而设计出的一类算法的统称,随着技术的进步,在科学研究和工程实践中遇到的问题变得越来越复杂,采用传统的计算方法来解决这些问题面临着计算复杂度高、计算时间长等问题,特别是对于一类高难度问题,传统算法根本无法在可以接受的时间内求出精确解。因此,为了在求解时间和求解精度上取得平衡,提出了很多具有启发性特征的智能算法。这些算法或模仿生物界的进化过程,或模仿生物的生理构造和身体机能,或模仿动物的群体行为,或模仿人类的思维、语言和记忆过程的特性,或模仿自然界的物理现象,希望通过模拟大自然和人类的智慧实现对问题的优化求解,在可接受的时间内求解出可以接受的解。这些算法共同组成了计算智能算法。
智能计算和不少学科之间有着密切的关系,如智能计算和人工智能、最优化算法及统计计算等。

人工智能(Artificial Intelligence,AI),是研究、开发用于模拟、延伸和扩展人类的智能的理论、方法、技术及应用系统的一门技术科学,是计算机科学的一个分支,它企图了解智能的实质,以得出一种新的能以人类智能相似的方式做出反应的智能性机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。人工智能研究的一个主要目标是使机器能够胜任一些通常需要人类智能才能完成的复杂工作,但智能计算和人工智能是两个完全不同的概念,计算和通信两个领域的融合开创了智能计算的新天地,现在计算机已经可以更聪明地帮助人们获得和处理信息,这已经和人工智能的概念大相径庭了。从相互关系上看,计算智能应属于人工智能的一个分支。
最优化算法解决的是一般的最优化问题。最优化问题可以分为求解一个或一组函数中、使得函数取值最小的自变量的函数优化问题和在一个解空间里面,寻找最优解,使目标函数值最小的组合优化问题等。优化算法有很多,经典算法包括线性规划,动态规划等,改进型局部搜索算法包括爬山法,最速下降法等;智能计算中的模拟退火遗传算法以及禁忌搜索称作指导性搜索法,而神经网络,混沌搜索则属于系统动态演化方法,从不同的角度和策略实现改进,取得较好的"全局最小解"。二者之间既有区别,而又一定的关系,形成互补去解决常见的一些优化问题。
从比较广泛的意义上讲,智能计算和统计计算、蒙特卡罗方法联系甚为密切,可互为从属关系,是你中有我、我中有你,使用中也是互相补充。从这些算法的介绍和使用中不难发现这一特点。
智能计算是一种多层次级的计算模式,通常可分为6个层次:第一层为操作模拟层,把一些最基础的思考操作进行程序化处理;第二层为存在经验层,即对于优势的经验和便捷的过程代码化;第三层称为绩效评估层,即对各种经验的模拟结果进行评分,并能随着条件和期望结果的变化改进评分体系;第四层分为A、B两个系统:A系统通过智能计算对系统的变数进行有效的预测,B系统对这可能存在的预测结果进行的预判性评估;第五层为决策执行层,对上面的决策执行并在执行过程中进行一些必要的修正;第六层是智能计算的经验系统,对实际运行结果进行总结和经验性判定,判断判定结果的准确度。
现在,智能计算在国内外得到广泛的关注,已经成为人工智能以及计算机科学的重要研究方向,并在自身性能的提高和应用范围的拓展中不断完善。计算智能的研究、发展与应用,无论是研究队伍的规模、发表的论文数量,还是网上的信息资源,发展速度都很快,已经得到了国际学术界的广泛认可,并且在优化计算、模式识别、图像处理、自动控制、经济管理、机械工程、电气工程、通信网络和生物医学等多个领域取得了成功的应用,应用领域涉及国防、科技、经济、工业和农业等各个方面,尤其是在军事、金融工程、非线性系统最优化、知识工程、计算机辅助医学诊断等方面取得了丰硕的成果,下面简单介绍智能计算在这些领域中的应用。
科学技术的不断进步使得军事领域的各个方面都发生了革命性的变革和质的飞跃。当前,以计算机和信息技术为核心的新军事变革,使得现代战争呈现出的特点已不再是过去的以“大”吃“小”,而是现在的以“快”吃“慢”。加快信息处理速度,争夺战场信息优势,运用智能化的武器装备,已经成为21世纪战争的基本形态。面对这一重大变革,世界各国军队都在调整军事战略,其中发展先进的计算技术已成为各国军队的共同选择。计算智能是借助现代计算工具模拟人的智能机制、生命演化过程和人的智能行为而进行信息获取、问题分析、理论应用和方法生成的一种计算技术。近年来,在新的形势下,国家安全和军事领域中出现了许多新的问题,有些问题难以用传统方法来解决,甚至在某些情况下还不能完全将它们表示出来。为此,人们采用包括模糊数学、神经网络和遗传算法在内的计算智能来解决这些问题,取得了一些新的进展和突破。目前,计算智能在军事领域中的应用已涉及到作战指挥、信息处理、管理决策、智能控制、专家系统、故障诊断等方面,并还在不断拓宽深入中。
金融工程是将工程思维引入金融领域,综合运用各种工程方法来设计、开发和实施新型的金融产品,创造性的解决各种金融问题。如在股市预测、智能交易决策系统和证券组合投资策略等方面,计算智能技术都取得了比较好的效果。
对计算智能领域的神经网络融合算法、自适应信号处理所提出的各种算法应用于计算机辅助医学诊断和生物医学信号分析,也取得了许多应用成果。
目前关于计算智能的研究和应用仍处于蓬勃发展初期阶段,应用范围遍及各个科学领域。虽然计算智能是一门新兴的综合型学科,而且各种智能方法的发展历史也不是很长,但是其发展却是相当迅猛,应用也相当广泛。当前除了对单一的算法进行研究和应用之外,现已开始对各种算法的融合进行研究,针对各个算法的特点,有目的的进行取长补短的算法综合。典型的融合方案有人工神经网络与模糊逻辑、人工神经网络与免疫算法和遗传算法、模糊逻辑与免疫算法、模糊逻辑与遗传算法及遗传算法与免疫算法等,特别是和传统数值算法结合,取得了一些突破性成果。融合之后的算法可以提高算法的性能,增强算法的适应性和稳定性,同时还克服了算法选择的盲目性。另外,还有学者提出了计算智能的新框架――生物网络结构,即神经内分泌免疫网络。它由人工神经网络、人工内分泌系统和人工免疫系统等组成。新框架的提出为人们研究其理论和应用技术提供了新平台,为计算智能今后的发展指明了方向。计算智能技术在自身性能的提高和应用范围的拓展中将得到不断完善。
目前的智能计算研究的水平暂时还很难使“智能机器”真正具备人类的常识,但智能计算将在21世纪得到蓬勃发展,不仅仅只是功能模仿要持有信息机理一致的观点,即人工脑与生物脑将不只是功能模仿,而是具有相同的特性。这两者的结合将开辟一个全新的领域,开辟很多新的研究方向。智能计算将探索智能的新概念,新理论,新方法和新技术,而这一切将在今后的发展中都会取得新的重大成就。