发明名称 基于教与学算法的离散制造车间静态调度优化系统
摘要 本发明公开了一种基于教与学算法的离散制造车间静态调度优化系统,其包括数据服务器、运算服务器、终端显示屏,所述运算服务器中嵌入有调度优化客户端,调度优化客户端通过对加工任务的分析,以及参考数据服务器的各项详细信息,对当日加工任务通过优化算法做一个合理的调度安排,具体优化算法采用教与学优化算法;将生成的调度方案进行解码,根据编码时对学生双层的定义,进行反编译,依次将工件的加工机床和加工顺序表示出来;最终将优化过的调度方案显示到终端显示屏上,使车间生产人员以及管理人员能够实时的了解当前具体的加工任务安排情况。本发明采用的教与学优化算法具有收敛速度快、寻优能力强的优点;也更加适应实际生产中的复杂情况。
申请公布号 CN105843197A 申请公布日期 2016.08.10
申请号 CN201610355967.0 申请日期 2016.05.26
申请人 江南大学 发明人 王艳;徐军辉;纪志成;陈彦
分类号 G05B19/418(2006.01)I 主分类号 G05B19/418(2006.01)I
代理机构 总装工程兵科研一所专利服务中心 32002 代理人 杨立秋
主权项 基于教与学算法的离散制造车间静态调度优化系统,其特征是,包括数据服务器、运算服务器、终端显示屏,所述数据服务器,收集制造车间机床的加工耗能、耗时和待机情况,实时统计车间的加工情况,对车间的机床的生产耗能数据进行实时跟踪,同时对机床的加工情况和工人的出勤情况进行统计;所述运算服务器中嵌入有调度优化客户端,调度优化客户端通过对加工任务的分析,以及参考数据服务器的各项详细信息,对当日加工任务通过优化算法做一个合理的调度安排,具体优化算法采用教与学优化算法,所述调度优化客户端的构建方法如下:步骤一、确定离散制造车间调度优化的目标函数;以制造车间机床最大加工时间最小和总耗能最小为目标函数,采用加权的方法对两个目标函数进行融合,融合的值取最小时,达到调度要求,即FM=min(max(FM<sub>i</sub>))    (1)<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mi>W</mi><mi>M</mi><mo>=</mo><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover><msub><mi>wm</mi><mi>i</mi></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001000161860000011.GIF" wi="1542" he="115" /></maths>min(W)=u<sub>1</sub>FM+u<sub>2</sub>WM   (3)FM<sub>i</sub>——所有工件在机床M<sub>i</sub>上的完工时间;FM——所有工件的最后完工时间;wm<sub>i</sub>——所有工件在机床M<sub>i</sub>的耗能量;WM——所有机床的总耗能量;i——为大于0的正整数变量;n——机床总量;min(W)——两个目标函数的最终加权值;u<sub>1</sub>、u<sub>2</sub>——两个加权值,根据企业实际需要取值;进行排产时,调度优化算法需要满足以下约束条件:1.1、某道工序在某一时刻只能用同一台机器进行加工;1.2、某个工件的一道工序一旦开始加工,在该工序完成之前不能随意终止;1.3、在零时刻所有工件的加工优先级都相同;1.4、不同工件的各工序之间的加工顺序优先级相同,同一工件的各工序的加工必须按照之前约定好的加工顺序;步骤二、采用改进教与学优化算法求解上述目标函数,具体求解过程包括:步骤2.1、编码:每个调度方案代表一个学生,学生的成绩采用双层设计的方式进行定义,第一层<img file="FDA0001000161860000012.GIF" wi="139" he="70" />定义为工序层,表示第i个零件的各个工序;第二层<img file="FDA0001000161860000013.GIF" wi="148" he="63" />定义为机器层,表示第i个零件的工序加工时的机器;步骤2.2、参数初始化:根据机床的数量和零件的加工任务对教与学优化算法中的学生进行初始化;步骤2.3、基于改进教与学算法进行求解目标函数,输出最优调度方案;所述改进教与学算法的运行过程包括老师的“教”过程、学生的“学”过程以及更新阶段;a、老师的“教”过程中,假定学生为X<sup>j</sup>,两个目标函数的最终加权值定义为f(X<sup>i</sup>),j=1,2,3,...,N,i∈{1 2 3 4…N},N为学生总数,选取min(f(X<sup>i</sup>))的学生作为老师X<sub>teacher</sub>,选取最接近<img file="FDA0001000161860000014.GIF" wi="130" he="70" />即f(X)的平均值的学生作为Mean值;“教”过程公式如下:<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><msubsup><mi>X</mi><mrow><mi>n</mi><mi>e</mi><mi>w</mi></mrow><mi>j</mi></msubsup><mo>-</mo><msubsup><mi>X</mi><mrow><mi>o</mi><mi>l</mi><mi>d</mi></mrow><mi>j</mi></msubsup><mo>+</mo><msub><mi>r</mi><mi>j</mi></msub><mrow><mo>(</mo><msub><mi>X</mi><mrow><mi>t</mi><mi>e</mi><mi>a</mi><mi>c</mi><mi>h</mi><mi>e</mi><mi>r</mi></mrow></msub><mo>-</mo><msub><mi>TF</mi><mi>j</mi></msub><mo>&CenterDot;</mo><mi>M</mi><mi>e</mi><mi>a</mi><mi>n</mi><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>4</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001000161860000021.GIF" wi="1547" he="71" /></maths>其中,<img file="FDA0001000161860000022.GIF" wi="83" he="64" />和<img file="FDA0001000161860000023.GIF" wi="91" he="66" />分别表示第j个调度方案优化前后的参数,即各个零件的加工安排,TF<sub>j</sub>为教学因子,r<sub>j</sub>为学习步长,这两个参数用于调整学习的速度;此时经过浮点型运算得到的调度方案会出现小数或者超过区间的数,需要对<img file="FDA00010001618600000210.GIF" wi="91" he="64" />进行离散化,具体离散过程包括:a.1、首先将工序层和机器层的数字采用取整法,忽略小数,然后将超过区间的数字自动置零,与当日调度任务清单对比,在工序层标记多余工序的工件,取l<sub>1</sub>、l<sub>2</sub>、…、l<sub>c</sub>标记工件号,其中c∈p,p为待标记的工件号集合,最后将标记的工件根据多余工序的数量,随机的从该工件号中挑出同等多余数量置为零,同时机器层对应的部分置零;a.2、对置零的工件号进行重安排,再次与调度任务清单对比,标记工序量不够的工件号,按照工件的具体缺失数,随机生成一组调度方案,将该方案按照次序依次填充到工序层为零的位置,同时在机器层对应的位置随机填入符合加工要求的机器号;a.3、将第一次生成的调度方案作为初始方案,进行局部迭代,设置迭代次数,跳转至a.2,若生成的调度方案优于初始方案,则将此次调度方案设为初始调度方案,直至迭代次数满足,则输出调度方案;b、学生的“学”过程中,每个调度方案X<sup>h</sup>随机的从所有的调度方案中选取一个学习对象X<sup>g</sup>,h=1,2,3,...,N;g=1,2,3,...,N;其中h≠g;X<sup>h</sup>通过和X<sup>g</sup>比较两者之间的差异,X<sup>h</sup>进行相应的优化调整,“学”过程采用如下公式表示:当f(X<sup>h</sup>)≤f(X<sup>g</sup>)时<img file="FDA0001000161860000024.GIF" wi="1090" he="64" />当f(X<sup>h</sup>)>f(X<sup>g</sup>)时<img file="FDA0001000161860000025.GIF" wi="1090" he="66" />其中,r<sub>h</sub>表示第h个学生的学习步长,生成的新调度方案<img file="FDA00010001618600000211.GIF" wi="90" he="66" />也需要进行离散,具体离散过程同老师的“教”过程中所述离散过程;c、更新阶段是指经过“学”过程之后,生成的调度方案需要更新优化,更新方法如下:当<img file="FDA0001000161860000026.GIF" wi="365" he="65" />时<img file="FDA0001000161860000027.GIF" wi="1031" he="67" />当<img file="FDA0001000161860000028.GIF" wi="361" he="65" />时<img file="FDA0001000161860000029.GIF" wi="1046" he="65" />其中,学生d∈{1,2,3,…,N};所述调度优化客户端将生成的调度方案进行解码,根据编码时对学生双层的定义,进行反编译,依次将工件的加工机床和加工顺序表示出来;最终,将优化过的调度方案显示到终端显示屏上,使车间生产人员以及管理人员能够实时的了解当前具体的加工任务安排情况。
地址 214122 江苏省无锡市滨湖蠡湖大道1800号江南大学物联网工程学院