订货管理仿真及优化
8 @7 f- J1 ]* m8 s* c系统描述:8 T0 o' p8 J9 q U. O x
(1)员工类型:公司有三级员工,根据技能高低分为A级员工,B级员工和C级员工。 }- Q' X1 ^# i P' w
(2)订单到达:平均每10分钟到达一个客户订单
# }1 v. I; Z! E+ v. C(3)订单处理:
' q' H9 d x8 R) ?; Xa) 订单到达公司后要由工作人员进行处理,该处理由一个C级员工进行,该处理方式有两种(计算机或人工),处理时间为期望mean=10分钟(计算机)或15分钟=(人工),标准差为mean/10的正态分布。
% ~; I c( D% W9 I, gb) 处理好的订单进入确认阶段,在该阶段,工作人员打电话和客户进行确认。该工作可以由一个B级员工或C级员工进行,处理时间均服从10-40分钟的均匀分布。
% G. y1 R, }" H; mc) 经过确认的订单送到仓库进行配货,每个订单由一个A级员工进行配货,处理时间服从20-40分钟的均匀分布。/ u1 h* [- E$ n+ p& ?/ D4 ~0 W
d) 检验、包装。检验合格后进行包装、发货,否则重新进行配货。配货合格率为90%。该过程可以由一个A级员工或一个B级员工进行,根据检测设备不同处理时间为testandshiptime=45(新型设备)和50(传统设备)。- ~* {" U4 J+ q9 e0 }9 E
(4)成本:8 X! X# p" b+ U. j
单个订单销售利润=100
2 D: p7 I7 O" z! n5 n$ ^人工成本A=80,B=70,c=60
8 L) Z9 q+ p9 q4 w" A$ l计算机处理成本=50,人工处理成本=1
/ K( |3 m. f" c* ?4 B7 L新型设备成本=60,传统设备成本=45
% |5 |9 B( ^# F6 F8 L(5)优化目标:
* R, l1 _) v* \7 b收益最大化,其中收益=销售利润-人工成本-订单处理设备成本-检测包装设备成本: o8 O8 }- V _# e
变量约束:
/ b0 G! `8 X) l& h' mmean={15或10}
' p' u% x5 F; w$ B& Htestandshiptime={50或45}
* B$ a1 N8 r& t) v' [A级员工数量={2 to 4}1 X( ?. O$ n$ Q5 ?3 F! ^
B级员工数量={3 to 5}; i. d' r/ ]' j1 a, `( u
C级员工数量={3 to 7}( s5 w! d! e! ^1 _; o
订单处理工位数={1 to 3}
: z5 ^$ D+ K) C/ t' \9 n订单确认工位数={3 to 4}, h# ~& F6 r4 b7 q9 K. l
检验包装工位数={3 to 7}
$ Q! O' B1 }/ f2 m 根据以上要求仿真优化,并回答结果:需要多少名A、B、C级员工?订单处理工位为多少?是计算机处理还是人工处理?订单确认工位数是多少?检验包装工位数是多少?
- b; T0 e: b2 J! F. u0 T, D
4 U! R! F' X" A/ Z* R# D. q
s! ?9 D# J) \1 x8 M, ]
5 \& }4 b2 ?: B- h" `3 E& G2 ^
- f( |3 u! E9 r- P
9 E9 k4 {: N7 L' l
8 K3 H3 Q/ I3 k# n+ z: A" g) ^" T. r
4 v) A8 Y5 z; Y) |6 S8 X6 x
0 l+ a! x' L/ |: Q& }* \, I( z
' `3 k; d! O* B! z) a5 O2 p; J5 g ?: Q* v
目标函数程序代码(!行为解释说明,其中变量为自定义变量元素,)5 T" ^9 x, d" P& m9 I4 R
V.Profit = 0., P8 e: ]+ ?; e1 M
V.Revenue = NSHIP (Order) * 100.0
# x. X# G- c/ w4 ? u V.Cost = NQTY (stafflevelA) * 80.0 + NQTY (StaffLevelB) * 70.0 + NQTY (StaffLevelC) * 60.0
1 e/ U5 z* v \7 S3 J1 q IF V.AverageLoggingTime = 15 . O" ]; [) c y. p5 Q$ Q8 Y
V.LogCost = 1.0$ F3 _; Q% p2 |% N+ |6 z
ELSE# q' W. _$ \* k( _
V.LogCost = 50.0
" x# t: t6 o8 h* r) o7 z3 B* { ENDIF
( j T! F: j% _2 b IF V.TestandShipTime = 50
: C. e5 q4 P4 F" A8 U V.TestCost = 50.0
' t7 ~9 L7 ^5 u2 ~ ELSE
# _+ y9 l, U: X# t* N V.TestCost = 60.0
8 o9 D4 J9 w4 I1 X& V+ B ENDIF; v# B( K, B" C ~& G
V.Cost = V.Cost + NQTY (LoggingOrder) * V.LogCost + NQTY (Testing) * V.TestCost1 b+ G0 V7 E$ E2 G( `, W0 x
V.Profit = V.Revenue - V.Cost, }) `9 L( d. z: O2 O+ N* V
RETURN V.Profit
$ d4 z2 R" A& l9 K5 Y/ Z2 i
9 b4 e" m+ g9 c& W9 Q j. [- y5 P定义完目标函数后,菜单model->optimize..,在左上角variables定义约束条件,在右上角选择目标函数,且为最大化,左下角选择运行时间run,右下角选择算法, |