有限经济批量和排序问题的模拟退火搜索算法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

有限经济批量和排序问题的模拟退火搜索算法
张玉芹;张诤
【摘要】By using simulated annealing algorithm to solve a simple economic batch and supply chain scheduling problem.In the supply chain,a single production system to produce a variety of products to meet the demand assume assembly system,the product demand rate parameters,productivity,servicing time and costs are given constant.The goal is to solution of optimal production batch and sorting makes the whole supply chain inventory,transportation per unit of time the minimum total cost.%采用模拟退火算法,解决一个简单供应链中经济批量和排序问题。

在这个供应链中,单一的一个生产系统要生产多种产品来满足装配系统的需求,假定参数、产品的需求率、生产率、整备时间和费用都是给定的常数。

目标是求解最优的生产批量和排序,使得整个供应链中单位时间的库存、运输的总费用最小。

【期刊名称】《交通科技与经济》
【年(卷),期】2011(013)005
【总页数】4页(P109-112)
【关键词】供应链;经济批量;模拟退火;排序问题
【作者】张玉芹;张诤
【作者单位】兰州交通大学交通运输学院,甘肃兰州730070;兰州交通大学交通运
输学院,甘肃兰州730070
【正文语种】中文
【中图分类】F224
由于全球竞争压力的不断增强,迫使供应链中的所有成员不断的优化生产过程从而获得更高的顾客满意度。

而关键问题就在生产流水线中物料有效和高效的管理和配送即经济批量排序问题。

经济批量排序问题(ELDSP-Economic Lot and Delivery Scheduling Problem)的研究已经有几十年的发展历史,一般情况下讨论的是稳定的外部需求和有限的生产能力条件下实际生产过程的优化设计安排,它具有的重要应用价值有存在汽车的生产工业中的应用。

ELDSP问题是NP难问题。

最初的ELDSP问题是Hahm和Yano提出的只有一个产品的情况。

之后发展到了多个产品在一台机器或一条流水线上的加工情况,并对此问题建立了相关的模型和两个有效的启发式算法来解决此问题。

Vergara把ELDSP问题扩展成一个多生产
系统多件产品的供应链问题,设计一个进化算法来获得最优解或是近似最优解。

本文研究的是在一个简单供应链中只有单一的一个生产系统(SF)运用可变的流水
线来生产多种产品,之后再将产品集中运送到装配系统。

生产流水线系统中包括多个产品加工阶段,每个阶段中有一台或多台功能相同的机器并联的情况。

1 问题简述
假设问题:每个阶段每个产品至多是由一台机器加工;每个阶段的机器具有持续加工能力同时在同一时间加工一个产品;每个阶段的每台机器上的加工顺序是唯一且由算法决定;每个阶段一批产品只有全部加工完,且不能停顿,才能送至下个阶段;生产系统会产生于排序无关的产品加工的整备时间和费用;遵循0转换规则,在
每个产品生产循环开始之前库存量要为0。

1.1 参数变量
m为工作阶段个数;n为产品种类个数;mj为阶段j中机器的台数;Mkj为阶段j 中第k台机器;di为产品i的需求率;Pij为阶段j中产品i的生产率;tij为阶段j 中一批产品i的生产时间;sij为阶段j中产品i与排序无关的整备时间;sci为所
有阶段产品i总的整备费用;hij为阶段从j到j+1阶段每个产品i的单位时间库
存费用;hi为每个成品i的单位时间的库存费用;A为每次交货的运输费用;H为计划期限长度;M为一个无限大的实数。

1.2 决策变量
δj为阶段j的生产排序向量;δkj为机器Mij上的生产排序向量;T为一个生产交
货周期的长度;Qi为每个阶段产品i的批量Qi=di×T;F为循环次数;Bij为阶段j产品i开始处理的时间;zilj为阶段j只有一台机器,如果zilj=1表示产品i排在第l位置,如果zilj=0表示产品i不排在第l位置;xilkj为阶段j的机器台数,mj >1,如果xilkj=1表示产品i排在机器k的第l位置,如果xilkj=0表示产品i不排在机器k的第l位置。

可以描述为一个混合0-1非线性问题。

问题的目标是使这个简单供应链中单位时间的运输、整备、和库存费用最小。

目标函数中有两项的费用是很容易求出的:单位时间的整备费用单位时间的交货运输费用A/T。

而单位时间的库存费用的计算
相对来说就比较复杂了,生产系统和装配系统都会产生库存费用。

图1显示了在一个循环中装配设备处的加工完成产品的库存量,产品i单位时间平均的库存量是单位时间的平均库存费用是
图1 一个循环中装配系统处的库存量
在生产系统中将有两种的库存费用:加工过程中的和加工完成的。

