订货管理仿真及优化
: v; }5 d8 C6 t5 J+ U6 c r' ]系统描述:2 h8 L; m \+ Y* k$ o
(1)员工类型:公司有三级员工,根据技能高低分为A级员工,B级员工和C级员工。% c# [( ~' G: A* p7 Q, t4 ?( p; E
(2)订单到达:平均每10分钟到达一个客户订单
8 k7 r: x* L0 x5 R" |(3)订单处理:
1 E5 b2 Y: U# M5 {* w/ @( @a) 订单到达公司后要由工作人员进行处理,该处理由一个C级员工进行,该处理方式有两种(计算机或人工),处理时间为期望mean=10分钟(计算机)或15分钟=(人工),标准差为mean/10的正态分布。8 b, q5 ?8 R2 {- j
b) 处理好的订单进入确认阶段,在该阶段,工作人员打电话和客户进行确认。该工作可以由一个B级员工或C级员工进行,处理时间均服从10-40分钟的均匀分布。& F7 U B( H7 m' y( s' y2 c& O
c) 经过确认的订单送到仓库进行配货,每个订单由一个A级员工进行配货,处理时间服从20-40分钟的均匀分布。7 u! F& P! j$ E0 p. ?8 O$ m2 r: Z+ S
d) 检验、包装。检验合格后进行包装、发货,否则重新进行配货。配货合格率为90%。该过程可以由一个A级员工或一个B级员工进行,根据检测设备不同处理时间为testandshiptime=45(新型设备)和50(传统设备)。& ^7 M/ [- u9 }2 p
(4)成本:+ x2 V7 m1 L+ E$ X# h f1 C! J
单个订单销售利润=100$ t, s3 S4 n x# I6 Z3 Z& N: `
人工成本A=80,B=70,c=60
/ g/ F" q: C1 S" Z' V( d. w" C计算机处理成本=50,人工处理成本=12 j8 r- O" k" F+ N. A2 Y1 J
新型设备成本=60,传统设备成本=45
& \9 a0 @( J' x% e(5)优化目标:
$ X, i" X; d8 |$ ?0 F* G9 M) W2 T收益最大化,其中收益=销售利润-人工成本-订单处理设备成本-检测包装设备成本
3 `' z% q, V9 g9 }变量约束:
, f( P( T/ Z+ I& q3 Xmean={15或10}, `- R* v& h% [- I; C+ [: I# E
testandshiptime={50或45}. g- x5 D* U5 U& F
A级员工数量={2 to 4}5 F) D# H8 M7 \7 z0 ?
B级员工数量={3 to 5}
* Q" ] q. f6 z( WC级员工数量={3 to 7}
2 O* V0 f+ t2 |2 W2 z" M2 n; r订单处理工位数={1 to 3} ]: T/ t% O! i: x/ P% L+ w# [
订单确认工位数={3 to 4}- x: O, h. B/ H j) w$ p
检验包装工位数={3 to 7}
3 R g' r) K4 t8 a$ L2 o( z8 R 根据以上要求仿真优化,并回答结果:需要多少名A、B、C级员工?订单处理工位为多少?是计算机处理还是人工处理?订单确认工位数是多少?检验包装工位数是多少?4 ?) N$ J+ n) L2 H+ b. E2 u$ X0 A
+ M+ Y3 S i3 \7 g4 n, F- R4 f
- n4 M4 b1 N% B4 x7 M2 V1 J8 r/ k6 v
# E$ p7 |/ S) @& @" V5 \2 |# B5 u! W3 c8 g, o. p
+ w* K; _+ ?0 V1 p8 Y
4 r( U1 L4 X8 F* u. R7 Y2 o; \1 [' h
) {! \0 _7 T+ d3 f+ {& d& }3 q$ G2 c% J
/ e# _, A( j e8 T/ f* L1 r( u2 ^) {; }1 }6 ^0 |
目标函数程序代码(!行为解释说明,其中变量为自定义变量元素,) D& A. v$ n6 ^4 d; s
V.Profit = 0.; E4 F% _! p! c6 }( ] t$ R
V.Revenue = NSHIP (Order) * 100.01 a! S5 N* k D2 I& v9 q
V.Cost = NQTY (stafflevelA) * 80.0 + NQTY (StaffLevelB) * 70.0 + NQTY (StaffLevelC) * 60.0( `7 v6 L0 N" p
IF V.AverageLoggingTime = 15
" E3 p; G% ~! |( z/ J- n$ E- s V.LogCost = 1.0
0 K- T9 H' P" G5 B% m# f ]) G; o u2 D ELSE9 L6 L' s/ E. a- p' @ b
V.LogCost = 50.0
0 f% R2 p1 g- a* m n ENDIF
* m% R$ \$ N0 i% E+ ~% ^ IF V.TestandShipTime = 50 ! E3 T! U; ~& ?7 X
V.TestCost = 50.0
3 b1 T' t9 J M0 N# N ELSE
5 l4 |' b& P- O. I$ \1 s+ [& G8 O V.TestCost = 60.05 ~$ E. p n6 U4 j4 ~* l' W, i
ENDIF
/ K! \0 q" ]* F3 M* x0 N, r# Z V.Cost = V.Cost + NQTY (LoggingOrder) * V.LogCost + NQTY (Testing) * V.TestCost8 s5 }7 s) e' q$ s9 ?8 y( n* U
V.Profit = V.Revenue - V.Cost
: o! Y) C2 z6 @+ p0 m: y: n. ] RETURN V.Profit
' c( Y X5 t- s. Q2 j( Y/ K
6 \- b' M( c; U" `定义完目标函数后,菜单model->optimize..,在左上角variables定义约束条件,在右上角选择目标函数,且为最大化,左下角选择运行时间run,右下角选择算法, |