一种利用云模型对粒子群优化的改进方法与流程

文档序号:16432590发布日期:2018-12-28 20:15阅读:306来源:国知局
一种利用云模型对粒子群优化的改进方法与流程

本发明涉及粒子群优化技术领域,特别涉及一种利用云模型对粒子群优化的改进方法。

背景技术

智能优化算法粒子群优化算法(pso)是一种新兴的优化技术,其思想来源于食鱼鹰的捕食过程。该算法通过粒子追随自己找到的最好解和整一个群的最好解来完成优化。该算法简单易实现,可调参数少,已得到广泛研究和应用。但是由于在工程实际中一方面粒子计算时间较长,另一方面算法参数的选定带有一定的不确定性,需对其进行适当改进。云模型(cloudmodel)是一种定性和定量转换模型。针对概率论和模糊数学在处理不确定性方面的不足,在概率论和模糊数学的基础上云的概念被提出,并解释了模糊性和随机性及两者之间的关联性。云模型已成功的应用到数据挖掘、决策分析、智能控制、进化计算等众多领域。



技术实现要素:

本发明的目的旨在至少解决所述技术缺陷之一。

为此,本发明的目的在于提出一种利用云模型对粒子群优化的改进方法。

为了实现上述目的,本发明的实施例提供一种利用云模型对粒子群优化的改进方法,包括如下步骤:

步骤s1,对于每个粒子计算每次迭代最佳适配值的距离ei,i为粒子标号;

步骤s2,采用快速排序方式获取粒子历史最佳位置pid和所有粒子中最佳位置pgd,d为维度;

步骤s3,根据ei计算粒子的速度惯性项ω、第一学习率和第二学习率

步骤s4,根据pid、pgd、ω、计算粒子收敛速度vid;

步骤s5,根据粒子当前位置xid和计算得到的粒子收敛速度vid,更新粒子的位置信息。

进一步,在所述步骤s3中,ω=cloud1(ei),

进一步,在所述步骤s4中,其中,rnd()标识随机数。

进一步,在所述步骤s5中,更新后的粒子位置信息xid为:

xid=xid+vid。

根据本发明实施例的利用云模型对粒子群优化的改进方法,利用云模型的定性和定量转换概念对粒子群算法进行改进,一方面加快粒子群算法的收敛速度,一方面防止收敛速度的加快而得到局部极值。根据每次迭代之间的最佳适配值的距离,来调整惯性项ω、两个学习率减小对参数的人为调整。本发明利用云模型对原有的粒子群算法进行改进,比原有粒子群算法加快了收敛速度,减少了计算时间,比原有粒子群算法获得更好的优化结果。本发明已经被运用于电磁阀优化,稳压器优化,测井曲线分析等机械、核能和石油领域。

本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:

图1为根据本发明实施例的利用云模型对粒子群优化的改进方法流程图;

图2a和图2b分别为惯性项的云规则发生器(ena=0.02enb=0.2he=0.001)的规则前件和规则后件示意图;

图3a和图3b分别为第一学习率的云规则发生器的规则前件和规则后件示意图;

图4a和图4b分别为第二学习率的云规则发生器的规则前件和规则后件示意图;

图5为根据本发明实施例的粒子群算法和云粒子群算法最佳适配值比较示意图;

图6为根据本发明实施例的不同he情况下的最佳适配值的示意图;

图7为根据本发明实施例的不同en情况下的最佳适配值的示意图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。

以由计算每种工况下所需时间约为1.5min为例,如果以50个粒子迭代100次计算,则需要约2天时间,计算时间较长,需对优化算法加速收敛。而在粒子群算法中,可以加快收敛速度的量有三个变量,即惯性项ω、两个学习率分别减小惯性项ω和两个学习率φ的大小,可以加快收敛速度,同时也加大了优化结果收敛到局部极值的可能性。而分别增加惯性项ω和两个学习率φ的大小,减小了优化结构收敛到局部极值的可能性,同时也减小收敛速度。即三个参数的选择带有一定的不确定性。

为此,本发明提出一种利用云模型对粒子群优化的改进方法,被称为云粒子群算法(cloudpso)。本发明利用云模型的定性和定量转换概念对粒子群算法进行改进,一方面加快粒子群算法的收敛速度,一方面防止收敛速度的加快而得到局部极值。根据每次迭代之间的最佳适配值的距离,来调整这三个参数。改进后的粒子群算法被称为云粒子群算法。