图2中的(a)、(b)分别显示两个连续阶段j-1到j产品i的加工过程的库存量和成品i的库存量。

阶段j-1阶段j产品i加工过程的单位时间的库存量
所有产品加工过程中总的单位时间的库存费用是
成品i单位时间的库存量
所有成品总单位时间的库存费用为
问题的目标函数
2 建立模型
目标函数
约束条件
3 算法设计与求解
3.1 模拟退火算法及思想
模拟退火(simulated annealing)算法是局部搜索算法的扩展,是源于对热力学中退火过程的模拟。

它不同于局部搜索之处是以一定的概率选择邻域中的费用值大的状态。

从理论上来说,它是一个全局最优算法,而最优解是最低能量的状态。

1)初始化:初始温度T(充分大),初始解状态S(是算法迭代的起点),每个T值的迭代次数L;
2)对T<u?进行第(3)至第(6)步;
3)产生新解S′;
4)计算增量Δt′=C(S′)-C(S),其中C(S)为评价函数;
5)若Δt′<0则接受S′作为新的当前解,否则以概率exp(-Δt′/T)接受S′作为新的当前解;
6)如果满足终止条件则输出当前解作为最优解,结束程序。

终止条件通常取为连续若干个新解都没有被接受时终止算法;
7)T=a*T,且T->0,然后转第2步。

3.2 算法参数的确定
1)初始温度。

初始温度越大,获得高质量解的几率也就越大,但是花费的计算时间将延长。

本算法采用的初始温度的选择方法是Metropolis准则法
要使算法在开始时达到平衡应该让接受概率P0接近于1,Δf为目标函数转换时的改变量。

则初始温度为
取可接受的概率P0=0.9,Δf=1 000;则T≈10 000。

2)冷却进度表。

冷却进度表由温度更新函数确定,它定义了温度下降的方式。

常用的温度冷却方式可定义为Tk=αTk-1,k=1,2,3……k,取α=0.9。

3)Markov链长度Lk。

Markov链长度Lk控制在温度Tk下产生的候选解数目。

对于一般组合优化问题,Lk可以去为常数。

Lk=(N-1)*(N-2),N=5;取Lk=12。

4)停止规则。

原则上,退火过程终止的条件应该取为当温度足够接近于零或最后转移解不再发生变化时为止。

根据经验法则,常用的选取停止准则的方法有:①温度降低到冷却阈值Ts以下;②当前最好的解已经连续在若干降温状态没有得到进一步改善;③降温总次数大于预设值K。

本算法采用其中②方法,并且用方法①作为算法时间的控制。

4 实验数据及结论
本文的实验采用C语言编程,本实验是以n=5,m=3,m1=m3=1,m2=2的情况举例说明的。

其中其余的参数是随机产生的,其产生的规律如下
由于hij的值随着j的增加也在不断的成非线性的增加,于是确定hij+1-hij的值在[1,5]之间,从而来确定每个工件以后各阶段的hij值
C语言编程随机产生的问题的参数值,问题的初始解是:4 3 5 1 2,单位时间的费用是96275.2;程序运行的结果第一阶段:1 2 4 3 5,第二阶段第一台机器:1 4 5,第二阶段第二台机器:2 3,第三阶段:1 2 4 3 5,问题的最佳解是:单位时间的费用是88 583.6,总的运行时间是1min 19s。

分析得到的结果可以认为是满意解,此解要比其余的解都要好。

5 结束语
经过验算比较,本文中设计的模拟退火算法,能让解逃离局部最优点,收敛到全局最优。

与局部最优算法相比有较好的优化,且思路易理解,算法易实现等优点,但算法在解决规模较大时搜索性能也有所下降。

如何选择一个更好的初始解,并结合其他一些具有全局优化性能的算法,更有效的求解规模较大的供应链问题是进一步的课题。

参考文献
[1] S.A.Torabi,S.M.T.Fatemi Ghomi,B.Karimi.A hybrid genetic algorithm for the finite horizon economic lot and delivery scheduling in supply chains[M].2004:1-11.
[2] 邢文训,谢金星.现代优化计算方法[M].北京:清华大学出版,1999:11-28.
[3] 黄平,孟永钢.最优化理论与方法[M].北京:清华大学出版社,2009:168-
176.
[4] 谢云.模拟退火算法的原理及实现[J].高等学校计算数学学报,1999.
[5] 李文勇,李泉永.基于模拟退火的全局优化算法[J].桂林电子工业学院学报,2001.
[6] 高尚.模拟退火算法中的退火策略研究[J].航空计算技术,2002.
[7] 席自强.单纯形-模拟退火算法[J].湖北工学院学报,2000.
[8] 王素华.基于遗传模拟退火算法的生物信息学双序列比对方法研究[D].长春:东北师范大学,2006.。

相关文档
最新文档