订货管理仿真及优化
! d$ h2 R/ [ u( S# N系统描述:
" _0 @# m! b( _& @' Y# H(1)员工类型:公司有三级员工,根据技能高低分为A级员工,B级员工和C级员工。% d0 g$ {% g; R7 {* M
(2)订单到达:平均每10分钟到达一个客户订单+ Z; p; C, Q1 r
(3)订单处理:
2 v1 @) U( m, {) { k3 La) 订单到达公司后要由工作人员进行处理,该处理由一个C级员工进行,该处理方式有两种(计算机或人工),处理时间为期望mean=10分钟(计算机)或15分钟=(人工),标准差为mean/10的正态分布。, @0 i. z4 A. n% [ ]9 n
b) 处理好的订单进入确认阶段,在该阶段,工作人员打电话和客户进行确认。该工作可以由一个B级员工或C级员工进行,处理时间均服从10-40分钟的均匀分布。
# Q4 N& Y9 y* v* L! I- h0 d: ic) 经过确认的订单送到仓库进行配货,每个订单由一个A级员工进行配货,处理时间服从20-40分钟的均匀分布。
! y4 Z+ M9 l0 @0 E$ J2 x+ V7 Wd) 检验、包装。检验合格后进行包装、发货,否则重新进行配货。配货合格率为90%。该过程可以由一个A级员工或一个B级员工进行,根据检测设备不同处理时间为testandshiptime=45(新型设备)和50(传统设备)。
0 W$ ?$ @$ L" E5 t' f(4)成本:8 P0 M F& o& B* p$ c% p& Z
单个订单销售利润=100
& y# c5 ?1 Y" _. v% M$ W人工成本A=80,B=70,c=60
3 A* [: r. c& o7 k计算机处理成本=50,人工处理成本=1
! i' o8 g3 D5 a9 |; D6 J0 [% H" ]新型设备成本=60,传统设备成本=45
+ j: c1 r- e+ n8 b( e. v(5)优化目标:6 o* k; C. M" T. j9 K% D- a8 a: Y
收益最大化,其中收益=销售利润-人工成本-订单处理设备成本-检测包装设备成本
) k# d5 K( d3 p: e& c* B3 X变量约束:
/ O$ M# l1 R: n8 w; imean={15或10}
! r; w" f5 k: S- r Ztestandshiptime={50或45}' @: i. H+ Y' K9 `
A级员工数量={2 to 4}
8 f( e- K) J3 N; L( NB级员工数量={3 to 5}' B, W6 Z3 p: `# k' X& i9 b: P
C级员工数量={3 to 7}' Q: C' k/ ?) F7 `
订单处理工位数={1 to 3}
% f: w! M) E6 @) z# ~& X5 Z订单确认工位数={3 to 4}
" f1 x X! r( z3 K$ m; w5 N检验包装工位数={3 to 7}4 e; ~$ e" d/ q0 [" e( {' H) _
根据以上要求仿真优化,并回答结果:需要多少名A、B、C级员工?订单处理工位为多少?是计算机处理还是人工处理?订单确认工位数是多少?检验包装工位数是多少?
1 l& X9 J1 \1 g$ P0 @; a3 P4 p* [3 x# }' R& j/ C; M/ Y
7 r4 M! }; j; K. o. J. o
4 \ d3 i7 P6 N
* Z9 |' ~+ t; a& Z5 U; Y g# r
: Q+ h. C# y! H1 `! L) T* E9 t/ Z. o0 A! D7 k4 g; J
" m5 `- Y6 u6 f
( u% A; N t' V' V( {; }7 ^
! K& t3 W! c( C# N( ~9 `, |$ E; o- j8 e2 D$ ?. ~/ C) k0 T
% G+ i0 O7 F. c" ~3 t6 m H: g+ K目标函数程序代码(!行为解释说明,其中变量为自定义变量元素,)
3 H; G# C4 [* a# g! i V.Profit = 0.: x6 Y- M: ?+ ~% O9 ~
V.Revenue = NSHIP (Order) * 100.08 j5 {7 L) K+ q" w& b
V.Cost = NQTY (stafflevelA) * 80.0 + NQTY (StaffLevelB) * 70.0 + NQTY (StaffLevelC) * 60.0
+ `1 h- C9 `. q$ D+ Z IF V.AverageLoggingTime = 15 7 \$ h( f; s) _. ~, P
V.LogCost = 1.05 q5 m( \5 b' x2 N4 k: }
ELSE. h/ W5 [& m" D+ {# P5 b3 ]8 d
V.LogCost = 50.0
8 q o( F" V1 ^" t; i& L9 ^ ENDIF
/ J. @) k3 X: { U) y7 @ IF V.TestandShipTime = 50
/ l4 ?, D/ l* x) v5 L V.TestCost = 50.0
; `9 t% y1 S7 y. ]9 b ELSE1 a: @2 w; _& @6 |
V.TestCost = 60.0& O5 L* `) x9 o# Y0 x% D/ w
ENDIF
7 c% A( y+ ]% t" V V.Cost = V.Cost + NQTY (LoggingOrder) * V.LogCost + NQTY (Testing) * V.TestCost+ @9 Z" z) h1 }" a8 Y M, q
V.Profit = V.Revenue - V.Cost$ O( P! {9 C9 m
RETURN V.Profit
. y: p8 A; w0 d6 O& U: z1 d
% e, t" ~# g7 P$ c: l定义完目标函数后,菜单model->optimize..,在左上角variables定义约束条件,在右上角选择目标函数,且为最大化,左下角选择运行时间run,右下角选择算法, |