虽然带时间限制的最小费用运输问题可以用单纯形法求解,但求解效率并不高。由于该问题的约束条件非常特殊,可以通过适当的转化,把各条路线上的运输时间限制转化为相应的运输量限制,从而构造出一个变量带上限的运输问题,进一步利用修改的表上作业法求解。
在介绍具体求解方法之前,首先给出几个定义。
定义1:在求解变量带上限的运输问题的过程中,每一组基解对应的非基变量均可分为两类。若某个非基变量取值为零,则称该非基变量为第一类非基变量;若某个非基变量取值等于上限,则称该非基变量为第二类非基变量。
定义2:利用表上作业法求解运输问题的过程中,进行运输方案调整时,如果一条闭回路上的某个顶点的运输量增加Q,则称该顶点是接收元。如果某顶点的运输量减少Q,则称该顶点是捐助元。
若采用位势法计算检验数,非基变量xij的检验数计算公式是σij=cij-ui-vj,其中ui,vj分别是第i行和第j列的位势。则变量带上限的运输问题的一组基可行解是最优解的充要条件是:第一类非基变量的检验数全部大于等于零,第二类非基变量的检验数全部小于等于零[57-58]。
对于带时间限制的产销平衡运输问题,假设时间限制为T,则可以按照下列步骤求出总运费最低的调运方案。
1)计算从产地Ai到销地Bj运输过程中与运输量无关的时间项t0ij。
利用公式t0ij=ai/ui+dij/vij算出所有的t0ij,构造基本调运时间表,如表8-9所示。
表8-9 基本调运时间表
2)令tsij=max{0,T-t0ij},根据f(xij)≤tsij算出相应路线上的货物运输量上限dij。显然对于t0ij≥T的格子,相应线路上运输量上限为0。此时原问题转化为变量带上限的运输问题。(www.daowen.com)
3)分别算出各行(各列)每条路线上的货物运输量上限之和,并与该行(该列)的供应量(需求量)进行比较。若存在某一行(某一列)的货物运输量上限之和小于供应量(需求量),则原问题无可行解。否则,则转入4)。
4)利用下述步骤求解变量带上限的运输问题得到原问题的最优解:
①首先将上限为0的变量对应的单位运费改为M(M是一个很大的正数)。去掉变量上限,求解松弛的运输问题,得最优解{xij},计算各个非基变量的检验数,此时所有非基变量均为第一类非基变量,用N1表示第一类非基变量的指标集合,第二类非基变量的指标集合N2=∅。
②若所有基变量取值均满足0≤xij≤dij,则转⑧;否则,转入③。
③若有某个基变量xst>dst,则转④;否则,必存在某个基变量xst<0,转⑥。
④在第一类非基变量中寻找一个xkl,满足下列三个条件:a存在一条除xkl外全是基变量的回路且包含xst;b xst是捐助元,xkl是接收元;c xkl是满足a和b的检验数最小者(如果不止一个,则任取一个)。转入⑤。
⑤在包含xst及xkl的回路中,令Q=xst-dst,按以下规则调整调运方案:xst减去Q,余下顶点依次交叉加Q和减Q(必有xkl加上Q),从而xst变为第二类非基变量,xkl变为基变量,得到一组新的基解,计算检验数,并修改第一类、第二类非基变量的指标集,返回②。
⑥若某个基变量xst<0,取N2中某个非基变量xkl满足下列条件:a存在一条除xkl外全是基变量的闭回路且包含xst;b xst是接收元,xkl是捐助元;c xkl是N2中满足a和b的检验数最大者(若不止一个,则任取一个)。转入⑦。
⑦在包含xst和xkl的闭回路中,令Q=-xst,按以下规则调整调运方案:xst加上Q,余下顶点依次交叉减去Q和加上Q(必有顶点xkl减去Q),从而xst变为第一类非基变量,xkl变为基变量,得到一组新的基解,计算检验数,修改第一类和第二类非基变量的指标集合,返回②。
⑧此时已得最优解,算出最优值z∗,停止。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。