订货管理仿真及优化4 z8 F( b }: d' w( u# D2 `
系统描述:0 Y% L7 g! A0 p) V) i7 a* D& x& l4 ~
(1)员工类型:公司有三级员工,根据技能高低分为A级员工,B级员工和C级员工。
- H: q' ?$ p8 k6 }' s! t4 m. ~; A& N(2)订单到达:平均每10分钟到达一个客户订单) K a3 ]! {8 s" n( y6 [( I
(3)订单处理:1 N# ]* k' G- T. J0 w: w
a) 订单到达公司后要由工作人员进行处理,该处理由一个C级员工进行,该处理方式有两种(计算机或人工),处理时间为期望mean=10分钟(计算机)或15分钟=(人工),标准差为mean/10的正态分布。5 y) [9 N) ]3 A, F) ?, j8 @7 ^7 ]
b) 处理好的订单进入确认阶段,在该阶段,工作人员打电话和客户进行确认。该工作可以由一个B级员工或C级员工进行,处理时间均服从10-40分钟的均匀分布。8 k" I! H8 H3 h% @+ E9 p" p
c) 经过确认的订单送到仓库进行配货,每个订单由一个A级员工进行配货,处理时间服从20-40分钟的均匀分布。
6 @$ v# a) p0 {: [' I$ s4 [d) 检验、包装。检验合格后进行包装、发货,否则重新进行配货。配货合格率为90%。该过程可以由一个A级员工或一个B级员工进行,根据检测设备不同处理时间为testandshiptime=45(新型设备)和50(传统设备)。
& A, R+ A3 z0 r* M. ?9 a(4)成本:
; h! r& v' K8 I, S0 A9 {单个订单销售利润=100
* k8 l( _+ l! e人工成本A=80,B=70,c=60
2 k- e3 B+ K% f% v, u7 y计算机处理成本=50,人工处理成本=1
; z; X6 n( I c# W新型设备成本=60,传统设备成本=45
1 k7 ~; [6 C% Y: I. ](5)优化目标:1 E+ {. [# G9 L9 i$ H5 g2 K
收益最大化,其中收益=销售利润-人工成本-订单处理设备成本-检测包装设备成本 n2 T; Y" X9 n" \0 Z0 v
变量约束:
1 ~4 n3 p' H2 j" }mean={15或10}: ^+ n4 X8 n& i+ y
testandshiptime={50或45}
4 }' U/ ]( Q, ~7 X5 ]A级员工数量={2 to 4}
0 f1 J5 _, y( o/ p) V, eB级员工数量={3 to 5}
+ q! M; D& [ q$ sC级员工数量={3 to 7}- f+ i1 k& l: ~6 g2 J" j) c& }
订单处理工位数={1 to 3}* H# D4 Y* E. r: ]/ @1 K4 e- a
订单确认工位数={3 to 4}: U) q8 m6 F5 |- G" ]& ~/ C" Z' L
检验包装工位数={3 to 7}- m4 ]9 L/ O' x) D/ ]. g
根据以上要求仿真优化,并回答结果:需要多少名A、B、C级员工?订单处理工位为多少?是计算机处理还是人工处理?订单确认工位数是多少?检验包装工位数是多少?
& T" `- @# M6 z: w Z) J" d& K1 S! F6 I
& O" f+ {0 I) {# f4 H- [8 E8 l& }" a( r2 j5 F' F, h/ R# _
3 p, r: N+ b$ C) G2 [
9 |1 v2 F- X2 `. O. v0 S0 M
# g7 |2 n: G; F% h3 f# S
% m' a- g" @: t5 W0 ~6 z: u' ?% v, D+ U; ]! y
8 d5 u+ A9 e6 }( n) W. s+ A
{, d2 r& ~( K+ u# ^: j R' v- Z/ m, ~7 |
& i; q5 u( E" C: u
目标函数程序代码(!行为解释说明,其中变量为自定义变量元素,)2 ^( w3 [6 u% q% F
V.Profit = 0.
$ z6 w; k* A/ G V.Revenue = NSHIP (Order) * 100.0
! } H* C; e3 l6 ?5 l1 T) h0 y/ p V.Cost = NQTY (stafflevelA) * 80.0 + NQTY (StaffLevelB) * 70.0 + NQTY (StaffLevelC) * 60.0
- ?$ b3 D- L9 W5 U0 X# n7 c, e IF V.AverageLoggingTime = 15 2 R9 |# G7 G1 }. W6 A. k; J
V.LogCost = 1.0
/ [* T! e% `+ \; N7 p5 h+ z ELSE' P3 x6 l9 E) O9 L$ L, I9 N0 O! O9 g
V.LogCost = 50.0
: Y) v7 i& s$ b* X2 _: v F/ E ENDIF0 W1 G# W c; n+ R* c7 q8 U1 b* ~
IF V.TestandShipTime = 50
/ q% |* N5 e3 H" f1 o1 D V.TestCost = 50.0" \5 H H/ W, ^" U$ o% D3 ~( d! x" v, ~
ELSE: g; ]2 a4 D7 |6 v) k
V.TestCost = 60.0
1 @2 e2 R1 z6 h3 k5 T ENDIF) T. o" ]: Y2 ]& o# N1 g
V.Cost = V.Cost + NQTY (LoggingOrder) * V.LogCost + NQTY (Testing) * V.TestCost. R8 E. N4 n, s9 p
V.Profit = V.Revenue - V.Cost
9 a$ Z# N" _; Y O3 q9 |& e RETURN V.Profit
7 t0 e5 i) u5 D+ |2 W" |
& l8 C# Z) J7 O7 O) \定义完目标函数后,菜单model->optimize..,在左上角variables定义约束条件,在右上角选择目标函数,且为最大化,左下角选择运行时间run,右下角选择算法, |