2.4 投入产出模型的三级分解协调预测算法
2.4.1 问题的提出
根据上节,投入产出模型的优化问题可以表述为
2.4.2 问题的求解
定义对偶函数φ(λ)
于是,
由于
及同理得出的
我们可以得到,
其中,
在第三级给定λi(k)=λ*i(k)的情况下,第二级求Li的最优。而第三级本身则是用关联变量的误差作梯度,用梯度法或共轭梯度法寻优,有
若把N年以后的产量X(k)(N+1≤k≤N+T)当作X(N)的线性函数,如X(k)=(1+b)k-NX(N),其中b代表增长率,即假设规划目标年以后若干年的产值都按照固定的百分比增加,则第二级只要给出在λ*i(k)下使第i个子系统(i=1, …, C)已达到最优时的Xi(k), Zi(k), k=0,1, …, N,即可反馈回第三级。
对第二级,把子系统的拉格朗日函数按时间下标分解成子子拉格朗日函数,这样就把一个泛函优化的问题变为参数优化问题,很容易在第一级求得显式解(梁循,2006)。具体做法是:
定义对偶函数
其中,
设λi(σ)=0, μi(σ)=0, Hτi(σ), Wτ, ij(σ)=0。当σ>N或σ<0,我们有
其中,
于是,每个子问题Li又可分解成N+1个独立的子子问题,
其中,
在第二级给定μi(k)=μ*j(k), k=0,1, …, N的情况下,对第i个子系统,第一级求Li(k), Li(N)最优,而在第二级用梯度法或共轭梯度法寻优,有
在第二级第i个子系统的子子系统中求出Xi(k), Yi(k), Zi(k)(k=0,1, …, N)后,即可反馈回第二级。
由Li(k), Li(N),并注意X(k)=(1+b)k-NX(N),(N+1≤k≤N+T)可得,
可得Zi(k), Ui(k), Xi(k), k=0,1, …, N。于是,
其中,
在第三、二级中,新的协调变量由下式确定:
其中,l=0,1, …为迭代次数,αli(k), α′li(k)为寻优步长。
若用梯度法,则
若用共轭梯度法,则
上述三级结构如图2-3所示(梁循,1990)。
图2-3 三级分解协调算法
算法在第一级就获得一个显式解,而第二、三级算法很简单,因而使整个计算变得十分简单。同时所需要的存储空间进一步大幅度缩小。本算法的另一优点就是用简单的办法处理不等式约束。
如果还有其他对i, k的加性可分等式约束,可以用同样方法处理。