APP下载

线性规划的软件求解

2016-10-10牛潇萌

赤峰学院学报·自然科学版 2016年7期
关键词:赤峰约束条件单元格

牛潇萌

(赤峰学院 数学与统计学院,内蒙古 赤峰 024000)

线性规划的软件求解

牛潇萌

(赤峰学院数学与统计学院,内蒙古赤峰024000)

利用Excel、LINDO6.1软件、MATLAB软件对线性规划问题进行求解.

线性规划;Excel;LINDO;MATLAB

线性规划是运筹学中的一个重要分支,线性规划在理论上已趋向成熟,在实际应用中日益广泛和深入[1].解决线性规划问题时,通常用单纯形法,但单纯形法的计算量比较大,容易出错,而通过计算机软件来进行求解,不仅可以减少计算过程中的计算量,还可以提高准确率.

考虑如下线性规划问题[2]:

1 用Excel求解线性规划问题

利用Excel中的规划求解可以求解线性规划问题,下面给出求解的具体步骤:

1.1录入数据

在Excel工作表中录入线性规划问题相关数据.D4:F4录入目标函数的系数;D5:F5为决策变量存放单元格,求好的最优解会放在这些单元格中;B8:B10录入约束条件右端的常数值;C8:C10录入约束条件计算公式(具体录入方法见下面录入公式);D8:F8录入第一个约束条件的系数;D9:F9录入第二个约束条件的系数,D10:F10录入第三个约束条件的系数;D15:F15录入目标函数计算公式.这样建立了一个工作表如图1所示.

图1 

1.2录入计算公式

在C8单元格输入公式“=D5*D8+E5*E8 +F5*F8”,在D15单元格输入公式“=D4*D5”,在C9单元格输入公式“=D5*D9+E5*E9+F5*F9”,在E15单元格输入公式“=E4*E5”,在C10单元格输入公式“=D5*D10+E5*E10+F5*F10”,在F15单元格输入公式“=F4*F5”,在D16单元格输入公式“=SUM(D15,E15,F15)”,输入公式,回车之后即可完成操作.

1.3求最优解

求最优解的步骤如下:

(i)在Excel工作表中选取“工具”中的“规划求解”.

(ii)在“设置目标单元格”输入D16,在“可变单元格”输入D5:F5,选“添加”.

(iii)在“单元格引用位置”输入C8,选定<=,在“约束值”位置输入B8,选择“添加”重复这个步骤,直至把所有约束条件输入,选确定.

(iv)选“求解”,运行结果如图2所示.

图2 

得到最优解x1=4,x2=1,x3=9,最优值为2.

2 用LINDO6.1求解线性规划问题

LINDO6.1是一种专门用于求解线性规划、二次规划的软件包.由于LINDO执行速度快,输入方便,因此在教学、科研中得到广泛的应用[3].

在LINDO6.1中打开一个新文件,直接输入,

然后按Solve按钮即可求解.

图3 运行结果

得到最优解x1=4,x2=1,x3=9,最优值为2.

3 用MATLAB求解线性规划问题

MATLAB中的线性规划标准形式为

求解线性规划问题的函数Linprog,下面应用MATLAB来求解上述线性规划问题:

化成MATLAB标准型

求解的MATLAB程序如下:

得到最优解x1=4,x2=1,x3=9,最优值为2.

4 结束语

通过上面的计算可知,在求解线性规划问题中,用LINDO6.1和MATLAB软件求解相对简单,用Excel来求解线性规划问题过程稍显复杂.

〔1〕耿德志.线性规划求解算法研究[J].软件导刊,2011(10):48-49.

〔2〕司守奎,孙玺菁.数学建模算法与应用[M].北京:国防工业出版社,2011.2-3.

〔3〕罗罡辉,叶艳妹.多目标规划的LINDO求解方法[J].计算机应用与软件,2004(21):108-110.

O221.1

A

1673-260X(2016)04-0023-02

2015-12-28

猜你喜欢

赤峰约束条件单元格
赤峰学院学生书法作品
赤峰学院教师书法作品
赤峰家育种猪生态科技集团有限公司
基于一种改进AZSVPWM的满调制度死区约束条件分析
流水账分类统计巧实现
玩转方格
玩转方格
浅谈Excel中常见统计个数函数的用法
基于半约束条件下不透水面的遥感提取方法