附录2 LINDO使用手册
关于APPC命令的使用,有下列三个须注意的问题:
(1).如果在APPC命令格式中缺省变量名,则屏幕上会出现有关要求输入变量名的提示信息。这时再输入新变量名。
(2).如果输入了错误的行号,屏幕上会出现警告信息。例如对于本节的实例,最大行号为了当错误地输入行号4时,就会显示如下内容: :LOOK ALL MAX 2X1+3X2 SUBJECT TO 2) X1+2X2<=12 3) 3X1+5X2<=15 4) 2X1+4X2<=18 END :APPC X3 APPC>1 7 APPC>2 8 APPC>3 9 APPC>5 10 INVALID ROW DISREGARDED APPC> : §4.6 变量下限定义命令SLB (Simple Lower Bound)
1.命令功能:给当前模型中的变量设置下限。 2.命令格式:
:SLB [变量名] [常数]
其中的常数为给相应变量设置的下限数值。
3.命令使用:给下述模型中变量X1设置下限1.5(即x1≥1.5)的操作如下: :LOOK ALL MAX 2X1+3X2 SUBJECT TO 2) X1+2X2<=12 3) 3X1+5X2<=15 4) 2X1+4X2<=18 END :SLB X1 1.5
!为X1设定下限1.5 331
附录2 LINDO使用手册
:LOOK ALL MAX 2X1+3X2 SUBJECT TO 2) X1+2X2<=12 3) 3X1+5X2<=15 4) 2X1+4X2<=18 END SLB X1 1.5000 :
!X1的下限为1.5 请注意,变量下限可以是正数,也可以是负数,当然也可以是零。因为LINDO默认变量是非负的,即所有变量的下限都是0,因此没有必要把变量的下限再设为0。
§4.7 取消变量上下限命令FREE
1.命令功能:取消当前模型中的变量的上限和下限。 2.命令格式:
:FREE [变量名]
3.命令使用:取消上一节模型中变量X1的上下限:
:LOOK ALL MAX 2 X1 + 3 X2 SUBJECT TO 2) X1 + 2 X2 <= 12 3) 3 X1 + 5 X2 <= 15 4) 2 X1 + 4 X2 <= 18 END SUB X1 5.00000 !X1的上限为5(隐含的下限为0) : FREE X1 !取消X1的上下限 : LOOK ALL MAX 2 X1 + 3 X2 SUBJECT TO 2) X1 + 2 X2 <= 12 3) 3 X1 + 5 X2 <= 15 4) 2 X1 + 4 X2 <= 18 END FREE X1 !变量X1的下限为-?,上限为? : 请注意,如果只要取消变量的上限而保留下限0,则需要再加上下限0:
332
附录2 LINDO使用手册
: SLB X1 0 : LOOK ALL MAX 2 X1 + 3 X2 SUBJECT TO 2) X1 + 2 X2 <= 12 3) 3 X1 + 5 X2 <= 15 4) 2 X1 + 4 X2 <= 18 END : !X1的下限设为0 !所有变量下限为0,上限为? !即恢复原来的设置 §4.8 模型全屏幕编辑命令EDIT
这个命令已经在第一章中讲过了。
333
附录2 LINDO使用手册
第五章 数据信息的显示
第一章已介绍过如何用LOOK命令来察看内存中的模型,LOOK命令是LINDO中最基本的显示类命令。但是仅仅掌握这一命令还远远不敷需要,诸如了解单纯形表变化情况,查询计算结果等情况,就要用到其它一些显示命令。
本章将要介绍的六种显示类命令是单纯形表显示命令TABL (Tableau)。矩阵非零元素显示命令PIC (Picture)。列显示命令SHOC(Show Column)。答案显示命令SOLU(Solution)。非零解显示命令NONZ(Nonzeros)和灵敏度分析结果显示命令RANGE。
§5.1 单纯形表显示命令 TABL (Table)
1.命令功能:显示当前单纯形表。 2.命令格式: :TABL
3.命令使用:在线性规划模型的迭代过程中,如果使用了TABL命令,则屏幕上显示出当前有单纯形表。因此,PIV命令和TABL命令交替使用,可以一步一步地完成并观看到单纯形的算法过程,这对于了解基的变化情况很有用。下面将第一章已用GO命令求出结果的模型用PIV命令和TABL命令重新举例如下: :LOOK ALL MAX 2X1+3X2 SUBJECT TO 2) X1+2X2<=12 3) 2X1+4X2<=18 END :TABL THE TABLEAU ROW(BASIS) X1 1 ART -2.000 2 SLACK 1.000 3 SLACK 2.000
X2 -3.000 2.000 4.000 .000 1.000 .000 334
.000 .000 1.000 .000 12.000 18.000 附录2 LINDO使用手册
:PIV X2 ENTERS AT VALUE 4.5000 IN ROW 3 OBJ. VALUE = 13.500 :TABL THE TABLEAU ROW(BASIS) X1 X2 1 ART -.500 .000 .000 .750 13.500 2 SLACK .000 .0001 .000 -.500 3.000 3 X2 .500 1.000 .000 .250 4.500 :PIV X1 ENTERS AT VALUE 9.0000 IN ROW 3 OBJ. VALUE = 18.000 :TABL THE TABLEAU ROW(BASIS) X1 X2 1 ART .000 1.000 .000 1.000 18.000 2 SLACK .000 .000 1.000 -.500 3.000 3 X1 1.000 2.000 .000 .500 9.000 :PIV LP OPTIMUM FOUND AT STEP 2 OBJECTIVE FUNCTION VALUE 1)18.0000000 VARIABLE VALUE REDUCED COST X1 9.000000 .000000 X2 .000000 1.000000 ROW SLACK DUAL PRICES 2) 3.000000 .000000 3) .000000 1.000000 NO.ITERATIONS=2 DO RANGE(SENSITIVITY) ANALYSIS ? PIV>N :TABL THE TABLEAU ROW (BASIS) X1 X2 1 ART .000 1.000 .000 1.000 18.000 2 SLACK .000 .000 1.000 -.500 3.000 3 X1 1.000 2.000 .000 .500 9.000 :
335