订货管理仿真及优化
E% M6 D' E9 d$ J0 A/ q* E) S& a系统描述:4 [" o7 h3 Y* L9 B/ c
(1)员工类型:公司有三级员工,根据技能高低分为A级员工,B级员工和C级员工。# ]; l& C$ t" Z+ w9 R( ^) z! @
(2)订单到达:平均每10分钟到达一个客户订单
% j& ?8 r/ p8 p8 @(3)订单处理:; ?1 F2 }% [4 j3 S! d( u
a) 订单到达公司后要由工作人员进行处理,该处理由一个C级员工进行,该处理方式有两种(计算机或人工),处理时间为期望mean=10分钟(计算机)或15分钟=(人工),标准差为mean/10的正态分布。) J9 k3 G x; H+ @
b) 处理好的订单进入确认阶段,在该阶段,工作人员打电话和客户进行确认。该工作可以由一个B级员工或C级员工进行,处理时间均服从10-40分钟的均匀分布。% V+ ?$ s% |! E2 C! B3 k! |9 Y) o. m
c) 经过确认的订单送到仓库进行配货,每个订单由一个A级员工进行配货,处理时间服从20-40分钟的均匀分布。" ]/ p3 h# k1 u) t4 t. {$ k. V0 q* [
d) 检验、包装。检验合格后进行包装、发货,否则重新进行配货。配货合格率为90%。该过程可以由一个A级员工或一个B级员工进行,根据检测设备不同处理时间为testandshiptime=45(新型设备)和50(传统设备)。9 [0 q A ~1 [5 e/ c4 `' n
(4)成本:
5 h2 `; B, Q$ [& x# s( b单个订单销售利润=100
, |, p& ?" f# o) O9 Z. m人工成本A=80,B=70,c=60
+ _! ?1 {" p* u# I0 k计算机处理成本=50,人工处理成本=1
* a9 ^- O+ \4 P2 }* p" D3 ]新型设备成本=60,传统设备成本=459 M: q: ?" N; ]# }- }0 ?
(5)优化目标:
) {; g( f6 F5 C, A收益最大化,其中收益=销售利润-人工成本-订单处理设备成本-检测包装设备成本
0 b$ O: ?+ D/ I2 J9 I% t变量约束:
4 w6 @5 }+ v4 V9 S2 g! emean={15或10}) |1 M, Y1 t! R( B; j) Q# A. }7 x% \
testandshiptime={50或45}" ?- s) k, F# K) Z/ i& X) ~
A级员工数量={2 to 4}
! u' p6 s5 t5 m/ X1 N6 ^0 F: wB级员工数量={3 to 5}
! e2 X" i* n0 S' N; x/ kC级员工数量={3 to 7}, o5 C) H m6 s, n
订单处理工位数={1 to 3}: [* R K$ E8 ^4 \ t2 {" H
订单确认工位数={3 to 4}
8 r! m/ u& z1 P检验包装工位数={3 to 7}
7 L3 h4 _0 R4 g2 B1 u% y+ { 根据以上要求仿真优化,并回答结果:需要多少名A、B、C级员工?订单处理工位为多少?是计算机处理还是人工处理?订单确认工位数是多少?检验包装工位数是多少?% K! M" D8 U3 L: f/ K7 q: ], K
6 z% N r. K" r! ]# ~1 R) T9 w' Q1 }
3 } T! R& }# e4 I* J+ G" J% w- O: |% Q: r. c6 H) [6 k
( ~) a" ]) i# B( w) E
0 Q9 f7 P- Q1 c6 H. a
/ f; y# F) ~& c1 {' w- O
; ]& G0 R& w% a& ~" s4 m, `4 H) W0 H3 L1 a1 i% t* S
8 O9 a) c6 c; K& S' _4 M
6 K/ u I8 m. f) m2 o1 ?/ h* o目标函数程序代码(!行为解释说明,其中变量为自定义变量元素,)
3 {9 }4 H4 e7 D2 |# o V.Profit = 0.
a# } G1 z% D V.Revenue = NSHIP (Order) * 100.0' s% e+ N, I# D
V.Cost = NQTY (stafflevelA) * 80.0 + NQTY (StaffLevelB) * 70.0 + NQTY (StaffLevelC) * 60.09 `5 M W5 E2 T) Q9 e
IF V.AverageLoggingTime = 15
8 C0 X S! @, }, h8 {- _1 X V.LogCost = 1.0
. C2 T+ g5 `8 Z+ |* ?( y ELSE
; `- F |( g# L/ K! V0 f7 w6 S: C: P V.LogCost = 50.0- Y6 s/ U- K9 ~4 q. p4 \# f
ENDIF$ |. w* d5 V7 g5 O4 {2 \# {: w( `
IF V.TestandShipTime = 50
! c* x( e/ X. t! S' t6 E V.TestCost = 50.0
/ u- e- X) u. b' m/ K) g/ v( S4 Y- } ELSE8 ~$ {% ~4 \+ ?+ W) G! J" M
V.TestCost = 60.0& W2 G2 [# _" v4 ~
ENDIF
; S) ?! s- t8 |( y6 p' b V.Cost = V.Cost + NQTY (LoggingOrder) * V.LogCost + NQTY (Testing) * V.TestCost
$ a9 ?1 m+ T0 P. k4 E1 M V.Profit = V.Revenue - V.Cost
2 Q* x) n+ m4 E4 Z% M; D RETURN V.Profit
$ l3 {, Q" Y/ k: X. q, s* @: ]# Y; W* M' S. w
定义完目标函数后,菜单model->optimize..,在左上角variables定义约束条件,在右上角选择目标函数,且为最大化,左下角选择运行时间run,右下角选择算法, |