数学建模社区-数学中国
标题:
Xpress-IVE 建模问题
[打印本页]
作者:
cy411522
时间:
2012-7-5 16:06
标题:
Xpress-IVE 建模问题
哪位高人能帮小弟解决这个问题,小弟不甚感激!!!
# h4 N2 d& H* l8 G+ x, ^ G: P
model "Burglar 1"
+ L& E% R! A0 A8 }: [
uses "mmxprs"
! E5 e2 ]+ {& Q9 T- v, y( U# q
declarations
: M2 q' R! {( L' u
ITEMS = 1..8 ! 物品标号范围
$ O& v/ M/ T) j+ ]
WTMAX = 102 ! 允许携带的重量最大值
) N5 a+ m. T" B) M* P- H9 k0 p% r
VALUE: array(ITEMS) of real ! 物品价值
- v- `1 h0 i1 q" N1 }. @5 o7 z2 t. ~
WEIGHT: array(ITEMS) of real ! 物品重量
3 j0 l, s9 q+ ?3 {8 [1 G; F; A% q
take: array(ITEMS) of mpvar ! 1 表示带走物品i,0 表示不带走物品i
) `/ _, z/ b1 T
end-declarations
4 D1 p1 ^! H( j# u+ D
! 物品: 1 2 3 4 5 6 7 8
: a* T# N# L1 T# K3 |1 R( K: e
VALUE := [ 15, 100, 90, 60, 40, 15, 10, 1]
2 B7 ~2 i! z" P; o" K
WEIGHT := [ 2, 20, 20, 30, 40, 30, 60, 10]
! Q0 w! T2 R! @" \& O
! 目标: 使带走的总价值最大
+ E& V7 _, `) [% ?7 Y X4 ~
MaxVal:= sum(i in ITEMS) VALUE(i)*take(i)
* n! q0 q! |9 c" U2 q# F2 A1 |
! 重量限制
2 Y% {5 }" Z l. O- c
sum(i in ITEMS) WEIGHT(i)*take(i) <= WTMAX
& ^* f5 K! P' g7 ^7 Y: F; d+ f
! 所有变量取值都为0 或1
8 i, M# z/ R H* T R7 @2 S
forall(i in ITEMS) take(i) is_binary
0 {8 E9 s e" I+ c
maximize(MaxVal) ! 求解混合整数问题
$ m( v7 z7 h& P. U/ V/ `0 F
! 打印输出结果
& q0 D8 N- M! P9 Y# E
writeln("Solution:\n Objective: ", getobjval)
3 T! ^8 ~! A! Q$ ~* ~7 ~
forall(i in ITEMS) writeln(" take(", i, "): ", getsol(take(i)))
5 R$ `8 u8 |( y a( A* v4 E
end-model
: F j0 E) P' a6 p6 A+ p+ s
这段程序运行不了
6 q. a7 A9 ^0 q' z& D% s9 \* U
作者:
yunyun842
时间:
2012-7-18 18:09
VALUE := [ 15, 100, 90, 60, 40, 15, 10, 1]
) f! V6 q$ D$ O' q0 B
WEIGHT := [ 2, 20, 20, 30, 40, 30, 60, 10]
9 g4 \ o7 y3 l
换成
: @: @4 c0 M' h. v
VALUE :: [ 15, 100, 90, 60, 40, 15, 10, 1]
d1 M7 M3 G* ~6 J/ ?0 L
WEIGHT :: [ 2, 20, 20, 30, 40, 30, 60, 10]
+ y: f) w( k0 u
试试!
作者:
空木葬花
时间:
2014-2-25 08:45
非常感谢楼主的福利!
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5