本文对遗传算法在人工智能方面的应用进行介绍,通过遗传算法对全局运动估计的解决方案进行分析,最后就人工智能在算法的发展方向方面进行了展望和总结。下面是的小编为您带来的人工智能遗传算法论文【优秀2篇】,希望大家可以喜欢并分享出去。
人工智能之遗传算法论文
摘 要:非线性方程组的求解是数值计算领域中最困难的问题,大多数的数值求解算法例如牛顿法的收敛性和性能特征在很大程度上依赖于初始点。但是对于很多高维的非线性方程组, 选择好的初始点是一件非常困难的事情。本文采用了遗传算法的思想,提出了一种用于求解非线性方程组的混合遗传算法。该混合算法充分发挥了遗传算法的群体搜索和全局收敛性。选择了几个典型非线性方程组,考察它们的最适宜解。
关键词:非线性方程组;混合遗传算法;优化
1. 引言
遗传算法是一种通用搜索算法,它基于自然选择机制和自然遗传规律来模拟自然界的进化过程,从而演化出解决问题的最优方法。它将适者生存、结构化但同时又是随机的信息交换以及算法设计人的创造才能结合起来,形成一种独特的搜索算法,把一些解决方案用一定的方式来表示,放在一起成为群体。每一个方案的优劣程度即为适应性,根据自然界进化“优胜劣汰”的原则,逐步产生它们的后代,使后代具有更强的适应性,这样不断演化下去,就能得到更优解决方案。 随着现代自然科学和技术的发展,以及新学科、新领域的出现,非线性科学在工农业、经济政治、科学研究方面逐渐占有极其重要的位置。在理论研究和应用实践中)●(,几乎绝大多数的问题都最终能化为方程或方程组,或者说,都离不开方程和方程组的求解。因此,在非线性问题中尤以非线性方程和非线性方程组的求解最为基本和重要。传统的解决方法,如简单迭代法、牛顿法、割线法、延拓法、搜索法、梯度法、共轭方向法、变尺度法,无论从算法的选择还是算法本身的构造都与所要解决的问题的特性有很大的关系。很多情况下,算法中算子的构造及其有效性成为我们解决问题的巨大障碍。而遗传算法无需过多地考虑问题的具体形式,因为它是一种灵活的自适应算法,尤其在一些非线性方程组没有精确解的时候,遗传算法显得更为有效。而且,遗传算法是一种高度并行的算法,且算法结构简单,非常便于在计算机上实现。本文所研究的正是将遗传算法应用于求解非线性方程组的问题。
2. 遗传算法解非线性方程组
为了直观地观察用遗传算法求解非线性方程组的效果,我们这里用代数非线性方程组作为求解的对象
问题描述:
非线性方程组指的是有n个变量(为了简化讨论,这里只讨论实变量方程组)的方程组
𝑓𝑖 x1,x2,…,xn =0 𝑖=1,2,…,𝑚
中含有非线性方程。其求解是指在其定义域内找出一组数x∗ x1,x2,…,xn 能满足方程组中的每一个方程。这里,我们将方程组转化为一个函数
F x1,x2,…,xn = 𝑓𝑖
i=0
则求解方程组就转化为求一组值x∗ x1,x2,…,xn 使得F x∗ =0成立。即求使函数F x1,x2,…,xn 取得最小值0的一组数,于是方程组求解问题就转变为函数优化问题
3. 遗传算子
遗传算子设计包括交叉算子、变异算子和选择算子的设计。
(1)交叉算子
算术交叉算子是实数编码遗传算法中应用最广泛的一种算子, 该算子描述如下:
假设在两个体X 1 和X 2 之间进行算术交叉, 则交叉运算后所产生出的两个新个体为
∗X1=aX1+(1−a)X2 ∗ X2= 1−a X1+aX2
其中a是在[0,1]区间内的参数,它可以是一个常数,也可以是由进化所决定的变量,本文选择为[ 0,1] 区间上的随机数。
(2)变异算子
设被选中变异的个体的染色体为Xk, 随机产生一个扰动方向pk, 整个变异操作的过程是以Xk为起点, 沿方向pk寻求最优点作为新的染色体, 即完成如下一维搜索运算:
min∅ τ =F Xk+τpk
本文以黄金分割方法搜索得到最优步长τ° , 则变异后个体的新染色体Xk′
′Xk=Xk+τ°pk
(3)选择算子
传统的标准选择算子一方面要求适应度函数大于零, 给适应度函数的选择带了一定的困难; 另一方面基于适应值的排序选择算子是造成算法早熟、收敛速度慢的主要原因。为避免上述问题, 本文采用了既具有较高确定性和一定随机性的联赛竞争法为选择算子, 联赛规模取为3。由于遗传算法中有许多随机因素的影响, 当前群体的最好个体可能会被破坏, 影响算法的运行效率和收敛性, 因此采用了最优保存策略, 即当前群体中最优个体不参与交叉运算和变异运算, 而是用它来替代本代群体中经过交叉、变异操作后所产生的最差个体。
4. 实例验证
我们为了验证这个遗传算法是否能够找到我们需要的合适解,选取下面
的非线性方程组来验证:
x1+x2+x3−0.5=0
x1x2+x2x3+x3x1+7.5=0
222x1+x2+x3−15.25=0
运行得到的结果为:得出来的结果为逼近准确解
第2 / 5页
ans = 0 -2 1
由此可知能找到合适的解的。
参考文献:
[1]陈明。 基于进化遗传算法的优化计算[J]. 软件学报, Vol.9 No.11, 1998.11:876-879.
[2]陈火旺。 遗传程序设计(之一)[J]. 计算机科学, 1995.22(6):12-15.
[3]冯果忱。 非线形方程组迭代解法[M]. 上海科学技术出版社, 1989.
摘要:本文对遗传算法在人工智能方面的应用进行介绍,通过遗传算法对全局运动估计的解决方案进行分析,最后就人工智能在算法的发展方向方面进行了展望和总结。
所谓人工智能,就是人工的方法通过计算机实现智能化功能,或者说是人们使用机器模拟人类的智能。由于人工智能是在机器上实现的,所以又称为机器智能。从另一个角度来看,人工智能是研究怎样使计算机来模仿人脑从事的推理、证明、识别、理解、设计、学习、思考、规划及问题求解等思维活动,来解决人类专家才能处理的复杂问题。人工智能的算法很多,包括遗传算法、进化算法、蚁群算法和专家系统、神经网络等。
1 遗传算法
遗传算法的思想是先确定编码方案,对待寻优的缺陷特征参数进行编码,按一定规模初始化种群,种群中的每一个各体就代表了一个可能的解;然后根据适应度值函数计算每一个各体的适应度值并依此决定遗传操作。根据预先确定好的种群选择方案,按一定的概率对种群进行交叉、变异得到下一代,直到遗传算法的终止条件得到满足。与传统的优化算法相比,具有的优缺点如下:
1.1 遗传算法优点。不是从单个点,而是从多个点构成的群体开始搜索。之所以说是从多点而不是从单点出发,那是因为整个算法的开始是从一个初始种群开始搜索演练最优解,是从多个点开始搜索进化寻找,这样的做的一个好处是避免局部寻找最优解,从任一解出发,按照某种机制,以一定的概率在整个求解空间中探索最优解。由于它们可以把搜索空间扩展到整个问题空间,因而具有全局优化性能。同时也缩短了整个搜寻额时间,整体上效率更高、结果更接近最优解。
实现简单,没有复杂的数学计算,在算法中,一般都有大量且复杂的计算作为整个算法的支撑,同时数学计算也是一步比较耗资源和时间的操作,然后在遗传算法中,在搜索最优解过程中,只需要由目标函数值转换得来的适应度信息再加上简单的比较,而不需要导数等其它辅助信息,操作流程也比较简单,没有过多的转换控制操作,中间也没有多少中间变量,算法具有较强的自适应性。
搜索过程不易陷入局部最优点。目前,该算法已渗透到许多领域,并成为解决各领域复杂问题的有力工具,因为是在整个求解空间中探索最优解,所以,基本上不会陷入局部最优解中去。
在遗传算法中,将问题空间中的决策变量通过一定编码方法表示成遗传空间的一个个体,它是一个基因型串结构数据;同时,可以将目标函数值转换成适应值,它用来评价个体的优劣,并作为遗传操作的依据。
但是,传统的遗传算法同样拥有缺陷。
1.2 遗传算法缺点。首先,传统的遗传算法编码和解码比较复杂,因为传统的遗传算法的染色体是用二进制编制的,一个染色体就是一串0和1组成的位串或是字符串,在进化前需要做复杂的编码工作,而在得到最优解后还要做复杂的解码工作,比较繁琐和复杂,在遗传操作过程中也不易掌控,容易出错;其次,算法对初始种群的选择有一定的依赖性。
2 遗传算法在人工智能领域的应用
遗传算法在人工智能的众多领域便得到了广泛应用[2]。例如,机器学习、聚类、控制(如煤气管道控制)、规划(如生产任务规划)、设计(如通信网络设计、布局设计)、调度(如作业车间调度、机器调度、运输问题)、配置(机器配置、分配问题)、组合优化(如TSP、背包问题)、函数的最大值以及图像处理和信号处理等等。
另一方面,人们又将遗传算法与其他智能算法和技术相结合,使其问题求解能力得到进一步扩展和提高。例如,将遗传算法与模糊技术、神经网络相结合,已取得了不少成果。
因为遗传算法是模拟生物的进化过程的一类人工智能算法,所以,在算法的初始阶段,应该给一个初始种群给算法来进化演练。
因此,第一步是初始化种群,在初始化种群时,种群的大小要设计科学,这样才能最大力度的发挥遗传算法的性能。
在初始化种群后,就要开始进入遗传演练阶段,遗传的第一步操作是对种群的每个个体计算适应度,然后进入遗传演练。
在演练过程中,模仿生物的进化过程,有双亲结合产生下一代个体,为了能够保证种群的多样化和过早的收敛于某一个局部最优解,有了变异操作。
在遗传操作过程中,如果某一代中有个体符合最优解的特征,那么整个演练过程就可以提前结束了,否则,遗传演练会一直进行下去,知道收敛于某一个最优解或是到达最大遗传代数。
3 遗传算法的全局运动估计
运动估计是连续图像运动中图像量化的过程,全局运动一般是指相关相机的运动。一个图像序列全局运动的出现被认为是有意的,例如对于平移、缩放等;或无意的,例如手颤抖或相机摆放不稳等。后者的全局运动容易产生影响视频质量的不利因素,如抖动。从压缩的角度来看,这种易抖动的运动会造成不必要的高比特率,因此需要抑制。视频的稳定化方法意在减少这种采用全局运动估计(GME)方法的视频序列所产生的抖动。
基于特征的方法为保证GME的鲁棒性需要特征提取与选择具有一致性。提取的过程包括识别潜在的兴趣点,基于纹理结构相关标准如角落和边缘,强调区分物理真实对象。然后基于他们的跟踪能力选择较好的特征。跟踪能力的性能取决于后续帧中的弹性变形、闭塞等。因为本身是相对成熟的特征跟踪,在特征提取与选择过程中全球运动估计的鲁棒性至关重要。我们指出,在运动的像素组中出现的信息对应不同的真实结构,如深度不连续,也可以很好的对应相机的运动。这种经典的方法可能涉及潜在信息的损失,同时,选择程序的跟踪能力和异常值滤除能力可能与相机的运动不相关。
通过一种新的遗传算法(GA)的方法,它结合了特征提取与选择的过程。这种方法有效地学习最佳特征,即跟踪过程中的群像素,结果的有效性在全局最大运动估计中得到体现。这种方法与经典的算法不同,事实上我们的做法是基于盲目的结构内容特性,而不是任意的子像素的全局运动评估。这种方法特别适用于视频稳定的过程。
4 展望
根据上述在人工智能方面,基于遗传算法的特征提取与选择在全球运动估计中的应用,我们可以看出通过选择一个合适的适应度函数,直接与估计的鲁棒性进行比较,该方法可以确保视频图像的增强性能,特别是应用于视频稳定。
随着科技的不断发展,更为新颖的人工智能算法在进行全面的发展,其中数据挖掘与网络智能、人工神经元网络和贝叶斯网络数据挖掘是一种从大型数据库或数据仓库中提取隐藏的预测性信息的技术,它能挖掘出数据间潜在的模式,找出最有价值的信息和知识,指导商业行为或辅助科学研究。仿照生理网络结构的非线性预测模型,通过学习进行模式识别。神经网络最早是由心理学家和神经生物学家提出的,旨在寻求开发和测试神经的计算模拟。神经网络是一组连接的输入/输出单元——神经元,其中每个连接都与一个权相对应。贝叶斯信任网描述一组随机变量的联合概率分布,它是用有向的无环图来表示的,联合空间中的每一变量在贝叶斯网中是用节点来表示的,节点的值可以是两值或多值。
这些研究方法将继续使得人工智能的发展更为迅速,并且得到在实际中的广泛应用。