CN116468147A - 基于遗传算法的钢筋优化断料的计算方法及装置 - Google Patents
基于遗传算法的钢筋优化断料的计算方法及装置 Download PDFInfo
- Publication number
- CN116468147A CN116468147A CN202310265729.0A CN202310265729A CN116468147A CN 116468147 A CN116468147 A CN 116468147A CN 202310265729 A CN202310265729 A CN 202310265729A CN 116468147 A CN116468147 A CN 116468147A
- Authority
- CN
- China
- Prior art keywords
- blanking
- chromosome
- steel bar
- length
- raw materials
- 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
- 239000000463 material Substances 0.000 title claims abstract description 41
- 230000002068 genetic effect Effects 0.000 title claims abstract description 26
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 25
- 238000004364 calculation method Methods 0.000 title claims abstract description 17
- 229910001294 Reinforcing steel Inorganic materials 0.000 title claims description 34
- 239000002994 raw material Substances 0.000 claims abstract description 117
- 229910000831 Steel Inorganic materials 0.000 claims abstract description 67
- 239000010959 steel Substances 0.000 claims abstract description 67
- 238000010276 construction Methods 0.000 claims abstract description 28
- 210000000349 chromosome Anatomy 0.000 claims description 137
- 108090000623 proteins and genes Proteins 0.000 claims description 31
- 238000000034 method Methods 0.000 claims description 30
- 230000035772 mutation Effects 0.000 claims description 22
- 238000005520 cutting process Methods 0.000 claims description 17
- 230000008569 process Effects 0.000 claims description 14
- 230000006870 function Effects 0.000 claims description 13
- 238000012937 correction Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 claims description 8
- 238000012163 sequencing technique Methods 0.000 claims description 8
- 238000003860 storage Methods 0.000 claims description 4
- 238000004891 communication Methods 0.000 claims description 3
- 238000004590 computer program Methods 0.000 claims description 2
- 238000005457 optimization Methods 0.000 abstract description 2
- 230000003014 reinforcing effect Effects 0.000 description 5
- 238000011161 development Methods 0.000 description 3
- 230000002787 reinforcement Effects 0.000 description 3
- 206010063385 Intellectualisation Diseases 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000009435 building construction Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000004064 recycling Methods 0.000 description 1
- 238000011160 research 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/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- 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
- 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
-
- 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Biophysics (AREA)
- Strategic Management (AREA)
- Life Sciences & Earth Sciences (AREA)
- Human Resources & Organizations (AREA)
- General Physics & Mathematics (AREA)
- Economics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Marketing (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Biomedical Technology (AREA)
- Operations Research (AREA)
- Entrepreneurship & Innovation (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Physiology (AREA)
- Genetics & Genomics (AREA)
- Artificial Intelligence (AREA)
- Quality & Reliability (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- General Factory Administration (AREA)
Abstract
本发明为基于遗传算法的钢筋优化断料的计算方法及装置,包括以下步骤:步骤1,获取钢筋原材信息,将钢筋原材按照强度等级和直径进行分类存储;步骤2,获取钢筋施工下料零件所有长度,并按照强度等级、直径与之对应原材储存在一起,确定每种原材所需钢筋施工下料零件的长度和对应每种长度所需数量;步骤3,利用遗传算法计算钢筋施工下料方案,计算出最优下料方案及所需钢筋原材数量。本发明使用原材数量对下料零件进行编码,执行遗传算法求解,充分考虑工程中需要使用原材数量最少且要使末根材料的余料最大的问题。末根材料余料最大,可以供下次断料使用,计算出最优化方案。
Description
技术领域
本发明属于土木工程技术领域,尤其涉及一种基于遗传算法的钢筋优化断料的计算方法和装置。
背景技术
建筑业作为我国经济建设的支柱产业之一,建筑业的发展决定着我国经济建设的发展,同时也带动大批相关产业的发展。钢筋作为建筑工程中使用最为广泛的材料之一,钢筋的加工也成为建筑工程中不可或缺的重要工作。钢筋的造价是建筑施工管理过程中成本控制的关键。因此,钢筋优化断料问题可以帮助施工单位有效避免浪费、降低成本和提高经济效益。
钢筋按强度等级、直径、长度等分类,数量巨大且种类繁多,由于下料类型的多样化,使得人工计算断料方案难度巨大。人工计算断料方案时往往是简单的依次下料,如果长度计算错误,会导致钢筋切割错误,造成钢筋、人工和机械设备的浪费,甚至会影响工程的质量和工期。因此,要正确计算出钢筋的下料长度,并以此作为施工人员进行施工的依据。
但现阶段的钢筋优化断料的理论研究,将上一次的余料加入到原材(提供的原料和剩余的料)里进行一起计算,并没有考虑到剩余余料再利用的问题,不能输出适合本次断料及下次断料的最优方案。
发明内容
针对现有钢筋优化断料方法的不足,本发明提供了基于遗传算法的钢筋优化断料的计算方法及装置,克服上述缺陷。
为了实现上述目的,本发明提供如下技术方案:
第一方面,本发明提供一种基于遗传算法的钢筋优化断料的计算方法,包括以下步骤:
步骤1,获取钢筋原材信息,将钢筋原材按照强度等级和直径进行分类存储;确定每种原材
步骤2,获取钢筋施工下料零件所有长度,并按照强度等级、直径与之对应原材储存在一起,确定每种原材所需钢筋施工下料零件的长度和对应每种长度所需数量;
步骤3,利用遗传算法计算钢筋施工下料方案,计算出最优下料方案及所需钢筋原材数量;具体过程是:
步骤3.1,确定适应度函数和选择算子:
适应度函数考虑单根余料最长和总使用原材最少,且剩余一根具备最长余料的原材,将已使用的钢筋原材数-1的长度与全部已用钢筋原材中剩余材料的最大值的差作为适应度函数;适应度函数f(x)的目标公式为
其中,k'为已使用的钢筋原材数,aji为第j根原材上第i种下料零件的数量,li为第i种下料零件的长度;
选择算子P按照选择概率P(xu)从当前种群挑选出一定数目的个体,选择概率P(xu)为整个种群中最大的适应度与单个个体适应度的差值占整个种群中各个个体适应度之和;
步骤3.2,预设原材数量:按照计算当前种原材的预设原材数量k,其中,round指向上取整,li为第i种所需下料零件的长度,di为第i种所需下料零件的数量,L为原材长度;
步骤3.3,编码规则:
设当前种类原材所需下料零件长度为a1,a2,a3…an,对应所需下料零件的数量为b1,b2,b3…bn;将下料零件长度从小到大排列,排序后下料零件长度依次记为l1,l2,l3…ln,按长度排序顺序对应的下料零件数量为d1,d2,d3…dn;
将所有数量的下料零件进行从小到大排列,长度相同的下料零件依次设置,所有数量的下料零件排序后的结果为:
编码规则为:根据预设原材数量k,设定编码字符取值范围为{1,2,…k},单根原材长度设为L,对每根下料零件在编码字符{1,2,…k}内随机选取进行随机编码,所有下料零件编码后形成一条染色体,染色体长度为n是下料零件的种类数,di是第i种长度下的下料零件所需的数量;
根据编码规则知道在同一根原材上需要切割哪些长度的下料零件;
步骤3.4,设定最大迭代次数,令gen=1,按照编码规则随机产生2N个个体,作为第一种群;
步骤3.5,对第一种群利用选择算子进行选择处理,获得子代1:对第一种群的2N个个体中的每个染色体进行适应度的计算,根据染色体的适应度计算选择算子P,获得各染色体被选择的选择概率;选择概率值为前N个的染色体作为预设数量的染色体,作为子代1;
步骤3.6,设定交叉概率,对子代1利用双点交叉算子进行交叉处理,获得子代2;
步骤3.7,设定变异概率,对子代2利用变异算子进行变异处理,获得子代3;
步骤3.8,判断子代3的染色体是否出现使一根钢筋原材使用率超出100%的情况,若出现则需要对子代3进行修正染色体处理,得到第二种群,具体为:
对子代3的染色体根据染色体上的基因,将所有原材中未使用的原材进行删除,并对已使用的钢筋原材重新编码,编码字符在{1,2,…m}内随机选取,已使用的m根钢筋原材分别记为L1,L2,…Lm;
检查原材L1,L2,…Lm上的下料零件,若Le的下料零件长度之和超过原材的长度,将Le上的最小下料零件删除,并放入超出区;重复判断及删除最小下料零件的过程,直到Le上的所有下料零件长度之和小于等于L;
计算Le上的所有下料零件长度之和小于等于L时Le上原材余料长度,比较原材余料长度与超出区的下料零件的长度大小,选择小于原料预料长度中最长的下料零件再次插入到Le中,使得Le上所有下料零件长度之和始终不大于L;
超出区内插入不下的下料零件放置在新的待切割原材上,新的待切割原材上需要切割的下料零件的长度种类或数量发生改变,完成子代3染色体的修正,对修正后的子代3通过选择算子获得第二种群;
步骤3.9,令gen=gen+1,对经过修正染色体而新产生的种群重复执行步骤3.6-步骤3.8,进行下一次迭代,当迭代次数满足最大迭代次数时,结束迭代,输出当代适应度最高的染色体,此染色体为最优切割方案。
所述双点交叉算子的过程是:产生子代时不是必然发生交叉,而是以一定概率进行交叉,遍历种群中的每一个染色体,将一个染色体作为父染色体,在种群中,选择另一染色体,将该染色体作为母染色体,父染色体和母染色体不为同一染色体;在父染色体与母染色体上随机产生交叉点位1与交叉点位2;父染色体的交叉点位1,2与母染色体的交叉点位1,2位于基因的同一位置;子代染色体得到位于低交叉点位前面的母染色体的基因与高交叉点位后面的母亲的基因、位于低交叉点位与高交叉点位之间的父染色体的基因。
所述变异算子的过程是:产生的每个子代都有一定概率发生变异,在子代的染色体上随机产生两个不同的基因位置,并交换这两个位置上的基因。
第二方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可实现上述方法的步骤。
第三方面,本发明提供一种基于遗传算法的钢筋优化断料的计算装置,所述装置包括:存储器、处理器、输入输出接口、网络接口、通信器;
存储器用于存储钢筋原材信息和下料零件信息,以及最优方案信息;
所述处理器用于执行利用遗传算法计算钢筋施工下料方案的过程,计算出最优下料方案及所需钢筋原材数量;
所述输入输出接口用于获取钢筋原材信息和下料零件信息,同时能够输出处理器处理后的最优下料方案;
通信器用于上述存储器、处理器、输入输出接口、网络接口的通信;
所述网络接口用于与外部设备进行通信,将最优下料方案导出。
与现有技术相比,本发明有益效果在于:
1、本发明实现了钢筋断料的智能化,避免出现人工计算错误断料方案的问题,提高了钢筋原材的利用率,降低建筑工程的成本并提高经济效益。
2、本发明使用原材数量对下料零件进行编码,执行遗传算法求解,充分考虑工程中需要使用原材数量最少且要使末根材料的余料最大的问题。末根材料余料最大,可以供下次断料使用,计算出最优化方案。现阶段常见的计算优化断料的线性规划法,虽可以计算出较优的切割方案,但没有考虑末根材料余料最大问题。同时线性规划法随着下料零件种类增加,单根钢筋原材切割方式呈几何倍数增加,现有算力无法遍历全部方案。
3、本发明不仅支持手动输入数据,而且支持批量导入数据,同时可以导出钢筋切割方案。传统钢筋加工行业信息化水平较低,大部分钢筋数据需要人工纸质记录,智能化水平低。本发明可有效降低记录钢筋切割方案的人工率,实现钢筋加工的信息化与智能化。
4.本发明检查在一根原材上切割的全部下料零件长度是否会超过原材的长度,再进行染色体修正,保证遗传的精度和最优方案的可靠性。
因此,本发明充分考虑剩余余料再利用的问题,不考虑上次剩余的余料,仅考虑本次单次切割余料如何更合理,使得单次余料剩余的更长,有利于后期再利用。
附图说明
图1为本发明实施例案涉及的钢筋优化断料的计算装置的连接结构示意图;
图2为本发明基于遗传算法的钢筋优化断料的计算方法的总流程图;
图3为本发明基于遗传算法的钢筋优化断料的计算方法中遗传算法的流程图;
图4为本发明染色体修正流程图。
具体实施方式
下面结合实施例及附图进一步解释本发明,但并不以此作为对本申请保护范围的限定。
图1为本发明实施例涉及的钢筋优化断料的计算装置的结构示意图。
如图1所示,所述钢筋优化断料的计算装置,为一种终端设备,包括:存储器1、处理器2、输入输出接口3、网络接口4、通信器5。其中,存储器可以是终端设备的内存储器,如随机存储器(Random Access Memory,RAM)、高速缓冲存储器(cache-cache),也可以是终端设备的外存储器,如闪存盘(Flash Disk)、固态硬盘(Solid State Drives)等。处理器可以是中央处理器(Central Processing Unit,CPU),也可以是其他任何常规的处理器。输入输出接口可以包括显示器、键盘、鼠标等。网络接口包括无线接口、有线接口。通信器用于上述存储器1、处理器2、输入输出接口3、网络接口4的通信。终端设备可以为手机、平板电脑、笔记本电脑等终端设备。所述处理器内加载有本申请所述的基于遗传算法的钢筋优化断料的计算方法。
本发明基于遗传算法的钢筋优化断料的计算方法,包括以下步骤:
步骤1,获取钢筋原材信息,并对钢筋按照强度等级、直径进行分类,将不同规格的钢筋信息进行分类存储。
原材信息不仅可以在终端设备手动输入,也可以通过导入Excel表格形式进行输入。终端设备可以自动识别不同规格钢筋的强度等级、直径等信息。原材信息包括原材的强度等级、直径、长度等。
步骤2,获取钢筋施工下料零件长度,并对其按照强度等级、直径与之对应原材储存在一起,也就是确定每种原材所需钢筋施工下料零件的长度和对应每种长度所需数量,即确定了某种原材所需加工的下料零件的不同规格和数量。
终端设备在获取所需下料零件的长度与数量后,自动识别并将与之对应原材信息储存到一起。
步骤3,根据钢筋施工下料零件长度(a1,a2,a3…an),设定将已使用的钢筋原材数-1的长度与全部已用钢筋原材中剩余材料的最小值的差作为适应度函数,再利用含染色体修正的遗传算法计算钢筋施工下料方案,计算出最优下料方案及所需钢筋原材数量,根据计算结果,输出下料方案Excel表格。
所述利用含染色体修正的遗传算法的钢筋施工下料方案计算过程是:
步骤3.1,设定适应度函数和选择算子P。
为了使所用的原材较少,且剩余一根具备最长余料的原材,以 为适应度函数。也就是将已使用的钢筋原材数-1的长度与全部已用钢筋原材中剩余材料的最大值的差作为适应度函数,适应度函数考虑单根余料最长和总使用原材最少。式中:k'为已使用的钢筋原材数,aji为第j根原材上第i种下料零件的数量,li为第i种下料零件的长度。
采用按比例选择的轮盘赌方式。
按照选择概率P(xu)从当前种群挑选出一定数目的个体。P(xu)为第xu个个体被选择的概率,f(xu)为第xu个个体的适应度,max(f(xu))为整个种群中最大的适应度,为整个种群中各个个体适应度之和,N*为种群个体的数量,根据编码规则随机生成N*个染色体;编码形成染色体,每个编码为对应的基因。
步骤3.2,预设原材数量:
按照计算预设原材数量k,其中,round指向上取整,li为第i种所需下料零件的长度,di为第i种所需下料零件的数量,L为原材长度;
步骤3.3,编码规则
对所需钢筋下料零件进行排序。设当前种类原材所需下料零件长度为a1,a2,a3…an(此时未进行排序),对应所需下料零件的数量为b1,b2,b3…bn;将下料零件长度从小到大排列,排序后下料零件长度依次记为l1,l2,l3…ln,按长度排序顺序对应的下料零件数量为d1,d2,d3…dn;如下料零件长度为l1的零件需要d1根,长度为l2的零件需要d2根,l1小于l2。
对顺序排列的下料零件编码。将所有数量的下料零件进行从小到大排列,长度相同的下料零件依次设置,所有数量的下料零件排序后的结果为:
将预设原材数量设为k,则编码字符为{1,2,...k},单根原材长度设为L,对每根下料零件在编码字符{1,2,...k}内随机选取进行随机编码,所有下料零件编码后形成一条染色体,染色体长度即为编码长度为n是下料零件的种类数,di是第i种长度下的下料零件所需的数量;其中,l1长度的下料零件所需数量为d1,l2长度的下料零件所需数量为d2,…,ln长度的下料零件所需数量为dn;
如下式中,第一行l1,l2,ln为各个下料零件,第二行1,2,…,3,k,4,…,6,…,k-1是下料零件的编码,用编码字符随机给各个下料零件编码。
l1,l1,...l1,l2,l2,…l2,...,ln
1,2,...,3,k,4,…,6,…,k-1
因此上式的编码意为第1根l1长度的下料零件在第1根原材上切割,第2根l1长度的下料零件在第2根原材上切割,第d1根l1长度的下料零件在第3根原材上切割,第1根l2长度的下料零件在第k根原材上切割,第2根l2长度的下料零件在第4根原材上切割,第d2根l2长度的下料零件在第6根原材上切割,第dn根ln长度的下料零件在第k-1根原材上切割。此编码字符作为基因。根据编码规则知道在同一根原材上需要切割哪些长度的下料零件。
选择遗传操作算子。本申请采用双点交叉算子与变异算子。其中,产生子代时不是必然发生交叉,而是以一定概率进行交叉。遍历种群中的每一个染色体,将该染色体作为父染色体,在种群中,选择另一染色体,将该染色体作为母染色体,父染色体和母染色体不为同一染色体。在父染色体与母染色体上随机产生交叉点位1与交叉点位2。父染色体的交叉点位1,2与母染色体的交叉点位1,2位于基因的同一位置,此过程不改染色体的长度,保证染色体长度相同。子代染色体得到位于低交叉点位前面的母染色体的基因与高交叉点位后面的母亲的基因,得到位于低交叉点位与高交叉点位之间的父染色体的基因。产生的每个子代都有一定概率发生变异。在子代的染色体上随机产生两个不同的基因位置,并交换这两个位置上的基因。
步骤3.4,设定最大迭代次数,令gen=1,按照编码规则随机产生2N个个体,作为第一种群。具体的,第一种群为初始切割方案的集合,切割方案为将原材进行切割,满足待下料零件的长度及数量的方案。
示例性的,某工程项目需要12m的钢筋原材进行下料,待下料零件的长度分别为:3.4m、4.5m和6.7m,其中,需要3.4m的钢筋3根,4.5m的钢筋4根,6.7m的钢筋5根。那么预设钢筋原材数根,即编码字符为1-6,编码长度为3+4+5=12(上面需要3.4m的钢筋3根,4.5m的钢筋4根,6.7m的钢筋5根,3+4+5就是下料零件根数和)。随机生成2N个个体,即2N个染色体,如111223345566。
步骤3.5,对第一种群利用选择算子进行选择处理,获得子代1。
具体的,对第一种群的2N个个体中的每个染色体进行适应度的计算,根据染色体的适应度计算选择算子P,获得各染色体被选择的选择概率;选择概率值为前N个的染色体作为预设数量的染色体,作为子代1。
步骤3.6,对子代1利用双点交叉算子进行交叉处理,获得子代2。
具体的,在子代1中,设定交叉概率,随机选择一染色体作为父染色体,子代2首先遗传父染色体的全部基因,再在子代1剩余染色体中随机选择一染色体,作为母染色体。在父染色体和母染色体上随机产生2个相同位点,作为交叉点。子代2获得母染色体低交叉位点之前与高交叉位点之后的全部基因。产生预设数量的子代2,子代2的数量为N。
所述低交叉位点与高交叉位点是对交叉点位1与交叉点位2进行排序,位于较前位置的交叉点位称为低交叉位点,位于较后位置的交叉点位称为高交叉位点。
需要说明的是:子代1并不是全部进行交叉,而是以一定概率进行交叉。
示例性的,预设数量的染色体包括染色体1、染色体2、染色体3、染色体4和染色体5。在这5个染色体中,随机选择一染色体,作为父染色体(例如染色体5)。设染色体5的基因为A1,B1,C1,D1,E1。则子代2首先继承父染色体全部基因A1,B1,C1,D1,E1。随后,在其他染色体中,随机选择另一染色体,作为母染色体(例如染色体4)。设染色体4的基因为A2,B2,C2,D2,E2。在染色体4与染色体5上随机产生2个交叉位点,如A1,B1,(交叉点位1),C1,(交叉点位2),D1,E1。A2,B2,(交叉点位1),C2,(交叉点位2),D2,E2。则子代2染色体为A2,B2,C1,D2,E2。
步骤3.7,设定变异概率,对子代2利用变异算子进行变异处理,获得子代3。
具体的,在子代2的各组染色体上,随机产生两个变异点位,并对两个变异点位的基因进行交换。
需要说明的是,子代2并不是全部进行变异,而是已一定概率进行变异。
示例性的,例如某一染色体上的基因为A,B,C,D,E,F,随机产生两个变异点位,例如A,B,C(变异点位1),D,E,F(变异点位2),进行交换得A,B,F,D,E,C。从而得到子代3。
本申请实施例中,经过交叉变异后子代3的染色体使一根钢筋原材使用率超出100%,不符合实际情况。例如有12m原材,需要3.4m的钢筋3根,4.5m的钢筋4根,6.7m的钢筋5根,交叉变异后的染色体为111223345566,其中需要在第6根原材上切割出两根6.7m的下料零件,不符合实际情况,还需进行步骤3.8。
步骤3.8,判断子代3的染色体是否出现使一根钢筋原材使用率超出100%的情况,若出现则需要对子代3进行修正染色体处理,处理后选择得到第二种群。具体为:
对子代3的染色体根据染色体上的基因(基因携带了各个下料零件在哪一根原材上切割的信息),将所有原材中未使用的原材进行删除,并对已使用的钢筋原材重新编码为1,2,…,m。m为实际使用了m根原材。
检查原材L1,L2,…Lm上的下料零件,若Le的下料零件长度之和超过原材的长度,将Le上的最小下料零件删除,放入超出区;并重复判断及删除最小下料零件过程,直到Le上的所有下料零件长度之和小于等于L;计算此时Le上原材余料长度,比较原材余料长度与超出区的下料零件的长度大小,选择小于原料预料长度中最长的下料零件再次插入到Le中,使得Le上所有下料零件长度之和始终不大于L;
超出区内插入不下的下料零件放置在新的待切割原材上,新的待切割原材上需要切割的下料零件的长度种类或数量发生改变,进而对编码进行修正,再随机生成第二种群。
示例性的,例如钢筋原材长度为12m的某染色体须切割2.1m,4.2m,4.3m,5.1m的下料零件。首先检查下料零件之和是否大于钢筋原材的长度。显然,2.1+4.2+4.3+5.1=15.7m>12m,则将其上最小的下料零件删除,放入超出区,也就是将2.1m的下料零件删除,并判断剩余下料零件是否大于原材长度,4.2+4.3+5.1=13.6m>12m,则继续将最小的下料零件删除,也就是将4.2m的下料零件删除。继续判断剩余零件是否大于钢筋原材长度,4.3+5.1=9.4m<12m。则超出区有2.1m与4.2m两种下料零件。随后将超出的下料零件插入到此钢筋原材上。此时,钢筋原材的余料为12-9.4=2.3m,2.1m<2.3m<4.2m,则将2.1m的下料零件插入至此钢筋原材上,而4.2m的下料零件需放置在新的待切割原材上。则此钢筋原材需要切割2.1m,4.3m,5.1m的下料零件。
步骤3.9,令gen=gen+1,对经过修正染色体而新产生的种群重复执交叉处理、变异处理、修正染色体过程和选择处理,实现迭代,当迭代次数满足预设次数时,结束迭代,输出当代适应度最高的染色体,此染色体为最优切割方案。其中,预设次数可为500-1000次。
示例性的,某项目钢筋原材为12m,所需下料零件长度为[1.5,1.9,2,2.3,2.7,3.1,3.6,3.9,4.2,4.7],对应需求数量为[4,3,6,8,9,1,7,5,6,3],经计算可得下料方案如下表。
由表可知,本实施例中输出染色体上不同长度的下料零件的数量与所需下料零件数量相等,钢筋总利用率为98.3%,其中使末根余料最长为2.4m,去除掉末钢筋的利用率为99.7%,效果良好。
需要说明的是,计算出的利用率与钢筋下料零件的长度与数量有很大关系。
根据计算结果,输出下料方案Excel表格。终端设备计算出下料方案后,终端设备自动识别并导出为Excel表格。
本发明未述及之处适用于现有技术。
Claims (5)
1.一种基于遗传算法的钢筋优化断料的计算方法,包括以下步骤:
步骤1,获取钢筋原材信息,将钢筋原材按照强度等级和直径进行分类存储;
步骤2,获取钢筋施工下料零件所有长度,并按照强度等级、直径与之对应原材储存在一起,确定每种原材所需钢筋施工下料零件的长度和对应每种长度所需数量;
步骤3,利用遗传算法计算钢筋施工下料方案,计算出最优下料方案及所需钢筋原材数量;具体过程是:
步骤3.1,确定适应度函数和选择算子:
适应度函数考虑单根余料最长和总使用原材最少,且剩余一根具备最长余料的原材,将已使用的钢筋原材数-1的长度与全部已用钢筋原材中剩余材料的最大值的差作为适应度函数;适应度函数f(x)的目标公式为
其中,k'为已使用的钢筋原材数,aji为第j根原材上第i种下料零件的数量,li为第i种下料零件的长度;
选择算子P按照选择概率P(xu)从当前种群挑选出一定数目的个体,选择概率P(xu)为整个种群中最大的适应度与单个个体适应度的差值占整个种群中各个个体适应度之和;
步骤3.2,预设原材数量:按照计算当前种原材的预设原材数量k,其中,round指向上取整,li为第i种所需下料零件的长度,di为第i种所需下料零件的数量,L为原材长度;
步骤3.3,编码规则:
设当前种类原材所需下料零件长度为a1,a2,a3…an,对应所需下料零件的数量为b1,b2,b3…bn;将下料零件长度从小到大排列,排序后下料零件长度依次记为l1,l2,l3…ln,按长度排序顺序对应的下料零件数量为d1,d2,d3…dn;
将所有数量的下料零件进行从小到大排列,长度相同的下料零件依次设置,所有数量的下料零件排序后的结果为:
编码规则为:根据预设原材数量k,设定编码字符取值范围为{1,2,…k},单根原材长度设为L,对每根下料零件在编码字符{1,2,…k}内随机选取进行随机编码,所有下料零件编码后形成一条染色体,染色体长度为n是下料零件的种类数,di是第i种长度下的下料零件所需的数量;
根据编码规则知道在同一根原材上需要切割哪些长度的下料零件;
步骤3.4,设定最大迭代次数,令gen=1,按照编码规则随机产生2N个个体,作为第一种群;
步骤3.5,对第一种群利用选择算子进行选择处理,获得子代1:对第一种群的2N个个体中的每个染色体进行适应度的计算,根据染色体的适应度计算选择算子P,获得各染色体被选择的选择概率;选择概率值为前N个的染色体作为预设数量的染色体,作为子代1;
步骤3.6,设定交叉概率,对子代1利用双点交叉算子进行交叉处理,获得子代2;
步骤3.7,设定变异概率,对子代2利用变异算子进行变异处理,获得子代3;
步骤3.8,判断子代3的染色体是否出现使一根钢筋原材使用率超出100%的情况,若出现则需要对子代3进行修正染色体处理,得到第二种群,具体为:
对子代3的染色体根据染色体上的基因,将所有原材中未使用的原材进行删除,并对已使用的钢筋原材重新编码,编码字符在{1,2,…m}内随机选取,已使用的m根钢筋原材分别记为L1,L2,…Lm;
检查原材L1,L2,…Lm上的下料零件,若Le的下料零件长度之和超过原材的长度,将Le上的最小下料零件删除,并放入超出区;重复判断及删除最小下料零件的过程,直到Le上的所有下料零件长度之和小于等于L;
计算Le上的所有下料零件长度之和小于等于L时Le上原材余料长度,比较原材余料长度与超出区的下料零件的长度大小,选择小于原料预料长度中最长的下料零件再次插入到Le中,使得Le上所有下料零件长度之和始终不大于L;
超出区内插入不下的下料零件放置在新的待切割原材上,新的待切割原材上需要切割的下料零件的长度种类或数量发生改变,完成子代3染色体的修正,对修正后的子代3通过选择算子获得第二种群;
步骤3.9,令gen=gen+1,对经过修正染色体而新产生的种群重复执行步骤3.6-步骤3.8,进行下一次迭代,当迭代次数满足最大迭代次数时,结束迭代,输出当代适应度最高的染色体,此染色体为最优切割方案。
2.根据权利要求1所述的基于遗传算法的钢筋优化断料的计算方法,其特征在于,所述双点交叉算子的过程是:产生子代时不是必然发生交叉,而是以一定概率进行交叉,遍历种群中的每一个染色体,将一个染色体作为父染色体,在种群中,选择另一染色体,将该染色体作为母染色体,父染色体和母染色体不为同一染色体;在父染色体与母染色体上随机产生交叉点位1与交叉点位2;父染色体的交叉点位1,2与母染色体的交叉点位1,2位于基因的同一位置;子代染色体得到位于低交叉点位前面的母染色体的基因与高交叉点位后面的母亲的基因、位于低交叉点位与高交叉点位之间的父染色体的基因。
3.根据权利要求1所述的基于遗传算法的钢筋优化断料的计算方法,其特征在于,所述变异算子的过程是:产生的每个子代都有一定概率发生变异,在子代的染色体上随机产生两个不同的基因位置,并交换这两个位置上的基因。
4.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时可实现权利要求1-3任一所述方法的步骤。
5.一种基于遗传算法的钢筋优化断料的计算装置,其特征在于,所述装置包括:存储器、处理器、输入输出接口、网络接口、通信器;
存储器用于存储钢筋原材信息和下料零件信息,以及最优方案信息;
所述处理器用于执行利用遗传算法计算钢筋施工下料方案的过程,计算出最优下料方案及所需钢筋原材数量;
所述输入输出接口用于获取钢筋原材信息和下料零件信息,同时能够输出处理器处理后的最优下料方案;
通信器用于上述存储器、处理器、输入输出接口、网络接口的通信;
所述网络接口用于与外部设备进行通信,将最优下料方案导出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310265729.0A CN116468147A (zh) | 2023-03-20 | 2023-03-20 | 基于遗传算法的钢筋优化断料的计算方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310265729.0A CN116468147A (zh) | 2023-03-20 | 2023-03-20 | 基于遗传算法的钢筋优化断料的计算方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116468147A true CN116468147A (zh) | 2023-07-21 |
Family
ID=87181491
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310265729.0A Pending CN116468147A (zh) | 2023-03-20 | 2023-03-20 | 基于遗传算法的钢筋优化断料的计算方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116468147A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117407966A (zh) * | 2023-12-14 | 2024-01-16 | 中国建筑西南设计研究院有限公司 | 融合分布式剪枝和遗传算法的多规格钢筋下料方法及装置 |
-
2023
- 2023-03-20 CN CN202310265729.0A patent/CN116468147A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117407966A (zh) * | 2023-12-14 | 2024-01-16 | 中国建筑西南设计研究院有限公司 | 融合分布式剪枝和遗传算法的多规格钢筋下料方法及装置 |
CN117407966B (zh) * | 2023-12-14 | 2024-02-13 | 中国建筑西南设计研究院有限公司 | 融合分布式剪枝和遗传算法的多规格钢筋下料方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109376438B (zh) | 一种钢筋下料优化方法、装置及存储设备 | |
Magalhaes-Mendes | A comparative study of crossover operators for genetic algorithms to solve the job shop scheduling problem | |
CN111832101B (zh) | 一种水泥强度预测模型的构建方法及水泥强度预测方法 | |
CN102592031B (zh) | 绝缘纸板的自动排样方法 | |
CN111507641A (zh) | 一种批处理设备调度方法及其装置 | |
CN112580259B (zh) | 基于遗传算法的智能矿山自动配矿方法及系统 | |
CN116468147A (zh) | 基于遗传算法的钢筋优化断料的计算方法及装置 | |
CN113805545B (zh) | 一种考虑批处理的柔性流水车间组合调度规则生成方法 | |
CN110555563B (zh) | 大规模钢筋分组及下料优化方法及装置 | |
CN115018387B (zh) | 订单揉合管理方法、系统、设备及存储介质 | |
CN112488315A (zh) | 一种基于深度强化学习和遗传算法的分批调度优化方法 | |
WO2023066266A2 (zh) | 基于遗传算法的排样方法及装置 | |
CN112882449A (zh) | 一种多品种小批量多目标柔性作业车间能耗优化调度方法 | |
CN114036717A (zh) | 一种钢筋下料的切割方案确定方法、装置和终端设备 | |
CN117407966B (zh) | 融合分布式剪枝和遗传算法的多规格钢筋下料方法及装置 | |
CN112926819A (zh) | 基于改进遗传算法的调度方法、装置、设备及存储介质 | |
CN111651968A (zh) | Excel报表自动生成方法、系统及信息数据处理终端 | |
JP2002132327A (ja) | 生産計画作成方法およびそのシステム | |
CN114676987B (zh) | 一种基于超启发式算法的智能柔性作业车间主动调度方法 | |
CN113806690B (zh) | 一种钢筋下料智能优化方法、系统和可存储介质 | |
CN113112171B (zh) | 一种基于轮盘赌和遗传算法的批调度方法 | |
CN112036654B (zh) | 基于协同进化的光伏电站与电动汽车充电网络规划方法 | |
CN114021950A (zh) | 电力物资需求分配方法、装置、终端设备及存储介质 | |
CN111581823A (zh) | 一种施工质量-工期-成本优化方法、装置和电子设备 | |
CN114066312A (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 |