量子粒子群算法求解整数规划的方法

合集下载

基于量子粒子群求解混合整数非线性规划

基于量子粒子群求解混合整数非线性规划

基于量子粒子群求解混合整数非线性规划张兰;邢志栋【摘要】在经典微粒群算法的基础上提出一种有较高收敛性能的智能算法:量子粒子群(QPSO)算法.并用于求解混合整数非线性规划问题.实验室证明QPSO算法收敛性能好、速度快,为求解混合整数非线性规划开辟了新途径.【期刊名称】《计算机工程与应用》【年(卷),期】2010(046)009【总页数】3页(P49-50,82)【关键词】混合整数非线性规划(MNLP);量子粒子群(QPSO);粒子群(PSO)【作者】张兰;邢志栋【作者单位】西北大学,数学系,西安,710127;西安航空职业技术学院,基础部,西安,710089;西北大学,数学系,西安,710127【正文语种】中文【中图分类】O241 引言混合整数非线性规划(Mixed-Integer NonLinear Programming,MNLP)是同时包含整数变量和连续变量的优化问题,许多组合优化问题如:TSP问题,背包问题等等都可视为MNLP问题。

对于MNLP问题,其目标函数和约束条件的非线性,使结果往往存在局部最优。

解决MNLP主要有确定性方法和随机性方法。

确定性方法如分枝界定法(B&B),外逼近法(OA),广义 Bender分解法(GBD),但这些方法局限性很大。

近年来,越来越多的随机性方法应用于 MNLP,如:进化算法(EA),遗传算法(GA)等。

但这些方法耗时多,且容易陷入局部最优。

Kennedy等人[1]提出的粒子群算法(PSO)是继遗传算法后一类新的智能优化算法,该算法控制参数少,计算速度快。

该文在标准的粒子群算法基础上,从量子角度引入一种能保证全局收敛进化算法——量子粒子群(QPSO),提出解决MNLP的新方法,从而使结果更优,效率更高。

2 混合整数非线性规划混合整数非线性规划其一般形式为:其中:x∈R p,y∈N q,p+q=n,R p是 p 维空间,N q是 q 维整数空间,函数f(x,y)为非线性目标函数,gi(x,y),hj(x,y)为非线性约束函数。

非线性整数规划的粒子群优化算法

非线性整数规划的粒子群优化算法

1 27
都有一个由被优化的函数决定的适应值 ,每个粒子还有一个速度决定他们飞翔的方向和距离 ,然后粒子们
就追随当前的最优粒子在解空间中搜索 。粒子群优化算法初始化为一群随机粒子 (随机解 ) ,然后通过迭代
找到最优解 。在每一次迭代中 ,粒子通过跟踪两个“极值 ”来更新自己 。一个是粒子本身所找到的最优解 ,
从表 2可知 ,当 c1 , c2 固定后 , c0 太大全局极值和局部极值影响力小 , c0 太小就降低了自身的影响 ,因此 c0 的取值应适中 。经过测试 ,对于 F1 函数来说 , c0 = 1. 4时平均迭代次数较少 ;对于 F2 函数来说 , c0 = 1. 2 时平均迭代次数较少 。从表 3可知 ,当 c0 , c2 固定后 , c1 偏大有利于局部搜索 ,不利于全局搜索 ,反之 , c1 偏 小不利于局部搜索 ,有利于全局搜索 ,所以 c1 的取值也应取适中 。对于 F1 和 F2 函数来说 , c1 = 1. 4平均迭 代次数较少 。从表 4可知 ,当 c0 , c1 固定后 ,同样道理 , c2 的取值应取适中 。对于 F1 和 F2 函数来说 , c2 = 0. 9平均迭代次数较少 。
(1)
xk +1 = xk + vk +1
(2)
其中 : vk 是粒子的速度向量 ; xk 是当前粒子的位置 ; pbestk 粒子本身所找到的最优解的位置 ; gbestk 整个 种群目前找到的最优解的位置 ; c0 , c1 , c2 表示群体认知系数 , c0 一般取介于 (0, 1)之间的随机数 , c1 , c2 取 ( 0, 2)之间的随机数 。vk +1 是 vk , pbestk - xk 和 gbestk - xk 矢量的和 。在每一维粒子的速度都会被限制在一个

