2
、输入模型命令
MAX / MIN
用
MAX / MIN
命令可以直接从键盘上输入一个模型到内存。
MAX / MIN
命令对规模较
小的问题比较适用,对大规模问题的建立和输入,将在
TAKE
命令描述。
设我们要输入的模型的数学形式为
:
MAX 5.24X
1
+7.3X
2
+8.34X
3
+4.18X
4
SUBJECT TO
1.5X
1
+X
2
+2.4X
3
+X
4
2000
X
1
+5X
2
+X
3
+3.5X
4
8000
1.5X
1
+3X
2
+3.5X
3
+X
4
5000
X
1
,X
2
,X
3
,X
4
0
输入模型的操作作如下
:
: MAX 5.24X1+7.3X2+8.34X3+4.18X4
! "MAX"后面必须空一格
?ST
!"ST"也可以写"SUBJECT TO"
?1.5X1+1.0X2+2.4X3+1.0X4<2000
!用"<"或">"而不能用"<=",">="
?1.0X1+5.0X2+1.0X3+3.5X4<8000
!
?
表示当前处于MAX命令状态
?1.5X1+3.0X2+3.5X3+1.0X4<5000
!END结束MAX命令状态。变量非负约束X1,X2,
?END !
X3,X4>=0是隐含的,不必也不能输入
MAX/MIN
命令对模型的输入格式有一些限制,这些限制是
:
(1)
模型中出现的关键词只能是
MAX (
或
MIN )
,
ST (
或
SUBJECT TO )
和
END
。关
键词中不能含有空格。
MAX (
或
MIN )
,
ST (
或
SUBJECT TO )
的右面至少要有一个空格,
关键词中字符大写和小写都合法的。
(2)
变量名不超过
8
个字符,其中第一个字符必须定字母,其余的可以是字母或数字。
这样就可以藉助变量表示变量的实际含义。例如有
10
种燃料,可以分别记为
FUEL01
,
…,
FUEL10
等。
(3)
不等号用
"
<
"
表示
"
≤
"
,用
"
>
"
表示
"
≥
"
。要注意的是当模型
(
用
LOOK
命令
)
输出
(
到
屏幕或打印机
)
时,不等号分别写成
"
<=
"
和
"
>=
"
。
(4)
目标函数中不能出现常数项,也不能出现等式,例如
:
MAX 2X1
+
3X2
+
5
和
MAX Z=2X1
+
3X2
都是非法的。
(5)
无论连目标函数
(
第一行
)
或约束条件中,都不能出现括号、乘号。例如
:
MAX 2(X1+X2)
和
MIN 2*X1+3*X2
都是非法的。
(6)
在约束条件中,变量必须在关系符左面,常数必须在关系符右边,例如
:
3X1
+
4X2
-
3
<
0
和
3X1
<
3
-
4X2
都是非法的。
(7)
模型中系数必须写成整数或小数形式而不能写成指数形式,例如:下列系数的记法
是非法的:
.258E+5
。
如系数是小数形式,输入的位数限制定整数最大
6
位,小数最大
5
位。
(8)
除关键字中间,系数中间,变量名中间不能嵌入空格外,模型的其他地方都允许出
现空格和回车
<CR>
。在模型输入时,空格和回车是等效的。例如,以下的模型输入格式是
有效的
:
max z= 3x
1
+4x
2
+6x
3
-5x
4
评论0
最新资源