订货管理仿真及优化
7 _3 a3 L: w N: @) {系统描述:
& j% x/ x2 w0 h) Y(1)员工类型:公司有三级员工,根据技能高低分为A级员工,B级员工和C级员工。
{) `' T' D4 I( X* K6 g' A& p! P(2)订单到达:平均每10分钟到达一个客户订单, |$ P7 ~: s( ^6 S
(3)订单处理:. o! A* c/ u, ~. W
a) 订单到达公司后要由工作人员进行处理,该处理由一个C级员工进行,该处理方式有两种(计算机或人工),处理时间为期望mean=10分钟(计算机)或15分钟=(人工),标准差为mean/10的正态分布。, q! I; W- Z4 P) N6 v
b) 处理好的订单进入确认阶段,在该阶段,工作人员打电话和客户进行确认。该工作可以由一个B级员工或C级员工进行,处理时间均服从10-40分钟的均匀分布。
' k3 V4 \! o. [# u, F4 sc) 经过确认的订单送到仓库进行配货,每个订单由一个A级员工进行配货,处理时间服从20-40分钟的均匀分布。
1 M! _+ T3 Y7 ]0 {3 @+ A4 {% M, Pd) 检验、包装。检验合格后进行包装、发货,否则重新进行配货。配货合格率为90%。该过程可以由一个A级员工或一个B级员工进行,根据检测设备不同处理时间为testandshiptime=45(新型设备)和50(传统设备)。9 z0 l7 [7 p" }2 V
(4)成本:. R$ ~" I7 [* E5 D! [/ @
单个订单销售利润=100
. I: T" [/ z& d, G( m人工成本A=80,B=70,c=60- A6 S. r+ f% P$ h% `- x) f' s
计算机处理成本=50,人工处理成本=1 x( X9 l$ }' a# ?
新型设备成本=60,传统设备成本=458 M1 Y2 X8 f3 \ D; n7 _
(5)优化目标: t3 ~$ S7 a+ r+ V0 P
收益最大化,其中收益=销售利润-人工成本-订单处理设备成本-检测包装设备成本/ J3 E7 V9 y. `4 p. Z# }1 ~8 G* ^
变量约束:
# v$ j4 n$ f# P' a8 W1 |mean={15或10}
' ?+ r' i9 w! X0 Ytestandshiptime={50或45}- J i$ Y m) p& G1 e
A级员工数量={2 to 4}
5 ^$ W: y' D+ ]' |% |1 DB级员工数量={3 to 5}! r& f8 e% A0 y% O
C级员工数量={3 to 7}
$ q; h8 z" }2 @1 M2 ~2 n1 f$ V订单处理工位数={1 to 3}: o1 a! U! C Y# h1 N
订单确认工位数={3 to 4}, ]) L4 T+ s+ y6 J8 S
检验包装工位数={3 to 7}
. g$ ]/ _' z3 [5 v5 u" Y+ p6 S' Y% b 根据以上要求仿真优化,并回答结果:需要多少名A、B、C级员工?订单处理工位为多少?是计算机处理还是人工处理?订单确认工位数是多少?检验包装工位数是多少?* I$ r. f- L9 z; e
/ ? k8 Y, W/ w
/ ^$ ~$ F; e9 t& o. K5 g* B% A' B% }& L7 A
6 I: J @5 u9 I% M, M4 `7 D1 i
) j- _! @. |9 a
- x$ _7 t! W% Y. j# h/ [# j& d
1 G, C; D2 T1 `6 ?6 Z% k" w* Q* W; M7 X, V5 e" }9 l2 h
( R y) } L, A9 V; b/ z2 L4 b
+ {% b6 Z2 u* U4 A1 i
5 E W l; a5 S& l目标函数程序代码(!行为解释说明,其中变量为自定义变量元素,)
0 H9 M Z" T! c' u+ c V.Profit = 0.; Y8 F) p3 I" |5 z% c3 {# ^
V.Revenue = NSHIP (Order) * 100.0, a+ }5 l7 D& W4 f. i) v
V.Cost = NQTY (stafflevelA) * 80.0 + NQTY (StaffLevelB) * 70.0 + NQTY (StaffLevelC) * 60.0
7 I0 w- \* u7 o% d$ A IF V.AverageLoggingTime = 15
1 r+ Z" r' w- L! M V.LogCost = 1.0: ]- g$ X. K; U
ELSE6 V2 b2 p+ R) d Y/ q
V.LogCost = 50.02 d+ i& Z! ^6 g5 Q+ w( |
ENDIF
. \ a6 q; C4 f7 [4 I IF V.TestandShipTime = 50
" K4 C9 [8 W1 \2 S# [ V.TestCost = 50.0# E/ N# Z9 Z' i
ELSE
- t, C9 p8 T+ Q" { V.TestCost = 60.0' A6 W& H Z( n @; v5 ~
ENDIF
9 A4 b) e% X. r; } u V.Cost = V.Cost + NQTY (LoggingOrder) * V.LogCost + NQTY (Testing) * V.TestCost9 K2 `$ @! \, k1 Q/ j
V.Profit = V.Revenue - V.Cost; [/ ^5 f. i' S0 Y ^/ r
RETURN V.Profit
/ q' Z- A% U! b: T R
4 s& t- L) u2 e3 ^定义完目标函数后,菜单model->optimize..,在左上角variables定义约束条件,在右上角选择目标函数,且为最大化,左下角选择运行时间run,右下角选择算法, |