量子行为粒子群优化算法-中文版

量子行为粒子群优化算法-中文版
化算法
Ii
粒子状态
X = <xi0,xi1,…,xin-1> P = <pi0,pi1,…,pin-1> V = <vi0,vi1,…,vin-1> x_fitness = ? p_fitness = ?
2. 粒子群优化算法的迭代方程 粒子按下列方程进行进化
速度方程
vid(t)=w*vid(t-1)+c1*rand()*(pid-xid(t-1))+c2*rand()*(pgdxid(t-1))
位置方程
xid(t)=xid(t-1)+vid(t)
xid –第i个粒子当前位置的第d维. vid –第i个粒子的当前速度的第d维. Pid –第i个粒子目前最优位置的第d维. Pgd – 群体最优位置的第d维. c1, c2 –加速因子. w - 惯性因子.
被成功的应用到各种优化问题中 在PSO 算法中,包含n个个体的群体在各自的搜索 方向上直接或间接的交互信息
:每个粒子(个体)包含:
3个向量:
• X向量记录了粒子在搜索空间的当前位置 • P向量记录了粒子所找到的当前最优解的位置 • V向量包含了粒子在不受干扰的情况下位置的改变 • X适应值记录了x向量的适应值 • P适应值记录了p向量的适应值
25
20
Pid pbest
15
粒子群优化算法
Vid(t-1) v(k)
图示
v(k+1)
10
Vid(t)
5
Pgd gbest
5
10
15
20
25
3. 粒子群优化算法的群体收搜策略
在粒子群优化算法中,粒子不会消失.
每个粒子被看成是在整个收搜空间收搜并记录最优值的 个体.

整数规划的量子行为蝙蝠算法

整数规划的量子行为蝙蝠算法

整数规划的量子行为蝙蝠算法量子行为蝙蝠算法(Quantum Behavior Bat Algorithm,QBBA)是一种新的混合搜索优化算法。

该算法结合了量子技术和蝙蝠算法,以解决离散优化问题。

QBBA以量子算法为基础,并添加了蝙蝠行为学中强烈的随机性,并将模拟退火等局部搜索技术结合在一起。

它可以被用来解决离散整数规划的高维决策问题。

QBBA的策略是在搜索空间中寻找最优解。

该算法从当前时间解的集合中,为每只蝙蝠分配决策空间,直到最高作用价值处标准,并以此为基础进行搜索。

把量子技术应用到蝙蝠算法,能有效改变搜索空间,发现一些不可能发现的更优解。

此外,通过将蝙蝠行为学中强随机性与量子算法相结合,对搜索目标分布重新编码,能够更有效地搜索最优解。

QBBA算法能够解决高维决策问题,因为它能够加快搜索的速度。

首先,QBBA可以比大多数传统的搜索算法更快地发现最优解。

其次,QBBA可以搜索更大的解决方案空间,因为它定义一种灵活,用户可定
制的搜索模式。

最后,QBBA还可以跳过一些不可能搜索出最优解的部分,从而高效地搜索到相对较好的解决方案。

综上所述,QBBA是一种有效的混合搜索优化算法,可以用来解决高维决策问题,甚至离散整数规划问题。

它以量子技术为基础,添加了蝙蝠行为学的随机性,而且可以跳过一些不可能搜索出最优解的部分,以较高的效率找到更加满意的解决方案。

第7章 粒子群算法

第7章 粒子群算法

