产销平衡运输问题表上作业法的计算机辅助教学方法
2018-10-13曾强沈玲
曾强 沈玲
摘要:作为产销平衡运输问题常用的求解方法,表上作业法的计算过程烦琐,教师往往无法在课堂上完整地讲述一个案例,大大影响了该方法的教学质量。本文基于“表上作业法”,以Excel Vba为平台,提出了一种产销平衡运输问题表上作业法的计算机辅助教学方法。
关键词:产销平衡运输问题;表上作业法;计算机辅助教学;Excel Vba
中图分类号:G642.41 文献标志码:A 文章编号:1674-9324(2018)42-0259-02
产销平衡运输问题的主要求解方法有线性规划法、表上作业法、图上作业法、网络解法。其中,表上作业法是应用面最广的一种方法,也是运筹学这门课要求学生必须掌握的一种方法。该方法的基本思路是利用最小元素法、伏格尔法、西北角法等方法寻找初始基可行解,利用位势法等方法获得非基变量的检验数,然后利用闭回路调整法等方法进行调整直到非基变量的检验数非负,从而得到最优解。然而,表上作业法的计算过程带有很大的重复性,任何一个数字的计算错误都会导致计算结果的错误,而人的最大弱点就是容易犯错,这就要求计算非常细心。正因如此,一个简单的产销平衡运输问题采用手工计算往往需要几十分钟甚至更长的时间,受课堂时间限制,往往无法在课堂上讲述一个完整案例,严重影响了该方法的教学质量。如果能进行合理分工,将大量的重复计算过程和需要思考的过程分别分摊给计算机和人,并且通过计算机将整个计算过程演示出来,则不仅能使计算过程变得更为形象、直观,而且能大大缩短计算时间从而保证在短时间内讲述一个完整的计算案例,从而大大提高表上作业法的教学质量。
一、算法流程
图1是本文算法的计算流程。
二、算法关键技术
算法中的关键技术是闭回路调整技术,包括三个步骤。第一步是寻找闭合回路。用户在工作表“检验数”中,选取一个非正检验数,双击该单元格,再横向或竖向寻找一个空单元格并双击它,通过VBA代码自动在起始单元格与空单元格之间画一条直线,再寻找并双击下一个空单元格,通过VBA代码自动在第二个空单元格和第三个空单元格之间画一条直线,以此类推,每碰到一个空格,可旋转90度,直到起始单元格与终点单元格相同,至此找到一个闭合回路。在上述画线过程中,通过VBA代码自动在工作表“基可行解”中相应单元格之间画线,同步绘制出闭合回路,并将奇数单元格背景置为蓝色、偶数单元格背景置为黄色。第二步是计算调整量。利用VBA代碼找出工作表“基可行解”中黄色单元格的最小值作为调整量。第三步是调整基可行解。利用VBA代码,通过For循环,将工作表“基可行解”中黄色单元格值减去调整量,若减去调整量后值为0的单元格仅1个,则将该单元格值置为空值,否则由VBA代码任选一个这样的单元格将该单元格值置为空值;同时,将蓝色单元格加上调整量。需要指出的是,进行一轮闭合回路调整后,用户须依次双击工作表“基可行解”和“检验数”中的“删除”按钮,通过VBA代码自动将线条清除并将单元格背景色置为白色,从而为下一轮闭合回路调整做好准备。
三、教学案例
利用本文算法对文献[2]P91例2为例进行说明。按如图2所示进行参数设置。然后利用本文提出的辅助算法求得产销平衡运输问题的最优解,求解过程如图3—10。
四、结语
表上作业法是求解产销平衡运输问题的常用方法,但该方法具有计算过程烦琐的缺点,这严重影响了对于该方法的教学质量。借助本文提出的表上作业法的计算机辅助求解方法,可形象、直观、高效地帮助教师完整地讲解产销平衡运输问题的表上作业法求解全过程,有效提高教学质量。
参考文献:
[1]王有鸿,费威.运输问题国内外研究评述[J].商业时代,2010,(24):31-32.