基于遗传算法的机械加工车间智能排产优化方法及系统与流程

文档序号:23655411发布日期:2021-01-15 13:52阅读:386来源:国知局
基于遗传算法的机械加工车间智能排产优化方法及系统与流程

本发明属于机械制加工车间排产领域,特别涉及一种基于遗传算法的机械加工车间智能排产优化方法及系统。



背景技术:

面对日益加剧的市场竞争和不断趋于个性化的客户需求,如何在保证机械加工车间排产正常运行的同时提高企业的生产效率,以保证企业的市场竞争力,成了制造型企业面临的最大难题。机械加工车间排产作为制造型企业生产运行的指挥中心,对企业生产的高效运行起着决定性作用。现今机械加工车间排产仍然是车间人员凭借工作经验进行生产计划安排,无法避免失误的产生,计划安排不合理导致部分订单无法按时完成、产生连续加班的情况,增加了员工的工作负荷,周而复始,员工的工作效率也会随之降低。如何在一定时间内,分配有限资源,对生产任务统筹安排,缩短生产周期,最大化利用资源,是影响企业综合实力的关键。随着行业内竞争日益激烈,实现机械加工车间智能排产在制造型企业便成了值得研究的对象。

在知识经济的背景下,整理企业内部相关知识的基础上,引进外部优秀的方法类知识来解决排产中遇到的各类问题,两者相互配合形成以各类知识为基础的指导系统来保证生产过程的顺利进行,这对企业的健康发展具有重要的意义。而对于机械加工车间智能排产问题而言,排产过程较为复杂,涉及知识较为杂乱,因此在分析排产过程、整理排产相关知识的基础上,确定相应的排产策略、设计系统的结构,这对于机械加工车间智能排产研究具有重要意义。

针对上述问题,李爱等人提出了基于瓶颈设备识别的机械加工车间排产方法及信息系统研究。毛荣华等人提出了城门山铜矿采矿智能排产系统建设的研究。边玉召等人提出了智能焊接排产模式在液压支架结构件拼焊中的应用研究。夏万留等人提出了基于遗传算法的材料企业排产系统的初步设计。但这些方法仍然存在一些不足,对于机械加工车间智能排产的问题,其排产过程较为复杂,需要进一步确定相应的排产策略、设计系统的结构。



技术实现要素:

本发明的目的在于针对上述现有技术存在的不足,具体的针对现有对机械加工车间生产计划的制定以人工经验为主,缺少一定的科学指导依据,导致机械加工车间排产技术不合理,生产效率低下等问题,提供一种基于遗传算法的机械加工车间智能排产优化方法及系统。

实现本发明目的的技术解决方案为:一种基于遗传算法的机械加工车间智能排产优化方法,所述方法包括以下步骤:

步骤1,针对车间调度任务,构建柔性作业车间调度问题数学模型;

步骤2,利用改进的遗传算法求解所述数学模型,获得并输出最优的机械加工车间智能排产优化方案;

步骤3,判断车间调度任务是否更新,若是则返回执行步骤1。

进一步地,步骤1中所述柔性作业车间调度问题数学模型为:

式中,cmax表示所有工序最后的完工时间,即优化目标;ci表示第i个加工零件的最后完工时间,n表示加工零件的数量。

基于遗传算法的机械加工车间智能排产优化系统,所述系统包括:

模型构建模块,用于针对车间调度任务,构建柔性作业车间调度问题数学模型;

求解模块,用于利用改进的遗传算法求解所述数学模型,获得并输出最优的机械加工车间智能排产优化方案;

判别模块,用于判断任务是否更新,若是则返回执行模型构建模块。

本发明与现有技术相比,其显著优点为:1)在描述柔性作业车间调度问题的基础上,建立了问题的数学模型,并采用改进的遗传算法对该模型进行求解,能够有效获得性能良好的机械加工车间智能排产优化方案,提高机械加工车间生产的效率,降低生产成本等;2)该方法操作过程简单,在取得较好优化效果的同时减少了过程中不必要的资源浪费,降低生产成本,提高制造企业的综合竞争力。

下面结合附图对本发明作进一步详细描述。

附图说明

图1为本发明基于遗传算法的机械加工车间智能排产优化方法的流程图。

图2为本发明的改进遗传算法流程图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

需要说明,若本发明实施例中有涉及“第一”、“第二”等的描述,则该“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。

在一个实施例中,结合图1,提供了一种基于遗传算法的机械加工车间智能排产优化方法,所述方法包括以下步骤:

步骤1,针对车间调度任务,构建柔性作业车间调度问题数学模型;

步骤2,利用改进的遗传算法求解所述数学模型,获得并输出最优的机械加工车间智能排产优化方案;

步骤3,判断车间调度任务是否更新,若是则返回执行步骤1。

进一步地,在其中一个实施例中,柔性作业车间调度问题可描述为:假设有n个待加工零件,车间共有m台可选择的加工机器,每个零件都是按照事先定义好的工艺路线进行加工,每个零件的每一道工序可选择的加工机器可能不止一台,但每道工序在对应机器上所需的工时是已知的,而调度目标就是确定各个工序所选择的加工机器及同一机器上不同工序的先后关系,最终使所有工序的最后完工时间、机器利用率等达到最优。因此,步骤1中所述柔性作业车间调度问题数学模型为:

式中,cmax表示所有工序最后的完工时间,即优化目标;ci表示第i个加工零件的最后完工时间,n表示加工零件的数量。

进一步地,在其中一个实施例中,步骤1中所述柔性作业车间调度问题数学模型的约束条件包括:

(a)零件按照事先确定好的工艺路线依次进行加工:

sij+xijktijk≤cij,i=1,2…,n,j=1,2,…,oi,k=1,2,…,m

式中,sij表示工序oij开始加工时间,cij表示工序oij完成加工时间,xijk表示标志数1或0,tijk表示工序oij在机器mk上的加工时间,oi表示第i个加工零件需要的加工工序数量,m表示加工机器的数量;

(b)一台机器在某一个时刻点,只可以加工一个零件的某一道工序:

sij+tijk≤saq+y(1-yijaqk),i,a=1,2…,n,k=1,2,…,m,j,q=1,2…,oi

式中,y为一个正数,yijaqk表示标志数1或0,saq第a个零件执行加工工序q的开始加工时间;

(c)一道工序在某一时刻点,只可以在其中某一台可用机器上加工:

式中,xijk表示标志数1或0。

进一步地,在其中一个实施例中,结合图2,步骤2所述利用改进的遗传算法求解所述数学模型,获得并输出最优的机械加工车间智能排产优化方案,具体过程包括:

步骤2-1,构建初始条件矩阵;

采用一个n×m的矩阵表示每台机器对不同加工零件的加工时间:

矩阵pt的每一行代表一个加工零件,共有n个待加工零件;矩阵pt的每一列对应一台加工机器,矩阵中元素ptij表示第j台加工机器生产第i个待加工零件的生产时间;若第j台加工机器并不参与第i个待加工零件的加工,则ptij=0;

另采用一个n×m的矩阵表示每个待加工零件的加工工序:

矩阵ms的每一行仍代表一个加工零件,共有n个待加工零件;矩阵ms的每一列对应零件的加工次序,矩阵中元素msij表示第i个待加工零件的第j步工序的加工机器,msij∈[1,2,…,m],若某台机器并不参与第i个零件的加工,则该机器可在第i行的任意位置出现(因其对零件i的加工时间为零,结果中只需去掉这些机器即可恢复零件i的实际加工次序);

步骤2-2,构建初始种群;

设序列a=(a1,a2,…,am×n),其中ai∈(0,1,2,…,m×n-1)且ai≠aj,则初始种群序列可表示为a=(a1,a2,…,ai,…am×n),其中ai=aimodn,ai表示加工零件的序号,ai值出现的次数代表该加工零件被加工的次数,整个序列代表对所有零件的加工顺序;

以随机生成的方式产生若干初始种群序列,构成初始种群pa=(a1,a2,…,ap),其中p为设置的初始种群序列数;

步骤2-3,对种群序列进行交叉变异;

步骤2-4,构建适应度函数,求取种群个体的适应度值:

式中,fitnessi表示第i个个体的适应度值,第cimax表示第i个个体的cmax,p表示当前种群;

步骤2-5,基于序列即个体的适应度值,利用轮盘法选取下一代基因序列;具体过程包括:

(1)计算所有要被选择的序列的适应值综合,记为f;

(2)对每个序列pk计算其选择概率sk;

(3)对每个序列pk计算其累计概率qk;

(4)从区间[0,1]中随机选择一个数字r;

(5)如果r≤q1,则选择第一个序列,否则,当qk-1≤r≤qk时,则选择第k个序列;

(6)重复(4),直到染色体大小满足种群个数p。

步骤2-6,判断迭代次数是否达到预设阈值,若是,从最终的基因序列中随机选择一个个体输出,作为最优的机械加工车间智能排产优化方案,否则返回步骤2-3。

进一步地,在其中一个实施例中,步骤2-3中所述交叉变异包括:

(a)序列交叉

采用双点交叉的方式生成下一代基因序列,具体过程包括:

从pa中随机挑选两个序列pa[x],pa[y]作为下一代基因序列的父序列,分别生成对应的下一代基因序列child_1、child_2:

child_1=pa[x]

child_2=pa[y]

随机选取两个交换点,对换child_1、child_2序列中两个交换点之间的序列,实现双点交叉;

(b)序列修复

对于双点交叉后的两个序列,若其中一个序列中代表某机器加工的数值出现的次数大于待加工零件数量,另一个序列中对应的代表某机器加工的数值出现的次数小于待加工零件数量,对两个序列的序列值进行对换,使得两个序列中代表某机器加工的数值出现的次数等于待加工零件数量;

(c)序列突变

随机选取下一代基因序列中某两个位置的序列值进行对换:

child[randompoint_1]=child[randompoint_2]

式中,child[randompoint_1]、child[randompoint_2]分别表示下一代基因序列中randompoint_1、randompoint_2位置处的序列值。

在一个实施例中,提供了一种基于遗传算法的机械加工车间智能排产优化系统,所述系统包括:

模型构建模块,用于针对车间调度任务,构建柔性作业车间调度问题数学模型;

求解模块,用于利用改进的遗传算法求解所述数学模型,获得并输出最优的机械加工车间智能排产优化方案;

判别模块,用于判断任务是否更新,若是则返回执行模型构建模块。

进一步地,在其中一个实施例中,所述求解模块包括依次执行的:

第一构建模块,用于构建初始条件矩阵;

采用一个n×m的矩阵表示每台机器对不同加工零件的加工时间:

矩阵pt的每一行代表一个加工零件,共有n个待加工零件;矩阵pt的每一列对应一台加工机器,矩阵中元素ptij表示第j台加工机器生产第i个待加工零件的生产时间;若第j台加工机器并不参与第i个待加工零件的加工,则ptij=0;

另采用一个n×m的矩阵表示每个待加工零件的加工工序:

矩阵ms的每一行仍代表一个加工零件,共有n个待加工零件;矩阵ms的每一列对应零件的加工次序,矩阵中元素msij表示第i个待加工零件的第j步工序的加工机器,msij∈[1,2,…,m],若第j台机器并不参与第i个零件的加工,则可将第j台机器的序号插入到第i行的任意位置;

第二构建模块,用于构建初始种群;

设序列a=(a1,a2,…,am×n),其中ai∈(0,1,2,…,m×n-1)且ai≠aj,则初始种群序列可表示为a=(a1,a2,…,ai,…am×n),其中ai=aimodn,ai表示加工零件的序号,ai值出现的次数代表该加工零件被加工的次数,整个序列代表对所有零件的加工顺序;

以随机生成的方式产生若干初始种群序列,构成初始种群pa=(a1,a2,…,ap),其中p为设置的初始种群序列数;

交叉变异单元,用于对种群序列进行交叉变异;

适应度函数构建单元,用于构建适应度函数,求取种群个体的适应度值:

式中,fitnessi表示第i个个体的适应度值,第cimax表示第i个个体的cmax,p表示当前种群;

筛选单元,用于基于序列即个体的适应度值,利用轮盘法选取下一代基因序列;

判别单元,用于判断迭代次数是否达到预设阈值,若是,从最终的基因序列中随机选择一个个体输出,作为最优的机械加工车间智能排产优化方案,否则返回执行交叉变异单元。

关于基于遗传算法的机械加工车间智能排产优化系统的具体限定可以参见上文中对于基于遗传算法的机械加工车间智能排产优化方法的限定,在此不再赘述。上述基于遗传算法的机械加工车间智能排产优化系统中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

以上显示和描述了本发明的基本原理、主要特征及优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1