16
三、算法举例和仿真
步骤1:初始化 设种群大小是N=3;
给定惯量权重ω=0.5,c1=c2=2;
r1,r2 是[0,1]区间随机数; 假设初始位置和速度分别为:
3) v3 (5, v1 (3,2) v2 (-3,-2) p1 ,p2 ,p3 x1 (8,5) x 2 (-5,9) x 3 (-7,8)
选择算子交叉算子变异算子进化规则进化策略蚁群算法结合模拟退火算法结合人工免疫算法结合差分进化算法结合局部搜索算法单纯性技术函数延伸技术混沌技术量子技术协同技术小生境技术物种形成技术混合进化算子的改进混合其他搜索算法的改进混合其他技术的改进四算法改进方向和研究状况31四算法改进方向和研究状况5离散版本改进二进制编码离散版本整数编码离散版本其他形式离散版本32二阶粒子群算法在标准pso算法中微粒的飞行速度仅仅是微粒当前位置的函数而二阶粒子群算法中微粒飞行速度的变化与微粒位置的变化有关其速度更新公式为
v 2 v 2 c1 r1 ( pBest2 x 2 ) c 2 r2 ( gBest x 2 ) 0.5 (3) 0 2 0.3 (8 (5)) 6.1 p 2 v 2 (6.1,1.8) 0.5 (2) 0 2 0.1 ((5) 9) 1.8 x x v (5,9) (6.1,1.8) (1.1,10.8) (1.1,10) 2 2 2
5
二、算法介绍
PSO初始化为一群随机粒子(随机解)。然后通过迭代找到最 优解。在每一次的迭代中,粒子通过跟踪两个“极值”(pb est ,gbest)来更新自己。
在找到这两个最优值后,粒子通过下面的公式来更新自己 的速度和位置。

粒子群算法详解

粒子群算法详解

粒子群算法详解
粒子群算法(ParticleSwarmOptimization,PSO)是一种基于群体智能的优化算法。

粒子群算法的基本思想是模拟鸟群或鱼群等群体智能行为,通过不断地调整粒子的位置和速度,使其逐步靠近最优解。

粒子群算法广泛应用于函数优化、机器学习、神经网络等领域。

粒子群算法的流程如下:
1.初始化粒子群的位置和速度;
2.计算每个粒子的适应度,并记录全局最优粒子;
3.根据全局最优粒子和个体最优粒子更新粒子的速度和位置;
4.重复步骤2和3直到达到预定的终止条件。

在粒子群算法中,粒子的位置和速度分别表示解空间中的一个点和该点的搜索方向和速度。

每个粒子都有一个适应度值,用来评估其搜索到的位置的好坏。

全局最优粒子是整个粒子群中适应度最高的粒子,而个体最优粒子是每个粒子自身经历过的最优位置。

粒子群算法的优点在于具有快速收敛速度、易于实现和高度可并行化等特点。

同时,粒子群算法也存在一些缺点,例如易陷入局部最优、对参数选择比较敏感等。

需要注意的是,粒子群算法不是一种万能的优化算法,它适用于一定范围内的函数优化问题。

在实际应用中,需要根据具体问题选择合适的优化算法。

- 1 -。

量子行为粒子群优化算法-中文版


量子行为粒子群优化
02
算法的实现过程
初始化阶段
01
02
03
初始化粒子群
在解空间中随机初始化一 组粒子,每个粒子代表一 个潜在的解。
初始化粒子速度
为每个粒子随机分配一个 速度,用于控制其位置的 变化。
初始化粒子位置
根据问题的约束条件和目 标函数,为每个粒子随机 分配一个初始位置。
更新阶段
计算适应度值
量子行为粒子群优化算法的基本原理
• 量子行为粒子群优化算法的基本原理是:每个粒子被视为一 个量子比特,其状态由波函数表示。粒子通过不断更新自己 的位置和速度来搜索解空间,同时通过与其它粒子的信息共 享和协作来不断逼近最优解。在更新过程中,粒子不仅受到 自身经验和群体最佳位置的影响,还受到量子旋转门和量子 测量等量子操作的作用,从而在解空间中实现全局搜索和局 部搜索的平衡。
THANKS.
组合优化问题
组合优化问题是指在一组可行解中寻 找最优解的问题,如旅行商问题、背 包问题、图着色问题等。
量子行为粒子群优化算法能够处理这 类问题,通过粒子间的信息共享和协 作,寻找最优解或近似最优解。
机器学习与数据挖掘
在机器学习和数据挖掘领域,量子行为粒子群优化算法可用 于特征选择、模型参数优化和超参数调整等方面。
算法在实际问题中的应用前景
组合优化问题
量子行为粒子群优化算法在求解组合优化问题方面具有优 势,如旅行商问题、背包问题等,有望在实际生产、物流 等领域得到广泛应用。
机器学习与数据挖掘
量子行为粒子群优化算法可用于特征选择、模型参数优化 等方面,为机器学习和数据挖掘提供新的思路和方法。
控制系统优化
在控制系统的参数优化和控制器设计中,量子行为粒子群 优化算法具有潜在的应用价值,有助于提高控制系统的性 能和稳定性。

一种优化高维函数的量子―粒子群算法

一种优化高维函数的量子―粒子群算法
摘要:提出了一种改进的量子―粒子群算法来改善维数束缚问题。

对于存在高维问题的量子―粒子群算法,引入了相互学习方法,使用多个粒子群用来优化解向量的分量,从而帮助粒子群克服维数束缚找到最优解;另外在每一次迭代过程中根据遗传算法中适应度函数对参与相互学习的粒子解的数目进行最优选取,从而有效减少了时间花费。

对经典函数的测试计算表明,改进的混合算法确保了搜索精度,在时间花费上也得到了较好的改善。

关键词:粒子群;量子;相互学习;适应度函数。

随机优化算法求解混合整数优化问题

随机优化算法求解混合整数优化问题引言混合整数优化问题(Mixed Integer Optimization Problem)是指在一组约束条件下,求解同时包含连续变量和离散变量的最优解的问题。

这类问题广泛应用于实际工程、管理和经济等领域,例如生产优化、资源分配、路径规划等。

由于离散变量的引入,混合整数优化问题具有较高的计算复杂度,传统的优化算法难以求解。

而随机优化算法由于其随机性和全局搜索能力,成为求解混合整数优化问题的有效方法。

本文将介绍常见的随机优化算法,并探讨如何应用这些算法求解混合整数优化问题。

随机优化算法概述随机优化算法是一类基于概率和随机性的优化方法,其主要特点是通过随机性来搜索解空间,并逐步逼近最优解。

相较于确定性优化算法,随机优化算法无需求解函数的解析表达式,只需能够评估目标函数值即可。

常见的随机优化算法包括模拟退火算法、遗传算法、粒子群算法等。

模拟退火算法模拟退火算法(Simulated Annealing, SA)源自固体物理学中的退火过程,在优化问题中被广泛应用。

该算法通过模拟物质的退火过程,将系统的能量降至较低的状态,从而找到全局最优解。

模拟退火算法的基本思想是通过接受劣解的概率来避免陷入局部最优解,以全局搜索为目标。

算法从一个初始解开始,通过改变解的状态(即变量的取值),计算目标函数的变化,并依概率接受新解。

随着迭代的进行,算法逐渐降低接受劣解的概率,以达到更优解。

模拟退火算法的关键参数包括初始温度、降温速度和终止温度。

初始温度越高,接受劣解的概率越大,有助于跳出局部最优解;降温速度则决定了搜索过程的速度,过快的降温速度可能导致搜索停滞;终止温度通常设定为一个较小的值,当温度低于终止温度时算法停止。

遗传算法遗传算法(Genetic Algorithm, GA)模拟了自然界中生物进化的过程,通过模拟遗传、变异、选择等操作来搜索最优解。

该算法常被用于解决搜索空间巨大而复杂的问题,可以在多个解之间进行搜索,并通过自然选择和遗传操作来进化优秀的个体。

粒子群算法(基础精讲)课件


神经网络训练
神经网络训练是指通过训练神经网络来使其能够学习和模拟特定的输入输出关系 。粒子群算法可以应用于神经网络的训练过程中,通过优化神经网络的参数来提 高其性能。
例如,在机器视觉、语音识别、自然语言处理等领域中,神经网络被广泛应用于 各种任务。粒子群算法可以用于优化神经网络的结构和参数,从而提高其分类、 预测等任务的准确性。
优势
在许多优化问题中,粒子群算法表现出了良好的全局搜索能 力和鲁棒性,尤其在处理非线性、多峰值等复杂问题时具有 显著优势。
粒子群算法的核心要素
02
粒子个体
01
粒子
在粒子群算法中,每个解被称为一个粒子,代表问题的 一个潜在解。
02
粒子状态
每个粒子的位置和速度决定了其状态,其中位置表示解 的优劣,速度表示粒子改变方向的快慢。
社会认知策略的引入
总结词
引入社会认知策略可以增强粒子的社会性,提高算法的群体协作能力。
详细描述
社会认知策略是一种模拟群体行为的方法,通过引入社会认知策略,可以增强粒子的社会性,提高算 法的群体协作能力。在粒子群算法中引入社会认知策略,可以使粒子更加关注群体最优解,促进粒子 之间的信息交流和协作,从而提高算法的全局搜索能力和鲁棒性。
03 粒子群算法的实现步骤
初始化粒子群
随机初始化粒子群的 位置和速度。
初始化粒子的个体最 佳位置为随机位置, 全局最佳位置为随机 位置。
设置粒子的个体最佳 位置和全局最佳位置 。
更新粒子速度和位置
根据粒子个体和全局最佳位置计 算粒子的速度和位置更新公式。
更新粒子的速度和位置,使其向 全局最佳位置靠近。
每个粒子都有一个记录其历史最 佳位置的变量,用于指导粒子向
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

量子粒子群算法求解整数规划的方法杨荣华;刘建华【摘要】粒子群算法主要用于优化连续性问题.如果用于求解整数规划问题,算法的粒子位置必须解决取整问题;而量子粒子群算法求解整数规划问题具有更高的效率.利用三种取整方法与量子粒子群算法结合,求解非线性整数规划问题,并且与标准粒子群算法求解整数规划问题进行比较.通过对基准函数仿真实验,比较了六种方法求解整数规划问题.实验结果表明,基于随机取整的量子粒子群算法搜索成功率优于其他五种方法,其综合搜索效率更佳.寻找了一种更优的求解整数规划方法.%The standard Particle Swarm Optimization mainly be used to optimize continuous problem. If using to solve integer programming, the position of particle must be rounded. However, it is more efficient for Quantum Particle Swarm Optimization (QPSO) to solve integer programming. Three kinds of rounding location of particle for QPSO are used to optimize the integer programming, and compared to the standard PSO with the same three kinds of rounding location of particle. By the simulation on benchmark functions, six kind of solving integer programming are compared with. The results of experiment show that the QPSO based on random rounding outperforms the other ways and its' searching efficiency is higher than that of the other ways, so a better method of solving integers programming is found.【期刊名称】《科学技术与工程》【年(卷),期】2011(011)033【总页数】5页(P8195-8198,8202)【关键词】量子粒子群;整数规划;随机取整;优化算法【作者】杨荣华;刘建华【作者单位】福建工程学院计算机与信息科学系,福州350108;福建工程学院计算机与信息科学系,福州350108【正文语种】中文【中图分类】TP183优化问题反映了人类实践活动中进步的要求。

优化算法是在满足其他各方面的前提条件下,争取获得在可能范围内的最佳效果。

粒子群算法现已广泛用于各种优化问题的求解,但常用的标准粒子群算法主要用于连续性问题的优化。

本文提出几种粒子群算法求解整数规划问题的方法,通过实验比较表明,基于随机取整的量子粒子群算法来求解非线性的整数规划问题,具更好的算法搜索效率。

1 整数规划问题整数规划(Integer Programming,IP)是要求决策变量取整数值的优化问题,是组合最优化理论中的一个核心问题。

本文研究的整数规划是针对非线性的整数规划,在解决交通调度、任务调度、资金分配、股票分析、网络设计和VLSI电路设计等问题中具有重要的应用。

整数规划问题的一般形式为:式中:x=[x1,x2..,xn]T为整数向量。

2 PSO算法和QPSO算法2.1 PSO 算法粒子群算法(Particle Swarm Optimization,PSO)是一类基于群智能的随机优化算法。

受鸟类群体行为研究结果的启发,并利用生物学家Frank Heppner的生物群体模型,Jame Kennedy和 Russell Eberhart于1995年共同提出了PSO算法[1],并立刻引起了优化及演化计算领域的学者们的广泛关注。

粒子群算法的基本思想是通过群体中个体之间的协作和信息共享来寻找最优解。

粒子群算法将每个个体称为粒子,用Xi=(xi1,xi2,…,xiD)来表示在D维搜索空间中的一个没有体积和重量的粒子,并在搜索空间中以一定的速度Vi=(vi1,vi2,…,viD)飞行。

该飞行速度由个体的最好位置Pi=(pi1,pi2,…,piD)和群体的最好位置pgd进行动态调整。

粒子状态更新操作如下:其中,c1和 c2是[0,1]区间的随机数,学习因子φ1和φ2决定社会群体pg 和个体认知pi的相互影响,由此构成了粒子群的基本算法。

自PSO基本算法提出后,学者们也进行了大量有关提高算法收敛性和多样性的研究。

一般来说,对于基于群体的搜索优化方法,适当地控制全局搜索和局部搜索能力对有效地找到最优解起到关键作用。

Shi和 Eberhart[2]引进了线性变化的惯性权重参数w,在时间上动态地调整速度并慢慢地将PSO聚焦在局部搜索。

在大多数文献中将带惯性权重的PSO算法称之为PSO算法的标准版本,或简称标准PSO;w值为惯性权值,当初始搜索时,可以从较大wmax向较小wmin线性地减小;通常可以用式(4)中,wmax为初始权重,wmin为最终权重,iter为当前迭代次数,itermax 为最大迭代次数。

Clerc[3]于1999年提出了收缩因子参数 k。

该方法描述了一种选择w、φ1和φ2值的方法,防止粒子搜索到可行性区域可能的范围之外,以确保算法收敛。

2.2 QPSO 算法Sun等人从量子力学的角度,提出一种新的量子粒子群优化(Quantum-behaved Particle Swarm Optimization ,QPSO)算法[4,5]。

认为粒子具有量子行为,每一个粒子在搜索空间移动时,存在着一个以Pbest为中心的DELTA势阱。

由于在量子空间中的粒子满足聚集态的性质完全不同,粒子移动时没有确定的轨迹,这使粒子可以在整个可行解空间中进行探索寻找全局最优解,因而QPSO算法的全局搜索能力远远优于经典的PSO算法。

QPSO算法中,设种群规模为 M,在进化过程中,粒子以一定概率取加或减,更新每个粒子的位置,并生成新的粒子群体,由公式(5)至式(7)决定。

若u≥0.5 则或式(7)中 a、u 是(0,1)的随机数,mbest为 pbest的平均值,pbest(i)为第i个粒子本身的最优解,gbest为所有粒子的最优解;b为迭代进程中的权重系数,计算公式与公式(4)的w相同,从初始搜索的初始权重值按搜索次数线性地减少到最大搜索次数的最终权重值。

3 用量子粒子群算法求解整数规划问题将量子粒子群算法中粒子的位置进行整数规格化,成为解决整数规划的基本方法;不管是线性的整数规划和非线性整数规划,都需要运用这个方法来处理粒子的位置。

现有进行粒子位置的整数规格化的方法主要有直接取整法、随机取整法、最终取整法三种方法。

3.1 直接取整法利用量子粒子群算法需要计算各粒子相应的位置;当粒子到下一位置后,立即将各粒子的位置参数值取整,计算其适应值,并提取本粒子最优位置pbest(i)、全部粒子中间位置mbest和全局粒子最优位置gbest,接着计算下一个位置,进入下一次取整,直到满足计算要求。

3.2 随机取整法文献[6]研究用随机取整的混和粒子群算法解决混和整数非线性规划问题。

运用该取整方法进行量子粒子群算法的搜索,当粒子位置参数的小数值p∈(0,1)小于等于随机数q∈(0,1)时,粒子位置参数舍去小数取整;当粒子位置参数的小数值p 大于随机数q时,粒子位置参数的小数进位为整数,其它数据处理的流程与直接取整方式类似。

对于以上两种取整方法运用到量子粒子群算法求解整数规划问题,其算法步骤基本一样,其主要步骤如下:第一步,初始化各粒子的位置和初速度,以及其它初始值。

第二步,将各粒子的位置规格化为整数(采用直接取整法或随机取整法)。

第三步,计算各粒子的适应值(目标函数值)。

第四步,比较粒子适应值(目标函数值),计算各粒子的历史以来最佳位置和所有粒子历史以来的最佳位置。

第五步,如果计算结果已经达到计算要求,就停止计算;否则,进入下一步。

第六步,用公式(5)、式(6)、式(7)计算各粒子的下一次位置的参数值,转至第二步。

3.3 最终取整法本文提出一种最终取整法的方法,用于量子粒子群算法计算非线性的整数规划的粒子位置取整。

该方法是利用目标函数计算适应值时,将目标函数中粒子位置临时按四舍五入为整数计算,不改变原粒子位置值,只在计算最后结果完成时进行最佳粒子的位置规范化取整,作为最后计算结果。

其主要步骤如下:第一步,初始化各粒子的位置和初速度,以及其它初始值。

第二步,保持粒子位置参数值不改变,计算各粒子的适应值(目标函数值)时粒子位置参数值临时按四舍五入取整计算。

第三步,比较粒子适应值(目标函数值),计算各粒子的历史以来最佳位置和所有粒子历史以来的最佳位置。

第四步,如果计算结果已经达到计算要求,就进入第六步;否则,进入下一步。

第五步,用公式(5)、式(6)、式(7)计算各粒子的下一次位置的参数值,转至第二步。

第六步,粒子位置参数值按四舍五入取整,计算结束。

4 实验分析4.1 实验的基准函数由于许多基准测试函数的搜索范围小,函数峰值少;为了完成整数规划的求解问题,需要挑选多峰的整数范围大的基准函数,考验程序对应复杂函数的能力,比较判断其的搜索成功率和平均迭代次数(成功搜索)。

通过比较,选择适合实验的基准函数Generalized Schwefel's Problem 2.26 函数(记为F1)、Schaffer函数(记为F2)和较简单多项式函数(记为F3)作为测试函数。

F1函数描述为:min F(x)=,其中Z为整数空间,-500≤xi≤500,最优解xi=421,维度为 2时最优适应值为 -837.965 5。

F2函数描述为:minF(x)=0.5+,其中 Z 为整数空间,-100≤x1,2≤100,最优解为(x1=0,x2=0),最优适应值为0。

此函数为不可分离的多峰函数,此函数带有一定的欺骗性,因为全局最优与最好的局部最优相距很远,因此搜索算法往往朝着错误的方向进行收敛。

F3函数为多项式min F(x)=+x2-11)2+(+x1-7)2,x1,2∈Z,其中 Z 为整数空间,-100≤x1,2≤100,最优解为(x1=3,x2=2),最优适应值为0。

实验选择函数维度为2,每次群按100粒子计算,最多迭代不超100次。

相关文档
最新文档