订货管理仿真及优化
, R* V- b. x. }2 s, S" B5 h$ X系统描述:
7 O# l' y- Z3 X+ h% b4 t, R(1)员工类型:公司有三级员工,根据技能高低分为A级员工,B级员工和C级员工。# I* v! ?, j! U7 t( M4 n c4 x* {
(2)订单到达:平均每10分钟到达一个客户订单+ D3 v3 K( y* q, \' @ i" z
(3)订单处理:1 u4 b+ y( S3 S1 P+ g2 b3 y
a) 订单到达公司后要由工作人员进行处理,该处理由一个C级员工进行,该处理方式有两种(计算机或人工),处理时间为期望mean=10分钟(计算机)或15分钟=(人工),标准差为mean/10的正态分布。6 Y) h7 A# f4 @" U
b) 处理好的订单进入确认阶段,在该阶段,工作人员打电话和客户进行确认。该工作可以由一个B级员工或C级员工进行,处理时间均服从10-40分钟的均匀分布。3 ~* F$ G* _* V6 K
c) 经过确认的订单送到仓库进行配货,每个订单由一个A级员工进行配货,处理时间服从20-40分钟的均匀分布。" w& r2 \. L; y
d) 检验、包装。检验合格后进行包装、发货,否则重新进行配货。配货合格率为90%。该过程可以由一个A级员工或一个B级员工进行,根据检测设备不同处理时间为testandshiptime=45(新型设备)和50(传统设备)。
( f" h2 Q+ i4 c W$ D(4)成本:
0 K1 p/ T" B) i+ @8 P& [1 J单个订单销售利润=100
2 ^/ P: `, ~1 K- D人工成本A=80,B=70,c=60
3 q2 r* ?9 i) i+ \; m8 t计算机处理成本=50,人工处理成本=1
Q# W0 q8 \' o新型设备成本=60,传统设备成本=45( j$ H) D5 |4 @
(5)优化目标:
6 A: O7 V6 J; U5 T @收益最大化,其中收益=销售利润-人工成本-订单处理设备成本-检测包装设备成本
2 h2 M0 z9 S7 B4 F y变量约束:; @! f3 ^* x3 A% \! D& l' m
mean={15或10}" i8 `: ?# u: d2 e' g) W
testandshiptime={50或45}
7 w( l- [7 N# `. {! UA级员工数量={2 to 4}$ ~, V q) K9 ?* A+ o) Y0 f
B级员工数量={3 to 5}& V& B. C8 W6 t( C) y
C级员工数量={3 to 7}
) E5 ?% L3 Z) L) {: c订单处理工位数={1 to 3}
% @, S# C) |2 r* c& ?订单确认工位数={3 to 4}$ Y9 A" \1 i; U/ A- j4 R
检验包装工位数={3 to 7}1 Q) g4 m; E3 k+ x9 @% F2 R8 J
根据以上要求仿真优化,并回答结果:需要多少名A、B、C级员工?订单处理工位为多少?是计算机处理还是人工处理?订单确认工位数是多少?检验包装工位数是多少?
/ s3 C' u6 @( q* N) b! d! D/ f a
% A$ H( O! _$ t
5 E' z0 W' v- L4 u4 a6 H9 x2 s# R- B. S. d
# N( E' @) r! Q# z4 `3 }
, D8 }+ F! A5 s1 m6 a9 v C
, H3 `- i+ o" A$ x) a8 g, D, b/ [& w7 p; E+ s/ B9 e
# k9 K, l- J: k( L9 {' O L6 j+ R, \4 q7 T2 [0 e* ?
9 l1 D: n& q, B j( J
2 A6 t; u7 x" O- v- v
目标函数程序代码(!行为解释说明,其中变量为自定义变量元素,). ?' d& T; ~, Y( P% k
V.Profit = 0.
1 \ R, q G" {8 `' y6 ^ V.Revenue = NSHIP (Order) * 100.0
a/ P. c* A) @& d3 Q V.Cost = NQTY (stafflevelA) * 80.0 + NQTY (StaffLevelB) * 70.0 + NQTY (StaffLevelC) * 60.0
% l [# @9 k7 A% p- | IF V.AverageLoggingTime = 15 + }( `. X+ n1 H9 a8 S0 E& F# Q
V.LogCost = 1.02 S; | x; A- y) B. I, N- F# o( w
ELSE
. @4 d z* o) f V.LogCost = 50.0
+ g5 D( O; ?) b! y5 G$ [ ENDIF5 p) {! t& y# \6 X! y: S- x2 r4 C
IF V.TestandShipTime = 50
# c) K8 R [; v" Z$ l. [ V.TestCost = 50.09 k& K) `9 p s# ~- p7 O: e/ K4 y
ELSE
P- V h/ N/ x. G, _ V.TestCost = 60.0# b' u8 \# w8 F! O; _ N
ENDIF
, ~1 v( O: C( k V.Cost = V.Cost + NQTY (LoggingOrder) * V.LogCost + NQTY (Testing) * V.TestCost
: H1 Q6 w" O7 d- }7 G" `% Y8 ] V.Profit = V.Revenue - V.Cost
9 _5 f2 D. x0 b; d$ p8 y& v7 [, d RETURN V.Profit
8 ?/ e5 E# j: R( n8 t- D1 x0 Y u* \" r) S5 h
定义完目标函数后,菜单model->optimize..,在左上角variables定义约束条件,在右上角选择目标函数,且为最大化,左下角选择运行时间run,右下角选择算法, |