混合人工鱼群算法求解病态线性系统方程外文翻译资料

 2021-12-09 10:12

英语原文共 5 页

混合人工鱼群算法求解病态线性系统方程

魏秀喜,曾海文 信息工程系 广西国际商务职业学院 南京,530007,中国

电子邮件:weixiuxi@163.com; zhenghw@163.com

周永权 计算机与信息科学学院 广西民族大学 南宁,530006,中国

电子邮件:Yongquanzhou@126.com

摘要 - 基于粒子群算法(PSO)和MATLAB人工鱼群算法(AFSA),提出了一种群优化算法。 新方法充分利用快速的局部收敛性能PSO和AFSA的全球融合性能,然后用于解决病态的线性系统方程。 最后,数值实验结果表明混合人工鱼群优化算法拥有良好的全局收敛性能,收敛速度更快。这是一种解决病态线性系统方程的新方法。

关键词 - 粒子群优化; 杂交人造鱼群算法; 病态线性方程组运算法则。

一、简介

各种各样经常需要求解线性方程科学考虑的领域,如数值天气预测,轨道设计,石油勘探等。因为存在模型误差,测量误差和计算错误,很容易得不到准确的理论。特别是,当原始数据有存在小的干扰或错误,有可能导致对线性方程解的重大变化时,即定义为病态线性方程。对于这样的线性方程式,传统的求解数值方法等如直接法和牛顿法,通常都是无效的。因此解决病态线性方程的问题引起了广泛关注,许多学者已经提出通过深入研究获得重要的理论成果。

现在解决病态线性方程的方法常用的是奇异值分解(SVD)和迭代法。 但这两种方法都有一些限制,例如,迭代方法具有最佳迭代次数和SVD的问题是对截断奇异值位置敏感。 因此,找到解决病态的其他有效算法线性方程是必要的。

人工鱼群算法(AFSA)是一种搜索全局最优的方法。 它已被使用成功地在许多领域,如神经网络,模式识别,参数估计等。因为它具有良好的性能,全局趋同的能力并不敏感,最重要的是,其运算简单,使用方便,因而是研究的重点方向。

目前,随着AFSA的远期应用, 算法的一些缺点也逐渐暴露出来。 虽然是AFSA 具有良好的全局融合能力,其收敛率较慢。 另一方面,作为另一个智能算法,粒子群优化具有较高的局部性收敛速度,但其全局收敛能力是比AFSA差。综合分析两种算法的优缺点,我们可以想象,如果我们找到一种最佳方式将两种算法相结合,充分发挥它们的优点,那么混合算法就会有都较高的局部和全局收敛率。基于这个想法,本文提出了一种混合人工鱼群算法 (HAFSA)使用粒子群优化作为局部 AFSA的搜索行为。本文试图将所提出的HAFSA用于解决病态线性方程和数值。实验结果表明,该方法可以在比较短的时间内得到一个相对准确的解决方案,以便更为迅速和高效地解决病态线性方程租的相关问题。

二、问题陈述

定义2.1 假设矩阵A是非奇的方阵,然后是数字|| A || 以及|| A-1 ||称为条件 A的条件数,表示为Cond(A)。

定义2.2假设矩阵A是非奇的方阵,如果Cond(A)gt;gt; 1,则调用方程 Ax = b可病态线性方程。

三、混合算法

A.人工鱼科算法

1)算法原理

在研究动物进化的过程中,人们发现动物并不喜欢先进的人类智能,如复杂的逻辑推断能力和全面判断能力,而他们的通常只是通过其个体或群体的一些简单行为方式来表现出来一些目的,进而达到目的。AFSA是一种基于动态化的优化方法,它是一个在空间中搜索的新线索,通过模拟捕食和生活来实现全局最优化鱼群的运动。

AFSA使用自下而上的开发过程,即首先,我们构建了人工鱼(AF)模型,再由个人从三个典型的行为中选择合适的行为;最后,即可显示出来对于总体或个人来说最优的选择。

算法原理是:人工鱼科算法步骤

::AF_init():

While the result is not satisfied do

switch(::AF_evaluate())

case value1:

::AF follow();

case value2:

::AF_swarm();

default:

::AF_prey();

eswitch

::AF_move();

get_result();

end while;

人工鱼科算法至此执行完毕

2)符号定义

人工鱼群算法(AFSA)是随机的,且基于模拟鱼群行为的搜索算法。包含寻求食物的行为,蜂拥而至的行为等行为。首先其可以构建成为每个人的行为,其次然后使整个种群实现最佳行为, 最终基于鱼类个体的个体搜索来实现最佳行为。首先,我们先介绍一些有关AFSA 的定义。

假设 {X1,X2,hellip;,XN}是一套人造鱼科,Y = F(Xj 表示位置 Xi 处的适应度函数。这是一组中任意的个体鱼。让 dij = || Xi -Xj ||代表人造鱼 Xi和人造鱼Xj之间的距离; Visual代表了该领域人造鱼的视野; Step表示人造鱼移动的步长的最大值; xi;表示人造鱼在觅食的过程中,密度系数,try-number则表示最大尝试次数等行为。 以下就是人造鱼的典型行为:

3)人造鱼行为

a)觅食行为

