订货管理仿真及优化
: o, [" I& z# l* v8 |3 `0 t系统描述:
8 q6 K; A+ K5 s9 v( Q# I4 g(1)员工类型:公司有三级员工,根据技能高低分为A级员工,B级员工和C级员工。5 H0 M# q( |1 m& a+ k
(2)订单到达:平均每10分钟到达一个客户订单
0 u: A3 G' W" V/ Y# w(3)订单处理:* f, i2 z# S3 A, F
a) 订单到达公司后要由工作人员进行处理,该处理由一个C级员工进行,该处理方式有两种(计算机或人工),处理时间为期望mean=10分钟(计算机)或15分钟=(人工),标准差为mean/10的正态分布。- ^- m2 C1 J* m$ ?* ~: L( h
b) 处理好的订单进入确认阶段,在该阶段,工作人员打电话和客户进行确认。该工作可以由一个B级员工或C级员工进行,处理时间均服从10-40分钟的均匀分布。
- y0 I0 a. \1 P' }$ Z" y2 Sc) 经过确认的订单送到仓库进行配货,每个订单由一个A级员工进行配货,处理时间服从20-40分钟的均匀分布。- l& P( e* }+ B* [* W4 s
d) 检验、包装。检验合格后进行包装、发货,否则重新进行配货。配货合格率为90%。该过程可以由一个A级员工或一个B级员工进行,根据检测设备不同处理时间为testandshiptime=45(新型设备)和50(传统设备)。2 j7 F' F3 V- w1 b
(4)成本:+ i3 u8 ^7 E" G: ^
单个订单销售利润=100. H# {8 d/ u3 C1 U' H
人工成本A=80,B=70,c=60
" q0 a* I2 L' ?) H计算机处理成本=50,人工处理成本=1
4 E$ g8 u& N: \+ t6 s* X4 n新型设备成本=60,传统设备成本=45
0 Z- S$ H6 ?& }' t: k- ?1 Z7 ?# H" T(5)优化目标:
0 Y9 T. \+ n% R5 L1 I+ [7 F收益最大化,其中收益=销售利润-人工成本-订单处理设备成本-检测包装设备成本' C" S$ c3 h5 d |7 d
变量约束:
% I1 N/ {& R0 ?' Y" [/ Y! u2 ^mean={15或10}
, N7 o- q X; ftestandshiptime={50或45}$ Q" y% \5 r0 v; E8 m' y
A级员工数量={2 to 4}( o3 W$ f$ B7 _& s
B级员工数量={3 to 5}
: j; x/ }: u0 H! x, D2 Y7 PC级员工数量={3 to 7}0 M+ i/ X9 C" e4 @
订单处理工位数={1 to 3}: `8 E L) }% U; T
订单确认工位数={3 to 4}9 y1 E( k. l7 I0 z& _
检验包装工位数={3 to 7}
# {- {) q/ s0 h2 M: h5 O 根据以上要求仿真优化,并回答结果:需要多少名A、B、C级员工?订单处理工位为多少?是计算机处理还是人工处理?订单确认工位数是多少?检验包装工位数是多少?7 L4 }8 P6 G; i: }
% C, i# }2 S! e2 P+ I' n
! A7 g3 n1 {5 V& H* x8 B) D, x* l C F6 [
5 a( A- K. P- {
, _* i3 I. K. k( c* O5 P! e* l! d Y; J: e4 p2 w
. S1 l, e1 o! g) x. g# l. e+ z
+ b; I9 ~& l# C3 z5 Y* Z: l( n; t
# y" C- s- `) { S+ d$ V& U
3 o* [+ m0 R. `1 A
# B7 m! l! k. g( ^4 @; I
目标函数程序代码(!行为解释说明,其中变量为自定义变量元素,)
& i; \1 p0 e, G7 | V.Profit = 0.- b4 A5 K& W! f0 v& R4 n0 M
V.Revenue = NSHIP (Order) * 100.0
8 u1 Z( G& u6 D$ c4 U. j8 e V.Cost = NQTY (stafflevelA) * 80.0 + NQTY (StaffLevelB) * 70.0 + NQTY (StaffLevelC) * 60.0. F8 ?9 n9 U" d: L
IF V.AverageLoggingTime = 15
$ u$ G c4 i- x _+ ?) y1 p V.LogCost = 1.0
! O* t4 u" P/ s* C* p% V ELSE
& C/ U6 }( f4 b, P V.LogCost = 50.0
1 Z' t+ e) @/ q; U, [; G. c ENDIF
, l; {( e* D) b3 _7 U$ J3 @ IF V.TestandShipTime = 50
4 F! Z% B& H* F0 O: n. Z, R V.TestCost = 50.0) V R& ^* S, \' g
ELSE& N: o, l1 i3 f
V.TestCost = 60.0
* b2 e5 V$ H5 Z1 u/ ^; j ENDIF% V1 k- O0 ~0 @: c! l: s9 L
V.Cost = V.Cost + NQTY (LoggingOrder) * V.LogCost + NQTY (Testing) * V.TestCost
% |4 w6 z- D8 U$ T4 k0 \ V.Profit = V.Revenue - V.Cost
, x2 b: S; \1 v9 v! a RETURN V.Profit9 z" `+ n5 }3 F1 c$ I; c; L
3 N3 G8 t4 J$ ~" b2 r定义完目标函数后,菜单model->optimize..,在左上角variables定义约束条件,在右上角选择目标函数,且为最大化,左下角选择运行时间run,右下角选择算法, |