订货管理仿真及优化
: j3 |) E2 _$ s5 A7 x Q系统描述:
. y: ~2 X4 {/ q(1)员工类型:公司有三级员工,根据技能高低分为A级员工,B级员工和C级员工。
' w4 [. C) D- J7 [7 H' y& T(2)订单到达:平均每10分钟到达一个客户订单
+ y1 @' S! _) I(3)订单处理:
0 F/ Y# I, m. k) y# E; W4 La) 订单到达公司后要由工作人员进行处理,该处理由一个C级员工进行,该处理方式有两种(计算机或人工),处理时间为期望mean=10分钟(计算机)或15分钟=(人工),标准差为mean/10的正态分布。
3 x5 U9 E5 G( ?8 N6 \( u3 g# ?1 m( n5 Gb) 处理好的订单进入确认阶段,在该阶段,工作人员打电话和客户进行确认。该工作可以由一个B级员工或C级员工进行,处理时间均服从10-40分钟的均匀分布。0 _( D1 N! J; Z) [8 k s
c) 经过确认的订单送到仓库进行配货,每个订单由一个A级员工进行配货,处理时间服从20-40分钟的均匀分布。
: z# I# D" [$ S: M& q: \& ]8 j5 ]6 `9 }d) 检验、包装。检验合格后进行包装、发货,否则重新进行配货。配货合格率为90%。该过程可以由一个A级员工或一个B级员工进行,根据检测设备不同处理时间为testandshiptime=45(新型设备)和50(传统设备)。
* s4 z! ~: U; w( Q(4)成本:
3 g4 r J( B0 _4 g# L6 |& o单个订单销售利润=100- x8 V9 a: C0 t2 K+ U
人工成本A=80,B=70,c=60
* y! e; d) z5 N9 w. v5 ~计算机处理成本=50,人工处理成本=1
2 t/ g6 P f1 v& `9 U0 q新型设备成本=60,传统设备成本=45
, @0 q" {# y) N9 ] e" o! p' W(5)优化目标:
% x! l. | T6 k/ h+ c4 W2 Z收益最大化,其中收益=销售利润-人工成本-订单处理设备成本-检测包装设备成本
1 v8 e- I2 ~- ?变量约束:, H# \5 C/ |5 B0 @+ `$ ` U
mean={15或10}
- b3 p) e1 V% B' ^testandshiptime={50或45}
0 A* D9 O) J; GA级员工数量={2 to 4}
" w4 q, b$ |6 I) J( J, m8 s: K1 YB级员工数量={3 to 5}. @5 F F4 j$ m4 h8 h3 w
C级员工数量={3 to 7}
" T! f1 G" {1 \" u$ A订单处理工位数={1 to 3}/ z: ~1 o: u& g0 C: }
订单确认工位数={3 to 4}" d2 s& j5 T+ w% v
检验包装工位数={3 to 7}, ^8 }; \* @* h6 {; R
根据以上要求仿真优化,并回答结果:需要多少名A、B、C级员工?订单处理工位为多少?是计算机处理还是人工处理?订单确认工位数是多少?检验包装工位数是多少?
0 b3 z# y6 y# i* n) `4 W/ i0 E# n! Q0 U. O: x9 d8 I
9 `) x' |6 \* T+ L! {
, T/ L4 u3 Y; a7 C1 r4 c3 Z
$ d. v2 S# o) _, F0 }3 I1 ~: R/ Y* {* ^7 [ j% ?# F! Y- L- I
0 |( U5 b8 ^+ s3 j
; u0 b) W3 q9 x* D8 q& }; j& h1 m6 E$ p, @8 s% ?
9 O4 l% @; S5 `! L& a3 w, q, B; Y# @0 L) a8 `
$ Y, w J5 Y/ }* ^' j% e$ n目标函数程序代码(!行为解释说明,其中变量为自定义变量元素,)# Z0 p8 c2 w. s1 h" z! s* o
V.Profit = 0.
$ t2 U7 b5 Y: N4 K) t6 R4 z V.Revenue = NSHIP (Order) * 100.0& q; ]7 S( r8 N( k; j4 b
V.Cost = NQTY (stafflevelA) * 80.0 + NQTY (StaffLevelB) * 70.0 + NQTY (StaffLevelC) * 60.0: ]* v9 u% m. O# y
IF V.AverageLoggingTime = 15 6 G. J/ j4 z( {6 g# Q: p
V.LogCost = 1.0
3 [) @+ q* N( K$ ~ ELSE+ s0 J0 u) i8 C8 q y
V.LogCost = 50.0
7 e% Z7 K" @3 C, x* A ENDIF
S; ?( `3 V: k# Y IF V.TestandShipTime = 50 & b& a0 H! `6 R. ~8 D, Y5 G( W" Q
V.TestCost = 50.0
7 ?) v2 J2 E1 [, R ELSE7 k, B9 @) c) q, ^/ }
V.TestCost = 60.0
& D+ J! v" d" L& X% L& Y ENDIF6 i* X1 \# C: ?) |* q9 i7 Z
V.Cost = V.Cost + NQTY (LoggingOrder) * V.LogCost + NQTY (Testing) * V.TestCost' V7 Z2 F0 x% f5 |- C; e3 N/ G2 v
V.Profit = V.Revenue - V.Cost
/ I8 x' t$ E* L6 m( J2 `$ ] RETURN V.Profit
9 {' n; i3 B' p
# C9 D/ F: M# Y U定义完目标函数后,菜单model->optimize..,在左上角variables定义约束条件,在右上角选择目标函数,且为最大化,左下角选择运行时间run,右下角选择算法, |