信息与控制
Information and Control
1999年　第28卷　第1期　Vol.28　No.1　1999



模糊Flow-shop问题及其遗传优化
熊红云　　　　　何　钺

　　摘　要　研究模糊生产环境下的Flow-shop调度问题．针对实际生产中加工时间的不确定性，应用模糊加工时间参数替代传统的清晰参数表示方法，引入了一种新的模糊数比较方法―面积补偿法，构造了一种解模糊Flow-shop问题的有效遗传算法．最后给出计算实例及仿真结果．
　　关键词　模糊数，模糊Flow-shop问题，模糊流程时间，遗传算法
FUZZY FLOW-SHOP PROBLEMS AND ITS' GENETIC OPTIMAL
XIONG Hongyun　HE Yue
(Chang Sha Railway University, Chang Sha, 410075)(Xi'an JiaoTong University, Xi'an, 710049)
Abstract　This paper examines fuzzy flow shop scheduling prob lems with imprecision durations. Instead of exact number , fuzzy numbers are ide ally suited to represent these duartions. A new comparison method for fuzzy numb er is introduced, and a genetic algorithm is constructed for fuzzy flow shop opt imization. In the end, the simulated results are shown.
　　Key words　fuzzy numbers, flow-shop scheduling problem, fuzzy m akespan, genetic algorithm

1　模糊Flow-shop调度问题
　　自从1954年，Johnson第一次系统地提出两台机床、几种零件顺序加工的Flow-shop调度 问题以来，由于其在理论分析上的复杂化，和在实际生产应用中的普遍性和重要性，Flow- shop问题一直为人们研究的重要课题之一．
　　但在以前的研究中，假设所有的时间参数（如加工时间）都是精确的，对加工时间弹性可变 的情况还很少研究\．而事实上，由于各种随机因素，如机器故障、工人操作 的熟练程度、因故缺勤、环境参数等的影响，精确的加工时间是很少能获得的．车间的管理 者或决策者能提供给我们的也只能是一个大概数据以及数据的可能变化范围，如工件A的加 工时间大约为30～40分钟，最大不超过45分钟，最小不低于25分钟．
　　对于这种不确定的情况，传统的处理方法是：
　　(1) 将非精确数近似用一个精确数来表示，然后用解精确问题的方法求解，这种方法存在两 个缺点，一是模型发生了变化，问题的解产生偏差；一是获得的问题解形式不符合传统的表 达方式、不直观．以一个简单的两机床、两工件的模糊Flow-shop问题为例，模糊加工数据如表1，用精确方法和模糊方法获得的结果如表2．　　
表1　2工件2机床模糊/清晰加工参数

JobOp.Fuzzy Duration(TrFN)CrispMach.
AA12121212121M1
　A21516242520M2
BB12121212121M1
　B21919191919M2

　
表2　2工件2机床调度结果

　Schedule　Obj(Crisp)Obj(Fuzzy)
S1A1B16162.75
　A2B2
S2B1A16262
　B2A2

　
　　从表2中结果可见，在清晰环境下，调度S1的流程时间为61，优于S2的62；而在模糊环境下，S2的去模糊时间为62，优于S1的62.75．
　　(2) 用随机概率分布函数来表示参数的分布情况，这种处理方法要求参数的历史数据是可知 的，而事实上要获得这些数据是很困难的，并且基于随机方法的优化在处理上也很困难．
　　近年来，随着模糊技术的发展，应用模糊数来表示和处理不确定参数问题获得了广泛关注［2,3］，显示了其它方法无法比拟的优越性和应用前景．因此我们应用模糊数来表 示不确定的加工时间，研究模糊加工环境下的Flow-shop调度问题．
　　在模糊Flow-shop问题中，对一次具体的排序而言，工件的加工顺序是确定的，而工件的完工时间，以及总的流程时间(makespan)是模糊的，这与我们在实际生产中的表达方式是一致的．用表示模糊数a，设n个工件的加工顺序为S=（S1, S2, … , Sn ），其中Si为加工排位第i的工件号．i,k表示Si在Mk上的模糊加工时间 ，i,k表示工件Si在机床Mk上的模糊完工时间，i=1,2,…,n；k=1,2,…,m ．i,k可按以下公式计算：
　　　　　　　　　　　　　　　　　(1)

