CN112561448B - 基于改进遗传算法的多任务下堆垛机调度算法 - Google Patents
基于改进遗传算法的多任务下堆垛机调度算法 Download PDFInfo
- Publication number
- CN112561448B CN112561448B CN202011562693.5A CN202011562693A CN112561448B CN 112561448 B CN112561448 B CN 112561448B CN 202011562693 A CN202011562693 A CN 202011562693A CN 112561448 B CN112561448 B CN 112561448B
- Authority
- CN
- China
- Prior art keywords
- orig
- num
- warehouse
- scheduling
- stacker
- 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.)
- Active
Links
- 230000002068 genetic effect Effects 0.000 title claims abstract description 37
- 108090000623 proteins and genes Proteins 0.000 claims abstract description 31
- 238000000034 method Methods 0.000 claims abstract description 13
- 230000035772 mutation Effects 0.000 claims description 14
- 238000004364 calculation method Methods 0.000 claims description 11
- 230000000694 effects Effects 0.000 claims description 7
- 239000003550 marker Substances 0.000 claims description 3
- 230000007547 defect Effects 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000010187 selection method Methods 0.000 description 2
- 101100272279 Beauveria bassiana Beas gene Proteins 0.000 description 1
- 208000001613 Gambling Diseases 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 210000000349 chromosome Anatomy 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000004445 quantitative analysis Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000004083 survival effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- 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/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/087—Inventory or stock management, e.g. order filling, procurement or balancing against orders
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- Theoretical Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Entrepreneurship & Innovation (AREA)
- Biophysics (AREA)
- Strategic Management (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Biology (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Bioinformatics & Computational Biology (AREA)
- Marketing (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Development Economics (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Game Theory and Decision Science (AREA)
- Educational Administration (AREA)
- Physiology (AREA)
- Genetics & Genomics (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
基于改进遗传算法的多任务下堆垛机调度算法,本发明涉及路径规划领域的堆垛机调度算法,具体涉及一种改进的遗传算法,弥补了堆垛机应用传统遗传算法早熟易收敛、调度效率低的缺点。本发明的步骤为:一、采用数字编码方式对出库和入库任务进行编码;二、通过坐标定义调度适应度求解公式;三、将初始种群按照本专利所提出的弱者扶持阶段、公平竞争阶段、强者加持阶段进行三阶段的个体选择;四、从个体中随机选择一个基因交叉,再对个体中的基因进行变异,最终输出调度适应度最大的个体。本发明的主要思想是对结合堆垛机的调度特点对传统遗传算法进行改进,进而提高堆垛机的调度效率,该算法工程实用性强、具有很好的推广价值。
Description
技术领域
本发明涉及路径规划领域的堆垛机调度算法,具体涉及一种改进的遗传算法。
背景技术
自动仓储物流技术在制造业数字化生产体系建设中的需求度日益提升。该***一般由高层立体仓库负责存储,堆垛机负责从仓库中存取货物。堆垛机根据接收到的指令顺序将货物从指定的位置取出或者存入。目前来看,***硬件的设备技术已趋于成熟,但若要使***发挥最大能效,需配置科学的调度算法。算法需要解决的问题是对于多任务下堆垛机执行任务时的路径选择问题,即多目标点之间的路径规划问题。
立体仓库传送***实现将立体仓库中的指定货物运送至库口授货台或相反动作,主要包括搬运设备和输送设备。本***采用的是堆垛机,并与立体仓库良好匹配。堆垛机按照预先假设好的轨道可以水平或者竖直移动。堆垛机到达指定的位置后将该货物从货架上取出运送到授货台,或者将货物从授货台运送到指定的货架上,通过堆垛机的运动,实现货物的存取。
解决多目标点之间路径规划的问题,国内外已经提出了一些算法。目前国内外的对目标点路径规划算法主要分为两类:基于自适应动态规划算法、基于现代启发式算法。自适应动态规划算法利用近似结构逼近动态规划方法中计算函数值的过程,以值迭代或策略迭代的方式,不断更新状态函数值的近似估计,在迭代终止时获得问题的近似解。自适应动态规划算法克服了动态规划计算量大、时间就的缺点,从而提高了堆垛机的调度效率。现代启发式算法主要是指蚁群算法、遗传算法、禁忌算法,使用最为普遍的就是遗传算法。
遗传算法是一种根据达尔文进化论衍生而来的启发算法,借用了遗传学的基本思想。遗传算法对生命体进行不断的物竞天择、优胜劣汰、适者生存,最终筛选出优秀的后代作为答案。假设有某物种,在其种群繁衍过程中,某些个体发生了基因突变,变得更加具备生存能力,或在繁殖过程中不断取优进化,则其很可能继续繁衍,相反如果个体不能与时俱进,则必然面临淘汰。此原理映射到算法上同样适用,个体生存能力可与目标函数数值对应,最具有生命力的个体将带来最理想的函数值,而遗传算法就是寻找该解的一个过程,具体来讲,遗传算法分为如下步骤:
(1)编码,将个体表示成按基因序列排序的染色体;
(2)初始种群,随机生成一定规模的基础个体;
(3)初始化,设置算法参数;
(4)适应度计算,按目标函数,对个体适应度大小分别计算;
(5)选择,根据适应度情况,选择产生下一代的个体;
(6)交叉,不同个体间进行基因序列局部交叉互换,产生新个体;
(7)变异,单个体基因片段产生变化,产生新个体;
(8)终止,当个体适应度达标或运算次数达到预设值时,触发终止。
遗传算法作为一种搜索算法具有鲁棒性及较强的全局搜索能力,可实现同时对多个解开展并行评估,所以可有效避免局部最优。仅靠适应度函数值的大小来评估结果,不容易受限,也增强了遗传算法的可拓展性和兼容性。采取概率机制牵引搜索的方式,存在一定随机开放性。同时,遗传算法具有较强的可调整性,通过对算子的不同设定,实现对不同应用场景的适当切换,以达到自适应性。
遗传算法存在自身也存在不足。如由算法的灵活性带来的多变性,使得参数的选择对于最终结果有较大影响。目前来看,这往往依靠经验,没有定量的获取方法。并且遗传算法的全盘随机搜索,很难达到很高的综合效率,在其应用于大规模计算时,容易早熟,同时较弱的局部搜索能力导致运算后期阶段比较吃力。遗传算法一般存在早期易收敛、后期难收敛的缺陷。
发明内容
本发明旨在提出一种基于改进遗传算法的多任务下堆垛机调度算法。与传统的遗传算法相比,该算法弥补了了传统遗传算法在应用于大规模计算时容易早熟的劣势。即缓解了在遗传算法早期,在种群中出现了超级个体,该个体的适应值大大超过当前种群的平均个体适应值。从而使得该个体很快在种群中占有绝对的比例,种群的多样性迅速降低,群体进化能力基本丧失,从而使得算法较早收敛于局部最优解的现象。在多任务状态下,依靠单一作业模式或者传统的遗产算法,作业时间久,容易货物的堆积,采用改进后的调度算法节约了一定程度节约了作业时间,提高了作业效率。
考虑到遗传算法早期易收敛的缺点,结合堆垛机调度的实际情况,堆垛机拣选方案不存在适应度为0的个体,即不存在“一无是处”的个体。基于赌选策略,一些携带优秀基因片段的劣势个体生存空间很小,这些优秀的基因片段在进化初期往往非常珍贵。本发明通过对标准遗传算法的选择算子进行改进,加入了平衡因子和突出因子优化了对这些优秀的基因片段的选择,使得优秀基因在进化初期更容保留下来,缓解了早期容易收敛的问题。
该算法提高了堆垛机拣选货物的作业效率,减少了作业现场等待货物的时间。为多任务下堆垛机调度的路径规划问题的调度提供了一个新的思路。该调度算法应用在堆垛机的调度上,调度效率有所提高,克服了现场作业货物等待时间过长的困难。
本发明的目的是通过以下技术方案实现的:首先,对出入库任务进行编码生成初始种群。其次,根据堆垛***的结构建立坐标系,并定义调度适应度公式。再次,设置迭代次数计算出各个个体的调度适应度并通过三阶段选择淘汰掉劣势个体。最后,将调度适应度最高的个体作为最优解输出。
本发明的流程图如图1所示,共分为四个步骤,具体步骤如下:
步骤一:采用数字编码方式对出库和入库任务进行编码:即用数字代表库位号,然后按照出、入库任务按照一一对应的方式进行随机配对;配对后形成的不同的结果作为个体,所有的个体组成***的初始种群;具体步骤如下:
1)将堆垛机交货位置编码为0,将库位按照顺序进行用数字进行编码,记为数据集D,编码后产生的库位号作D的元素,数据集D表示为:
D={1,2,...,q},q是库位号
记出库任务为数据集C,m个出库库位号cm作为数据集C的元素,那么C表示为:
C={c1,c2,...,cm},cm∈D
记入库任务为数据集R,n个入库库位号rn的任务作为数据集R的元素,R可表示为:
R={r1,r2,...,rn},rn∈D
2)将C和R中元素1:1进行配对,若m≠n,则用0补齐缺少的|m-n|个cm或者rn,使其其能达到1:1的要求配对,成对的出库任务和入库任务定义为gene,表示为:
gene:cm→rn
max{m,n}个gene组成一个个体,记为orig;orig表示为:
orig={gene1,gene2,...,genemax{m,n}}
按照1:1配对后,最多可形成数量为(max{m,n})2个orig,并定义ORIGS为num个orig形成的种群,ORIGS表示为:
ORIGS={orig1,orig2,...,orignum},num<(max{num})2
num的取值根据个人经验确定,num越大算法的效果越好,但计算量越大,执行完成后得到num个orig组成的种群ORIGS。
步骤二:根据立体库授货台和堆垛机导轨运行方向建立平面直角坐标系,用坐标表示出入库库位号,继而通过坐标定义调度适应度求解公式,计算每个个体的适应度;
以立体库授货台即交货点位置为原点坐标(0,0),以水平沿堆垛机导轨铺设向为X轴,以竖直向为Y轴,每个库位的宽度和高度分别作为X轴和Y轴的单位长度建立平面坐标系;那么出库任务可以用坐标表示为入库任务坐标为堆垛机水平方向平均运行速度为vx,竖直方向平均运行速度为vy,两方向独立且无相互干扰,L为货架长度,h为货架高度,调度适应度的计算公式为:
其中djk是匹配函数,当入库j与出库k组合时djk=1,计算其耗时,但当入库j与出库k不组合时djk=0,不计耗时,将orig的编码对应的坐标一一对应,代入上面的公式计算得出每个orig的调度适应度。
步骤三:设定迭代的总次数,将初始种群按照弱者扶持阶段、公平竞争阶段、强者加持阶段进行三阶段的个体选择,根据迭代的次数和设置的标志位,确定种群进入三阶段的某一阶段;
1)设定迭代的总次数为Na次,Na的选取根据***的具体计算能力和个人经验进行设定,Na越大效果越好,但计算量越大,计算时间越久,并初始化迭代次数N=1;
2)定义弱者扶持标志位:
Nw=w×Na,w∈[0,1],0<f+w<1
w是弱者扶持比,f是公平竞争比;
若N≤Nw进入本阶段即弱者扶持阶段,否则进入步骤三第3)步;首先识别出Fit(orignum)min,然后更新每个orig调度适应度的值,更新调度适应度的公式为:
Fit(orignum)new=Fit(orignum)+baln×Fit(orignum)min,baln∈[1,2]
定义baln为平衡因子,最后计算orig在调度适应度在总调度适应度的占比作为orignum自身被选择的概率,计算公式为:
Fit(orignum)all=Fit(orig1)new+Fit(orig2)new+...+Fit(orignum)new
选择完成后得到更新后的种群,然后进入步骤四;
3)定义公平竞争标志位:
Nf=(f+w)×Na,f∈[0,1],0<f+w<1
f是公平竞争比,w是弱者扶持比;
若Nw<N≤Nf,则进入本阶段即进行公平竞争阶段,若N>Nf否则进入步骤三第4)步,按照orignum被选择的概率使用轮盘赌法进行选择,即生成一个随机数g,g∈[0,1];若p(orignum)>g,则选择该orignum;若p(orignum)≤g,则淘汰该orignum,选择完成后进入步骤四;
4)强者加持阶段,本阶段的迭代次数为剩余的次数;计算种群每个个体orig调度适应度大小Fit(orignum),并识别出个体调度适应度的最大值Fit(orignum)max,按照公式更新适应度的值,公式为:
Fit(orignum)new=Fit(orignum)-pro×Fit(orignum)max,pro∈[0,1]
其中定义pro为突出因子,最后计算个体Fit(orignum)new在总调度适应度的占比作为个体orignum被选择的概率,选择完成后得得到更新后的种群,然后进入步骤四。
步骤四:从种群的个体中随机选择一个基因作为交叉点,按照交叉概率将基因进行交叉;再随机选择两个基因按照设定的概率进行变异,变异完成后输出结果;
1)随机选择一个gene作为交叉点,交叉点就是对调gene两端的元素的一个标志gene,将交叉点及以后的出库库位号与入库任务队列号予以对调,对调的概率定义为交叉率swp,swp∈[0,1];对调后如出库库位号或者入库库位号重复,则以出库任务库位号队列为基准,将每组重复库位号的前位库位号与重复入库库位号对调,入库库位号的对调位置从重复组中等概率随机选取;
2)变异策略采用单个体自变异的方式,即随机选出num个gene中的出库库位号,将两位置的库位号对调,变异的概率定义为变异率chg,chg∈[0,1],变异完成后产生新的orig,令N=N+1,若N≤Na就返回步骤三第2)步,否则输出调度适应度最大的orignum作为结果。
本发明与现有技术相比具有如下优点:
将种群进化阶段按照迭代次数进行了划分。三阶段的迭代次数可以自由设定,根据实际效果不断调整参数,设置合理的标志位,让每个阶段充分发挥选择的作用,不断筛选掉劣势个体,保留优势个体。
本发明对标准遗传算法的轮盘赌选产生新种群的方式进行了改进,在赌选法的基础上设置了调节因子,并根据***的计算能力,设置合理的迭代次数,保证了结果的优秀性又保证了***计算的快速性。每个阶段采用特定的方式进行选择,优化了个体的选择方法,提高了选择到优秀个体的速度,节约了时间成本。
同时,本发明保留了遗传算法的优点,针对堆垛机的调度进行算法上的优化,有利于堆垛机在多任务情况下的指令执行效率的提高,减少堆垛机的作业时间。
附图说明
图1为本发明的流程图。
图2为堆垛机仓储结构示意图。
图3为周一至周三任务队列分布图。
图4堆垛机调度算法交叉操作示意图。
图5堆垛机调度算法变异操作示意图。
具体实施方式
下面结合实施例和附图说明本发明的具体实施方式:将调度算法运用到堆垛机的调度当中去,从而实现堆垛机的更高效率作业。
首先给出仓储物流***的描述:仓储物流***实际运行过程中的各相关的参数、状态。本***立体库共设210个货位,单侧共105个货位。实测货位L=1.2m,h=2.0m,为3层结构,共计35列。如图2所示,从左至右分别为1~35列,从下至上分别为1~3层。为便于区分和后文描述,将阴影数字定义为出库任务队列,无阴影数字为入库任务队列,如其中阴影出库库位号4坐标为(7,2),无阴影入库库位号8坐标为8(6,1)。
因构建数学模型时未单独考虑堆垛机启动、制动加速度的情况,则vx、vy表示单次启动、制动下,一段路程的运行平均运行速度。为确保理论计算值与实际值偏差较小,对堆垛机的运行速度开展实测。选取中程运行路程,即水平方向18个货位路程,垂直方向1.5个货位路程开展运行速度实测,测得堆垛机水平运行平均速度vx=1.8m/s,垂直运行平均速度vy=0.5m/s。
本实施例在***空载状态运行。为对标实际工作状态,堆垛机、输送机均在额定条件下正常运转。执行程序运行时算法相关参数设置及实施例设计如下:
(1)货位尺寸L=1.2m,h=2.0m;
(2)堆垛机水平运行速度vx=1.8m/s,垂直运行速度vy=0.5m/s;
(3)数据统计结果显示,周一至周三早高峰可基本表征最恶劣情况,故以此为研究对象,将三组任务队列作为输入条件,分别实施。周一至周三出入库任务情况如表1所示,示意图如图3所示。表中的出入库任务均使用数字编码和坐标两种方式表示。
表1周一至周三出入库任务情况
执行步骤一:采用数字编码方式对出库和入库任务进行编码:即用数字代表库位号,然后按照出、入库任务按照一一对应的方式进行随机配对;配对后形成的不同的结果作为个体,所有的个体组成***的初始种群;
将库位进行编码后D为:D={1,2,...,210},根据出库任务的库位号生成C,根据收到的入库命令生成数据集D,将C和D中的元素按照1:1的方式随机进行配对。根据不同的组合方式可生成不同的个体orig,令num=100,所有的orig组成种群,种群数量为100。
执行步骤二:根据立体仓库授货台和堆垛机导轨运行方向建立平面直角坐标系,用坐标表示出入库库位号,继而通过坐标定义调度适应度求解公式,计算每个个体的适应度。
出库任务ck可以用坐标表示为入库任务rj坐标为取L=1.2m,h=2.0m,水平运行速度vx=1.8m/s,垂直运行速度vy=0.5m/s。代入公式计算调度适应度。
执行步骤三:设定迭代总次数Na=200,将原始种群按照迭代的次数分别进行弱者扶持阶段迭代、公平竞争阶段、强者加持阶段不断迭代进行选择。
将orignum的数据代入调度适应度的计算公式,计算出100个orig的调度适应度,并找出来最小的调度适应度,然后取平衡因子baln=1.4进行全体调度适应度的更新,计算完成后算出每个orignum在总调度适应度的占比将作为个体orignum被选择的概率,然后进行50次迭代,迭代完成后进入步骤四。当50<N≤150时,进入公平竞争阶段,进行轮盘赌算法的个体选择,然后进入步骤四。最后进入强者加持阶段的选择,计算每个个体orignum的调度适应度大小,并找出最大的调度适应度,按照突出因子pro=0.7更新ORIGS的调度适应度。再次计算作为个体orignum被选择的概率,进行50次迭代选择,迭代完成后进入步骤四。
执行步骤四:从种群的个体中随机选择一个基因作为交叉点,按照交叉概率将基因进行交叉;再随机选择两个基因按照设定的概率进行变异,变异完成后输出结果。
随后随机选择一个gene作为交叉点,将交叉点及其之后的编码按照swp=0.5进行交叉。若对调后存在重复库位号,则以出库库位号为基准,将重复的前位库位号与入库重复库位号进行对调,示意如图4。再对每个orig按照chg=0.01进行变异,变异完成后产生新的orig,示意如图5。令N=N+1并判断N是否大于Na,若否则返回步骤三第2)步。若是,则输出调度适应度最大的个体作为结果,并将结果进行实际验证。
本实施例与传统遗传算法和单一作业模式对比试验的结果见表2所示。
表2堆垛机调度优化实施例结果
从表2中可以看出,本发明提出的改进的遗传算法在堆垛机的调度中相对于传统的遗传算法和单一作业模式具有明显的优势。且改进后的遗传算法在多任务下堆垛机的调度中与传统遗传算法相比也呈现了明显的优势。当任务数量较多时,显著缩小了执行调度任务的耗时。对于整个立体仓库的整体作业有积极的促进作用。
Claims (3)
1.一种基于改进遗传算法的多任务下堆垛机调度算法,其特征在于它包括以下步骤:
步骤一:采用数字编码方式对出库和入库任务进行编码:即用数字代表库位号,然后按照出、入库任务按照一一对应的方式进行随机配对;配对后形成的不同的结果作为个体,所有的个体组成***的初始种群;
步骤二:根据立体库授货台和堆垛机导轨运行方向建立平面直角坐标系,用坐标表示出入库库位号,继而通过坐标定义调度适应度求解公式,计算每个个体的适应度;
以立体库授货台即交货点位置为原点坐标(0,0),以水平沿堆垛机导轨铺设向为X轴,以竖直向为Y轴,每个库位的宽度和高度分别作为X轴和Y轴的单位长度建立平面坐标系;那么出库任务用坐标表示为入库任务坐标为堆垛机水平方向平均运行速度为vx,竖直方向平均运行速度为vy,两方向独立且无相互干扰,L为货架长度,h为货架高度,调度适应度的计算公式为:
其中djk是匹配函数,当入库j与出库k组合时djk=1,计算其耗时,但当入库j与出库k不组合时djk=0,不计耗时,将orig的编码对应的坐标一一对应,代入上面的公式计算得出每个orig的调度适应度;
步骤三:设定迭代的总次数,将初始种群按照弱者扶持阶段、公平竞争阶段、强者加持阶段进行三阶段的个体选择,根据迭代的次数和设置的标志位,确定种群进入三阶段的某一阶段;
1)设定迭代的总次数为Na次,Na的选取根据***的具体计算能力和个人经验进行设定,Na越大效果越好,但计算量越大,计算时间越久,并初始化迭代次数N=1;
2)定义弱者扶持标志位:
Nw=w×Na,w∈[0,1],0<f+w<1
w是弱者扶持比,f是公平竞争比;
若N≤Nw进入本阶段即弱者扶持阶段,否则进入步骤三第3)步;首先识别出Fit(orignum)min,然后更新每个orig调度适应度的值,更新调度适应度的公式为:
Fit(orignum)new=Fit(orignum)+baln×Fit(orignum)min,baln∈[1,2]
定义baln为平衡因子,最后计算orig在调度适应度在总调度适应度的占比作为orignum自身被选择的概率,计算公式为:
Fit(orignum)all=Fit(orig1)new+Fit(orig2)new+...+Fit(orignum)new
选择完成后得到更新后的种群,然后进入步骤四;
3)定义公平竞争标志位:
Nf=(f+w)×Na,f∈[0,1],0<f+w<1
f是公平竞争比,w是弱者扶持比;
若Nw<N≤Nf,则进入本阶段即进行公平竞争阶段,若N>Nf否则进入步骤三第4)步,按照orignum被选择的概率使用轮盘赌法进行选择,即生成一个随机数g,g∈[0,1];若p(orignum)>g,则选择该orignum;若p(orignum)≤g,则淘汰该orignum,选择完成后进入步骤四;
4)强者加持阶段,本阶段的迭代次数为剩余的次数;计算种群每个个体orig调度适应度大小Fit(orignum),并识别出个体调度适应度的最大值Fit(orignum)max,按照公式更新适应度的值,公式为:
Fit(orignum)new=Fit(orignum)-pro×Fit(orignum)max,pro∈[0,1]
其中定义pro为突出因子,最后计算个体Fit(orignum)new在总调度适应度的占比作为个体orignum被选择的概率,选择完成后得得到更新后的种群,然后进入步骤四;
步骤四:从种群的个体中随机选择一个基因作为交叉点,按照交叉概率将基因进行交叉;再随机选择两个基因按照设定的概率进行变异,变异完成后输出结果。
2.根据权利要求1所述的基于改进遗传算法的多任务下堆垛机调度算法,其特征在于所述的步骤一具体包括:
1)将堆垛机交货位置编码为0,将库位按照顺序进行用数字进行编码,记为数据集D,编码后产生的库位号作D的元素,数据集D表示为:
D={1,2,...,q},q是库位号
记出库任务为数据集C,m个出库库位号cm作为数据集C的元素,那么C表示为:
C={c1,c2,...,cm},cm∈D
记入库任务为数据集R,n个入库库位号rn的任务作为数据集R的元素,R可表示为:
R={r1,r2,...,rn},rn∈D
2)将C和R中元素1:1进行配对,若m≠n,则用0补齐缺少的|m-n|个cm或者rn,使其其能达到1:1的要求配对,成对的出库任务和入库任务定义为gene,表示为:
gene:cm→rn
max{m,n}个gene组成一个个体,记为orig;orig表示为:
orig={gene1,gene2,...,genemax{m,n}}
按照1:1配对后,最多可形成数量为(max{m,n})2个orig,并定义ORIGS为num个orig形成的种群,ORIGS表示为:
ORIGS={orig1,orig2,...,orignum},num<(max{num})2
num的取值根据个人经验确定,num越大算法的效果越好,但计算量越大,执行完成后得到num个orig组成的种群ORIGS。
3.根据权利要求1所述的基于改进遗传算法的多任务下堆垛机调度算法,其特征在于所述的步骤四具体包括:
1)随机选择一个gene作为交叉点,交叉点就是对调gene两端的元素的一个标志gene,将交叉点及以后的出库库位号与入库任务队列号予以对调,对调的概率定义为交叉率swp,swp∈[0,1];对调后如出库库位号或者入库库位号重复,则以出库任务库位号队列为基准,将每组重复库位号的前位库位号与重复入库库位号对调,入库库位号的对调位置从重复组中等概率随机选取;
2)变异策略采用单个体自变异的方式,即随机选出num个gene中的出库库位号,将两位置的库位号对调,变异的概率定义为变异率chg,chg∈[0,1],变异完成后产生新的orig,令N=N+1,若N≤Na就返回步骤三第2)步,否则输出调度适应度最大的orignum作为结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011562693.5A CN112561448B (zh) | 2020-12-25 | 2020-12-25 | 基于改进遗传算法的多任务下堆垛机调度算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011562693.5A CN112561448B (zh) | 2020-12-25 | 2020-12-25 | 基于改进遗传算法的多任务下堆垛机调度算法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112561448A CN112561448A (zh) | 2021-03-26 |
CN112561448B true CN112561448B (zh) | 2024-07-09 |
Family
ID=75032787
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011562693.5A Active CN112561448B (zh) | 2020-12-25 | 2020-12-25 | 基于改进遗传算法的多任务下堆垛机调度算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112561448B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113326917B (zh) * | 2021-04-29 | 2024-06-25 | 开放智能机器(上海)有限公司 | 一种基于遗传算法的自动优化算子的方法和*** |
CN116976231B (zh) * | 2023-09-25 | 2024-02-06 | 闽都创新实验室 | 一种基于遗传算法的平面地堆库agv理库作业优化方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102663574A (zh) * | 2012-03-23 | 2012-09-12 | 合肥工业大学 | 基于遗传算法的多rgv动态调度方法 |
CN104835026A (zh) * | 2015-05-15 | 2015-08-12 | 重庆大学 | 基于Petri网与改进遗传算法的自动化立体仓库拣选作业调度建模优化方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107506956B (zh) * | 2017-06-12 | 2018-06-15 | 合肥工业大学 | 基于改进粒子群算法供应链生产运输协同调度方法及*** |
CN109800071A (zh) * | 2019-01-03 | 2019-05-24 | 华南理工大学 | 一种基于改进遗传算法的云计算任务调度方法 |
-
2020
- 2020-12-25 CN CN202011562693.5A patent/CN112561448B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102663574A (zh) * | 2012-03-23 | 2012-09-12 | 合肥工业大学 | 基于遗传算法的多rgv动态调度方法 |
CN104835026A (zh) * | 2015-05-15 | 2015-08-12 | 重庆大学 | 基于Petri网与改进遗传算法的自动化立体仓库拣选作业调度建模优化方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112561448A (zh) | 2021-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110909930B (zh) | 一种面向冷库的移动式货架仓储***货位分配方法 | |
CN107506956B (zh) | 基于改进粒子群算法供应链生产运输协同调度方法及*** | |
CN112561448B (zh) | 基于改进遗传算法的多任务下堆垛机调度算法 | |
CN107480922B (zh) | 两端式同轨双车运行模式下货位分配调度模型建立方法 | |
CN107808215B (zh) | 一种应用于Flying-V型非传统布局仓库的货位分配优化方法 | |
CN108550007B (zh) | 一种制药企业自动化立体仓库的货位优化方法及*** | |
WO2022252268A1 (zh) | 一种智能立体仓库优化调度方法 | |
CN109677830B (zh) | 一种四向穿梭车式密集仓储***资源配置优化方法 | |
CN114417696B (zh) | 一种基于遗传算法的自动化立体仓库货位分配优化方法 | |
CN103955818A (zh) | 多层穿梭车自动仓储***的任务调度方法 | |
CN108764579B (zh) | 一种基于拥塞控制的仓储多机器人任务调度方法 | |
CN113627642B (zh) | 基于自适应大规模邻域搜索算法的堆垛机路径优化方法 | |
CN109081030B (zh) | 一种子母穿梭车式密集仓储***的配置优化方法 | |
CN111626516B (zh) | 考虑倒货策略的双深位四向穿梭车***订单排序优化方法 | |
CN106651086B (zh) | 一种考虑组装工艺的自动化立体仓库调度方法 | |
CN113627712A (zh) | 一种仓储***穿梭车作业顺序优化方法 | |
CN116596440A (zh) | 一种自动化立体仓库出入库智能调度方法 | |
CN114418707A (zh) | 四向穿梭车路径导航方法及*** | |
CN117886048A (zh) | 一种智能立体库同轨道双堆垛机智能调度优化策略 | |
CN117236037A (zh) | 用于评估接触网零部件仓库布局的仿真***及方法 | |
CN105069518A (zh) | 一种基于可变长基因遗传算法的物资调度方法及*** | |
CN115063064A (zh) | 一种基于遗传算法的生产物流仓库储位分配方法 | |
CN116342039A (zh) | 一种立体仓库的货物分配和拣选的优化方法 | |
Wang et al. | Research on autonomous vehicle storage and retrieval system cargo location optimization in E-commerce automated warehouse | |
Song et al. | Scheduling optimization of automated storage and retrieval system based on four-way shuttles |
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 |