CN110389902A - 基于人工蜂群混合粒子群算法的软件可靠性参数估计方法 - Google Patents
基于人工蜂群混合粒子群算法的软件可靠性参数估计方法 Download PDFInfo
- Publication number
- CN110389902A CN110389902A CN201910653702.2A CN201910653702A CN110389902A CN 110389902 A CN110389902 A CN 110389902A CN 201910653702 A CN201910653702 A CN 201910653702A CN 110389902 A CN110389902 A CN 110389902A
- Authority
- CN
- China
- Prior art keywords
- parameter
- particle
- solution
- value
- algorithm
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
- G06F11/3608—Software analysis for verifying properties of programs using formal methods, e.g. model checking, abstract interpretation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开一种基于人工蜂群混合粒子群算法的软件可靠性参数估计方法,首先选取软件可靠性模型,初始化粒子群体各参数,然后通过软件可靠性模型参数的极大似然估计公式来构造适应值函数,并在混合算法执行过程中先剔除掉那些明显错误的解,再根据先验知识使参数值朝着更准确解的方向搜索,最终获得最优的软件可靠性模型的参数值。本发明的关键是实现蜂群算法与粒子群优化算法的优势互补,得到比单个算法更优的参数估计结果,特别是在数据量不足的情况下比单个算法具有更大的优势。
Description
技术领域
本发明涉及软件可靠性模型评估技术领域,特别涉及一种基于人工蜂群混合粒子群算法的软件可靠性参数估计方法。
背景技术
软件可靠性模型是评估软件可靠性的数学方法,而模型参数的选取直接会影响到软件缺陷发生和可靠性预测的准确度。现有的软件可靠性模型如G-O模型、JM 模型等大多是非线性函数模型,直接估计这些模型的参数比较困难。近年来一种新的思路被提出,即将智能优化算法运用到软件可靠性模型参数估计中,但是常见的群体智能优化算法各有优缺点。粒子群优化算法(PSO)实现简单、收敛速度快,但易早熟收敛造成解的准确度不高;人工蜂群算法(ABC)搜索能力强、求解准确度高,但算法实现较复杂并且会以牺牲计算量为代价。因而基于人工蜂群算法(ABC)和粒子群优化算法(PSO)混合的软件可靠性模型参数估计方法,实现了两种算法的优势互补,表现出比单个算法更好的参数估计准确性,尤其在数据量偏少的情况下,更具有明显的算法优势;同时还基于极大似然估计方法构造了合适的适应值函数。现有研究中的适应值函数的形式一般表示为实际测出的软件失效数与模型估计的软件失效数之间的欧式距离,其存在的问题之一是当达到算法结束次数而输出最优的模型参数估计值时,对应的适应函数值仍然比较大,经由欧式距离适应值函数评价后最终输出的最优的模型参数估计值与实际测得的值之间有较大的出入,说明参数估计的结果并不准确,有待改进。
发明内容
本发明的目的,在于提供一种基于人工蜂群混合粒子群算法的软件可靠性参数估计方法,其可实现两种算法的优势互补,提高参数估计的准确度,特别是在较少数据量的情况下仍然具有较好的适应性。
为实现上述目的,本发明提供如下技术方案:一种基于人工蜂群混合粒子群算法的软件可靠性参数估计方法,包括如下步骤:
(1)选取软件可靠性模型,以G-O模型为例,G-O模型对软件系统中累积失效数的估计函数如式(1)所示:
m(t)=a(1-e-bt) (1)
上式中:m(t)表示到时刻t为止的累积失效数的期望函数;a表示测试结束后软件期望被检测出来的失效总数;b代表剩余失效被发现的概率,即在时刻t 产生的失效检出率,是一个比例常数,范围为(0,1)。G-O模型的参数就是a和b,它们的选取会影响到模型预测的准确性。
(2)初始化粒子群体各参数:粒子数m=60,学习因子C1=C2=1.5,惯性权重W=0.9,最大迭代次数Tmax=500,适应值精度要求k≤1e(-5)。每个粒子的位置即G-O模型的参数b初始化为(0,1)之间的随机数,速度初始化为[-1,1]之间的随机数;
(3)利用极大似然估计法构造适应值函数,下面是使用极大似然法估计出来的a、b的计算公式,如式(2)所示:
其中:n表示已知的失效数;ti为第i个失效发生的时刻;i=1,2,3,...n。
我们根据G-O模型参数a、b的极大似然估计公式来构造一种新的适应值函数,具体做法是将公式(2)中的第一项代入到第二项中并进行数学变换,构造成一个只与参数b相关的式子,如下式(3)所示:
根据适应值函数评价每个粒子当前适应值;
(4)根据步骤S3中得到的适应值更新每个粒子当前个体历史最优适应值 pbest和全局最优适应值gbest,对应于个体历史最优适应值pbest的是个体历史最优位置pbest_b,对应于全局最优适应值gbest的是全局最优位置gbest_b,并删除问题解;
(5)判断是否满足算法停止条件;如果达到最大迭代次数Tmax或全局最优适应值gbest的精度达到k≤1e(-5),执行步骤S11,否则执行步骤(6);
(6)根据如下速度和位置的更新公式,更新每个粒子的速度和位置:
vi'=wvi+c1r1(pbest_bi)+c2r2(gbest_b-bi)
bi'=vi'+bi (4)
其中,i=1,2,…,60,代表60个粒子;r1、r2是介于[0,1]之间的随机数;
(7)利用人工蜂群搜索算子即如下搜索公式在每个粒子新位置的周围重新搜索一次,将搜索结果作为粒子最终的新位置。
具体描述如下:首先随机产生初始种群,即N个初始解。每个解 Xi(i=1,2,…N)代表一个d维的向量,d是需要被优化的参数的数目。随后,三种蜜蜂根据各自的分工开始循环搜索所有的初始解。
采蜜蜂记住自己到目前为止找到的最优解,然后在附近的邻域进行搜索以发现更好的解,搜索公式如(5)所示:
x′ij=xij+φ(xij-xkj) (5)
其中,i∈{1,2,...N},j∈{1,2,...D},且k≠i,φ是[-1,1]之间的随机数,x′ij 表示在历史最优解附近进行搜索的新位置即当前解,xij表示历史最优位置,即历史最优解;
观察蜂以采蜜蜂的方式更新历史最优位置并对新位置的花蜜量进行检查。如果新位置比历史最优位置好,那么就将新位置作为历史最优位置;反之,则保持不变。观察蜂选择某个蜜源的概率Pi的计算公式为(6)所示:
上式中,fi代表第i个解的适应值,N指的是蜜源的数量。
如果某一个蜜源经过限定的循环次数之后没有发生变化,即解没有得到改进,并且当前解也不是最优解,表明该解陷入了局优。这时候处于该蜜源处的采蜜蜂就会转变角色为侦查蜂,然后随机找一个新位置来替代该蜜源的位置。假设被放弃的位置为xi,则侦查蜂替换xi的公式如为(7):
其中,和是第j维上的上限和下限,rand()为[0,1]之间的随机数。上述公式也是初始化时随机生成N个解的公式。
(8)判断人工蜂群算法得到的新粒子位置是否满足k≤1e(-5),如果是,则转步骤(11),输出此时的最优位置和最优适应值,如果否,则转步骤(9);
(9)判断新粒子的最优位置是否优于粒子群的某个粒子,如果是,则转步骤(10);
(10)用新粒子代替粒子群中的最差粒子,继续进行人工蜂群混合粒子群的算法执行;
(11)输出最优位置gbest_b及最优适应值gbest;
(12)求出模型参数a、b;
(13)判断与实际值的误差是否满足要求,如果是,则结束,否则转步骤(14);
(14)加入先验知识明确再次搜索的方向,继续下一轮混合算法初始化和执行,直至搜索到最合适的参数a和b。
本发明提出一种基于人工蜂群混合粒子群算法的软件可靠性参数估计方法,具体的做法是:将蜂群算法中的搜索算子应用到粒子群算法中,在每个粒子完成位置的更新后,如果没有达到解的要求则再使用蜂群搜索算子在新位置的周围重新搜索一次,与粒子群算法的粒子位置进行比较,以确定最终的新位置。此种人工蜂群混合粒子群算法的参数估计方法简洁、高效,可以提高软件可靠性模型参数估计的准确性,比单个算法具有更优的参数估计结果,尤其在数据量不足的情况下比单个算法的估计结果具有更明显的准确性。
与现有技术相比,本发明的有益效果是:
1)将人工蜂群和粒子群混合算法用于软件可靠性模型参数的估计之中,与单个算法相比,混合算法简洁高效,提高了软件可靠性模型参数估计的准确度;
2)人工蜂群和粒子群混合算法不仅可以提高软件可靠性参数模型估计的准确性,而且在数据量偏少的情况下,比单个算法具有更优的参数估计结果,有很强的算法适应性;
3)采用一种新的适应值函数,当算法输出最优的参数b时对应最优的适应值很小,满足适应值越小参数估计的效果越好的评价准则;
4)利用先验知识缩小解的搜索范围、明确解的搜索方向,降低了最优解的搜索次数,参数估计的效率更高;
5)不仅仅局限于G-O模型,对其他的软件可靠性模型也适用。
附图说明
图1是本发明的运算流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
并且,本发明各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
请参阅附图1,本发明实施例中,选用的实验数据来源于实际工业项目中得到的5组软件失效间隔时间数据集SYS1、SS3、CSR1、CSR2、CSR3,数据下载地址为http://www.cse.cuhk.edu.hk/lyu/book/reliability/data.html。
SYS1、SS3、CSR1、CSR2、CSR3的实际失效数分别为136、278、397、129、104。
(1)使用SYS1、SS3、CSR1、CSR2、CSR3这5个数据集合的所有数据。选取软件可靠性模型,以G-O模型为例,G-O模型对软件系统中累积失效数的估计函数如式(1)所示:
m(t)=a(1-e-bt) (1)
上式中:m(t)表示到时刻t为止的累积失效数的期望函数;a表示测试结束后软件期望被检测出来的失效总数;b代表剩余失效被发现的概率,即在时刻t 产生的失效检出率,是一个比例常数,范围为(0,1)。G-O模型的参数就是a和b,它们的选取会影响到模型预测的准确性。
(2)初始化粒子群体各参数:粒子数m=60,学习因子C1=C2=1.5,惯性权重W=0.9,最大迭代次数Tmax=500,适应值精度要求k≤1e(-5)。每个粒子的位置即G-O模型的参数b初始化为(0,1)之间的随机数,速度初始化为[-1,1]之间的随机数;
(3)利用极大似然估计法构造适应值函数,下面是使用极大似然法估计出来的a、b的计算公式,如式(2)所示:
其中:n表示已知的失效数;ti为第i个失效发生的时刻;i=1,2,3,...n。
我们根据G-O模型参数a、b的极大似然估计公式来构造一种新的适应值函数,具体做法是将公式(2)中的第一项代入到第二项中并进行数学变换,构造成一个只与参数b相关的式子,如下式(3)所示:
根据适应值函数评价每个粒子当前适应值;
(4)根据步骤S3中得到的适应值更新每个粒子当前个体历史最优适应值pbest和全局最优适应值gbest,对应于个体历史最优适应值pbest的是个体历史最优位置pbest_b,对应于全局最优适应值gbest的是全局最优位置gbest_b;并删除问题解;
(5)判断是否满足算法停止条件;如果达到最大迭代次数Tmax或全局最优适应值gbest的精度达到k≤1e(-5),执行步骤S11,否则执行步骤S6;
(6)根据如下速度和位置的更新公式,更新每个粒子的速度和位置:
vi'=wvi+c1r1(pbest_bi)+c2r2(gbest_b-bi)
bi'=vi'+bi (4)
其中,i=1,2,…,60,代表60个粒子;r1、r2是介于[0,1]之间的随机数;
(7)利用人工蜂群搜索算子即如下搜索公式在每个粒子新位置的周围重新搜索一次,将搜索结果作为粒子最终的新位置。
具体描述如下:首先随机产生初始种群,即N个初始解。每个解 Xi(i=1,2,…N)代表一个d维的向量,d是需要被优化的参数的数目。随后,三种蜜蜂根据各自的分工开始循环搜索所有的初始解。
采蜜蜂记住自己到目前为止找到的最优解,然后在附近的邻域进行搜索以发现更好的解,搜索公式如(5)所示:
x′ij=xij+φ(xij-xkj) (5)
其中,i∈{1,2,...N},j∈{1,2,...D},且k≠i,φ是[-1,1]之间的随机数。
观察蜂以采蜜蜂的方式更新历史最优位置并对新位置的花蜜量进行检查。如果新位置比历史最优位置好,那么就将新位置作为历史最优位置;反之,则保持不变。观察蜂选择某个蜜源的概率Pi的计算公式为(6)所示:
上式中,fi代表第i个解的适应值,N指的是蜜源的数量。
如果某一个蜜源经过限定的循环次数之后没有发生变化,即解没有得到改进,并且当前解也不是最优解,表明该解陷入了局优。这时候处于该蜜源处的采蜜蜂就会转变角色为侦查蜂,然后随机找一个新位置来替代该蜜源的位置。假设被放弃的位置为xi,则侦查蜂替换xi的公式如为(7):
其中,和是第j维上的上限和下限,rand()为[0,1]之间的随机数。上述公式也是初始化时随机生成N个解的公式。
(8)判断人工蜂群算法得到的新粒子位置是否满足k≤1e(-5),如果是,则转步骤S11,输出此时的最优位置和最优适应值,如果否,则转步骤S9;
(9)判断新粒子的最优位置是否优于粒子群的某个粒子,如果是,则步骤 S10;
(10)用新粒子代替粒子群中的最差粒子,继续进行人工蜂群混合粒子群的算法执行;
(11)输出最优位置gbest_b及最优适应值gbest;
(12)求出模型参数a、b;
(13)判断与实际值的误差是否满足要求,如果是,则结束,否则步骤S14;
(14)加入先验知识明确再次搜索的方向,继续下一轮混合算法初始化和执行,直至搜索到最合适的参数a和b。
通过以上步骤,得到人工蜂群和粒子群混合算法的参数a的估计结果,同时单独使用人工蜂群和粒子群混合算法进行参数估计,将三者的结果进行整理和误差比较,具体的结果如表1所示。
表1 结果和误差(全部失效数据)
从表1可以看出,在绝大部分的数据集上人工蜂群和粒子群混合算法的参数估计的误差要小于单独的人工蜂群或者粒子群算法,在其他数据集上人工蜂群和粒子群混合算法的参数估计的结果和单独的人工蜂群或者粒子群算法的参数估计结果高度接近。特别的在统计的均方误差值上,人工蜂群和粒子群混合算法则明显小于单独的人工蜂群或者粒子群算法,这说明了在绝大部分实际应用中,人工蜂群和粒子群混合算法的参数估计准确性在统计上是明显优于单独的人工蜂群或者粒子群算法的。
S15、使用SYS1、SS3、CSR1、CSR2、CSR3中的一半失效数据,采用人工蜂群和粒子群混合算法来进行参数估计,并通过估计的参数得到SYS1、SS3、CSR1、 CSR2、CSR3的实际失效数。
S16、使用SYS1、SS3、CSR1、CSR2、CSR3中的一半失效数据,采用单独的人工蜂群和粒子群算法来进行参数估计,并通过估计的参数分别得到SYS1、SS3、 CSR1、CSR2、CSR3的实际失效数。
通过以上步骤,在仅仅使用一半失效数据的情况下,得到人工蜂群和粒子群混合算法的参数a的估计结果,同时单独使用人工蜂群和粒子群混合算法进行参数估计,将三者的结果进行整理和误差比较,具体的结果如表2所示。
表2 结果和误差(一半失效数据)
从表2可以看出,在仅仅使用一半失效数据集的条件下,绝大部分的数据集上人工蜂群和粒子群混合算法的参数估计的误差要明显小于单独的人工蜂群或者粒子群算法,在其他数据集上人工蜂群和粒子群混合算法的参数估计的结果和单独的人工蜂群或者粒子群算法的参数估计结果高度接近。特别的在统计的均方误差值上人工蜂群和粒子群混合算法则明显小于单独的人工蜂群或者粒子群算法,这说明了在绝大部分实际应用中,特别是在有限数据量的情况下,人工蜂群和粒子群混合算法的参数估计准确性在统计上是明显优于单独的人工蜂群或者粒子群算法的。
将实验中的问题解剔除可以使算法在较好解的范围内搜索,此处具体列出一些问题解,以说明问题解剔除的必要性,如表3所示。
表3 实验中的问题解
从表3中可以看出,当参数b的精度达到le-6或者更高时,求出的累积失效数a远大于实际的累积失效数;或者当参数b为负时,求出的累积失效数a 为负。这两种情况都是明显不正确的。
更为重要的是,如果不剔除问题解的话,将造成算法搜索到满足要求的解会花费更多的运行次数。表4中对问题解剔除前后算法搜索到满足要求的解所花费的运行次数进行了对比。
表4 问题解剔除前后算法运行次数对比
从表4中可以看出未进行问题解剔除前,算法搜索到满足要求的解所需的运行次数很多,尤其对第一、第四组数据集来说;当进行问题解剔除后,算法搜索到满足条件的解所需的运行次数明显降低,均在20次以内,这进一步说明了剔除问题解的重要性。
本发明提出用先验知识来提高解的准确度,在同样运行20次的情况下将对先验知识加入前后求得的解进行比较,以验证加入先验知识的有效性,如表5 所示。
表5 先验知识加入前后结果对比
从表5中可以看出,当没有使用先验知识时,估计出的累积失效数a与实际值之间的误差率很高,而加入先验知识后误差率得到了大幅度的降低,估计的累积失效数a已非常接近实际值。说明加入先验知识后,在相同的算法运行次数条件下,确实能提高解的精确度。
综合上述,本发明提出一种人工蜂群混合粒子群算法软件可靠性参数估计方法,基于极大似然估计构造的适应值函数、建立解的剔除机制和使用先验知识来估计G-O模型的参数。人工蜂群混合粒子群算法的软件可靠性模型参数估计方法,关键在于实现两种算法的优势互补,使用极大似然估计法构造合适的适应值函数来实现对软件可靠性模型参数的求解,适应值越接近于0代表参数估计效果越好;先使用粒子群算法进行参数估计,在不满足要求的情况下使用蜂群算法进行二次搜索和粒子位置更新,并在混合算法执行过程中将通过算法求解出来的参数值与实际的参数进行对比,剔除掉那些严重偏离实际的解,使算法在合适解的范围内继续搜索,并且使用先验知识来提高参数求解的准确度。本发明简洁高效,求解准确度高,能对软件可靠性参数进行准确高效的估计,尤其在数据量有限的情况下,仍然明显优于单个算法。
以上所述仅为本发明的较佳实施方式,本发明的保护范围并不以上述实施方式为限,但凡本领域普通技术人员根据本发明所揭示内容所作的等效修饰或变化,皆应纳入权利要求书中记载的保护范围内。
Claims (4)
1.基于人工蜂群混合粒子群算法的软件可靠性参数估计方法,其特征在于:包括如下步骤:
(1)选取软件可靠性模型,以G-O模型为例,G-O模型对软件系统中累积失效数的估计函数如式(1)所示:
m(t)=a(1-e-bt) (1)
m(t)表示截止时刻t为止检测到的累积失效数;a表示测试完成后软件期望的最终被检测出的累积失效数;b表示在时刻t产生的失效的查出率,b的取值为0-1;
(2)初始化粒子群体各参数:粒子数m=60,学习因子C1=C2=1.5,惯性权重W=0.9,最大迭代次数Tmax=500,适应值精度要求k≤1e(-5);每个粒子的位置即G-O模型的参数b初始化为(0,1)之间的随机数,速度初始化为[-1,1]之间的随机数;
(3)利用极大似然估计法构造适应值函数,根据适应值函数评价每个粒子当前适应值;
(4)根据步骤(3)中得到的适应值更新每个粒子当前个体历史最优适应值pbest和全局最优适应值gbest,对应于个体历史最优适应值pbest的是个体历史最优位置pbest_b,对应于全局最优适应值gbest的是全局最优位置gbest_b,同时删除问题解;
(5)判断是否满足人工蜂群混合粒子群算法停止条件;如果达到最大迭代次数Tmax或全局最优适应值gbest的精度达到k≤1e(-5),执行步骤(11),否则执行步骤(6);
(6)根据如下速度和位置的更新公式(4),更新每个粒子的速度和位置:
其中,i=1,2,…,60,代表60个粒子;r1、r2是介于[0,1]之间的随机数;v′i表示每个粒子的速度,b′i表示每个粒子的位置;
(7)对步骤(6)得到的更新后的每个粒子,利用人工蜂群搜索算法在每个粒子新位置的周围重新搜索一次,将搜索结果作为粒子最终的新位置;
(8)判断步骤(7)中人工蜂群算法得到的新粒子位置是否满足k≤1e(-5),如果是,则转步骤(11),输出此时的最优位置和最优适应值,如果否,则转步骤(9);
(9)判断步骤(7)中新粒子的最优位置是否优于粒子群的某个粒子,如果是,则转步骤(10)步骤;
(10)用新粒子代替粒子群中的最差粒子,继续进行人工蜂群混合粒子群的算法执行;
(11)输出最优位置gbest_b及最优适应值gbest;
(12)求出模型参数a、b;
(13)判断与实际值的误差是否满足要求,如果是,则结束,否则转S14步骤
(14)加入先验知识明确再次搜索的方向,继续下一轮混合算法初始化和执行,直至搜索到最合适的参数a和b。
2.根据权利要求1所述的基于人工蜂群混合粒子群算法的软件可靠性参数估计方法,其特征在于:步骤(3)中利用极大似然估计法构造适应值函数,其方法是:
首先,使用极大似然法估计出参数a、b的计算公式,如式(2)所示:
其中,n表示已知的失效数;ti为第i个失效发生的时刻;i=1,2,3,...n;
然后,将公式(2)中的第一项代入到第二项中并进行数学变换,构造成一个只与参数b相关的适应值函数,如下式(3)所示:
其中,f表示解的适应值,n表示已知的失效数,tn表示第n个失效发生的时刻,ti表示第i个失效发生的时刻。
3.根据权利要求1所述的基于人工蜂群混合粒子群算法的软件可靠性参数估计方法,其特征在于:步骤(7)中利用人工蜂群搜索算子搜索每个粒子最终新位置的方法是:
首先随机产生初始种群,即N个初始解;每个解Xi(i=1,2,…N)代表一个d维的向量,d是需要被优化的参数的数目,随后,三种蜜蜂根据各自的分工开始循环搜索所有的初始解;
采蜜蜂记住自己到目前为止找到的最优解,然后在附近的邻域进行搜索以发现更好的解,搜索公式如(5)所示:
x′ij=xij+φ(xij-xkj) (5)
其中,i∈{1,2,...N},j∈{1,2,...D},且k≠i,φ是[-1,1]之间的随机数,x′ij表示在历史最优解附近进行搜索的新位置即当前解,xij表示历史最优位置,即历史最优解;
观察蜂以采蜜蜂的方式更新历史最优位置并对新位置的花蜜量进行检查,如果新位置比历史最优位置好,那么就将新位置作为历史最优位置;反之,则保持不变;观察蜂选择某个蜜源的概率Pi的计算公式为(6)所示:
上式中,fi代表第i个解的适应值,N指的是蜜源的数量;
如果某一个蜜源经过限定的循环次数之后没有发生变化,即解没有得到改进,并且当前解也不是最优解,表明该解陷入了局优;这时候处于该蜜源处的采蜜蜂就会转变角色为侦查蜂,然后随机找一个新位置来替代该蜜源的位置;假设被放弃的位置为xi,则侦查蜂替换xi的公式如为(7):
其中,和是第j维上的上限和下限,rand()为[0,1]之间的随机数,x′ij表示重新随机的新位置;上述公式(7)也是初始化时随机生成N个解的公式。
4.根据权利要求1所述的基于人工蜂群混合粒子群算法的软件可靠性参数估计方法,其特征在于:所述步骤(14)中的先验知识为:G-O模型参数a和b是反向的关系,b大则a小,b小则a大,如果根据第一次运行得到的结果b求出的累积失效数a大于已知失效数,希望a的值变小,那么参数b的值就要偏大,继续运行程序找出较大的b;如果根据第一次运行得到的结果b求出的参数a小于已知失效数,希望a的值变大,那么参数b的值就要偏小,继续运行程序找出较小的b;由此,作为下一轮算法的迭代的开始,求出更加准确的参数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910653702.2A CN110389902A (zh) | 2019-07-18 | 2019-07-18 | 基于人工蜂群混合粒子群算法的软件可靠性参数估计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910653702.2A CN110389902A (zh) | 2019-07-18 | 2019-07-18 | 基于人工蜂群混合粒子群算法的软件可靠性参数估计方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110389902A true CN110389902A (zh) | 2019-10-29 |
Family
ID=68286808
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910653702.2A Pending CN110389902A (zh) | 2019-07-18 | 2019-07-18 | 基于人工蜂群混合粒子群算法的软件可靠性参数估计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110389902A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112711535A (zh) * | 2020-12-29 | 2021-04-27 | 哈尔滨工业大学 | 基于粒子群优化的约束下组合测试数据生成方法 |
CN112800662A (zh) * | 2020-12-31 | 2021-05-14 | 南京航空航天大学 | 面向单粒子效应的多层次软加固方案多目标优化与评估方法 |
CN113570026A (zh) * | 2021-08-05 | 2021-10-29 | 浙江大学 | 一种基于响应空间一致分布的初始化方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106546953A (zh) * | 2016-11-02 | 2017-03-29 | 东南大学 | 一种基于人工蜂群算法的室内水下目标定位方法 |
WO2018072351A1 (zh) * | 2016-10-20 | 2018-04-26 | 北京工业大学 | 一种基于粒子群优化算法对支持向量机的优化方法 |
CN108764450A (zh) * | 2018-05-22 | 2018-11-06 | 常州工学院 | 一种基于广义粒子群算法的参数优化及估计方法 |
-
2019
- 2019-07-18 CN CN201910653702.2A patent/CN110389902A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018072351A1 (zh) * | 2016-10-20 | 2018-04-26 | 北京工业大学 | 一种基于粒子群优化算法对支持向量机的优化方法 |
CN106546953A (zh) * | 2016-11-02 | 2017-03-29 | 东南大学 | 一种基于人工蜂群算法的室内水下目标定位方法 |
CN108764450A (zh) * | 2018-05-22 | 2018-11-06 | 常州工学院 | 一种基于广义粒子群算法的参数优化及估计方法 |
Non-Patent Citations (4)
Title |
---|
曾劲涛: "一种新的软件可靠性模型参数估计方法", 《计算机技术与发展》 * |
毛敏: "PSO 和ABC 混合的软件可靠性模型参数估计研究", 《中国优秀博硕士学位论文全文数据库(硕士)工程科技Ⅱ辑》, pages 1 - 54 * |
魏传程: "软件可靠性建模及最优化问题研究", 《中国优秀博硕士学位论文全文数据库(硕士)工程科技Ⅱ辑》 * |
魏传程: "软件可靠性建模及最优化问题研究", 《中国优秀博硕士学位论文全文数据库(硕士)工程科技Ⅱ辑》, 15 August 2010 (2010-08-15), pages 8 - 46 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112711535A (zh) * | 2020-12-29 | 2021-04-27 | 哈尔滨工业大学 | 基于粒子群优化的约束下组合测试数据生成方法 |
CN112711535B (zh) * | 2020-12-29 | 2021-12-21 | 哈尔滨工业大学 | 基于粒子群优化的约束下组合测试数据生成方法 |
CN112800662A (zh) * | 2020-12-31 | 2021-05-14 | 南京航空航天大学 | 面向单粒子效应的多层次软加固方案多目标优化与评估方法 |
CN113570026A (zh) * | 2021-08-05 | 2021-10-29 | 浙江大学 | 一种基于响应空间一致分布的初始化方法 |
CN113570026B (zh) * | 2021-08-05 | 2023-10-24 | 浙江大学 | 一种基于响应空间一致分布的初始化方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110389902A (zh) | 基于人工蜂群混合粒子群算法的软件可靠性参数估计方法 | |
AU2015331621B2 (en) | Ancestral human genomes | |
CN108549954A (zh) | 风险模型训练方法、风险识别方法、装置、设备及介质 | |
CN109871862A (zh) | 一种基于合成少数类过采样和深度学习的故障预测方法 | |
CN105930688A (zh) | 基于改进pso算法的蛋白质功能模块检测方法 | |
CN105389480A (zh) | 多类不平衡基因组学数据迭代集成特征选择方法及系统 | |
CN106060039B (zh) | 一种面向网络异常数据流的分类检测方法 | |
CN106682448A (zh) | 基于多目标遗传规划算法的序贯测试优化方法 | |
CN107392249A (zh) | 一种k近邻相似度优化的密度峰聚类方法 | |
CN112313702B (zh) | 显示控制设备、显示控制方法以及显示控制程序 | |
CN107451617A (zh) | 一种图转导半监督分类方法 | |
Mostafa et al. | Visualizing feature maps for model selection in convolutional neural networks | |
CN104698838B (zh) | 基于论域动态划分和学习的模糊调度规则挖掘方法 | |
CN109978051A (zh) | 基于混合神经网络的监督分类方法 | |
CN103902737A (zh) | 基于群智能算法的投影寻踪分类建模软件及实现 | |
CN109858785A (zh) | 一种评价智能电能表运行状态的方法和系统 | |
Lee et al. | Statistical cluster validity indexes to consider cohesion and separation | |
CN104899477B (zh) | 一种使用词袋模型的蛋白质亚细胞区间预测方法 | |
Xiong et al. | A hybrid many-objective evolutionary algorithm with region preference for decision makers | |
CN109376803A (zh) | 基于模糊复集值积分的多神经网络分类器融合方法及装置 | |
Liu et al. | A novel meta-heuristic-based sequential forward feature selection approach for anomaly detection systems | |
CN104598770B (zh) | 基于人类进化基因表达式编程的麦蚜数量预测方法及系统 | |
Elfeky et al. | A simple ranking and selection for constrained evolutionary optimization | |
Kar et al. | A particle swarm optimization based gene identification technique for classification of cancer subgroups | |
Foutel-Rodier et al. | Kingman’s coalescent with erosion |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |