订货管理仿真及优化
* }9 _' H8 {( Q$ }+ B" p系统描述: M5 u0 X q' N* U/ Z
(1)员工类型:公司有三级员工,根据技能高低分为A级员工,B级员工和C级员工。
; w; n2 ^3 V5 p' e+ d8 [(2)订单到达:平均每10分钟到达一个客户订单3 ]0 F, e9 e( M" T6 [) T+ b
(3)订单处理:
- b+ X9 b0 [7 _1 H/ e( A4 Y' t* pa) 订单到达公司后要由工作人员进行处理,该处理由一个C级员工进行,该处理方式有两种(计算机或人工),处理时间为期望mean=10分钟(计算机)或15分钟=(人工),标准差为mean/10的正态分布。% S3 i; Y4 s8 N2 t
b) 处理好的订单进入确认阶段,在该阶段,工作人员打电话和客户进行确认。该工作可以由一个B级员工或C级员工进行,处理时间均服从10-40分钟的均匀分布。% ~7 P9 p( C9 G7 {" h# m' D6 j
c) 经过确认的订单送到仓库进行配货,每个订单由一个A级员工进行配货,处理时间服从20-40分钟的均匀分布。5 z, \9 C% H! Z) v5 W: R1 _* J, q) C
d) 检验、包装。检验合格后进行包装、发货,否则重新进行配货。配货合格率为90%。该过程可以由一个A级员工或一个B级员工进行,根据检测设备不同处理时间为testandshiptime=45(新型设备)和50(传统设备)。
, S& E U' e: F4 z$ V(4)成本:
9 t" B/ i+ J' ~5 m单个订单销售利润=100
, y! G1 Y1 H$ T1 m人工成本A=80,B=70,c=608 |( ], n6 d% v) a" S- q, Y" g
计算机处理成本=50,人工处理成本=1
3 k' b& ~+ c0 t6 a6 C新型设备成本=60,传统设备成本=45; [& W: \! f7 @8 c: P
(5)优化目标:
6 V2 ]2 q5 G6 W' F' u/ F收益最大化,其中收益=销售利润-人工成本-订单处理设备成本-检测包装设备成本
, I+ ]+ h) w) {+ R* a! A变量约束:: G! S! Z" s0 ^3 d/ X! g1 y3 R0 A
mean={15或10}; E4 C1 ~4 s8 }" ]! s7 i |+ g
testandshiptime={50或45}8 G9 y# q0 F0 t9 P# j1 c
A级员工数量={2 to 4}
6 r7 m( D& \) s+ k3 R, X! T2 WB级员工数量={3 to 5}( k* M+ v' i: v6 F& m
C级员工数量={3 to 7}
" o0 W% n- j C/ Y/ u/ _: t订单处理工位数={1 to 3}+ v$ U s+ t+ \, v
订单确认工位数={3 to 4}
7 c! n% G, e) z: R检验包装工位数={3 to 7}
6 x ~9 k h/ q! m: f' p' r/ w 根据以上要求仿真优化,并回答结果:需要多少名A、B、C级员工?订单处理工位为多少?是计算机处理还是人工处理?订单确认工位数是多少?检验包装工位数是多少?
. ~( W3 Z7 b: _ Z8 h* |
8 }3 e5 l+ o3 k$ W j
- l' V' P* _: |& x: a% E8 ?0 P) z* L L& ~
* m: `2 j0 l3 c: M* Z- E: P* l- R% `: ^2 S. }. x$ y6 r
1 ? h5 N. o& _3 o6 b: T' }/ l
0 y6 J7 O+ ?+ \; U' P1 P/ B5 R
3 T/ O$ {+ o" N* F. E
% _ w7 D# h z. B$ u% r. U3 {
6 h2 R) Y$ z) i/ a) t! v1 e. b: x' f8 @! y
目标函数程序代码(!行为解释说明,其中变量为自定义变量元素,)
* k2 k7 J0 k0 r) e# l. ^% C V.Profit = 0.
! }" \# k5 N* x: h. } V.Revenue = NSHIP (Order) * 100.0
. j# j7 T: p, L3 v- A" ^ V.Cost = NQTY (stafflevelA) * 80.0 + NQTY (StaffLevelB) * 70.0 + NQTY (StaffLevelC) * 60.0
3 d! x$ x1 l% q# P* B: z# ^" I* a IF V.AverageLoggingTime = 15 % t$ w+ _" L, @! r
V.LogCost = 1.0+ I9 H! s! |7 v, t
ELSE
: l& d3 B5 G7 e$ f0 a0 ]( C V.LogCost = 50.0+ Z5 `/ E2 g3 v6 w- x
ENDIF ^; o: f T8 c
IF V.TestandShipTime = 50 8 ]2 d: @& w' _( c. w6 m
V.TestCost = 50.0& ?7 ]; c; m- [
ELSE
`7 @8 h/ ~2 U& g V.TestCost = 60.0" E, L2 j' R. i( Q9 ?/ w2 g
ENDIF
; U+ ~: {' y) P% f1 { V.Cost = V.Cost + NQTY (LoggingOrder) * V.LogCost + NQTY (Testing) * V.TestCost
' `; |% Z3 v6 |- j V.Profit = V.Revenue - V.Cost7 z: L$ ]1 Y: U0 K1 X. H
RETURN V.Profit% Y$ A7 ~( v: a
+ x% e. Y# _3 a+ f
定义完目标函数后,菜单model->optimize..,在左上角variables定义约束条件,在右上角选择目标函数,且为最大化,左下角选择运行时间run,右下角选择算法, |