如图1所示,本发明实施例的利用云模型对粒子群优化的改进方法,包括如下步骤:

步骤s1,对于每个粒子计算每次迭代最佳适配值的距离ei,i为粒子标号。

步骤s2,采用快速排序方式获取粒子历史最佳位置pid和所有粒子中最佳位置pgd,d为维度。

步骤s3,根据ei计算粒子的速度惯性项ω、第一学习率和第二学习率

具体的,ω=cloud1(ei),

其中,ω=cloud1(ei)为惯性项基于云模型的定性规则发生器,图2a和图2b分别为惯性项的云规则发生器(ena=0.02enb=0.2he=0.001)的示意图。

表1示出了ω的计算过程,

表1

需要说明的是,第一学习率和第二学习率的计算过程与ω的计算过程相近,区别仅在于ex,en,he参数不一样,在此不再赘述。

为学习率基于云模型的定性规则发生器。图3a和图3b分别为第一学习率的云规则发生器的示意图;图4a和图4b分别为第二学习率的云规则发生器的示意图。

步骤s4,根据pid、pgd、ω、计算粒子收敛速度vid。

其中其中,rnd()标识随机数。

pgd为所有粒子中最佳位置,即全局最佳位置,该值由粒子间通讯方式影响。

步骤s5,根据粒子当前位置xid和计算得到的粒子收敛速度vid,更新粒子的位置信息。

具体的,更新后的粒子位置信息xid为:

xid=xid+vid。

表2示出了本发明的利用云模型对粒子群优化的改进方法的算法代码。

表2

云模型的定性规则发生器y=cloud(x)是基于云模型的定性知识推理,以概念为基础表示,构造规则发生器。多条定性规则构成规则库,当输入一个特定的条件激活多条定性规则时,通过推理引擎,实现带有不确定的推理和控制。

1)在优化直动电磁阀的云粒子群算法中惯性项ω的规则为:

如果ei大,则ω小

如果ei中等,则ω中等

如果ei小,则ω大

2)第一学习率的规则为:

如果ei大,则

如果ei中等,则中等

如果ei小,则

3)第二学习率的规则为:

如果ei大,则

如果ei中等,则中等

如果ei小,则

其中,云模型是根据云的数字特征(ex,en,he)产生云滴。

下面参考图5至图7,以电磁阀结构优化为实例进行说明:

图5为云粒子群优化算法优结果和不同惯性项与学习率情况下的粒子群算法寻优结果的对比,可以看出当云粒子群优化算法迭代次数达到200次时即四天后平均适配值和最大适配值达到稳定,大大提高了收敛了速度,并且搜索结果也比其它各个参数情况下的粒子群优化算法pso好。

如图5所示,1-cloudpso

2-psoω=0.9

3-psoω=0.1

4-psoω=0.9

5-psoω=0.1

图6为云粒子群优化算法在不同he情况下的粒子群算法寻优结果,可以看出当he取值较大时,云粒子群优化算法收敛较快,搜索结果较差,当he取值较小时,云粒子群优化算法收敛较慢,搜索结果较好。

图7为云粒子群优化算法在不同en情况下的粒子群算法寻优结果,可以看出当en取值较大时,云粒子群优化算法收敛较快,搜索结果较差,当en取值较小时,云粒子群优化算法收敛较慢,搜索结果较好。

如表3所示,经过cloudpso算法优化该映射后可得出优化出的5个参数,和最大电磁力711n。

表3

如表4所示,各个优化算法优化结果对比,可以看出粒子群和云粒子群优化算法结果最好,且云粒子群优化算法最快搜索到结果。

表4

根据本发明实施例的利用云模型对粒子群优化的改进方法,利用云模型的定性和定量转换概念对粒子群算法进行改进,一方面加快粒子群算法的收敛速度,一方面防止收敛速度的加快而得到局部极值。根据每次迭代之间的最佳适配值的距离,来调整惯性项ω、两个学习率减小对参数的人为调整。本发明利用云模型对原有的粒子群算法进行改进,比原有粒子群算法加快了收敛速度,减少了计算时间,比原有粒子群算法获得更好的优化结果。本发明已经被运用于电磁阀优化,稳压器优化,测井曲线分析等机械、核能和石油领域。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。本发明的范围由所附权利要求及其等同限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1