订货管理仿真及优化
+ { l, U8 ~$ B, S# K) O系统描述:
% K* V8 Q% V" I7 b(1)员工类型:公司有三级员工,根据技能高低分为A级员工,B级员工和C级员工。
9 @. U$ X2 o2 d7 c) p. M& k8 o) e, l(2)订单到达:平均每10分钟到达一个客户订单
0 K: P5 @, `) B9 P5 N(3)订单处理:
& N. W( v# d' ]" ga) 订单到达公司后要由工作人员进行处理,该处理由一个C级员工进行,该处理方式有两种(计算机或人工),处理时间为期望mean=10分钟(计算机)或15分钟=(人工),标准差为mean/10的正态分布。3 b" w5 K4 M1 V& l) z- `. C
b) 处理好的订单进入确认阶段,在该阶段,工作人员打电话和客户进行确认。该工作可以由一个B级员工或C级员工进行,处理时间均服从10-40分钟的均匀分布。$ N3 Y" t, w$ I3 N
c) 经过确认的订单送到仓库进行配货,每个订单由一个A级员工进行配货,处理时间服从20-40分钟的均匀分布。
- S+ M; ?. L% X4 q1 Ud) 检验、包装。检验合格后进行包装、发货,否则重新进行配货。配货合格率为90%。该过程可以由一个A级员工或一个B级员工进行,根据检测设备不同处理时间为testandshiptime=45(新型设备)和50(传统设备)。
. x, h- f0 Z- `7 q(4)成本:. h8 R( n4 B; C% z% Y9 i
单个订单销售利润=100
0 f* g( [9 o" E8 u0 j$ I人工成本A=80,B=70,c=60) K* i4 w- c2 Y( D f( T, E
计算机处理成本=50,人工处理成本=1
. W, P. z! j1 |9 q新型设备成本=60,传统设备成本=45
( G! q; Z* e5 J2 j(5)优化目标:
( G/ w- }* M2 o; z收益最大化,其中收益=销售利润-人工成本-订单处理设备成本-检测包装设备成本% \' b! v$ R1 Y% p1 u
变量约束:& w$ l! e& j% q, ~5 {; `
mean={15或10}+ u+ x3 }* g3 w1 x: q* L
testandshiptime={50或45}
2 {5 a; U7 d& Z( ^2 g yA级员工数量={2 to 4}- g: D. N! A! [7 ^9 Y$ w/ t( ?" J
B级员工数量={3 to 5}
: R, M! C0 u0 [" [: w! PC级员工数量={3 to 7}
/ ` H3 ]; H- D7 i* D订单处理工位数={1 to 3}, L! [- @' R. |
订单确认工位数={3 to 4}! K* r5 j0 t& m8 m0 F5 R% J
检验包装工位数={3 to 7}: R/ L: m% F& P4 p- {0 A' T- p: Z
根据以上要求仿真优化,并回答结果:需要多少名A、B、C级员工?订单处理工位为多少?是计算机处理还是人工处理?订单确认工位数是多少?检验包装工位数是多少?2 T v6 {3 j$ S; f: e
7 @4 S% j+ L, Q7 t9 ^( j2 Q
$ O/ O: y5 F! C) \" z) w$ {! W# K
- T& X. Z/ x, l9 _& d2 q3 J$ ^' X
* p. E2 B& J- h+ @7 i* `) e. D3 O
- `% V9 _! {" v0 L$ c5 b1 l- U
& W$ d- b4 Q' _
; g X% h- a% M
* G6 v! E" ^$ i5 [# k目标函数程序代码(!行为解释说明,其中变量为自定义变量元素,)8 G7 `# j S# h$ i: N% ^: x# v% G
V.Profit = 0.
5 ], x. Z9 q! J/ B V.Revenue = NSHIP (Order) * 100.0% t: |" P9 q0 Q: t
V.Cost = NQTY (stafflevelA) * 80.0 + NQTY (StaffLevelB) * 70.0 + NQTY (StaffLevelC) * 60.0
0 I1 Y" r: R4 J IF V.AverageLoggingTime = 15 ( W. K9 G% q3 [8 q
V.LogCost = 1.0
& S6 B, D9 ?) ~- ]6 M$ V& C/ b ELSE" d9 @: U2 z$ M. T/ P
V.LogCost = 50.01 A# Y. d; [3 J2 U
ENDIF
( t" \/ o; x+ z$ O% S' P, r' a! v: j IF V.TestandShipTime = 50 * y3 E1 t& U- s& G4 I3 W9 F `& `
V.TestCost = 50.0
! y- X. q) U' b2 B0 V6 D. k ELSE
; \- X3 v. k4 Y$ I: i, d) f V.TestCost = 60.0: v. U6 d& E B1 F0 Z
ENDIF$ m* k$ T- y2 P5 J' D
V.Cost = V.Cost + NQTY (LoggingOrder) * V.LogCost + NQTY (Testing) * V.TestCost
% c4 d3 a+ ~: G$ d" C" f0 Q V.Profit = V.Revenue - V.Cost
! U! b9 ^2 D3 V% h RETURN V.Profit2 X* \3 E4 T. |8 G2 \
- X A' x" \% r( N( h% P" \$ @
定义完目标函数后,菜单model->optimize..,在左上角variables定义约束条件,在右上角选择目标函数,且为最大化,左下角选择运行时间run,右下角选择算法, |