CN111553063A - 一种入侵杂草算法求解资源受限项目调度方法 - Google Patents
一种入侵杂草算法求解资源受限项目调度方法 Download PDFInfo
- Publication number
- CN111553063A CN111553063A CN202010310920.9A CN202010310920A CN111553063A CN 111553063 A CN111553063 A CN 111553063A CN 202010310920 A CN202010310920 A CN 202010310920A CN 111553063 A CN111553063 A CN 111553063A
- Authority
- CN
- China
- Prior art keywords
- activity
- weed
- weeds
- project
- population
- 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.)
- Granted
Links
- 241000196324 Embryophyta Species 0.000 title claims abstract description 143
- 238000000034 method Methods 0.000 title claims abstract description 35
- 230000000694 effects Effects 0.000 claims abstract description 149
- 238000005457 optimization Methods 0.000 claims abstract description 16
- 238000013178 mathematical model Methods 0.000 claims abstract description 7
- 238000004364 calculation method Methods 0.000 claims description 7
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 claims description 3
- 230000008030 elimination Effects 0.000 claims description 3
- 238000003379 elimination reaction Methods 0.000 claims description 3
- 230000000644 propagated effect Effects 0.000 claims description 3
- 230000001902 propagating effect Effects 0.000 claims description 3
- 230000004083 survival effect Effects 0.000 claims description 3
- 238000013519 translation Methods 0.000 claims description 3
- 238000010276 construction Methods 0.000 abstract description 8
- 238000013461 design Methods 0.000 description 6
- 230000002068 genetic effect Effects 0.000 description 3
- 235000006679 Mentha X verticillata Nutrition 0.000 description 2
- 235000002899 Mentha suaveolens Nutrition 0.000 description 2
- 235000001636 Mentha x rotundifolia Nutrition 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000002922 simulated annealing Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000009423 ventilation Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06311—Scheduling, planning or task assignment for a person or group
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- 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]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06312—Adjustment or analysis of established resource schedule, e.g. resource or task levelling, or dynamic rescheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06313—Resource planning in a project environment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/08—Construction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/10—Numerical modelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4887—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S10/00—Systems supporting electrical power generation, transmission or distribution
- Y04S10/50—Systems or methods supporting the power network operation or management, involving a certain degree of interaction with the load-side end user applications
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Software Systems (AREA)
- Game Theory and Decision Science (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Educational Administration (AREA)
- Development Economics (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Biomedical Technology (AREA)
- Biodiversity & Conservation Biology (AREA)
- Primary Health Care (AREA)
- Computer Hardware Design (AREA)
- Geometry (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种入侵杂草算法求解资源受限项目调度方法,涉及建筑工程项目调度活动的调度技术领域。该方法首先建立资源受限的项目调度模型,将实际工程中的项目调度问题转化为组合优化的数学模型问题;其次以最小化项目总工期为优化目标,同时考虑项目活动的紧前紧后约束与多种可更新资源约束,构建项目调度模型;最后采用入侵杂草算法进行大规模项目调度情况下的求解。在求解过程中,设计了一种右移解码策略,用以修正在杂草种子产生的过程中所出现的非法解,保证所有解都严格遵从项目活动的紧前紧后约束,同时提高了算法的求解效率。通过本方法所得的资源受限项目调度方案可有效缩短大规模项目的总工期。
Description
技术领域
本发明涉及建筑工程项目调度技术领域。
背景技术
建筑项目在设计和建设过程中往往涉及业主单位、总包单位、设计单位、施工单位、运维单位等多家单位,同时涉及建筑、结构、通风、给排水、安控、地质等几十个专业的项目设计与实施等方面的协调,这些单位和专业之间在施工图设计、施工建设和建筑运维中会产生庞大的信息,这些信息可以通过BIM系统获取,但是由于各个部门的不同专业涉及的资源是有限的,动态变化的信息对各个子项目及其活动中,产生的资源配置和调度带来了新挑战,往往需要根据信息不断进行各子项目及其活动展开重调度。由于子项目和细分的活动数量大致使整个调度规模庞大,传统的资源受限项目调度求解算法在效率和精度上都受到考验,需要一套行之有效的资源受限项目调度求解算法以提高项目整体效率。
资源受限项目调度问题已被证明为一类复杂的强NP-hard问题。从求解角度来看,解决RCPSP及其扩展问题的算法可分为三大类:精确算法、启发式算法和元启发式算法(智能算法),其中精确算法虽然能得到理论最优解,但仅适用于小规模求解,由此近似算法开始被应用于求解大规模RCPSP问题。自1963年调度生成方案后被提出后,各种启发式算法也相继被应用到该问题,但其不具备优化能力,往往受到问题本身的影响而得不到满意解。元启发式算法和智能算法的应用使问题的求解得到了新的发展,如引入局部搜索中的模拟退火算法(Simulated Annealing,SA)来求解RCPSP,进化算法(如遗传算法,GeneticAlgorithm,GA)和群体智能算法(如蚁群优化算法,Ant Colony Optimization,ACO)都在求解RCPSP问题上得到了广泛的应用。
入侵杂草算法(Invasive Weed Optimization,IWO)是一种新颖且简单有效的数值优化算法,最早由Lucas和Mehrabian于2006年提出,该算法受到杂草侵略性繁殖的启发,其优化过程模拟杂草的殖民化过程,具有很强的鲁棒性、自适应性和随机性,研究表明入侵杂草算法在求解大规模调度问题时有着优异的表现。但对于项目调度问题,一般的入侵杂草算法在产生种子的过程中无法避免非法解的产生,导致算法效率较低。本发明针对这一问题设计了一种右移解码策略来修正在杂草种子产生的过程中所出现的非法解,在保证优化效果的同时提高了算法求解效率,实现了入侵杂草算法求解资源受限项目调度问题,尤其是大规模资源受限项目调度问题。
发明内容
本发明的目的是提供一种入侵杂草算法求解资源受限项目调度方法,它能有效地解决资源受限项目调度问题中避免产生非法解缺陷的技术问题。
本发明的目的是通过以下技术方案来实现的:一种入侵杂草算法求解资源受限项目调度方法,包括以下步骤:
一、建立资源受限项目调度目标优化的数学模型
资源受限项目调度问题所研究的是具有众多紧前紧后顺序约束活动的项目在资源受限的情况下如何使某些管理目标最优的调度问题,其具体描述如下:
首先,假设一个项目由活动集合J={0,1,2,…,n+1}组成,该集合中的活动0和活动n+1为虚活动,仅代表项目的开始和结束,与时间和资源无关;j表示活动集合中除虚活动之外的其他某个活动,j∈J,j的紧前活动集合用Pj表示,j的紧后活动集合用Sj表示;tj表示活动j的持续时间,stj表示活动j的作业开始时间;项目所需共有k种资源,q表示其中的一种资源,用rjq表示活动j对资源q在单位时间的需求量,bq为资源q在单位时间的最大供应量;对项目持续时间进行离散化处理,d={1,2,…,T}为离散的时间节点,T表示项目总工期,Ad={j|stj<d≤stj+tj}为d时刻正在执行的活动集合;其次,在上述假设的基础上建立资源受限项目调度目标优化的数学模型:
minT=stn+1 (1)
t0=tn+1=0 (5)
r0q=r(n+1)q=0,q=1,2,...,k (6)
其中:式(1)为目标函数,即最小化项目总工期;式(2)为决策变量;式(3)表示每项活动必须在其规定持续时间完成;式(4)表示活动j一旦开始,则在完成之前不能中断;式(5)和(6)表示虚活动0和n+1的持续时间和资源需求量都为0;式(7)为紧前、紧后约束,活动j必须在其全部紧前活动完成后才能开始;式(8)为资源约束,d时刻正在执行的所有活动对某种资源的需求量不大于该资源单位时间的最大供应量。
二、入侵杂草算法优化求解:包括以下步骤
步骤一、参数设置:
设置初始种群大小为Qsize,最大种群数量为Qmax,最大种子数量为smax,最小种子数量为smin,初始标准差为σinit,最终标准差为σfinal,最大迭代次数为itermax,非线性调和指数为N;
步骤二、种群初始化:
首先,对杂草种群进行初始化,其中每个杂草个体包含两层编码,第一层编码为代表杂草位置的小数编码,它生成n+1个0到1之间的随机数组成杂草的位置编码;第二层编码为代表活动序列的整数编码,其中每个随机数在该编码中由小到大的位置所对应的整数代表一个活动序号,所有活动序号所组成的活动序号集合称为一个活动序列;根据第一层编码中杂草位置编码生成第二层编码中活动序列的过程,称为转译;每个杂草个体对应的活动序列即为项目调度的一个可行解,而其所对应的位置编码则代表了该可行解在解空间中的位置;由于项目活动间存在紧前或紧后的限制,需要对产生的活动序列通过右移解码策略进行调整,使其变为符合紧前或紧后约束限制的合法可行解,方法如下:
从活动序列的左边第一位起,依次判断该活动之后的序列中是否存在其紧前活动,若没有,则说明该活动的紧前或紧后活动均已结束,可以开始此活动,其活动序号在序列中的位置不变;若该活动之后的序列中存在其紧前活动,则说明该活动的紧前活动没有全部结束,不可以开始此活动,将其活动序号向右移动至序列的最后一位,直至对序列中所有活动进行判断之后,得到满足紧前或紧后约束限制的完整活动序列,即为该项目的一个合法可行解;按以上种群初始化操作生成Qsize个满足合法可行解的杂草个体,组成初始杂草种群;
步骤三、计算杂草适应度值:
以目标函数的倒数1/T乘以系数C作为适应度函数Fitness,即Fitness=C/T,C为常数,计算种群中所有杂草个体的适应度值;
步骤四、计算种群中每个杂草个体所繁殖的种子个数,并更新本次迭代的标准差;
每个杂草个体在繁殖过程中所产生的种子数量weed与杂草的适应度值f成正比,计算公式如下:
fmax为种群中杂草适应度值的最大值,fmin为种群中杂草适应度值的最小值;
杂草繁殖所产生的种子按均值为0,标准差为σ的正态分布散布在杂草周围进行殖民扩张,种子与杂草之间的距离称为随机步长D=[-σ,σ],σ随着迭代的进行不断变化,其计算公式如下:
式中,iter为当前迭代次数;
步骤五、杂草繁殖产生种子,种子长成杂草并与原杂草种群合并生成新的杂草种群;
首先根据公式(9)和公式(10)计算所得杂草繁殖的种子数weed和正态分布标准差σ,对杂草进行繁殖,在解空间中得到的新位置称为种子,其对应的位置编码则是种子的位置编码,即根据杂草的位置编码和产生的代表种子与杂草间距离的随机步长D,得到种子的位置编码;然后进行与步骤二相同的操作,将种子位置编码转译为活动序列,并进行右移解码使其成为合法可行解,则种子长成杂草;此时,种子的位置编码则变为了杂草的位置编码,同右移解码后的活动序列一起组成了新杂草个体的两层编码;最后将所有新生成的由种子长成的杂草与原杂草种群合并,得到新的杂草种群;
步骤六、判断杂草种群规模是否达到Qmax,若达到则转步骤七;否则转步骤三;
步骤七、计算种群中杂草的适应度值,按生存竞争法则选出Qsize个个体;
随着杂草的不断繁殖,种群数量超过了环境的承载能力,则需设置最大种群规模对杂草的繁殖进行限制,通过优胜劣汰的准则来淘汰一部分个体以保留精英个体;根据杂草的适应度值进行判断,选择适应度值高的Qsize个个体组成新的种群,进入新的迭代过程;
步骤八、判断迭代次数是否达到itermax,若达到则输出最优解,算法结束;否则转步骤四。
与现有技术相比,本发明的有益效果是:
1)由于入侵杂草算法优化的局限性,现有技术尚未将入侵杂草算法应用到项目调度领域,本方法通过对算法编码与解码方式的改进,首次将入侵杂草算法应用到求解资源受限的项目调度问题,其优化效果明显,较其他智能算法同样有一定的优越性,且当项目规模增大时优化效果更为明显。
2)本方法设计了一种右移解码策略,有效的解决了杂草算法在求解项目调度问题时无法规避产生非法解的问题。而现有技术在处理该类问题的非法解时,通常采用直接舍弃非法解而不断循环产生新解直至得到合法可行解为止的方法。本发明中所采用的方法较现有技术方法,大大提高了算法的求解效率,使得算法更加简单易行。
附图说明
图1为本发明杂草繁殖过程。
图2为本发明入侵杂草算法流程图。
具体实施方式
采用标准算例库PSPLIB中的算例,在活动数量为30、60、90、120的4种工况下随机选取5组初始输入数据。该算例库中的项目涉及四种可更新资源,每项活动单位时间对一种或多种资源有一定的需求量,每种资源设有单位时间的最大供应量。
具体实施方案如下:
一、确定资源受限项目调度问题的描述和假设,建立资源受限项目调度目标优化的数学模型
资源受限项目调度问题所研究的是具有众多紧前紧后顺序约束活动的项目在资源受限的情况下如何使某些管理目标最优的调度问题,其具体描述如下:
首先,假设一个项目由活动集合J={0,1,2,…,n+1}组成,该集合中的活动0和活动n+1为虚活动,仅代表项目的开始和结束,与时间和资源无关;j表示活动集合中除虚活动之外的其他某个活动,j∈J,j的紧前活动集合用Pj表示,j的紧后活动集合用Sj表示;tj表示活动j的持续时间,stj表示活动j的作业开始时间;项目所需共有k种资源,q表示其中的一种资源,用rjq表示活动j对资源q在单位时间的需求量,bq为资源q在单位时间的最大供应量;对项目持续时间进行离散化处理,d={1,2,…,T}为离散的时间节点,T表示项目总工期,Ad={j|stj<d≤stj+tj}为d时刻正在执行的活动集合;其次,在上述假设的基础上建立资源受限项目调度目标优化的数学模型:
minT=stn+1 (1)
t0=tn+1=0 (5)
r0q=r(n+1)q=0,q=1,2,...,k (6)
其中:式(1)为目标函数,即最小化项目总工期;式(2)为决策变量;式(3)表示每项活动必须在其规定持续时间完成;式(4)表示活动j一旦开始,则在完成之前不能中断;式(5)和(6)表示虚活动0和n+1的持续时间和资源需求量都为0;式(7)为紧前、紧后约束,活动j必须在其全部紧前活动完成后才能开始;式(8)为资源约束,d时刻正在执行的所有活动对某种资源的需求量不大于该资源单位时间的最大供应量。
根据PSPLIB中所选取的算例,将n=30、n=60、n=60、n=90四种工况下的初始输入数据带入到公式(1)-(10)中。带入的数据除n外还包括每项活动的持续时间tj、紧前活动集合Pj、紧后活动集合Sj、单位时间资源需求量rjq以及每种资源的单位时间最大供应量bq,进而得到完整的求解具体算例的资源受限项目调度问题优化数学模型。
二、入侵杂草算法优化求解,具体如下:
步骤一、参数设置:
设置初始种群大小Qsize=5,最大种群数量Qmax=20,最大种子数量smax=10,最小种子数量smin=0,初始标准差σinit=100,最终标准差σfinal=0.01,最大迭代次数itermax=50,非线性调和指数N=3;
步骤二、种群初始化:
首先,对杂草种群进行初始化,其中每个杂草个体包含两层编码,第一层编码为代表杂草位置的小数编码,它生成n+1个0到1之间的随机数组成杂草的位置编码;第二层编码为代表活动序列的整数编码,其中每个随机数在该编码中由小到大的位置所对应的整数代表一个活动序号,所有活动序号所组成的活动序号集合称为一个活动序列;根据第一层编码中杂草位置编码生成第二层编码中活动序列的过程,称为转译;每个杂草个体对应的活动序列即为项目调度的一个可行解,而其所对应的位置编码则代表了该可行解在解空间中的位置;由于项目活动间存在紧前或紧后的限制,需要对产生的活动序列通过右移解码策略进行调整,使其变为符合紧前或紧后约束限制的合法可行解,方法如下:
从活动序列的左边第一位起,依次判断该活动之后的序列中是否存在其紧前活动,若没有,则说明该活动的紧前或紧后活动均已结束,可以开始此活动,其活动序号在序列中的位置不变;若该活动之后的序列中存在其紧前活动,则说明该活动的紧前活动没有全部结束,不可以开始此活动,将其活动序号向右移动至序列的最后一位,直至对序列中所有活动进行判断之后,得到满足紧前或紧后约束限制的完整活动序列,即为该项目的一个合法可行解;按以上种群初始化操作生成Qsize个满足合法可行解的杂草个体,组成初始杂草种群;
步骤三、计算杂草适应度值:
以目标函数的倒数1/T乘以系数C作为适应度函数Fitness,即Fitness=C/T,C为常数,计算种群中所有杂草个体的适应度值;
步骤四、计算种群中每个杂草个体所繁殖的种子个数,并更新本次迭代的标准差;
每个杂草个体在繁殖过程中所产生的种子数量weed与杂草的适应度值f成正比,计算公式如下:
fmax为种群中杂草适应度值的最大值,fmin为种群中杂草适应度值的最小值;
杂草繁殖所产生的种子按均值为0,标准差为σ的正态分布散布在杂草周围进行殖民扩张,种子与杂草之间的距离称为随机步长D=[-σ,σ],σ随着迭代的进行不断变化,其计算公式如下:
式中,iter为当前迭代次数;
步骤五、杂草繁殖产生种子,种子长成杂草并与原杂草种群合并生成新的杂草种群;
首先根据公式(9)和公式(10)计算所得杂草繁殖的种子数weed和正态分布标准差σ,对杂草进行繁殖,在解空间中得到的新位置称为种子,其对应的位置编码则是种子的位置编码,即根据杂草的位置编码和产生的代表种子与杂草间距离的随机步长D,得到种子的位置编码;然后进行与步骤二相同的操作,将种子位置编码转译为活动序列,并进行右移解码使其成为合法可行解,则种子长成杂草;此时,种子的位置编码则变为了杂草的位置编码,同右移解码后的活动序列一起组成了新杂草个体的两层编码;最后将所有新生成的由种子长成的杂草与原杂草种群合并,得到新的杂草种群;
步骤六、判断杂草种群规模是否达到Qmax,若达到则转步骤七;否则转步骤三;
步骤七、计算种群中杂草的适应度值,按生存竞争法则选出Qsize个个体;
随着杂草的不断繁殖,种群数量超过了环境的承载能力,则需设置最大种群规模对杂草的繁殖进行限制,通过优胜劣汰的准则来淘汰一部分个体以保留精英个体;根据杂草的适应度值进行判断,选择适应度值高的Qsize个个体组成新的种群,进入新的迭代过程;
步骤八、判断迭代次数是否达到itermax,若达到则输出最优解,算法结束;否则转步骤四。
三、进行数值实验和结果分析
通过Matlab2014b平台进行数值实验,采用入侵杂草算法(IWO)对算例库中资源受限的项目调度问题进行求解,并与现有最优解以及遗传算法(GA)所求解的结果进行对比。在每种工况下运算10次,记录运算所得最优解(UB)、最劣解(LB)以及10次运算结果的均值(average)。实验结果如表1所示,其中opt为标准算例库PSPLIB的现有最优解,GAP为两种算法的差值百分比。
式中,T1为遗传算法得到的总工期均值,T2为IWO算法得到的总工期均值。
表1 4种规模下的实验结果
实验结果表明,4种规模下IWO在10次运算内均求得最优解,对比GA的求解情况,两种算法在30规模下的所有运算结果均达到最优解,而随着项目规模的增大,IWO的求解结果逐渐优于GA,10次运算结果均值的差值百分比逐渐增大,60规模下的平均差值百分比为1.15%,90规模下为2.97,120规模下为4.91,且GA在120的规模下10次运算之内无法保证可以达到最优解。由此可见,本申请提出的入侵杂草算法求解资源受限项目调度问题的方法是有效的,尤其是随着项目规模的增大,算法的优化效果更显著。
Claims (1)
1.一种入侵杂草算法求解资源受限项目调度方法,包括以下过程:
一、首先,假设一个项目由活动集合J={0,1,2,…,n+1}组成,该集合中的活动0和活动n+1为虚活动,仅代表项目的开始和结束,与时间和资源无关;j表示活动集合中除虚活动之外的其他某个活动,j∈J,j的紧前活动集合用Pj表示,j的紧后活动集合用Sj表示;tj表示活动j的持续时间,stj表示活动j的作业开始时间;项目所需共有k种资源,q表示其中的一种资源,用rjq表示活动j对资源q在单位时间的需求量,bq为资源q在单位时间的最大供应量;对项目持续时间进行离散化处理,d={1,2,…,T}为离散的时间节点,T表示项目总工期,Ad={j|stj<d≤stj+tj}为d时刻正在执行的活动集合;其次,在上述假设的基础上建立资源受限项目调度目标优化的数学模型:
min T=stn+1 (1)
t0=tn+1=0 (5)
r0q=r(n+1)q=0,q=1,2,...,k (6)
其中:式(1)为目标函数,即最小化项目总工期;式(2)为决策变量;式(3)表示每项活动必须在其规定持续时间完成;式(4)表示活动j一旦开始,则在完成之前不能中断;式(5)和(6)表示虚活动0和n+1的持续时间和资源需求量都为0;式(7)为紧前、紧后约束,活动j必须在其全部紧前活动完成后才能开始;式(8)为资源约束,d时刻正在执行的所有活动对某种资源的需求量不大于该资源单位时间的最大供应量;
二、入侵杂草算法优化求解:包括以下步骤
步骤一、参数设置:
设置初始种群大小为Qsize,最大种群数量为Qmax,最大种子数量为smax,最小种子数量为smin,初始标准差为σinit,最终标准差为σfinal,最大迭代次数为itermax,非线性调和指数为N;
步骤二、种群初始化:
首先,对杂草种群进行初始化,其中每个杂草个体包含两层编码,第一层编码为代表杂草位置的小数编码,它生成n+1个0到1之间的随机数组成杂草的位置编码;第二层编码为代表活动序列的整数编码,其中每个随机数在该编码中由小到大的位置所对应的整数代表一个活动序号,所有活动序号所组成的活动序号集合称为一个活动序列;根据第一层编码中杂草位置编码生成第二层编码中活动序列的过程,称为转译;每个杂草个体对应的活动序列即为项目调度的一个可行解,而其所对应的位置编码则代表了该可行解在解空间中的位置;由于项目活动间存在紧前或紧后的限制,需要对产生的活动序列通过右移解码策略进行调整,使其变为符合紧前或紧后约束限制的合法可行解,方法如下:
从活动序列的左边第一位起,依次判断该活动之后的序列中是否存在其紧前活动,若没有,则说明该活动的紧前或紧后活动均已结束,可以开始此活动,其活动序号在序列中的位置不变;若该活动之后的序列中存在其紧前活动,则说明该活动的紧前活动没有全部结束,不可以开始此活动,将其活动序号向右移动至序列的最后一位,直至对序列中所有活动进行判断之后,得到满足紧前或紧后约束限制的完整活动序列,即为该项目的一个合法可行解;按以上种群初始化操作生成Qsize个满足合法可行解的杂草个体,组成初始杂草种群;
步骤三、计算杂草适应度值:
以目标函数的倒数1/T乘以系数C作为适应度函数Fitness,即Fitness=C/T,C为常数,计算种群中所有杂草个体的适应度值;
步骤四、计算种群中每个杂草个体所繁殖的种子个数,并更新本次迭代的标准差;
每个杂草个体在繁殖过程中所产生的种子数量weed与杂草的适应度值f成正比,计算公式如下:
fmax为种群中杂草适应度值的最大值,fmin为种群中杂草适应度值的最小值;
杂草繁殖所产生的种子按均值为0,标准差为σ的正态分布散布在杂草周围进行殖民扩张,种子与杂草之间的距离称为随机步长D=[-σ,σ],σ随着迭代的进行不断变化,其计算公式如下:
式中,iter为当前迭代次数;
步骤五、杂草繁殖产生种子,种子长成杂草并与原杂草种群合并生成新的杂草种群;
首先根据公式(9)和公式(10)计算所得杂草繁殖的种子数weed和正态分布标准差σ,对杂草进行繁殖,在解空间中得到的新位置称为种子,其对应的位置编码则是种子的位置编码,即根据杂草的位置编码和产生的代表种子与杂草间距离的随机步长D,得到种子的位置编码;然后进行与步骤二相同的操作,将种子位置编码转译为活动序列,并进行右移解码使其成为合法可行解,则种子长成杂草;此时,种子的位置编码则变为了杂草的位置编码,同右移解码后的活动序列一起组成了新杂草个体的两层编码;最后将所有新生成的由种子长成的杂草与原杂草种群合并,得到新的杂草种群;
步骤六、判断杂草种群规模是否达到Qmax,若达到则转步骤七;否则转步骤三;
步骤七、计算种群中杂草的适应度值,按生存竞争法则选出Qsize个个体;
随着杂草的不断繁殖,种群数量超过了环境的承载能力,则需设置最大种群规模对杂草的繁殖进行限制,通过优胜劣汰的准则来淘汰一部分个体以保留精英个体;根据杂草的适应度值进行判断,选择适应度值高的Qsize个个体组成新的种群,进入新的迭代过程;
步骤八、判断迭代次数是否达到itermax,若达到则输出最优解,算法结束;否则转步骤四。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010310920.9A CN111553063B (zh) | 2020-04-20 | 2020-04-20 | 一种入侵杂草算法求解资源受限项目调度方法 |
US16/966,849 US11875285B2 (en) | 2020-04-20 | 2020-06-23 | Method for scheduling resource-constrained project by invasive weed optimization |
PCT/CN2020/097665 WO2021212649A1 (zh) | 2020-04-20 | 2020-06-23 | 一种入侵杂草算法求解资源受限项目调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010310920.9A CN111553063B (zh) | 2020-04-20 | 2020-04-20 | 一种入侵杂草算法求解资源受限项目调度方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111553063A true CN111553063A (zh) | 2020-08-18 |
CN111553063B CN111553063B (zh) | 2022-03-08 |
Family
ID=72005639
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010310920.9A Active CN111553063B (zh) | 2020-04-20 | 2020-04-20 | 一种入侵杂草算法求解资源受限项目调度方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11875285B2 (zh) |
CN (1) | CN111553063B (zh) |
WO (1) | WO2021212649A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112631214A (zh) * | 2020-11-27 | 2021-04-09 | 西南交通大学 | 基于改进入侵杂草优化算法的柔性作业车间分批调度方法 |
CN113064392A (zh) * | 2021-03-22 | 2021-07-02 | 聊城大学 | 基于矩阵车间agv调度的离散型优化方法 |
TWI741760B (zh) * | 2020-08-27 | 2021-10-01 | 財團法人工業技術研究院 | 學習式生產資源配置方法、學習式生產資源配置系統與使用者介面 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114674783A (zh) * | 2022-05-30 | 2022-06-28 | 东北农业大学 | 一种基于近红外光谱检测沼液质量指标的方法 |
CN115665154B (zh) * | 2022-09-27 | 2024-06-11 | 武汉轻工大学 | 云任务分配方法及设备 |
CN115965288B (zh) * | 2022-12-29 | 2023-11-03 | 国网湖北省电力有限公司经济技术研究院 | 基于IWO优化BiLSTM的有源配电网频率安全评估方法 |
CN117236545B (zh) * | 2023-11-14 | 2024-02-23 | 西安芝麻数据科技发展有限公司 | 基于大数据的物流运输路径规划系统及方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140249882A1 (en) * | 2012-10-19 | 2014-09-04 | The Curators Of The University Of Missouri | System and Method of Stochastic Resource-Constrained Project Scheduling |
CN110458478A (zh) * | 2019-08-23 | 2019-11-15 | 兰州理工大学 | 基于离散入侵杂草算法的作业车间调度方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060195843A1 (en) * | 2005-02-25 | 2006-08-31 | Hall Richard G | Method and apparatus for scheduling maintenance and repair |
CN105119320B (zh) * | 2015-09-15 | 2017-06-16 | 东北大学 | 一种分散式风电场风机优化布置系统及方法 |
CN107063240B (zh) | 2017-01-17 | 2020-09-18 | 西安科技大学 | 一种基于入侵杂草算法的水下航行器定位方法 |
CN107656251A (zh) | 2017-11-13 | 2018-02-02 | 浙江大学 | 一种基于改进入侵杂草优化算法的智能雷达海杂波预报系统及方法 |
CN109038545B (zh) | 2018-07-10 | 2020-10-23 | 上海电力学院 | 一种基于差分进化入侵杂草算法的配电网重构方法 |
CN109298747B (zh) | 2018-09-20 | 2020-06-05 | 天津大学 | 基于iiwo优化的smesc风电系统mppt方法 |
CN110909930B (zh) * | 2019-11-20 | 2022-05-03 | 浙江工业大学 | 一种面向冷库的移动式货架仓储系统货位分配方法 |
CN110991056B (zh) * | 2019-12-09 | 2021-08-06 | 西南交通大学 | 一种基于遗传变邻域算法的飞机装配线作业调度方法 |
-
2020
- 2020-04-20 CN CN202010310920.9A patent/CN111553063B/zh active Active
- 2020-06-23 WO PCT/CN2020/097665 patent/WO2021212649A1/zh active Application Filing
- 2020-06-23 US US16/966,849 patent/US11875285B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140249882A1 (en) * | 2012-10-19 | 2014-09-04 | The Curators Of The University Of Missouri | System and Method of Stochastic Resource-Constrained Project Scheduling |
CN110458478A (zh) * | 2019-08-23 | 2019-11-15 | 兰州理工大学 | 基于离散入侵杂草算法的作业车间调度方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI741760B (zh) * | 2020-08-27 | 2021-10-01 | 財團法人工業技術研究院 | 學習式生產資源配置方法、學習式生產資源配置系統與使用者介面 |
CN112631214A (zh) * | 2020-11-27 | 2021-04-09 | 西南交通大学 | 基于改进入侵杂草优化算法的柔性作业车间分批调度方法 |
CN112631214B (zh) * | 2020-11-27 | 2022-03-18 | 西南交通大学 | 基于改进入侵杂草优化算法的柔性作业车间分批调度方法 |
CN113064392A (zh) * | 2021-03-22 | 2021-07-02 | 聊城大学 | 基于矩阵车间agv调度的离散型优化方法 |
CN113064392B (zh) * | 2021-03-22 | 2023-09-08 | 聊城大学 | 基于矩阵车间agv调度的离散型优化方法 |
Also Published As
Publication number | Publication date |
---|---|
US20230153708A1 (en) | 2023-05-18 |
WO2021212649A1 (zh) | 2021-10-28 |
CN111553063B (zh) | 2022-03-08 |
US11875285B2 (en) | 2024-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111553063B (zh) | 一种入侵杂草算法求解资源受限项目调度方法 | |
Lo et al. | A genetic algorithm with new local operators for multiple traveling salesman problems | |
CN109376544B (zh) | 一种防止复杂网络中的社团结构被深度挖掘的方法 | |
Ren et al. | A branch-and-bound embedded genetic algorithm for resource-constrained project scheduling problem with resource transfer time of aircraft moving assembly line | |
CN114565237A (zh) | 用于多能组合发电站的综合能源低碳调度方法及系统 | |
CN114330715A (zh) | 一种智能弹药协同进化任务分配方法 | |
Mao | Predicting the conditional probability of discovering a new class | |
Zhou et al. | A game-theory approach for job scheduling in networked manufacturing | |
CN105117800A (zh) | 一种基于遗传算法的优化输变电工程施工网络计划方法 | |
CN106970840A (zh) | 一种结合任务调度的软硬件划分方法 | |
CN108415783B (zh) | 一种基于改进蜂群算法的异构多核任务分配方法 | |
CN113269652A (zh) | 基于从众心理的超图影响力传播方法及影响力最大化方法 | |
CN113688424A (zh) | 基于权重社会网络的个性化差分隐私保护方法 | |
CN114510876B (zh) | 基于共生搜索生物地理学优化的多平台武器目标分配方法 | |
CN114565241B (zh) | 一种计及碳成本的电-气综合能源系统调度方法及装置 | |
Jian et al. | AN IMPROVED VIRUS EVOLUTIONARY GENETIC ALGORITHM FOR WORKFLOW MINING. | |
JP2003016421A (ja) | 最適化問題処理装置 | |
CN113506593B (zh) | 一种面向大规模基因调控网络的智能推断方法 | |
CN115169754B (zh) | 能源调度方法、装置、电子设备及存储介质 | |
CN116542400B (zh) | 一种武器目标分配方法、系统、设备及介质 | |
Wang et al. | A Data-driven Approach to Solve a Production Constrained Build-order Optimization Problem | |
Milosevic et al. | A Hybrid Grey Wolf Optimizer for Process Planning Optimization with Precedence Constraints. Materials 2021, 14, 7360 | |
Ngoo et al. | An Improved Discrete Grey Wolf Optimizer for the Nurse Rostering Problem | |
CN117176377A (zh) | 一种基于精英种群协同进化遗传算法的全局社区隐藏方法 | |
CN116822347A (zh) | 基于动态影响网和离散人工蜂群的空中行动计划构建方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |