一种车间多行布局的建模和求解方法与流程

文档序号:15559860发布日期:2018-09-29 01:59阅读:351来源:国知局

本发明涉及车间布局建模和优化领域,特别是一种车间多行布局的建模和求解方法。



背景技术:

车间布局问题是指在生产车间空间里,将车间设备、道路及其他设施等布局对象按照要求进行合理布置。制造系统企业生产产品中,通常情况80%到90%的时间处于物流搬运和等待,所以选择合适的布局设计目标,按照相关约束条件和原则进行车间布局,可以减少搬运物流时间和总体物流量,提高物料流转效率,使物流成本下降10%至30%,为此,一个良好的车间布局对于生产企业尤为重要。

在车间布局数学模型方面,大量的学者进行了研究,其中文献[kakubk,thompsongl.anexactalgorithmforthegeneralquadraticassignmentproblem[j].europeanjournalofoperationalresearch,1986,23(3):382-390.]首次采用了混合整数模型(mixintegerprogramming,mip)处理车间设施布局问题。车间布局问题在被简化抽象出数学模型后,仍被证明属于np难问题,目前该问题通常采用启发式算法以得到离散问题的近似解,在车间布局问题上也是如此。比如文献[haktanirlarulutasb,kulturel-konaks.anartificialimmunesystembasedalgorithmtosolveunequalareafacilitylayoutproblem[j].expertsystemswithapplications,2012,39(5):5384-5395.]基于人工免疫系统求解不等面积设施布局。

在建立车间布局数学模型时,通常对模型进行简化以便寻优,过于简化的模型近似度不高,往往致使数学模型与实际物理模型之间存在特别大的差异,例如,未考虑不等面积设施布局的横纵向放置问题、区域间距和主干道等现场实际问题,这使得优化后获得的近似解,在加入相应布局约束后,往往偏离最优解很远。



技术实现要素:

本发明所要解决的技术问题是提供一种车间多行布局的建模和求解方法,考虑更多约束,建立更符合生产实际的精确车间总体布局数学模型,同时基于遗传算法,采用混合编码技术,利用系统布置方法布局解嵌入改进遗传算法的初始种群中,进行合理的参数设置和选择合适的操作策略,提高搜索能力和效率,实现精确布局模型的求解。

为解决上述技术问题,本发明采用的技术方案是:

一种车间多行布局的建模和求解方法,包括以下步骤:

步骤1:基于多行布局的mip模型的车间总体布局建模

采用三层式布局方法,第三层布局根据现场的多重约束和规则,构建优化函数并求解,其目标函数为:

式中:fij为功能区i至功能区j的搬运频率,cij为功能区i至功能区j的单位搬运成本,αi、βi是功能区i矩心的x和y坐标,αj、βj是功能区j矩心的x和y坐标;

步骤2:采用基于混合编码技术的遗传算法求解,具体为:

1)进行染色体编码

基因编码方式由功能区排列顺序、间距、横竖放置3部分构成,并采用混合的编码结构,即功能区排序时采用整数编码,间距采用实数编码,横竖放置采用二进制编码技术;

2)产生初始种群

初始种群由系统布置方式获取的部分布局方案,再加上随机种群构成;

3)评价种群、进行选择操作;

4)交叉操作

功能区排序层是整数编码,采用部分映射交叉;间距层为实数编码,采用算数交叉;功能区横竖设置层是二进制编码,采用两点交叉;

5)变异操作

功能区横竖设置基因段选择基本位变异算子;功能区排序基因段则选择逆转变异算子,即在基因段上随机产生2处位置,再将这2处位置上的基因值进行互换;间距使用的是实数编码,首先根据变异概率找到变异点,在[wmin,wmax]区间随机产生k个功能区间距值,并分别替换变异点的间距值,从而得到k个染色体,计算出这些染色体的适应度值,用适应度最高间距值来代替原有的间距值;

6)进化及终止

达到设定的最大进化迭代次数则终止迭代;

7)解码输出最优布局解。

进一步的,在步骤1建立的车间总体布局精确数学模型中,约束条件为:

wil≤yi″-yi′≤wiu,yi′,yi″≥0(3)

(xi″-xi′)(yi″-yi′)=ai(4)

0≤xi′≤xi″≤bx(5)

0≤yi′≤yi″≤by(6)

αi=0.5xi′+0.5xi″αi≥0(7)

βi=0.5yi′+0.5yi″βi≥0(8)

xi″,xi′≥tj1orxi″,xi′≤tj2(9)

li=1or0(14)

式中:为功能区i的长度上限和下限,是功能区i的宽度上限和下限,xi′、xi″分别为功能区左右两边的x坐标,yi′、yi″功能区i上边和底边的y坐标,bx、by指厂房沿x、y轴测量长度,ai为功能区i的面积,αi、βi是功能区i矩心的x和y坐标,m为罚函数,tj1、tj2分别为竖向主干道x轴的左右坐标,决策变量表示功能区i严格限定在功能区j的右边,否则决策变量功能区i严格限定在功能区j的上边,否则sij为功能区之间的间距;为功能区之间的最小安全间距;决策变量li=1表示功能区i竖直放置,li=0则表示功能区i横向放置;

约束式(2)和(3)分别用于保证每个功能区的长宽方向不会超过指定范围,式(4)表达了每个功能区坐标点与面积之间的非线性约束关系,式(5)和式(6)限定每个功能区位于厂房内,式(7)和式(8)指定功能区矩心的x、y坐标,式(9)保证功能区布局避开竖向主干道;约束式(10)表明时,xj″≤xi′,即功能区i必须布置在相邻关联功能区j的右边,式(11)是针对y方向的相邻关联功能区的约束,式(12)避免了在x、y方向上任意两个功能区的干涉,式(13)保证最小功能区之间的间距,式(14)表示功能区能够横竖向放置。

进一步的,在评价种群过程中,其中的适应度函数采用罚函数法进行设计。

进一步的,在进行选择操作时,选取轮盘赌注的方式作为选择操作。

与现有技术相比,本发明的有益效果是:

1)考虑了功能区或者布局单元的横纵向放置问题。由于功能区内部含有多个机床单元,其横纵向布置问题直接影响物流成本。为此,优化过程中就需要考虑功能区横纵向布置,以获取更优布局方案。考虑了主干道和各功能区区域间距问题。实际的车间和工厂中,根据厂房大小设计出主干道,并要求各个区域之间留出足够额间距,而优化的过程中往往忽略这一点,优化后得到的解在加入通道间距后,目标函数值变化较大,往往偏离最优解。反之,在优化过程中就考虑这两个实际问题,可获得符合实际情况的最优布局方案。

2)本发明采取遗传算法求解车间布局问题,并采用整数编码、实数编码和二进制编码的混合编码技术,利用系统布置方法求得的布局解嵌入改进遗传算法的初始种群中,进行合理的参数设置和选择合适的操作策略,其中在交叉和变异操作中使用分段交叉、变异算子进行分段交叉和变异,避免算法陷入局部最优解,同时提高搜索能力和效率。

附图说明

图1为本发明中车间总体布局遗传算法流程图;

图2为本发明中车间布局结果图。

具体实施方式

下面结合附图和具体实施方式对本发明作进一步详细的说明。本发明一种车间多行布局的建模和求解方法,包括以下步骤:

步骤1:基于mmip的车间总体布局建模

为了减少计算规模,采用文献“飞机结构件加工车间多层次式布局与优化研究”(陈春鹏,王若鑫,丁国富,张剑.制造业自动化,2017,39(02):138-141.)中提出的三层式布局方法。其中第三层布局问题,即不等面积功能区的车间总体布局,是最复杂的一层布局。该布局根据现场的多重约束和规则,构建优化函数并求解,以满足最小物流量、最短物流路径等指标,获取最符合现场情况的最优解。

在功能区的实际总体布局中,通常按照厂房分跨情况进行布置,功能区可以横纵向放置在横向主干道的两侧,同时应该保证功能区间的安全距离,并且不能超出所布局的厂房范围,为此在采用基于多重约束下的多行混合整数规划(multi-rowmixintegerprogramming,mmip)的精确模型。该模型是在线性及非线性决策变量的基础上构建优化目标函数,根据最宽设备的宽度设置每一行宽度,在每一行上对进行不等分划分,形成不同宽度的矩形,再匹配面积不等的需布局功能区,选择功能区的横竖向,将其逐一布置在各行的矩形中。同行待布局功能区的中线纵坐标显然是一致的,用矩形来描述各功能区,相邻行的中心线间距按照厂房预定的距离设置,以设置横向主干道,且避免相邻行功能区干涉,各功能区及厂房墙壁间也应预留出足够的安全距离,同时功能区布局需要避开竖向干道。数学模型如下:

目标函数:

多重约束条件:

wil≤yi″-yi′≤wiu,yi′,yi″≥0(3)

(xi″-xi′)(yi″-yi′)=ai(4)

0≤xi′≤xi″≤bx(5)

0≤yi′≤yi″≤by(6)

αi=0.5xi′+0.5xi″αi≥0(7)

βi=0.5yi′+0.5yi″βi≥0(8)

xi″,xi′≥tj1orxi″,xi′≤tj2(9)

li=1or0(14)

式中:fij为功能区i至功能区j的搬运频率,cij为功能区i至功能区j的单位搬运成本,αi、βi是功能区i矩心的x和y坐标,αj、βj是功能区j矩心的x和y坐标。

为功能区i的长度上限和下限,是功能区i的宽度上限和下限,xi′、xi″分别为功能区左右两边的x坐标,yi′、yi″功能区i上边和底边的y坐标,bx、by指厂房沿x、y轴测量长度,ai为功能区i的面积,m为罚函数,tj1、tj2分别为竖向主干道x轴的左右坐标,决策变量表示功能区i严格限定在功能区j的右边,否则决策变量功能区i严格限定在功能区j的上边,否则sij为功能区之间的间距;为功能区之间的最小安全间距;决策变量li=1表示功能区i竖直放置,li=0则表示功能区i横向放置。

式(1)为基于距离和搬运频率的物料搬运成本目标函数,约束式(2)和(3)分别用于保证每个功能区的长宽方向不会超过指定范围,式(4)表达了每个功能区坐标点与面积之间的非线性约束关系,式(5)和式(6)限定每个功能区位于厂房内,式(7)和式(8)指定功能区矩心的x、y坐标,式(9)保证功能区布局避开竖向主干道。约束式(10)表明时,xj″≤xi′,即功能区i必须布置在相邻关联功能区j的右边,式(11)是针对y方向的相邻关联功能区的约束,式(12)避免了在x、y方向上任意两个功能区的干涉,式(13)保证最小功能区之间的间距,式(14)表示功能区可横竖向放置。式(1)-(14)建立了同时考虑主干道、间距和放置方向等实际情况的车间总体布局精确数学模型。

步骤2:采用基于混合编码技术的遗传算法求解

遗传算法通过模拟整个生物进化的过程,利用反复循环迭代来搜索最优解的方法,本发明采用该算法解决车间总体布局问题,基本流程如图1所示:1)进行染色体编码、2)产生初始种群、3)评价种群、4)选择操作、5)交叉操作、6)变异操作、7)进化及终止、8)解码输出最优布局解。

为了求解多约束车间布局模型,本发明中遗传算法的基因编码方式由功能区排列顺序、间距、横竖放置3部分构成的,并采用混合的编码结构,即功能区排序时采用整数编码,间距采用实数编码,横竖放置采用二进制编码技术。这种编码技术简单高效,但由于基因代码特别长,引起遗传算法中交叉、变异和选择等操作困难的问题。

车间布局问题是典型的离散优化问题,首先需要找到满足约束条件的最佳功能区布局的排列,因此整数编码是最合适的。如在多行功能区布局时[5,3,1,4,2]表示功能区自左到右、自下到上的依次编号排序;如果在某行上,最后一个功能区排入后,会超过预先设置的最大宽度时,则对该功能区进行换行,排列到上一行。实际的间距是一个实数范围,所以采用浮点数编码更加有效,例如[2.3,1.6,2.1,1.2,1.1]表示自左到右,自下到上的功能区与上一个功能区或墙的间距。采用二进制编码表达功能区的横竖放置,如[0,1,1,0,0]表示第3个和第1个功能区竖向布置,其他布局单元横向布置。

初始种群是由系统布置方式获取的部分布局方案,再加上随机种群两个部分构成。经过试验,对遗传算法的初始参数进行赋值,优化策略进行选择。适应度函数采用罚函数法进行设计,使得较差个体具有较低适应度。选取轮盘赌注的方式作为选择操作,个体被选择的概率和其个体自身的适应度值息息相关,适应度值越大则被选择保留下来的几率也就越大。由于染色体中含有不同结构的编码,功能区排序是整数编码,选择部分映射交叉,间距为实数编码,选择算数交叉,功能区横竖设置是二进制编码,选择两点交叉。

遗传算法变异操作中,进行分段变异。其中功能区横竖设置基因段选择基本位变异算子,而功能区排序基因段则选择逆转变异算子,也就是在基因段上随机产生2处位置,再将这2处位置上的基因值进行互换。由于间距使用的是实数编码,变异过程复杂一些,首先根据变异概率找到变异点,在[wmin,wmax]区间随机产生k个功能区间距值,并分别替换变异点的间距值,从而得到k个染色体,计算出这些染色体的适应度值,用适应度最高间距值来代替原有的间距值。

下面通过具体实例对本发明方法和有益效果进行验证。

某企业准备建新厂房,长度90米,宽60米;根据预测和分析,市场部给出今后5年的生产纲领,并规划出厂房配置的设备类型和数量,功能区的分区根据成组技术分配如表1所示。按照加工工艺和设备功能区情况,进行物流分析可获取从至表,同时按照经验,设置安全距离。

表1功能区信息表

具体操作:首先针对实例,根据现场的多重约束和规则,构建优化函数并求解,以满足最小化物流搬运成本指标,获取最符合现场情况的最优解。其目标函数为:

约束条件为:

wil≤yi″-yi′≤wiu,yi′,yi″≥0(3)

(xi″-xi′)(yi″-yi′)=ai(4)

0≤xi′≤xi″≤90(5)

0≤yi′≤yi″≤60(6)

αi=0.5xi′+0.5xi″αi≥0(7)

βi=0.5yi′+0.5yi″βi≥0(8)

xi″,xi′≥tj1orxi″,xi′≤tj2(9)

li=1or0(14)

采用基于混合编码技术的遗传算法对目标函数值进行求解。首先设置初始参数:最大进化迭代代数选取200代,种群大小选取50,交叉概率pc选取0.8,变异概率选取0.08。

1)进行染色体编码:遗传算法的基因编码方式由功能区排列顺序、间距、横竖放置3部分构成的,并采用混合的编码结构,本实例中有16个功能区,则编码为[5,3,1,4,2,9,12,14,7,10,15,8,6,16,11,13;1.3,1.2,1.1,1.2,1.1,0.3,0.9,0.4,1.2,0.3,0.5,0.6,1.2,1.5,0.6,0.6;0,1,1,0,0,1,1,1,0,0,0,1,0,1,1,0]。即功能区排序时采用整数编码,间距采用实数编码,横竖放置采用二进制编码技术。如在多行功能区布局时[5,3,1,4,2,9,12,14,7,10,15,8,6,16,11,13]表示功能区自左到右、自下到上的依次编号排序;如果在某行上,最后一个功能区排入后,会超过预先设置的最大宽度时,则对该功能区进行换行,排列到上一行。实际的间距是一个实数范围,所以采用浮点数编码更加有效,例如[1.3,1.2,1.1,1.2,1.1,0.3,0.9,0.4,1.2,0.3,0.5,0.6,1.2,1.5,0.6,0.6]表示自左到右,自下到上的功能区与上一个功能区或墙的间距。采用二进制编码表达功能区的横竖放置,如[0,1,1,0,0,1,1,1,0,0,0,1,0,1,1,0]表示编号为3、1、9、12、14、8、16、11的功能区竖向布置,其他布局功能区单元横向布置。

2)产生初始种群:遗传算法的初始种群是由系统布置方式获取的部分布局方案,再加上随机种群两个部分构成。

3)评价种群:其中适应度函数采用罚函数法进行设计,使得较差个体具有较低适应度。

4)选择操作:选取轮盘赌注的方式作为选择操作。

5)交叉操作:由于染色体中含有不同结构的编码,遗传算法交叉操作中,进行分段交叉,功能区排序层是整数编码,采用部分映射交叉,间距层为实数编码,采用算数交叉,功能区横竖设置层是二进制编码,采用两点交叉。

6)变异操作:遗传算法变异操作中,进行分段变异,其中功能区横竖设置基因段选择基本位变异算子,而功能区排序基因段则选择逆转变异算子,也就是在基因段上随机产生2处位置,再将这2处位置上的基因值进行互换。由于间距使用的是实数编码,变异过程复杂一些,首先根据变异概率找到变异点,在[wmin,wmax]区间随机产生k个功能区间距值,并分别替换变异点的间距值,从而得到k个染色体,计算出这些染色体的适应度值,用适应度最高间距值来代替原有的间距值。

7)进化及终止:循环迭代,直到达到设定的最大进化迭代次数200代则终止迭代。

8)解码输出最优布局解。

设计5种实验策略,实验1优化时不考虑通道,考虑间距和横竖放置,优化后再强行加入通道;实验2优化时不考虑间距,考虑通道和横竖放置,优化再强行加入间距;实验3则不考虑功能区横竖设置,考虑通道和间距;实验4同时考虑间距、通道、横竖放置,但采用传统遗传算法优化求解;实验5与实验4策略相同,但采用系统布置方法(slp)构建初始解的遗传算法进行优化求解。5个实验的优化结果见表2。

表2优化数据对比表

实验1的优化结果说明不考虑通道进行优化,虽然简化后的优化模型得到目标值是5个实验中最小的,但是真正加入通道后,实际目标值却增大22%,说明通道极大地影响了模型的最优解;实验2的优化结果说明不考虑间距进行优化,得到目标值也是比较小的,但是待加入间距后,实际目标值却增大15%,说明间距对模型最优解的影响也非常很大的;对比实验3和实验4的数据结果,可见考虑功能区横竖放置最优解的精度可提高6%左右,同时收敛速度提高,更容易得到最优解;对比实验4和实验5的数据结果,可见将slp方法获取的方案作为部分初始解,可以更容易获取更令人满意的优解,并进一步提高收敛速度。实验5的最终功能区布局结果见图2,其目标值比实验1、实验2的实际目标值小13%、17%,结果最佳。

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