订货管理仿真及优化
; y: v5 f4 X1 b系统描述:) x& g9 \4 D) {$ _( i
(1)员工类型:公司有三级员工,根据技能高低分为A级员工,B级员工和C级员工。
" x3 t3 ]) m/ q; k- Y( l( b4 M(2)订单到达:平均每10分钟到达一个客户订单
8 C: o; @ s: [" y. J h/ K; r(3)订单处理:
$ W6 Q! X( m/ o4 @6 g! [5 ya) 订单到达公司后要由工作人员进行处理,该处理由一个C级员工进行,该处理方式有两种(计算机或人工),处理时间为期望mean=10分钟(计算机)或15分钟=(人工),标准差为mean/10的正态分布。! q1 @9 p$ l/ w. b0 E
b) 处理好的订单进入确认阶段,在该阶段,工作人员打电话和客户进行确认。该工作可以由一个B级员工或C级员工进行,处理时间均服从10-40分钟的均匀分布。
z+ M; ^ c; ?9 G x, Y6 H4 Yc) 经过确认的订单送到仓库进行配货,每个订单由一个A级员工进行配货,处理时间服从20-40分钟的均匀分布。1 m, ?, t: _" q q" M
d) 检验、包装。检验合格后进行包装、发货,否则重新进行配货。配货合格率为90%。该过程可以由一个A级员工或一个B级员工进行,根据检测设备不同处理时间为testandshiptime=45(新型设备)和50(传统设备)。9 X& x' b; Q1 U3 q* a
(4)成本:
. }; Y- A8 B+ G7 e7 s! U8 F单个订单销售利润=100
' |8 n1 T! U* c; q/ n* F人工成本A=80,B=70,c=60
# I& W- d' s: N) R计算机处理成本=50,人工处理成本=1
$ P! ]" } m6 C7 ^- m7 u7 X0 ~新型设备成本=60,传统设备成本=453 d3 D/ |, ~$ L, L
(5)优化目标:
4 i2 y/ [/ q3 z7 b- ^1 ` R收益最大化,其中收益=销售利润-人工成本-订单处理设备成本-检测包装设备成本
5 t8 p% _" k6 k' N- }/ O) z2 r( F" u4 A变量约束:3 v2 d* t6 e! R9 `; x7 k8 a
mean={15或10}$ a/ G1 I- G" F8 L
testandshiptime={50或45}
4 ]; p# @/ g* Q- C8 @$ s3 W9 f$ gA级员工数量={2 to 4}0 V" ~ u2 f! E& p# ]7 y& }
B级员工数量={3 to 5}7 B# @. Y) |7 V" H8 T4 V: C3 p
C级员工数量={3 to 7}
2 b! T5 I& k2 d! S1 @. W4 M订单处理工位数={1 to 3}, x8 q+ L, W9 {" b
订单确认工位数={3 to 4}
5 G: i* B6 ^/ g. w- W0 N检验包装工位数={3 to 7}! X% @. o0 R2 H4 C6 A- V
根据以上要求仿真优化,并回答结果:需要多少名A、B、C级员工?订单处理工位为多少?是计算机处理还是人工处理?订单确认工位数是多少?检验包装工位数是多少?
: K3 o8 z( f& |5 h
! d1 L- T _: i: F B& E- u5 s# }: [
# O/ P3 f7 s( q% W: M
2 f- x( q0 m9 N3 H+ H! m2 d
* A) t, \+ H2 W& t- i5 v3 e. L
4 @2 F( h4 I# B2 J4 u6 ?1 W& e! i7 q* q K$ S3 S5 V
; J8 g3 H% f; ~9 f* M
/ h/ x, ]% e- h+ t- C+ q- L: G; R4 y0 P: f( C, m% [, s
- b- P& N2 \7 l" M5 V
目标函数程序代码(!行为解释说明,其中变量为自定义变量元素,): X$ H0 `* R7 f" \ D7 N
V.Profit = 0.
& Z# s3 I+ f7 `. T c g V.Revenue = NSHIP (Order) * 100.0' p6 H* ?! \! Q* w& F
V.Cost = NQTY (stafflevelA) * 80.0 + NQTY (StaffLevelB) * 70.0 + NQTY (StaffLevelC) * 60.0
( v/ \% Y, G; A; ]7 X) ?; X5 } IF V.AverageLoggingTime = 15
# t7 x/ T$ w0 T0 h4 `9 v V.LogCost = 1.0
$ ~0 R- L% u5 L% ]6 G( I# Y+ d& D/ z ELSE
( j. X/ ~. b2 ` m$ F V.LogCost = 50.0
n. m3 U4 I3 ? ENDIF* X8 M3 \6 Z$ m: E, n$ T9 m
IF V.TestandShipTime = 50 + J! a/ |( k6 T- x5 T7 C
V.TestCost = 50.09 S8 Z u( h; H8 c _* h
ELSE
9 n' N- ?3 X. t3 z V.TestCost = 60.0& I! @; I/ _ G: K9 n
ENDIF5 b9 @' ?9 f- _9 N" T' J. V
V.Cost = V.Cost + NQTY (LoggingOrder) * V.LogCost + NQTY (Testing) * V.TestCost2 P+ a7 C) ]- j4 t, j$ p/ I2 v: W
V.Profit = V.Revenue - V.Cost M2 A% Z2 z; Z7 D( j" c
RETURN V.Profit: u! }% q% R; n5 S" h1 ]
3 R; K$ @) G! }3 @, X) r2 {定义完目标函数后,菜单model->optimize..,在左上角variables定义约束条件,在右上角选择目标函数,且为最大化,左下角选择运行时间run,右下角选择算法, |