数模论坛

 找回密码
 注-册-帐-号
搜索
热搜: 活动 交友 discuz
查看: 10799|回复: 12

跪求高手帮我提供点思路

[复制链接]
发表于 2007-7-2 11:10:25 | 显示全部楼层 |阅读模式
B题:商业公司的订货问题
某个商业公司管理着5个仓库(B1—B5)和8个分店(C1—C8),主要经营10种物资,而这些物资全部向3个工厂(A1—A3)进货。公司的工作流程是根据8个分店的销售需要,先向工厂订货,然后将各种物资运送到仓库,再由仓库运送到分店进行销售。分店只消耗物资,不储存物资。
各个工厂生产10种物资的全部或部分物资,年产量如表一,而各种物资单价如表二。每个工厂到每个仓库的运输单价如表三,每个仓库的容量如表四。同种物资在不同的仓库的库存费一样,而不同物资的库存费是不同的,另外每种物资有着自己的体积,物资的库存费与单位占用库容如表五。5个仓库到8个分店的运输单价如表六,8个分店对物资的年需求量如表七。
公司每次订货都会有其它的各种花费,不妨称为订货费,设公司每次的订货费为1万元,另外,一次订货可使用的流动资金上限为100万元,如果进行销售时允许缺货,但是缺货的损失费是存储费的2倍,请问:
1)公司一年之中应该怎样组织订货(各种物资的订货次数与订货量以及运输方案)使得总的花费最少?
2)如果A1工厂有订购优惠活动,物资订购量每增加30件订购单价就会降低5元,最多优惠15元,公司又应该怎样组织订货?
附加说明:
1.问题的开放部分可自己合理假设;
2.若数据有不合理的地方自己进行适当的修改,并在论文中说明清楚。
 楼主| 发表于 2007-7-2 11:11:04 | 显示全部楼层

数据如下

附表:

表一:3个工厂生产10种物资的年产量
年产量
(万件/年)        M1        M2        M3        M4        M5        M6        M7        M8        M9        M10
A1        0.2        --        0.3        0.1        0.32        0.1        --        0.2        0.15        0.15
A2        0.2        0.13        --        0.1        --        0.15        0.2        0.15        --        0.12
A3        --        0.25        0.08        0.15        --        0.1        0.14        --        0.25        0.15

表二:3个工厂生产的10种物资的单价
订购单价
(元/件)        M1        M2        M3        M4        M5        M6        M7        M8        M9        M10
A1        100        --        210        250        290        300        --        430        450        500
A2        90        180        --        240        --        305        380        435        --        490
A3        --        170        210        245        --        285        400        --        450        480

表三:3个工厂到5个仓库的运输单价
运价
(元/件)        B1        B2        B3        B4        B5
A1        --        10        14        17        13
A2        10        8        --        9        16
A3        15        16        9        15        --

表四:四个仓库的库容量
仓库        B1        B2        B3        B4        B5
容量(m3)        800        600        1000        700        800

表五:10种物资的单件库存费和体积
物资        M1        M2        M3        M4        M5        M6        M7        M8        M9        M10
单位库存费
(元/件•年)        40        70        90        100        120        120        150        160        180        200
体积(m3/件)        1.5        1.0        1.5        2.0        1.5        0.5        1.5        2.0        1.0        0.5

表六:5个仓库到8个分店的单位运价
运价
(元/件)        C1        C2        C3        C4        C5        C6        C7        C8
B1        3        2        3        6        3        1        4        5
B2        --        3        3        --        5        2        5        3
B3        5        --        2        5        --        5        --        4
B4        4        1        4        4        2        --        2        --
B5        2        2        5        3        5        2        5        2

表七:8个分店对10种物资的需求量
需求量
(件/年)        M1        M2        M3        M4        M5        M6        M7        M8        M9        M10
C1        60        300        800        100        200        600        400        80        150        600
C2        90        800        500        1200        500        400        200        100        800        500
C3        150        500        400        800        600        ---        800        800        400        ---
C4        300        400        200        400        150        800        500        150        1500        400
C5        400        ---        150        100        200        300        ---        400        90        800
C6        500        200        1000        ---        400        150        1000        1000        200        400
C7        800        1200        90        150        90        1000        90        500        100        1000
C8        1500        200        500        500        1000        90        150        200        500        200
这题的模型是允许缺货的经济订购批量存储模型和转运问题的结合,在整理思路时限入了困境,特别是在用LINGO编程的时候,下不了手,望各位高手帮帮忙,先谢谢了.急啊,我明天就要交了
发表于 2007-7-2 11:26:05 | 显示全部楼层
允许缺货的存储模型在姜启源的<<数学建模>>书上有详细推导,你把你的模型发出来看看吧
 楼主| 发表于 2007-7-2 15:43:54 | 显示全部楼层
我的模型目标函数也建立的和允许缺货的存储模型一样,不过就是在
 楼主| 发表于 2007-7-2 15:50:36 | 显示全部楼层
在限制条件那里有点不同,我就是不知道是不是那里错了,我是分步考虑的,就是将它的最优分为存储费+成本费+运输费合起来,在存储费上我编的程序是
model:
sets:
kinds/1..10/:c_p,d,w,v,Q,s,N;
fa/A1,A2,A3/i;
hw/m1..m10/j;
links(fa,hw):p,x;
endsets
min=@sum(kinds:0.5*c_p*(Q-s)^2/Q+s^3/Q);
@sum(links(i,j):p(i,j)*x(i,j))<=T
@for(wh(j)sum(fa(i):x(i,j))=Qj(j));
@sum(kinds:v*(Q-s))<=w;
@for(kinds:N=d/Q;@gin(N));
endsets
data:
c_p=40,70,90,100,120,120,150,160,180,200;
d=3800,3600,3640,3250,3140,3340,3140,3230,3740,3900;
w=3900;
v=1.5,1.0,1.5,2.0,1.5,0.5,1.5,0.5,1.5,2.0,1.0,0.5;
p=100,1000000,210,250,290,300,1000000,430,450,500
  90,180,1000000,240,1000000,305,380,435,1000000,490,
  1000000,170,210,245,1000000,285,400,1000000,450,480;
enddata
end
有很多说是语法错误的,麻烦各位大哥帮下忙了
 楼主| 发表于 2007-7-2 15:53:42 | 显示全部楼层
在限制条件那里有点不同,我就是不知道是不是那里错了,我是分步考虑的,就是将它的最优分为存储费+成本费+运输费合起来,在存储费上我编的程序是
model:
sets:
kinds/1..10/:c_p,d,w,v,Q,s,N;
fa/A1,A2,A3/Qi;
hw/m1..m10/Qj;
links(fa,hw):p,x;
endsets
min=@sum(kinds:0.5*c_p*(Q-s)^2/Q+s^3/Q);
@sum(links(i,j):p(i,j)*x(i,j))<=T
@for(wh(j)sum(fa(i):x(i,j))=Qj(j));
@sum(kinds:v*(Q-s))<=w;
@for(kinds:N=d/Q;@gin(N));
endsets
data:
c_p=40,70,90,100,120,120,150,160,180,200;
d=3800,3600,3640,3250,3140,3340,3140,3230,3740,3900;
w=3900;
v=1.5,1.0,1.5,2.0,1.5,0.5,1.5,0.5,1.5,2.0,1.0,0.5;
p=100,1000000,210,250,290,300,1000000,430,450,500
  90,180,1000000,240,1000000,305,380,435,1000000,490,
  1000000,170,210,245,1000000,285,400,1000000,450,480;
enddata
end
有很多说是语法错误的,麻烦各位大哥帮下忙了
 楼主| 发表于 2007-7-2 16:24:35 | 显示全部楼层
model:
sets:
kinds/1..10/:c_p,d,w,v,Q,s,N;
fa/A1,A2,A3/:qi;
hw/m1..m10/ :qj;
links(fa,hw):p,x;
endsets
min=@sum(kinds:0.5*c_p*(Q-s)^2/Q+s^3/Q);
@sum(links(i,j):p(i,j)*x(i,j))<=T;
@sum(kinds:v*(Q-s))<=v_t;
@for(kinds:N=d/Q;@gin(N));
@for(hw(j): @sum(fa(i):x(i,j))=Qj(j));
@for(hw(j): @sum(fa(i):x(i,j))=Q(j));
data:
c_p=40,70,90,100,120,120,150,160,180,200;
d=3800,3600,3640,3250,3140,3340,3140,3230,3740,3900;
v_t=3900;
v=1.5,1.0,1.5,2.0,1.5,0.5,1.5,2.0,1.0,0.5;
p=100,1000000,210,250,290,300,1000000,430,450,500
  90,180,1000000,240,1000000,305,380,435,1000000,490,
  1000000,170,210,245,1000000,285,400,1000000,450,480;
enddata

end
程序改成这样,但也还是运行不了
发表于 2007-7-2 17:55:38 | 显示全部楼层
model:
sets:
kinds/1..10/:c_p,d,v,Q,s,N;
fa/A1,A2,A3/i;
hw/m1..m10/j;
links(fa,hw):p,x;
endsets
[email=min=@sum(kinds:0.5*c_p*(Q-s)^2/Q+s^3/Q]min=@sum(kinds:0.5*c_p*(Q-s)^2/Q+s^3/Q[/email]);
@sum(links(i,j):p(i,j)*x(i,j))<=T;
@for(hw(j):
@sum(fa(i):x(i,j))=Qj(j));
@sum(kinds:v*(Q-s))<=w;
@for(kinds:N=d/Q;@gin(N));
data:
c_p=40,70,90,100,120,120,150,160,180,200;
d=3800,3600,3640,3250,3140,3340,3140,3230,3740,3900;
w=3900;
v=1.5 1.0 1.5 2.0 1.5 0.5 1.5 2.0 1.0 0.5;
p=100,1000000,210,250,290,300,1000000,430,450,500
  90,180,1000000,240,1000000,305,380,435,1000000,490,
  1000000,170,210,245,1000000,285,400,1000000,450,480;
enddata
end
我把你的程序改了,编译能通过.你再试试吧
发表于 2007-7-2 18:11:51 | 显示全部楼层
你的模型中的T不应该是决策变量,应该是100万吧?如果是的话还应在数据域中赋值
发表于 2007-7-2 18:20:56 | 显示全部楼层
求解发现你的模型还是存在问题,得不出可行解
您需要登录后才可以回帖 登录 | 注-册-帐-号

本版积分规则

小黑屋|手机版|Archiver|数学建模网 ( 湘ICP备11011602号 )

GMT+8, 2024-5-10 13:47 , Processed in 0.053577 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表