当前位置: 首页 > 专利查询>江南大学专利>正文

基于爬山算法与鲶鱼效应粒子群算法交替作用的资源受限项目调度控制方法技术

技术编号:10886291 阅读:147 留言:0更新日期:2015-01-08 15:33
本发明专利技术结合爬山算法的局部搜索能力和改进鲶鱼效应粒子群的全局搜索能力,提出了基于爬山算法与鲶鱼效应粒子群算法交替作用的资源受限项目调度控制方法。该方法在改进鲶鱼效应粒子群算法的过程中引入爬山算法的思想,当改进鲶鱼效应粒子群算法中的粒子位置更新后,分别对粒子的各个维度进行适当扰动,从中选取适应度最好的位置作为粒子的攀登方向。两种算法协同作用,算法前期强调全局搜索,鲶鱼效应粒子群算法占主导作用,迭代后期粒子趋于稳定,更偏向于局部搜索,此时爬山算法占主导作用。本发明专利技术的优点是:采用本方法的调度控制器能根据生产活动时序以及人力、物力资源等外部约束条件自动控制项目调度,实现生产活动效率的最大化。

【技术实现步骤摘要】
【专利摘要】本专利技术结合爬山算法的局部搜索能力和改进鲶鱼效应粒子群的全局搜索能力,提出了。该方法在改进鲶鱼效应粒子群算法的过程中引入爬山算法的思想,当改进鲶鱼效应粒子群算法中的粒子位置更新后,分别对粒子的各个维度进行适当扰动,从中选取适应度最好的位置作为粒子的攀登方向。两种算法协同作用,算法前期强调全局搜索,鲶鱼效应粒子群算法占主导作用,迭代后期粒子趋于稳定,更偏向于局部搜索,此时爬山算法占主导作用。本专利技术的优点是:采用本方法的调度控制器能根据生产活动时序以及人力、物力资源等外部约束条件自动控制项目调度,实现生产活动效率的最大化。【专利说明】
本专利技术设计了基于爬山算法与鲶鱼效应粒子群算法交替作用的资源受限项目调度控制器,属于计算机