式中和mx分别表示模糊数的加法和取最大值操作．Flow-shop问题的目标就是使总的完工时间最短，即求minn,m．
　　从(1)中可以看出，解模糊Flow-shop问题的关键是模糊数的运算与比较．在以下部分 ，我们先简要介绍模糊数的知识，然后介绍模糊数的一种直观比较方法――面积补偿法．由 于Flow-shop问题是NP-完备的，我们用遗传算法的方法来解模糊Flow-shop 问题．最后给出数值实例及结果分析．
2　模糊数及基于面积补偿的比较方法
　　模糊数是模糊集的一种特殊形式［1］．模糊数一般采用分段直线的方法来表示，最 常用的是三角形模糊数（TFN）和梯形模糊数（TrFN)．对于一个梯形模糊数TrFN ，可表达为=(a,b,c,d)，括符中的4个数分别表示梯形的4个顶点．TrFN的隶属 度函数表示为：
　　　　　　　　　　　　　　　(2)
2.1　模糊数的比较
　　模糊数的比较是模糊优化的一个关键问题．很多文献研究了模糊数的比较方法，提出了各种 比较指标［4］．最有名的指标是Dudois和Prade［5］提出的基于概率论 的四个指标（possibility of dominance, possibility of strict dominance, necessi ty of Dominica, and necessity of strict dominance）．由于这些指标都是在[0,1] 区间内进行比较，因此不能明确提出一个数比另外一个数大(小)多少，并且这几种方法还存 在不直观，缺乏一致性的缺点．
　　最近，Forremps和Roubens［6］提出基于面积补偿的模糊数比较方法，面积由隶 属度函数确定．这种方法可以计算两个模糊数之间的距离，并且具有直观、易于理解的特点 ．根据Dempster-Shafer理论［6］，模糊数可以看作某个变量的概率分布F．给定模糊数，定义两个特殊的概率分布，累积概率分布F*(cumulative possibilit y distribution)和累积必然分布F*(cumulative necessity distribution)．
　　F*(x)=sup{μ(r)|r≤x}　x∈; F*(x)inf{1-μ(r)|r＞x},x∈
F*和F*分别表示模糊数的概率分布的上、下界，x∈,F*(x) ≥F(x)≥F*(x)，如图1所示．
　
图1　模糊数(虚线)的概率分布

　　模糊数的面积补偿比较方法是一种基于“模糊数平均值”的方法［5］．由于模糊数定义为一个基于概率分布的集合，模糊数平均值可以通过模糊数的概率分布来计算：

其中A*是和累积概率分布F*相关的平均值，A*是和F*相关的平均值．在已知模糊数的平均值的概率分布区间[A*,A*]后，一种去模糊的方法是计算平均值区间的质心：(A*+A*)/2．这种方法与模糊数的面积补偿法相一致．
　　设模糊数、∈F()，考虑、的α水平截集．设SL()表示左边部分构成的面积；同样，SR() 表示右边部分构成的面积．
　　　　　　　　　　　　　(3)
　　　　　　　　　　　　　(4)
其中

各种面积表示如图2所示．模糊数的程度表示为C()，

图2　两模糊数的面积补偿比较
　　　　(5)
　　定义　　　　　　　　　　　　　　　　　　　　(6)
则　　　　　　　　　　　　　　　　　　　　　　　　　　　　(7)
根据以上推导，可得到如下定理．
　　定理1　如果， 则模糊数．
　　由于函数g:F(R)→R的线性可加性，有,∈F(R)，存在：
　　　　　　　　　　　　　(8)
但函数g:F()→的线行性在取最大操作(max)中并不成立：
　　　　　(9)
从上式中可以得出一个结论：即模糊流程时间在去模糊后总大于或等于清晰的流程时间．
2.2　模糊数的操作与近似
　　从模糊Flow-shop问题的数学模型(1)式中可以看出，目标函数的优化主要涉及模糊数的比较以及模糊数的求和与取大操作．在以上部分介绍了基于面积补偿的模糊数比较方法．以下讨论模糊数的求和与取大操作．
　　由于TrFN采用分段的线性函数表示，两个TrFN的和仍为一个TrFN，如=( 1,5,9,10.5),=(2,3.5,7.5,13)，则=(3,8.5,16.5,23.5)． 但这种线性在取大操作(mx)中不再成立，为了简化计算，我们用近似操作(mx)来替代取大操作(max)，仍以上面的数值为例，有mx(,)=(2,5,9,13), max(,)的值见图3．

图3　max(A,B)mx(A,B)的比较

