QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2351|回复: 3
打印 上一主题 下一主题

[求助]求助~~高手帮忙看下这个程序~~万分感谢!

[复制链接]
字体大小: 正常 放大
vera20        

2

主题

0

听众

7

积分

升级  2.11%

该用户从未签到

新人进步奖

跳转到指定楼层
1#
发表于 2008-5-25 20:22 |只看该作者 |倒序浏览
|招呼Ta 关注Ta

这个是我的毕业设计,老师让用lingo做,我按例子一步步做下来可是怎末也不对,希望高手指点一下!

数学模型:Min z=∑∑∑cijxijk +∑∑∑(tsi-tai)xijk+∑∑∑(tsi+cij-tdi)xijk,

约束:∑j∑kxijk=1

ixijk<=1,

(tsi+cij)xij,k-1<=tskxijk,

xijk=1,泊位j上停靠着第k艘船i

=0
其他

i:
船的号码 j:泊位号码 k: 停泊顺序

cij :泊位j上船i的操作时间

tai :
i到达的时间

tsi
:
i开始工作的时间

tdi :
i离开的时间

我设的:m每艘船上的箱数,a到达时间,l离开时间,r每个泊位的效率,

我设的:m每艘船上的箱数,a到达时间,l离开时间,r每个泊位的效率,

c泊位上的工作时间,t开始工作的时间

MODEL:
sets:
ship/1..11/:m,a,l,x,i;
berth/1..4/:r,j;
link(ship,berth):c,t;
endsets
data:
m=428 45 259 172 684 356 435 350 150 250 333;
a=9 9 0.5 21 0.5 8.5 7 11.5 21.5 22 9;
l=20 21 13 23.83 23.83 21 20.5 23.83 23.83 23.83 23.83;
r=90 60 30 30;
enddata
!Objective function;
[OBJ]min=@sum(link(i,j,k):c(i,j)*x(i,j,k))+@sum(link(i,j,k):t(i)*x(i,j,k)-a(i)*x(i,j
,k));
@for(link(i,j):c(i,j)*r(j)=m(i));
@for(link(j,k)sum(link(j,k):x(i,j,k)=1));
@for(ship(i)sum(ship(i):x(i,j,k));
@for(link(i,j,k):t(i)*x(i,k-1)+c(i,j)*x(i,j,k-1)<t(k)*x(i,j,k);
@for(k<11,k>0);
end

cij :泊位j上船i的操作时间

tai :
i到达的时间

tsi
:
i开始工作的时间

tdi :
i离开的时间

我设的:m每艘船上的箱数,a到达时间,l离开时间,r每个泊位的效率,

我设的:m每艘船上的箱数,a到达时间,l离开时间,r每个泊位的效率,

c泊位上的工作时间,t开始工作的时间

MODEL:
sets:
ship/1..11/:m,a,l,x,i;
berth/1..4/:r,j;
link(ship,berth):c,t;
endsets
data:
m=428 45 259 172 684 356 435 350 150 250 333;
a=9 9 0.5 21 0.5 8.5 7 11.5 21.5 22 9;
l=20 21 13 23.83 23.83 21 20.5 23.83 23.83 23.83 23.83;
r=90 60 30 30;
enddata
!Objective function;
[OBJ]min=@sum(link(i,j,k):c(i,j)*x(i,j,k))+@sum(link(i,j,k):t(i)*x(i,j,k)-a(i)*x(i,j
,k));
@for(link(i,j):c(i,j)*r(j)=m(i));
@for(link(j,k)sum(link(j,k):x(i,j,k)=1));
@for(ship(i)sum(ship(i):x(i,j,k));
@for(link(i,j,k):t(i)*x(i,k-1)+c(i,j)*x(i,j,k-1)<t(k)*x(i,j,k);
@for(k<11,k>0);
end

[此贴子已经被作者于2008-5-25 20:29:02编辑过]
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
vera20        

2

主题

0

听众

7

积分

升级  2.11%

该用户从未签到

新人进步奖

不知道贴上去后为什么那么乱...就是下面这个程序,一直有错,高手帮忙改下...

MODEL:
sets:
ship/1..11/:m,a,l,x,i,k;
berth/1..4/:r,j;
link(ship,berth):c,t;
endsets
data:
m=428 45 259 172 684 356 435 350 150 250 333;
a=9 9 0.5 21 0.5 8.5 7 11.5 21.5 22 9;
l=20 21 13 23.83 23.83 21 20.5 23.83 23.83 23.83 23.83;
r=90 60 30 30;
enddata
!Objective function;
[OBJ]min=@sum(link(i,j,k):c(i,j)*x(i,j,k))+@sum(link(i,j,k):t(i)*x(i,j,k)-a(i)*x(i,j
,k));
@for(link(i,j):c(i,j)*r(j)=m(i));
@for(link(j,k)sum(link(j,k):x(i,j,k)=1));
@for(ship(i)sum(ship(i):x(i,j,k));
@for(link(i,j,k):t(i)*x(i,k-1)+c(i,j)*x(i,j,k-1)<t(k)*x(i,j,k);
@for(k<11,k>0);
end

回复

使用道具 举报

madio        

3万

主题

1311

听众

5万

积分

  • TA的每日心情
    奋斗
    2024-7-1 22:21
  • 签到天数: 2014 天

    [LV.Master]伴坛终老

    自我介绍
    数学中国站长

    社区QQ达人 邮箱绑定达人 优秀斑竹奖 发帖功臣 风雨历程奖 新人进步奖 最具活力勋章

    群组数学建模培训课堂1

    群组数学中国美赛辅助报名

    群组Matlab讨论组

    群组2013认证赛A题讨论群组

    群组2013认证赛C题讨论群组

    集link定义的时候只有两个成员,后面使用的时候怎么出现了3个指标?你看看模型是不是有问题!
    回复

    使用道具 举报

    vera20        

    2

    主题

    0

    听众

    7

    积分

    升级  2.11%

    该用户从未签到

    新人进步奖

    您好.

    模型是老师给的,lingo的程序是我自己按例子写的,那个k是船停泊的顺序,我也不知道改怎末表述...

    是要在sets里面多加个么?

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2025-8-19 17:32 , Processed in 0.530009 second(s), 72 queries .

    回顶部