技术介绍
资源受限项目调度问题(Resource-ConstrainedProject SchedulingProblem, RCPSP),是指在满足资源约束和活动时序等的前提下对各活动开始和结束时间进行安排,使得总工期达到最小的一种调度方法。其广泛地存在于各个行业中,已被证明是NP-hard问题。如何求解这个问题,一直是国内外众多学者的研究重点。迄今为止已提出了一系列的问题求解模型,形成了一套比较完善的模型库。 粒子群算法(particle swarm optimizat1n, PS0)是由美国社会心理学家Kennedy博士和电气工程师Eberhart博士通过对鸟类群体行为的研究提出的一种基于群体智能的人工智能算法,其概念简单,相对于其他的群智能算法具有控制参数少、实现方式简便等特点,目前已经被诸如社会科学、自然科学等各个领域的学者广泛应用。但是,标准的粒子群算法在求解项目调度解决方案时,由于其易陷入局部最优的固有缺陷,因此不能准确地得到生产项目的最佳解决方案。因此,解决粒子群算法的早熟收敛问题成为建立基于改进粒子群算法的资源受限项目调度控制器的主要问题。 爬山算法是一种典型的局部择优算法,强调深度优先搜索,即在寻优时总是选择当前的最优解,是一种比较典型的贪婪算法,具有较强的局部搜索能力。其原理是一种启发式搜索策略:设爬山者从当前位置开始,每走一步前先分别计算与周围位置的高度差,然后选择高度差最大的方向作为攀登方向。若到达某一点时,无论选择哪个方向都将使高度下降,则将这一点视为峰顶,算法搜索结束。爬山算法通过启发选择部分节点,能够提高搜索效率。但由于片面强调局部搜索,容易陷入局部最优。 基本粒子群算法容易陷入局部最优,为了解决这个问题,鲶鱼效应粒子群算法引入了“鲶鱼效应”。所谓“鲶鱼效应”,是通过在中途引入强有力的个体来模拟自然界中鲶鱼对沙丁鱼群的驱赶效果,以此激发出沙丁鱼群的群体活力,转变鱼群的群体惰性,因此能极大地增加粒子的多样性。鲶鱼效应粒子群算法规定:如果全局最优解在达到了事先设定的迭代数阈值时仍然没有进化,则把个体解最差的10%的粒子初始化,以恢复种群的活力。粒子群算法的早熟收敛是由于初期粒子过于集中于局部极值,粒子多样性缺失而失去全局搜索能力。鲶鱼效应粒子群算法引入“鲶鱼效应”,能保持粒子多样性,改善基本粒子群算法早熟问题。鲶鱼效应粒子群算法通过跟踪全局最优粒子进化停滞迭代数,将失去活力的粒子重新初始化,恢复种群活力,但是收敛速度将受到影响。
技术实现思路
本专利技术的目的是针对资源受限项目调度问题的时序约束和资源约束的特点,设计了基于爬山算法与鲶鱼效应粒子群算法交替作用的资源受限项目调度控制器,实现了项目调度系统管理的自动化,成功克服了粒子群算法的固有缺陷,能够较准确地求得资源受限项目调度问题的最短工期,完善项目的生产调度,提高生产效率。 本专利技术所述的包括以下步骤: 步骤1、分析优化问题,构造适应度函数; 步骤2、初始化参数,选取合适的粒子数m、最大进化代数Tmax和个体停滞进化阈值ε ; 步骤3、初始化种群,迭代次数t = 0,随机产生种群个体的位置和速度,计算各个粒子的个体适应度; 步骤4、当t ( Tmax时,转步骤5,否则转步骤10 ; 步骤5、根据式(I)、式(2)更新粒子的位置和速度; Vi (t+Ι) = ω ^vi (t) +C1^rand1 () * Lpbi (t) -Xi (t)] +c2*rand2 O * (I) Xi (t+1) = Xi (t) +Vi (t+1)(2) 其中,i = l,2,…,m (t)是第i个粒子在第t次迭代时的飞行速度Ji (t)是第i个粒子在第t次迭代时的位置;pbi (t)是第i个粒子在第t次迭代时的个体最优值;gb(t)是第t次迭代时的全局最优值^and1O和rand2 O都是在区间内均勻分布的随机数;Cl和C2是学习因子;ω是惯性权重; 粒子更新采用如式(3)所示的吸收墙策略,其中Vmax表示算法搜索边界: (O — ?τμχ, (O > Hiiax .-'.)(/) = 1.)(/), 、、<].)(/,,職(3) viW=-W vI(O <"Vmax 步骤6、对粒子的每一维独立扰动并计算适应度,从中选取适应度最优的位置更新为粒子的新位置,并更新各个粒子的个体最优值和全局最优值; 步骤7、记录每个粒子的个体进化停滞数,当大于ε时,则初始化该粒子的位置和速度; 步骤8、迭代次数t加I ; 步骤9、判断是否满足算法终止条件,满足则转步骤10,否则转步骤4 ; 步骤10、输出最优解。 为了获取合格的精度和较快的运行速度,在算法运行过程中,步骤(2)选取粒子数m = 20,最大进化代数Tmax = 100,个体停滞进化阈值ε = 5。 本专利技术的优点是:采用本方法的资源受限项目调度控制器能根据生产活动时序以及人力、物力资源等外部约束条件自动控制项目调度,实现生产活动效率的最大化。 【专利附图】【附图说明】 图1为基于爬山算法与鲶鱼效应粒子群算法交替作用的方法的基本流程。 图2为算法功能运行模块示意图。 图3为调度控制器结构示意图。 【具体实施方式】 下面结合附图和实施例对本专利技术作进一步说明。 调度控制以算法功能运行模块为基础实现项目调度,图1是爬山算法与鲶鱼效应粒子群算法交替作用的基本流程。 首先介绍改进鲶鱼效应粒子群算法的具体原理。 本专利技术在鲶鱼效应粒子群算法的基础上,针对性地细化了粒子初始化的条件,原本将初始化群体中适应度最差的10%的个体,现在只初始化在迭代中发现的惰性粒子,算法在进化过程中记录每个粒子停滞迭代数,即粒子个体最优值停止更新的迭代次数,若某个粒子的停滞迭代数累积到停滞迭代数阈值,则计算其与全局最优值的欧几里得距离,若位置靠近全局最优粒子,则将初始化该个体,以此恢复其活力。其算法步骤如下: (I)随机初始化整个种群; (2)通过适应度函数计算出每个粒子的适应度; (3)更新个体最优解Pbi和全局最优解gb ; (4)根据式⑴、式⑵更新粒子的位置和速度,公式如下: Vi (t+Ι) = ω ^vi (t) +C1^rand1 () * Lpbi (t) -Xi (t)] +c2*rand2 O * (I) Xi(t+1) = Xi(本文档来自技高网
...

【技术保护点】
基于爬山算法与鲶鱼效应粒子群算法交替作用的资源受限项目调度控制方法,其特征是,包括以下步骤:步骤1、分析优化问题,构造适应度函数;步骤2、初始化参数,选取合适的粒子数m、最大进化代数Tmax和个体停滞进化阈值ε;步骤3、初始化种群,迭代次数t=0,随机产生种群个体的位置和速度,计算各个粒子的个体适应度;步骤4、当t≤Tmax时,转步骤5,否则转步骤10;步骤5、根据式(1)、式(2)更新粒子的位置和速度;vi(t+1)=ω*vi(t)+c1*rand1()*[pbi(t)‑xi(t)]                                   (1)+c2*rand2()*[gb(t)‑xi(t)]xi(t+1)=xi(t)+vi(t+1)                    (2)其中,i=1,2,…,m;vi(t)是第i个粒子在第t次迭代时的飞行速度;xi(t)是第i个粒子在第t次迭代时的位置;pbi(t)是第i个粒子在第t次迭代时的个体最优值;gb(t)是第t次迭代时的全局最优值;rand1()和rand2()都是在区间[0,1]内均匀分布的随机数;c1和c2是学习因子;ω是惯性权重;粒子更新采用如式(3)所示的吸收墙策略,其中vmax表示算法搜索边界:vi(t)=vmax,vi(t)>vmaxvi(t)=vi(t),-vmax≤vi(t)≤vmaxvi(t)=-vmax,vi(t)<-vmax---(3)]]>步骤6、对粒子的每一维独立扰动并计算适应度,从中选取适应度最优的位置更新为粒子的新位置,并更新各个粒子的个体最优值和全局最优值;步骤7、记录每个粒子的个体进化停滞数,当大于ε时,则初始化该粒子的位置和速度;步骤8、迭代次数t加1;步骤9、判断是否满足算法终止条件,满足则转步骤10,否则转步骤4;步骤10、输出最优解。...

【技术特征摘要】

【专利技术属性】
技术研发人员:纪志成戴月明吴逸庭吴定会
申请(专利权)人:江南大学
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1