专利名称:基于拉氏松弛的生产系统调度子问题序贯更新法的制作方法
一、所属领域
本发明属于系统工程领域的一种可以处理包含同型号设备或资源的复杂生产系统优化调度方法,进一步涉及可以处理同种任务、同型设备、同类资源的生产系统优化调度的基于拉氏松弛的子问题序贯更新法。
生产系统优化调度是很多企业日常面临的重要问题,其目的是合理安排有限地生产资源,以使某个或某些指标达到最优,比如可以是时间最短、成本最低、风险最小、利润最大等等。到目前为止,已先后有启发式方法、动态规划法、混合规划法、Lagrangian松弛法、遗传算法、神经网络算法等种类繁多的方法被用于各种生产调度问题的求解。随着对经济、社会效益要求的提高及市场竞争的日益激烈,生产系统优化调度的重要性越来越被广泛认可。根据美国的研究报告,对于一个装机容量为一千万至三千万千瓦的大型电力系统而言,节约1%的生产成本就意味着每年一千万到三千万美元的经济效益(R.C.Grimes and S.J.Jabbour,The DYNAMICS Model for Measuring DynamicOperating Benefits,Technical Report,Decision Focus Incorporated,LosAltos,CA,June 1989)。节约成本还意味着减少资源消耗,从而减少环境污染,产生的社会效益也极为可观。
在所有复杂生产系统优化调度方法中,拉氏松弛法是最有效的方法之一。与其它方法相比,这种方法有以下重要特点利用拉氏乘子(系统价格)将大规模问题分解为若干子问题求解从而降低了复杂度;便于灵活处理多种约束;计算时间随问题规模增大仅呈线性增长(其它一些方法有指数增长的趋势);计算中得到的对偶函数值可用来评价可行调度方案的优劣(其它方法至多只能给出一个可行调度方案,并不能说明此方案与最优方案“距离”有多远)。
拉氏松弛法的基本思想是并不直接求解原调度问题,而去求解一个与之相应的对偶问题,无论原问题有多么复杂,对偶问题都是一个凸规划,对偶函数值和拉氏乘子等信息在很多现实问题中都有重要的经济意义。
然而,拉氏松弛法存在算法结构导致的缺陷,一个很早就被认识到的严重缺陷是所谓的同构难题,即在算法执行过程中,无论乘子如何修正,相应于相同设备或任务子问题的对偶解完全相同。同构难题反映了拉氏松弛法在求解具有同型号设备的生产调度问题时的固有困难和缺陷。目前,对于拉氏松弛法框架下的同构难题,尚无有效的解决方法见诸文献。下面先用一个例子说明什么是同构难题。
考虑下述简单的调度问题,该问题具有两套相同设备这里1=xi≤xi(1)≤xi=3,i=1,2,zi(1)∈{0,1};di(xi(1),zi(1))定义如下
费用函数Ci(xi(1),zi(1))定义为
很明显问题的最优解为
z1(1)=1,z2(1)=0,x1(1)=2,x2(1)=任意,或
z1(1)=0,z2(1)=1,x2(1)=2,x1(1)=任意。
目标函数的最优值为104。
用标准的Lagrangian松弛法求解上述问题时,会产生下述两个相同子问题
minLi,withLi≡Ci(xi(1),zi(1))-λxi(1)·zi(1),i=1,2,
s.t.1≤xi(1)≤3
这里λ是对应于原问题等式约束的乘子。子问题的最优解如下
因此可见无论乘子取值如何,离散变量zi(1)要么全为0,要么全为1,根本不会出现一个取0、一个取1的情况。这就远离了最优解。
图1给出了
随λ的变化曲线。
无论乘子在算法中如何被更新,都始终得不到原问题的最优解。后文中我们将说明用本发明提出的序贯更新法则可以得到原问题的最优解。
同构难题产生的根本原因在于拉氏松弛法是一种基于价格的调度方法,拉氏乘子是价格的反映。在拉氏松弛法框架下,对于一个含有很多同型设备的系统,如果每套设备对应一个子问题,由于同型号设参数完全相同,相应的子问题也完全相同,导致对应的对偶解完全相同。当乘子改变时,这些解一起改变并始终保持相同。如果调度中存在一些离散决策变量(比如决定设备开关机状态的变量),则乘子的任何微小改变都可能使这些变量取值发生一致的跳变。比如,某个生产系统有10套相同型号的设备,最优生产计划是某时刻只开5套进行生产,但用拉氏松弛法求解时任何时候10套设备都是要么一起关,要么一起开,永远不会出现开5套关5套的解。这种同构难题导致的一个后果是对偶解严重偏离了原问题的最优解,换句话说对偶解未能包括足够的关于最优解的信息,以此为基础构造的可行调度方案其质量将受到影响。背景技术:
本发明的目的是在保留拉氏松弛法优点的同时,解决同构难题。提出一种基于拉氏松弛的新方法子问题序贯更新法,使相同设备子问题的对偶解不再相同并更接近于最优解,并保证了方法的收敛性。本发明的关键思想是针对系统约束加入非线性惩罚项和序贯求解、更新子问题,以便根本上解决此难题。
非线性惩罚项曾用于增广拉氏松弛法。由于惩罚项耦合了各个设备,对偶问题不再具有可分性,导致该方法几乎不可能用于实际计算(由组合爆炸或维数灾难引起)。因此在现有文献中的增广拉氏松弛法,其则惩罚项一般被线性化或用其它方法处理以解耦(G.Cohen and D.Zhu,“DecompositionCoordination Methods in Large Scale Optimization ProblemsThe Non-differentiable Case and the Use of Augmented Lagrangian,”Advances inLarge Scale SystemsTheory and Applications,Vol.27,JAI Press Inc.CT,USA,1988,pp.203-266;J.Batut and A.Renaud,“Daily GenerationScheduling Optimization with Transmission ConstraintsA New Class ofAlgorithms,”IEEE Transaction on Power System,Vol.7,No.3,1992,pp.982-989;S.J.Wang,S.M.Shahidehpour,D.S.Kirschen,S.Mokhtariand G.D.Irisarri,Short-term Generation Scheduling with Transmissionand Environmental Constraints Using an Augmented Lagrangian Relaxation,IEEE Transactions on Power Systems,Vol.10,No.3,1995,pp.1294-1301),在这样的结构下同型号设备对应的子问题还是完全相同,同构难题依然存在。
一种伪次梯度法(X.Zhao,P.B.Luh,and J.Wang,Surrogate SubgradientAlgorithm for Lagrangian Relaxation,Journal of Optimization Theory andApplications,Vol.100,No.3,1999,pp.609-712)以伪次梯度作为修正Lagrangian乘子的方向,只需要求解一个或几个子问题就可以获得伪次梯度,减少了计算量,但不能保证对偶解与原问题的最优解足够接近。
发明内容
根据上述现有技术存在的缺陷或不足,本发明的目的是,提供一种可处理同种任务、同型设备、同类资源的生产系统优化调度的基于拉氏松弛的子问题序贯更新法。
本发明创新点是在降低计算量的前提下,将非线性惩罚与序贯求解的思想相结合,从而得到与原问题最优调度更接近的调度方案,并保证方法的收敛性;按以下方法进行
假定有I套设备的生产系统生产某种产品,调度周期为T个时段,生产时需要J种原料,本发明考虑的生产系统调度问题可描述为
其中pi(t)是设备i在第t时段内的产量;Ci(pi(t))为设备i在第t时段内的生产成本;xi(t)为设备i在第t时段所处的开关机状态,它记录到第t时段为止设备i已开(正值)或已关(负值)的时段数;Si(xi(t-1),xi(t))为开、关机费用,仅当xi(t)与xi(t-1)异号时取非零值;
是设备i在第t时段内产量为pi(t)时对原料j的消耗量;pd(t)是第t时段的合同产量;
是第t时段内原料j的供应限制。除了(2)和(3)两个系统约束外,各设备还有自身的物理及运行约束,主要包括
生产能力限制约束
其中pimax(t),pimin(t)分别为设备i在第t时段内的最大、最小产量。
最小开关机时间约束
其中τiup,τidown分别为设备i的最小开、关机时段数。
此外还有检修计划约束(即某些时段内某些设备必须开机或关机)、产量变化限制约束(同一设备在连续两个开机时段产量变化不能过大)等等,所有这些都视具体的生产系统而定。
针对问题(1)-(5)的增广拉氏函数为
式中一些记号含义为P=[pi(t)]l×T,X=[xi(t)]l×T是两个矩阵,且P和X要满足(4)-(5)两个约束和其它的单设备约束;λ=[λ(1),λ(2),Λ,λ(T)]是对应于约束(2)的乘子向量,μ=[μj(t)]J×T是对应于约束(3)的乘子矩阵,且μj(t)≥0。w≥0是罚因子。
与之相应的对偶问题为
其中对增广拉氏函数求极小时P和X要满足(4)-(5)两个约束和其它的单设备约束。
经过对式(6)的整理,可得到其中k∈{1,2,Λ,I},P(i),X(i)分别为P和X的第k行,且 (9)第k个子问题为其中 (11)
本发明申请保护的一种新的生产调度方法,其专有的特点是在拉氏松弛的框架下,每个设备或任务相对应的子问题带有与其它设备或任务有关的惩罚项,只对一个子问题采用序贯求解或更新后,就对拉氏乘子(系统价格)更新,从而根本解决了拉氏松弛框架下优化调度算法的同构难题,其描述如下
1.初始化置迭代次数l=0;给定乘子的初始值λl=λ0,μl=μ0≥0。在(6)中置w=0并应用标准拉氏松弛调度方法对各个设备或任务独立进行调度(此时相同设备或任务的调度方案是相同的),取得P0和X0,见(X.Guan,P.Luh,H.Yan,and J.A.Amalfi,A Optimization-Based Method for Unit Commitment,International Journal of Electric Power & Energy Systems,Vol.14,No.1,1992,pp.9-17)。给定罚因子w0,然后,重置λ0为其中
。记L0=L(λ0,μ0,P0,X0,w0),则(13)保证了L0<Φ*(w0)。
2.更新乘子(系统价格)其中为相应的伪次梯度,sl是第1次迭代时的步长,且满足0<sl<(Φ*(w0)-Ll)/‖gl‖2 (18)
3.依序对一个设备或任务调度并更新P和X
基于对(10)的求解对一个设备或任务进行调度,直到
Ll+1=L(λl+1,μl+1,Pl+1,Xl+1,w0)≤L(λl+1,μl+1,Pl,Xl,w0)(20)满足,转到下一步。
4.更新迭代次数l+1l,判断收敛准则是否满足,若满足则停止计算,否则转2。可以用迭代次数限制或相邻两次迭代解的变化量或伪次梯度范数作为收敛性判据。
本发明描述的方法同时保留了拉氏松弛的框架、伪次梯度法和增广拉氏松弛法的优点,并克服了它们各自的缺点,另外,从方法描述中可以看到,在第3步,每次极小化
后,若k变化则yk(t)和zkj(t)已发生变化,因此即便两套设备型号相同,对应的对偶解一般也不同(无论乘子是否改变),从而解决了同构难题。需要说明,即便生产系统中不含有同型号设备,本发明中提出的方法依然适用,且效果也比标准伪次梯度法和标准拉氏松弛法好。本发明提出的序贯更新法的收敛性证明在附录中给出。
用本发明提出的方法对前述例子调度,步长取为sl=0.95×0.01×Ll/‖gl‖2结果如下
表1本说明例子的计算结果
可见应用子问题序贯更新法,使相同设备得到了相异的调度方案,即原问题最优调度方案p1=2,p2=0,解决了同构难题。四
图1是现有技术中子问题的解与乘子的关系示意图2是对偶解对系统约束的违反程度随迭代次数变化趋势示意图。五具体实施例方式
以下结合实施例对本发明作进一步的详细描述。
本发明的实施实例
按照本发明的技术方案,选择电力系统生产调度问题做为实施本发明的具体例子,但这里强调本发明的原理和方法适合于任何包含多套设备的生产系统调度问题。
该实施例中共有10台机组,其中1号与2号机组为同型机组,3-8号机组为同型机组,调度周期包含24个时段,需要说明,电力系统中的旋转备用约束可以看作是原料限制,因为该约束具有(3)的形式。机组生产参数及系统信息(初始状态、合同产量、原料限制等等)如表2。
由于机组4-8与机组3的有关参数完全相同,故未列出。在该实施例中,Si(xi(t-1),xi(t))为线性启动费用函数,定义为
该实施例的系统数据在表3中给出。
本发明的方法用Matlab语言在PIII667MHz微机上进行计算,并同标准拉氏松弛法相比较总结见表4,其中SLR、SSU分别表示标准拉氏松弛法和序贯更新法。从结果看,本发明提出的方法明显优于标准拉氏松弛法。在表4中,系统约束违反程度指对偶解对约束(2)和(3)的违反程度,按1-范数定义,通常情况下,违反程度越小,则对偶解越容易调整为可行解,且质量较好。
为进一步说明本发明中提出的方法能克服同构难题,表5列出了两种方法求得的4个相同机组3、4、5、6的对偶解。
表2实施实例1的机组参数表
表3系统数据表
表4计算结果
表5对偶解
从表中可见,在标准拉氏松弛法框架下存在同构难题,但本发明提出的方法均克服了同构难题。
参见图2,图2描绘了对偶解对系统约束的违反程度随迭代次数变化趋势,这里为了画图方便进行了单位变换。从图中可清晰地看出用标准拉氏松弛法时的由同构难题引起的震荡特性。
本发明中提出的方法求解其它一些生产调度问题,结果也相当令人满意。
本发明中提出的方法已经用C++语言实现,并嵌入了集成化电力系统资源优化软件包中计算效果良好,在P-III800微机上求解包含50机组、24小时的优化调度问题所用时间不超过5秒。下面是本发明序贯更新法的收敛性证明
以λ*,μ*表示对偶问题(7)的最优解,先给出三个引理。
引理1.设λa,μa;λb,μb是两组乘子,则
直接代入(6)式即可证明此引理。
引理2.在算法执行过程中,下式恒成立
Ll=L(λl,μl,Pl,Xl,w0)<Φ*(w0) (A2)
证明用归纳法证。l=0时由算法的第1步可知结论成立(见(13)式),假设(A2)对l成立,则有
Ll+1=Ll+1(λl+1,μl+1,Pl+1,Xl+1,w0)
由(20) ≤L(λl+1,μl+1,Pl,Xl,w0)
=L(λl+1,μl+1,Pl,Xl,w0)-L(λl,μl,Pl,Xl,w0)+L(λl,μl,Pl,Xl,w0)由(A1)由(14),(15)式由(16)-(19)式
=Ll+sl‖gl‖2
<Ll+Φ*(w0)-Ll
=Φ*(w0)
因此由归纳法原理知(A2)恒成立。注意引理2说明了(18)式中步长因子是存在的。
引理3.在算法执行过程中,下式恒成立证明Φ*(w0)-Ll=Φ(λ*,μ*,w0)-Ll由(7)≤L(λ*,μ*,Pl,Xl,w0)-Ll再由引理1即得结论。下面是主要结论。定理.在序贯更新算法中,乘子逐步逼进最优解,即有下式成立证明由(A3)-2sl(Φ*(w0)-Ll)由(18)-(19)再由(18)和(A2)从而(A4)成立。
权利要求
1.一种可处理同种任务、同型设备、同类资源的优化调度的基于拉氏松弛的生产系统调度子问题序贯更新法,其特征在于在降低计算量的前提下,将非线性惩罚与序贯求解的思想相结合,从而得到与原问题最优调度更接近的调度方案,并保证方法的收敛性;按以下方法进行
假定有I套设备的生产系统生产某种产品,调度周期为T个时段,生产时需要J种原料,本发明考虑的生产系统调度问题可描述为
其中pi(t)是设备i在第t时段内的产量;Ci(pi(t))为设备i在第t时段内的生产成本;xi(t)为设备i在第t时段所处的开关机状态,它记录到第t时段为止设备i已开(正值)或已关(负值)的时段数;Si(xi(t-1),xi(t))为开、关机费用,仅当xi(t)与xi(t-1)异号时取非零值;
是设备i在第t时段内产量为pi(t)时对原料j的消耗量;pd(t)是第t时段的合同产量;
是第t时段内原料j的供应限制。除了(2)和(3)两个系统约束外,各设备还有自身的物理及运行约束,主要包括
生产能力限制约束
其中pimax(t),pimin(t)分别为设备i在第t时段内的最大、最小产量;
最小开关机时间约束
其中τiup,τidown分别为设备i的最小开、关机时段数;
此外还有检修计划约束(即某些时段内某些设备必须开机或关机)、产量变化限制约束(同一设备在连续两个开机时段产量变化不能过大)等等,所有这些都视具体的生产系统而定;
针对问题(1)-(5)的增广拉氏函数为
式中一些记号含义为P=[pi(t)]l×T,X=[xi(t)l×T是两个矩阵,且P和X要满足(4)-(5)两个约束和其它的单设备约束;λ=[λ(1),λ(2),Λ,λ(T)]是对应于约束(2)的乘子向量,μ=[μj(t)]l×T是对应于约束(3)的乘子矩阵,且μj(t)≥0。w≥0是罚因子;
与之相应的对偶问题为其中对增广拉氏函数求极小时P和X要满足(4)-(5)两个约束和其它的单设备约束;
经过对式(6)的整理,可得到其中k∈{1,2,Λ,I},P(i),X(i)分别为P和X的第k行,且(9)第k个子问题为其中 (11)
在拉氏松弛的框架下,每个设备或任务相对应的子问题带有与其它设备或任务有关的惩罚项,只对一个子问题采用序贯求解或更新后,就对拉氏乘子(系统价格)更新,其描述如下
1)初始化置迭代次数l=0;给定乘子的初始值λl=λ0,μl=μ0≥0。在(6)中置w=0并应用标准拉氏松弛调度方法对各个设备或任务独立进行调度(此时相同设备或任务的调度方案是相同的),取得P0和X0,给定罚因子w0,然后,重置λ0为其中
。记L0=L(λ0,μ0,P0,X0,w0),则(13)保证了L0<Φ*(w0);
2)更新乘子(系统价格)其中为相应的伪次梯度,sl是第1次迭代时的步长,且满足0<sl<(Φ*(w0)-Ll)/‖gl‖2(18)
3)依序对一个设备或任务调度并更新P和X
基于对(10)的求解对一个设备或任务进行调度,直到
Ll+1=L(λl+1,μl+1,Pl+1,Xl+1,w0)≤L(λl+1,μl+1,Pl,Xl,w0)(20)满足,转到下一步;
4)更新迭代次数l+1l,判断收敛准则是否满足,若满足则停止计算,否则转2);可以用迭代次数限制或相邻两次迭代解的变化量或伪次梯度范数作为收敛性判据。
全文摘要
本发明公开了一种可以处理同种任务、同型设备、同类资源的生产系统优化调度的基于拉氏松弛的子问题序贯更新法,其特点是在拉氏松弛的框架下,每个设备或任务相对应的子问题带有与其它设备或任务有关的惩罚项,只对一个子问题采用序贯求解或更新后,就对拉氏乘子(系统价格)更新,从而根本解决了拉氏松弛框架下优化调度算法的同构难题,同时保留了拉氏松弛的框架、伪次梯度法和增广拉氏松弛法的优点,即便生产系统中不含有同型号设备,本发明中提出的方法依然适用,且效果也比标准伪次梯度法和标准拉氏松弛法好。
文档编号G06F9/45GK1359066SQ02114410
公开日2002年7月17日 申请日期2002年1月16日 优先权日2002年1月16日
发明者管晓宏, 翟桥柱 申请人:西安交通大学