资源预览内容
第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
亲,该文档总共6页全部预览完了,如果喜欢就下载吧!
资源描述
0-1规划问题一条装配线由一系列工作站组成,被装配或制造的产品在装配线上流动的过程中,每站都要完成一道或几道工序,假定一共有六道工序,这些工序按先后次序在各工作站上完成,关于这些工序有如下的数据:工序所需时间(分)前驱工序13无25无322461,3582634另外工艺流程特别要求,在任一给定的工作站上,不管完成哪些工序,可用的总时间不能超过10分钟,如何将这些工序分配给各工作站,以使所需的工作站数为最少?1)模型分析与变量的假设下面,我们先讨论工序与工作站的关系,并试图建立起该问题的01型整数规划模型。对任一工序而言,它要么属于工作站,要么不属于工作站,故决策变量可定义为:这种定义,使我们能根据最优解中的值来很快确定工序与工作站之间的隶属关系。 又因工序1,2,3所需的工作时间不超过10分钟,故工序1,2,3的工作可以在一个工作站上完成,此时,工序4,5,6只能分别在各自的工作站上工作,该可行解对应的工作站数为4个。也就是说,对最优解而言,该装配线上所需的工作站个数不会多于4个。因此,我们再定义变量如下:至此,我们得到所需的目标函数为:2)再考虑该模型的约束条件:(1) 每道工序均隶属于一个工作站,且每一工序都必须完成,故有以下六个约束:(2)在任一工作站上完成隶属工序所用的时间不能超过10分钟,故有以下四个约束:(3)最后,我们再考虑各道工序所受的先后次序约束的条件。先考察工序2与工序3的关系,因工序2在工序3之前运行,故若工序3隶属于工作站4,则工序2无论属于那个工作站均可;若工序3隶属于工作站3,则工序2可属于工作站1或2或3;此时,变量应满足的约束条件为:;同理,若工序3隶属于工作站2或1,则变量应 满足的约束条件为:同理,根据其它工序的优先关系,可仿此法给出其相应的约束条件,由上图知,六个工序之间有五个优先关系,故这类约束条件共有15个。另外,在最优解中,若有一个工作站不用(即=0),则隶属于该工作站的全部必须为0,于是,有以下四个约束条件:3)模型的建立与求解 至此,我们得到了该问题的01型整数规划模型,它共包含28个变量,29个约束条件,这样的模型用枚举法求解,人工计算是很难胜任的,这时,只能求助于计算机求解了。我们给出该问题的模型如下。 该问题的目标函数为:约束条件为:; ; ; ; ; ; ; ; ; ; ; 一条装配线含有一系列的工作站,在最终产品的加工过程中每个工作站执行一种或几种特定的任务.装配线周期是指所有工作站完成分配给它们各自的任务所花费时间中的最大值.平衡装配线的目标是为每个工作站分配加工任务,尽可能使每个工作站执行相同数量的任务,其最终标准是装配线周期最短.不适当的平衡装配线将会产生瓶颈-有较少任务的工作站将被迫等待其前面分配了较多任务的工作站. 问题会因为众多任务间存在优先关系而变的更复杂,任务的分配必须服从这种优先关系. 这个模型的目标是最小化装配线周期.有2类约束: 1 要保证每件任务只能也必须分配到一个工作站来加工; 2要保证满足任务间的所有优先关系.装配线平衡模型 有11件任务(AK)分配到4个工作站(14),任务的优先次序如下图。(A)(B)(C)(F)(G)(K)(J)(I)(H)(E)(D)每件任务所花费的时间如下表。任务ABCDEFGHIJK时间4511950151212121289如何将这些工序分配给各工作站,以使装配线周期最短,最短周期为多少?1)变量的假设设:T(i)为完成第i个任务所需时间。CycleTime为装配线周期。2)问题分析(1)目标函数 装配线周期最短:min= CycleTime(2)再考虑该模型的约束条件:每道工序均隶属于一个工作站,且每一工序都必须完成,故有以下几个约束: 各道工序所受的先后次序约束的条件:对于每一个存在优先关系的作业对来说,前者对应的工作站i必须小于后者对应的工作站j,即满足约束 对于每一个工作站来说,其花费时间必须不大于装配线周期: 3)模型的建立与求解 至此,我们得到了该问题的01型整数规划模型,我们给出该问题的模型如下。 该问题的目标函数为:min= CycleTime约束条件为:MODEL: !装配线平衡模型;SETS: !任务集合,有一个完成时间属性T; TASK/ A B C D E F G H I J K/: T; !任务之间的优先关系集合(A 必须完成才能开始B,等等); PRED( TASK, TASK)/ A,B B,C C,F C,G F,J G,J J,K D,E E,H E,I H,J I,J /; ! 工作站集合; STATION/1.4/; TXS( TASK, STATION): X; ! X是派生集合TXS的一个属性。如果X(I,K)1,则表示第I个任务 指派给第K个工作站完成;ENDSETSDATA: !任务A B C D E F G H I J K的完成时间估计如下; T = 45 11 9 50 15 12 12 12 12 8 9;ENDDATA ! 当任务超过15个时,模型的求解将变得很慢; !每一个作业必须指派到一个工作站,即满足约束; FOR( TASK( I): SUM( STATION( K): X( I, K) = 1); !对于每一个存在优先关系的作业对来说,前者对应的工作站I必须小于后 者对应的工作站J,即满足约束; FOR( PRED( I, J): SUM( STATION( K): K * X( J, K) - K * X( I, K) = 0); !对于每一个工作站来说,其花费时间必须不大于装配线周期; FOR( STATION( K): SUM( TXS( I, K): T( I) * X( I, K) = CYCTIME); !目标函数是最小化转配线周期; MIN = CYCTIME; !指定X(I,J) 为0/1变量; FOR( TXS: BIN( X);END计算的部分结果为Global optimal solution found. Objective value: 50.00000 Extended solver steps: 2 Total solver iterations: 388 Variable Value Reduced Cost CYCTIME 50.00000 0.000000 T( A) 45.00000 0.000000 T( B) 11.00000 0.000000 T( C) 9.000000 0.000000 T( D) 50.00000 0.000000 T( E) 15.00000 0.000000 T( F) 12.00000 0.000000 T( G) 12.00000 0.000000 T( H) 12.00000 0.000000 T( I) 12.00000 0.000000 T( J) 8.000000 0.000000 T( K) 9.000000 0.000000 X( A, 1) 1.000000 0.000000 X( A, 2) 0.000000 45.00000 X( A, 3) 0.000000 0.000000 X( A, 4) 0.000000 0.000000 X( B, 1) 0.000000 0.000000 X( B, 2) 0.000000 11.00000 X( B, 3) 1.000000 0.000000 X( B, 4) 0.000000 0.000000 X( C, 1) 0.000000 0.000000 X( C, 2) 0.000000 9.000000 X( C, 3) 0.000000 0.000000 X( C, 4) 1.000000 0.000000 X( D, 1) 0.
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号