订货管理仿真及优化
" A5 D' v$ j! A系统描述:
/ ]6 D1 ?) e1 k. C: y(1)员工类型:公司有三级员工,根据技能高低分为A级员工,B级员工和C级员工。
) t/ p% @0 N# x1 b6 h6 F. L(2)订单到达:平均每10分钟到达一个客户订单
4 M, i1 a1 z1 Z* r/ o(3)订单处理:6 j1 g$ ]+ i) D0 |# D: W f$ ]
a) 订单到达公司后要由工作人员进行处理,该处理由一个C级员工进行,该处理方式有两种(计算机或人工),处理时间为期望mean=10分钟(计算机)或15分钟=(人工),标准差为mean/10的正态分布。. b+ D% I2 w! _5 S9 S) Y
b) 处理好的订单进入确认阶段,在该阶段,工作人员打电话和客户进行确认。该工作可以由一个B级员工或C级员工进行,处理时间均服从10-40分钟的均匀分布。
U$ b& D4 Q Z& |c) 经过确认的订单送到仓库进行配货,每个订单由一个A级员工进行配货,处理时间服从20-40分钟的均匀分布。' n# [9 M( N, F
d) 检验、包装。检验合格后进行包装、发货,否则重新进行配货。配货合格率为90%。该过程可以由一个A级员工或一个B级员工进行,根据检测设备不同处理时间为testandshiptime=45(新型设备)和50(传统设备)。( K: |, G" r5 p! r0 i: s
(4)成本:5 d+ D |0 L. Z& I5 A" x
单个订单销售利润=1005 f/ H. R, y8 ]# d! W
人工成本A=80,B=70,c=60- o8 [* q; L' [: V$ m l
计算机处理成本=50,人工处理成本=12 u, C: T7 G8 G7 V5 L5 J2 ~& O
新型设备成本=60,传统设备成本=45
7 D- p j9 v3 l' g# R(5)优化目标:7 Q7 B3 p1 Q: q2 ?7 E$ t! {
收益最大化,其中收益=销售利润-人工成本-订单处理设备成本-检测包装设备成本
0 c" _0 ~9 m% }$ y/ |变量约束:
6 j: c. H7 j- smean={15或10}1 U. a" k4 e3 v
testandshiptime={50或45}/ T T9 A6 i( l/ s9 G O. q
A级员工数量={2 to 4}4 B1 I: B( W- u
B级员工数量={3 to 5} _) |0 o* Y% J* A
C级员工数量={3 to 7}# Y2 f }3 E; K' Y; I2 J' X( x, O. q
订单处理工位数={1 to 3}. f3 z, U5 x% t1 z" x) K9 a
订单确认工位数={3 to 4}
" O: a4 h) ] U8 B- h2 h* R; @0 O, f检验包装工位数={3 to 7}
; M, L5 z- u" e% ]1 ?+ E 根据以上要求仿真优化,并回答结果:需要多少名A、B、C级员工?订单处理工位为多少?是计算机处理还是人工处理?订单确认工位数是多少?检验包装工位数是多少?! D9 h) U- x: @! L, J0 |2 p
! {, V4 L* s6 t$ y
4 f* B" w8 z# s6 H9 |; g7 n+ C+ L$ z; {2 C
. j* E4 k; k. s
W2 t" p& F9 R5 L! G" C: L; a) b) I) h4 c# A ^" G7 Q; `# ^& r9 S. b6 T
" g6 f% D( {2 [) @, [" ^
6 b+ q6 W: I' d5 F# n* Y. e P7 E+ H" g |
* ~- t8 ^! x- l. O2 w5 y6 H
2 f7 N/ F A" C( X0 y$ i% |/ f4 M
目标函数程序代码(!行为解释说明,其中变量为自定义变量元素,)
) C( Y$ }( P- D8 O& d V.Profit = 0.. U a5 H1 D% e6 [1 y5 b. J
V.Revenue = NSHIP (Order) * 100.01 o0 p5 S( g' }0 @. `$ U8 a
V.Cost = NQTY (stafflevelA) * 80.0 + NQTY (StaffLevelB) * 70.0 + NQTY (StaffLevelC) * 60.0
3 E$ h+ G* b5 |1 i IF V.AverageLoggingTime = 15
" A9 ], W( v! y! u( J$ t! q- Q V.LogCost = 1.0/ t2 J( z1 H3 e3 s( @
ELSE9 a/ V% H; G/ o ]' Y+ S
V.LogCost = 50.0
. ~5 \ T; L+ Y- D% \ ENDIF
: K; S0 s% M. ^ IF V.TestandShipTime = 50 3 `' {5 E' Y# a( U; B0 Z* C
V.TestCost = 50.0+ S- R$ A) W3 c; |8 \0 r5 f
ELSE
% m( G* v$ h4 c6 j% I/ K V.TestCost = 60.0
9 U$ H: y! k) m+ `9 m3 { ENDIF0 I9 K0 \6 `+ n
V.Cost = V.Cost + NQTY (LoggingOrder) * V.LogCost + NQTY (Testing) * V.TestCost
+ { n" r, H5 b V.Profit = V.Revenue - V.Cost
$ Z7 ~/ M* y) I7 N; y" U RETURN V.Profit
* W8 t5 ^, M4 }6 e* j. l
0 }5 c6 A0 i5 N% r4 n# d定义完目标函数后,菜单model->optimize..,在左上角variables定义约束条件,在右上角选择目标函数,且为最大化,左下角选择运行时间run,右下角选择算法, |