数学建模社区-数学中国

标题: 初学者,求帮忙解释下详细解释下这些代码,急,非常感谢 [打印本页]

作者: 岁月静好。    时间: 2013-7-12 10:53
标题: 初学者,求帮忙解释下详细解释下这些代码,急,非常感谢
model:
SETS:
  hy/1..1000/:h;                          !1000个会员;
  DVD/1..100;                          !DVD数;
  fp(hy,DVD):w,x ;                         !分配;
ENDSETS
DATA:
w=@file('C:\Documents and Settings\Administrator\桌面\1.txt');
  d=@ole('C:\Documents and Settings\Administrator\桌面\B2005DATA.xls','dvdshu');     

ENDDATA
max=@sum(fp:w*x);
@for(hy(i):h(i)=@sum(dvd(j):x(i,j));@bnd(2,h(i),3));
@for(dvd(j)sum(hy(i):x(i,j))<=d(j));
@for(fpbin(x));
end
(来源于某篇文章)
作者: wujianjack2    时间: 2013-7-12 17:19
第二句貌似写错了,就我的理解,SETS部分:第一个集合hy定义了1000名会员,第二个集合定义了100种DVD,fp是衍生集合,w指某个会员对某种DVD的满意度,x表示是否把某个DVD分给某个会员。DATA部分:第一句指从这个文件中导入相关数据(每个会员对每个DVD的满意度)赋给w,第二句从另一数据文件中导入相关数据(每种DVD的库存)赋给d;目标函数是所有会员的满意度达到最大;第一个@FOR指每名会员分到的DVD数量为2或3,第二个@FOR指分给所有会员的每种DVD数目不超过那种DVD的库存,第三个@FOR限制X为0或1,表示若第I个会员分到第J个DVD,X(I,J)=1,否则为0。

我说得可能有点啰嗦,不好意思!




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5