3　模糊Flow-shop问题的遗传优化实现
　　遗传算法是由John Holland于1962年首先提出的一种随机优化方法．它采用达尔文的进 化论思想，用一群代表问题的解的字符串（称为基因串），经过一系列的遗传操作，如选择、交叉、变异等，不断进行繁衍和进化，最终得出最优解．近年来，GA在各种优化问题 的求解中获得了成功的应用[7]．
　　下面构造模糊Flow-shop问题的遗传搜索算法．
　　(1) 模糊Flow-shop问题的染色体编码
　　对模糊Flow-shop问题，就一次具体的排序而言，工件的加工顺序是确定的，因而我们 采用与一般Flow-shop问题相同的编码形式，如3 2 7 8 6 5 4 1，各基因码表示加工的零件号．
　　(2) 适应度函数的选取
　　染色体的适应度按下式计算：，其中J为目标函数．目标函数值的计算，首先根据2.2节中提供的模糊数的求和与取大操作，按(1)式计算得到一个模糊流程时间，然后根据(6)式计算，得到该模糊流程时间的中心值．
　　(3) 遗传操作算子
　　(a). 交叉算子， 交叉的一个重要原则就是避免基因的重复和丢失．对序号编码，常用 的交叉方法有：部分匹配交叉法（PMX）、序号交叉法（OX）、边组合交叉法（E R）、以及线性序号交叉法（LOX）等．在PMX、ER等算子中，可能会出现基因的 重复和丢失．这里我们选用LOX算子，设有两个位串A=2 8 4 5 6 7 1 3，B=8 7 1 3 2 4 6 5．随机选择两个位置r1=4，r2=6，对应的基因段分别为6 7 1和3 2 4，删除染色体A中 的3 2 4基因，得基因片段8 5 6 7 1，将3 2 4 插入到该基因片段r1=4位置前得A'=8 5 6 3 2 4 7 1，同样可以得到B'=8 1 3 5 6 7 2 4．
　　(b). 变异算子，变异操作采用常规变异方法．对于位串A=2 8 4 5 6 7 1 3，随机选择 两个基因位置，如r1=3，r2=6，将r1与r2的基因互换，则变异后的位串为A'=2 8 7 5 6 4 1 3．
　　(c). 群体更新方式，按精英策略（Elitist）更新种群．
　　4）算法终止准则
　　当迭代次数大于设定的最大迭代次数时，算法停止．
4　实例计算与仿真结果分析
　　为了说明算法的有效性，我们首先对文献[2]中的一个4工件4机床的数值例子进行仿真计算（该问题的具体参数见文献[2]），对比结果列如表3．从表中可见本文算法获得的目标值为38.5，优于文[2]中的启发算法的结果39.8．而事实上，38.5即为模糊最优调度结果 ，对应的模糊流程时间为(28, 34, 43.5, 53)，解释为：流程时间大约需要34～43.5分钟，最小不低于28分钟，最大不大于53分钟．可见获得的结果不仅具有很好的柔性，而且具有与传统相一致的表达方式．
表3　仿真结果比较

　排序模糊流程时间去模糊结果
启发算法［2］2,3,1,4(28,34,43.5,53)39.8
本文GA2,4,1,3(25,33,42,54)38.5


　　为了进一步验证算法的有效性，我们对文献［8］中的8×6, 9×6, 10×6的3个Flow -shop问题的加工时间模糊化，然后用本文方法进行求解．加工时间的模糊化方法为，在[0.8x,x]间随机生成两个点，作为TrFN的a, b点，为了保证生成模糊数的中心仍为x，取c, d两点满足：c-x=x-a，d-x=x-b．对10次运算的结果列如表4，从实验结果可见优化结果具有很好的适应性和鲁棒性．
表4　模糊结果与清晰结果对比

问题
规模CrispFuzzy Object
OptMinMeanMax
4×438.538.538.538.5
8×6169169169169
9×6190190190.8191.7
10×6205205206.4215.3

　
5　结束语
　　本文讨论了加工时间不确定情况下的模糊Flow-shop问题，引入了一种新的模糊数比较 方法，提出了一种基于遗传算法的模糊优化方法，获得的结果不仅具有很好的鲁棒习，而且 具有很好的柔性，为模糊环境下的生产计划与调度提供了一种新的方法与途径．
作者简介：熊红云，男，30岁，博士．研究领域为生产计划与调度算法优化．
　　　　　何　钺，男，67岁，教授，博士生导师．研究领域为生产过程控制，CIM系统设计与
　　　　　　　　　开发等．
作者单位：熊红云：长沙铁道学院　长沙　410075
　　　　　何　钺：西安交通大学　西安　710049
参考文献
1　张曾科. 模糊数学在自动化技术中的应用. 清华大学出版社，1997
2　McCahon C S, Lee E S. Fuzzy Job Sequencing for Flow Shop. European Journa l of 
　　Operational Research, 1992, 62:294～301
3　Fortemps P. Jobshop Scheduling with Imprecise Durations: A Fuzzy Approach. IE EE 
　　Trans. on Fuzzy Systems, 1997, 5(4): 557～569
4　Bortolan G, and Degani R. A Review of Some Methods for Ranking Fuzzy Subsets, 
　　Fuzzy Sets and Systems., 1985,15:1～19
5　Dubois D, and Prade H. The Mean Value of a Fuzzy Number, Fuzzy Sets and Syste ms., 
　　1987,24:279～300
6　Forremps P, Roubens M. Ranking and Defuzzification Methods Based Area Com 
　　pensation, Fuzzy Sets and Systems., 1996,82:319～330
7　Goldberg D. Genetic Algorithms in Search, Optimization and Machine Learning. 
　　Addision(Wesley, Reading, MA, 1989
8　田　澎等. 同顺序(Flow-shop)排序问题的模拟退火求解. 信息与控制, 1994, 2 3(3):133～
　　139


　
