数学建模社区-数学中国
标题:
Xpress-IVE 建模问题
[打印本页]
作者:
cy411522
时间:
2012-7-5 16:06
标题:
Xpress-IVE 建模问题
哪位高人能帮小弟解决这个问题,小弟不甚感激!!!
; j; y, j2 K$ y8 L9 I# T
model "Burglar 1"
+ v, O6 F( N5 L/ I
uses "mmxprs"
: `) C+ ^, o% d5 _3 w! d3 @
declarations
: S' W7 R$ r& ^) ^4 Q
ITEMS = 1..8 ! 物品标号范围
. f w& v# `5 W U8 v: o3 M1 l
WTMAX = 102 ! 允许携带的重量最大值
/ f0 i' ~" m* q. [+ \* l7 M
VALUE: array(ITEMS) of real ! 物品价值
, D' x) t! o' {$ O9 L$ k5 p
WEIGHT: array(ITEMS) of real ! 物品重量
/ M" b' Y* a7 D, q4 F
take: array(ITEMS) of mpvar ! 1 表示带走物品i,0 表示不带走物品i
% N o' U7 Q) x' A; [/ b0 m
end-declarations
2 H4 ?2 d+ M/ G- _( c7 q4 W
! 物品: 1 2 3 4 5 6 7 8
1 E8 l0 r- Y( _( D
VALUE := [ 15, 100, 90, 60, 40, 15, 10, 1]
% ^" V" c: g! \5 u- V y
WEIGHT := [ 2, 20, 20, 30, 40, 30, 60, 10]
) m$ I9 [8 x3 Q- q- z7 R
! 目标: 使带走的总价值最大
9 p. v [1 X$ b& a; E4 ]7 W; C
MaxVal:= sum(i in ITEMS) VALUE(i)*take(i)
- t+ j! e' m0 Y* o" _. Q0 ]' a" x
! 重量限制
6 J1 A6 z9 A, A
sum(i in ITEMS) WEIGHT(i)*take(i) <= WTMAX
! ^- Z$ c7 U) N' ?+ Z% Z
! 所有变量取值都为0 或1
6 h! h3 S- W$ A( M& U6 d
forall(i in ITEMS) take(i) is_binary
' U( I$ s& b6 b" |
maximize(MaxVal) ! 求解混合整数问题
9 p" u& i: v0 X2 A: n+ y/ b% P/ ^. X
! 打印输出结果
. c9 P( O- }. M; O% a' e
writeln("Solution:\n Objective: ", getobjval)
; \, [ L- r0 o. W
forall(i in ITEMS) writeln(" take(", i, "): ", getsol(take(i)))
# ]/ i7 E& F# e G* W
end-model
8 g" t0 C9 Y- O0 J: t p. _" x" a. c
这段程序运行不了
7 d/ c" p- r \6 ], }
作者:
yunyun842
时间:
2012-7-18 18:09
VALUE := [ 15, 100, 90, 60, 40, 15, 10, 1]
2 J3 q! T6 T; }
WEIGHT := [ 2, 20, 20, 30, 40, 30, 60, 10]
+ q( F* T6 W, g% D3 a
换成
0 W/ m9 M2 o4 I) ^6 H7 U. K/ m
VALUE :: [ 15, 100, 90, 60, 40, 15, 10, 1]
, }1 t8 p6 t) J7 ^; ?
WEIGHT :: [ 2, 20, 20, 30, 40, 30, 60, 10]
3 N: h. Q6 X+ N- J
试试!
作者:
空木葬花
时间:
2014-2-25 08:45
非常感谢楼主的福利!
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5