假设 Xi是目前的人造鱼状态,而Xj是Xi视野内任意的个体鱼。我们比较它们的适应度函数值。如果Yj优于Xi,则Xi将向一步Xj在其视野内的方向移动一步;否则,Xi在其视野范围内尝试多次移动到一个更佳的位置但失败以后,只会随机移动一步。其觅食的种种行为我们可以用以下的公式来表示。

(1)

Xinext=Xi Random(step) else

Xinext=Xi Random(step) ,if Yjgt;Yi

b)集群行为

假设 Xi是目前的人造鱼状态,nf为其视野内其他追随者的数量,Xc=sum; Xj/nf可以Formula5表示。

(2)

AF-prey() else

Xinext=Xi Random(step) ,if Yc /nfgt;delta;Yi

c)以下行为

在人工鱼游的过程中,当其中一条鱼发现更多的食物,那么其他的鱼也会改变航向,汇集到这个方向。假设 Xi是人造鱼目前状态, Xmax是人造鱼视野内健身功能的最大值, Ymax是Xmax的适应度函数。 以下的行为可以用等式6表示。

Xinext=Xi Random(step) ,if Ymax/nfgt;delta;Yi

(3)

AF-prey() else

根据问题的特点,人造鱼会选择适当的行为来执行这些任务。例如,每条人造鱼都能模拟出集群和跟随的行为,然后选择更好的执行方式。

B. 粒子群优化算法

James Kennedy和Russell C. Eberhart 最初提出了粒子群优化算法(PSO)优化。 PSO是一种基于人口的搜索算法,基于对鸟类内部社会行为的模拟一群人。基本的PSO算法可以由两部分组成步:第一个是生成粒子的位置和速度; (由于第一个相对容易,因此在此省略。)第二个是PSO的内核将详细介绍,其详细介绍如下。

第二步是更新速度和位置。根据粒子生成 k 1的所有粒子第k代的信息。首先 ,粒子的速度更新如公式4所示。

vi(k 1)=wvi(k) c1rand()(pbest-xi(k)) c2rand()(gbest-xi(k)) (4)

其中,vi(k)是粒子i在生成时的速度 k; xi(k) 是粒子i在生成时的位置k ; gbest是当前群体中最好的位置,由其健身功能或目标决定功能价值; pbest是粒子的最佳位置,由健身功能或目标决定 功能价值; w是惯性因子,通常0到1之间的数字; c1是自信因子,通常是0到2之间的随机数; c2是群自信因子,通常是随机数,介于0和2之间。

在速度更新之后,粒子i的位置可以是由公式5计算。

xi(k 1)= xi(k 1) vi(k 1) (5)

基本PSO由上面的更新按代执行,当满足最佳值时, 其可自动停止运行。

C.混合算法的过程

AFSA具有良好的全局融合能力,但其局部收敛率较低。另一方面,PSO本地收敛率高,但其全局收敛能力比AFSA差。我们可以想象,如果我们以最佳方式结合两种算法,充分发挥它们各自的优点,那么混合算法就会有较高本地和全局收敛率。本文给出了算法的具体过程,分为以下几个步骤:

步骤 1:初始化一些变量,N-鱼类数量; Visual-鱼的视野; Step-人工鱼移动步长最大值; xi;-密度系数; 尝试号码; w - PSG的惯性系数; c1,c2- PSO的自信因素; p-局部搜索概率; k- PSO的最大迭代次数。

步骤2: 比较每条鱼的食物浓度,记录由最大 Y和最大X标记的最佳记录。

步骤3 :鱼类开始优化过程分为几种行为。

步骤4:在每次优化操作后,比较每条鱼的食物浓度。如果YMgt;maxY, YM maxY, XM maxX

步骤 5: 如果给定的随机数risin;(0,1)比局部搜索概率p较小,选择N / 2最优鱼的状态作为PSO的初始组,然后实施PSO,记录下PSO搜索的最佳解决方案。当算法满足PSO的结束条件时。退出PSO的操作。否则,转到步骤6; 如果给定的随机数risin;(0,1)不满足PSO的执行条件,转到步骤7。

步骤6:执行完PSO后,比较记录下来的每条鱼最好的食物状态。 如果新的数据比旧的数据更好,就用新的数据代替旧的数据。

步骤7:如果鱼的最佳状态已经被记录下来且符合结束条件,就输出优化结果并结束算法。 否则转入到步骤3。

四.数值实验与讨论

为了评估提出的混合算法(HAFSA)求解病态线性方程式的有效性和效率,我们选取了几个例子用于检测。同时,HAFSA的参数定义为:N = 50,Visual = 0.8,Step = 0.3,0 = 1.5, try-number = 6,P = 0.25,cl = 2.0,c2 = 2.0, K= 20, w = 0.1。 实验是PIVIl.8G 256MB内存,用Matlab7.0编写仿真程序。比较不同的优化方法来解决病态线性方程,20个计算模拟相同执行,. 统计数据的性能比较的几个算法显示在以下三个表中。

A·x=b,A=,b= (6)

等式6的精确解是X1 = 100,X2 = 100 以及AFSA,HAFSA和AFSA的经典方法求解方程式6如表1所示。

方法

平均迭代

X1

X2

时间(s)

(9)的结果

-

100.0348

-99.9788

-

AFSA

220

100lt;

资料编号:[5939]

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。