数学建模之存储论

您所在的位置:网站首页 存储论例题 数学建模之存储论

数学建模之存储论

2024-07-13 00:17| 来源: 网络整理| 查看: 265

存储论

存贮论(一):基本概念、无约束的确定型存贮模型_存储论模型_wamg潇潇的博客-CSDN博客(有例题lingo代码)

存储论(二):有约束的确定型存贮模型、单周期随机库存模型_存储论四个模型公式_wamg潇潇的博客-CSDN博客(有例题matlab和lingo代码)

存贮论(或称为库存论)研究存贮系统的 性质、运行规律以及如何寻找最优存贮策略。所谓存贮实质上是将供应与需求两个环节以存贮中心联结起来,起到协调与缓和 供需之间矛盾的作用。

1 存贮模型中的基本概念

1.存贮问题的基本要素            

2.存贮模型的基本费用

3.存贮策略

2 无约束的确定型存贮模型

2.1 模型一:不允许缺货,补充时间极短—基本的经济订购批量存贮模型

2.2 模型二:允许缺货,补充时间较长—经济生产批量存贮模型

2.3 模型三:不允许缺货,补充时间较长—基本的经济生产批量存贮模型

2.4 模型四:允许缺货,补充时间极短的经济订购批量存贮模型

2.5 模型五:经济定购批量折扣模型

3 有约束的确定型存贮模型

3.1 带有约束的经济订购批量存贮模型

3.1.1 具有资金约束的 EOQ 模

3.1.2 具有库容约束的 EOQ 模型

3.1.3 兼有资金与库容约束的最佳批量模型

3.2 带有约束允许缺货模型

3.3 带有约束的经济生产批量存贮模型

4 单周期随机库存模型

4.1 模型的基本假设

4.2 模型的推导

4.3 模型的求解

习题

1 存贮模型中的基本概念

所谓存贮实质上是将供应与需求两个环节以存贮中心联结起来,起到协调与缓和 供需之间矛盾的作用。存贮模型的基本形式如图 1 所示。

1.存贮问题的基本要素

(1)需求率:单位时间内对某种物品的需求量,用 D 表示。

(2)订货批量:一次订货中,包含某种货物的数量,用Q 表示。

(3)订货间隔期:两次订货之间的时间间隔,用T 表示。

2.存贮模型的基本费用

(1)订货费:每组织一次生产、订货或采购的费用,通常认为与定购数量无关, 记为CD 。

(2)存贮费:所有用于存贮的全部费用,通常与存贮物品的多少和时间长短有关。 单位存贮费记为 CP。

(3)短缺损失费:由于物品短缺所产生的一切损失费用,通常与损失物品的多少 和短缺时间的长短有关,记为CS 。

3.存贮策略

所谓一个存贮策略,是指决定什么情况下对存贮进行补充,以及补充数量的多少。 下面是一些比较常见的存贮策略。

(1)t 循环策略:不论实际的存贮状态如何,总是每隔一个固定的时间t ,补充 一个固定的存贮量Q 。

(2)(t,S) 策略:每隔一个固定的时间 t 补充一次,补充数量以补足一个固定的 最大存贮量 S 为准。因此,每次补充的数量是不固定的,要视实际存贮量而定。当存贮(余额)为 I 时,补充数量为Q = S − I 。

(3)(s,S) 策略:当存贮(余额)为 I ,若 I > s ,则不对存贮进行补充;若 I ≤ s , 则对存贮进行补充,补充数量Q = S − I 。补充后达到最大存贮量 S 。s 称为订货点(或 保险存贮量、安全存贮量、警戒点等)。

在很多情况下,实际存贮量需要通过盘点才能 得知。若每隔一个固定的时间t 盘点一次,得知当时存贮 I ,然后根据 I 是否超过订货 点 s ,决定是否订货、订货多少,这样的策略称为(t,s,S)策略。

2 无约束的确定型存贮模型

我们首先考察经济订购批量存贮模型。 所谓经济订购批量存贮模型(economic ordering quantity, EOQ)是指不允许缺货、 货物生产(或补充)的时间很短(通常近似为 0)的模型。

2.1 模型一:不允许缺货,补充时间极短—基本的经济订购批量存贮模型

基本的经济订购批量存贮模型有以下假设:

(1)短缺费为无穷,即  ;

(2)当存贮降到零后,可以立即得到补充;

(3)需求是连续的、均匀的,即需求速度(单位时间的需求量) D 为常数;

(4)每次的订货量不变,订购费不变; (5)单位存贮费为Cp 。

由上述假设,存贮量的变化情况如图 2 所示。

lingo程序

model:

sets:

times/1 2/:n,Q,C;

endsets

data:

n=57 58;

enddata

C_D=10;

D=100*365;

C_P=0.005*365;

@for(times:n=D/Q;C=0.5*C_P*Q+C_D*D/Q);

end

求得全年组织 58 次订货费用少一点。 利用 LINGO 软件,我们可以直接求出问题的整数解。 LINGO 程序如下:

model:

sets:

times/1..100/:C,Q; !100不是必须的,通常取一个适当大的数就可以了;

endsets

C_D=10;

D=100*365;

C_P=0.005*365;

@for(times(i):Q(i)=D/i;C(i)=0.5*C_P*Q+C_D*D/Q);

C_min=@min(times:C);

Q_best=@sum(times(i):Q(i)*(C(i) #eq# C_min));

N_best=D/Q_best;

end

求得一年组织 58 次订货,每次的订货量为 629.3 件,最优费用为 1154.25 元。

2.2 模型二:允许缺货,补充时间较长—经济生产批量存贮模型

模型假设条件:

(1)需求是连续的,即需求速度 D 为常数;

(2)补充需要一定时间。即一旦需要,生产可立刻开始,但生产需要一定周期。 设生产是连续均匀的,即生产速度 P 为常数。同时,设 P > D ;

(3)单位存贮费为 CP,单位缺货费为CS,订购费为 CD。不考虑货物价值。 存贮状态图见图 3。

model:

D=4900;

C_P=1000;

P=9800;

C_D=500;

C_S=2000;

T1=(2*C_D*(C_P+C_S)/(D*C_P*C_S*(1-D/P)))^0.5; !单位为年;

T=T1*365; !单位为天;

Q=D*T1;

T_S=C_P*T/(C_P+C_S); !求缺货时间;

T_P=D*T/P; ! 求生产周期;

C=2*C_D/T1; ! 求年总费用;

end

2.3 模型三:不允许缺货,补充时间较长—基本的经济生产批量存贮模型

在模型二的假设条件中,取消允许缺货条件(即设Cs → ∞ ,  t2 = 0 ),就成为模 型三。因此,模型三的存贮状态图和最优存贮策略可以从模型二直接导出。 模型三的存贮状态见图 4。下面我们用另外的方法导出模型三的最优存贮策略。

2.4 模型四:允许缺货,补充时间极短的经济订购批量存贮模型

在模型二的假设条件中,取消补充需要一定时间的条件(即设 P → ∞ ),就成为 模型四。因此,和模型三一样,模型四的存贮状态图和最优存贮策略也可以从模型二直 接导出。 模型四的存贮状态图见图 6。下面我们用另外的方法导出模型四的最优存贮策略。 设T 仍为时间周期,其中T1 表示T 中不缺货时间,T2 表示T 中缺货时间,即 T1 +T2 = T 。 S 为最大缺货量,Cs 为缺货损失的单价,Q 仍为每次的最高订货量,则 Q − S 为最高存贮量,因为每次得到订货量Q 后,立即支付给顾客最大缺货 S 。

model:

min=0.5*C_P*(Q-S)^2/Q+C_D*D/Q+0.5*C_S*S^2/Q;

n=D/Q;@gin(n);

data:

C_D=12000;

D=96000;

C_P=3.6;

C_S=13.2;

enddata

end

求得全年组织 3 次订货,每次的订货量为 32000 件,最大缺货量为 6857.141 件, 最优费用为 81257.14 元。 对于确定型存贮问题,上述四个模型是最基本的模型。其中,模型一、三、四又可看作模型二的特殊情况。

在每个模型的最优存贮策略的各个参数中,最优存贮周期T 是最基本的参数,其它各个参数和它的关系在各个模型中都是相同的。根据模型假设条 件的不同,各个模型的最优存贮周期  之间也有明显的规律性。因子  对应了 是否允许缺货的假设条件,因子  对应了补充是否需要时间的假设条件。

一个存贮问题是否允许缺货或补充是否需要时间,完全取决于对实际问题的处理 角度,不存在绝对意义上的不允许缺货或绝对意义上的补充不需要时间。如果缺货引起 的后果或损失十分严重,则从管理的角度应当提出不允许缺货的建模要求;否则,可视 为允许缺货的情况。至于缺货损失的估计,应当力求全面和精确。如果补充需要的时间 相对于存贮周期是微不足道的,则可考虑补充不需要时间的假设条件;否则,需要考虑 补充时间。在考虑补充时间时,必须分清拖后时间和生产时间,两者在概念上是不同的。

2.5 模型五:经济定购批量折扣模型

所谓经济订购批量折扣模型是经济订购批量存贮模型的一种发展,即商品的价格 是不固定的,是随着订货量的多少而改变的。就一半情况而论,物品订购的越多,物品 的单价也就越低,因此折扣模型就是讨论这种情况下物品的订购数量。 一年花费的总费用由三个方面组成:年平均存贮费、年平均订货费和商品的购买 费用,即

model:

sets:

range/1..4/:B,K,C_P,Q,EOQ,C; !B是订货量的分界点,Q表示由式(35)计算出

的订货量,EOQ是调整后的订货量;

endsets

data:

D=40000; C_D=9000; R=0.2;

B=10000,20000,30000,40000;

K=35.225,34.525,34.175,33.825;

Enddata

@for(range:C_P=R*K;Q=(2*C_D*D/C_P)^0.5);

EOQ(1)=Q(1)-(Q(1)-B(1))*(Q(1)#gt# B(1));

@for(range(i)|i #gt# 1:EOQ(i)=Q(i)+(B(i-1)-Q(i)+1)*(Q(i) #lt#

B(i-1))-(Q(i)-B(i))*(Q(i) #gt# B(i)));

@for(range:C=0.5*C_P*EOQ+C_D*D/EOQ+K*D);

C_min=@min(range:C);

Q_best=@sum(range:EOQ*(C #eq# C_min));

T_best=Q_best/D;

end

求得最优订货量为 10211 件,最优存贮费用为 145151510 元,最优订货周期是平均 0.255 年一次。 比较计算结果中的 Q 值与 EOQ 值,会对程序的理解有很大的帮助。 我们也可以使用如下的LINGO程序求得最优订货量和最优订货周期。

model:

sets:

range/1..4/:B,K,C_P,Q; !B是订货量的分界点,Q表示由式(35)计算出的订货量,

EOQ是调整后的订货量;

endsets

data:

D=40000; C_D=9000; R=0.2;

B=10000,20000,30000,40000;

K=35.225,34.525,34.175,33.825;

Enddata

n=@size(range);

@for(range:C_P=R*K;Q=(2*C_D*D/C_P)^0.5);

Q_best=Q(1)*(Q(1) #le# B(1))+@sum(range(i)| i #ne# 1 :Q(i)*(Q(i) #gt#

B(i-1) #and# Q(i) #le# B(i)));

T_best=Q_best/D;

end

Lingo程序

model:

sets:

kinds/1..5/:C_P,D,K,W,Q,N;

endsets

min=@sum(kinds:0.5*C_P*Q+C_D*D/Q);

@sum(kinds:K*Q)



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3