背景模型
主题 | 动态调度问题 (dynamic scheduling problem) | |
模型 | $$ | |
生产系统 | 2个产品 | 生产时间:指数分布,均值 1 / μ i 1/{\mu_i} 1/μi |
需求 | 2个产品的需求, 各自满足 Poisson 分布 | 第 i i i 类需求的rate: λ i \lambda_i λi |
成本 | 单位产品库存持有成本 h i h_i hi | 单位产品延迟交付成本 b i b_i bi |
管理目标 | 调度生产,在两种产品的 costs 之间取得平衡 |
DP模型
标记 | 含义 |
---|---|
X i ( t ) X_i(t) Xi(t) | 产品 i i i 在 t t t 时刻的库存水平 |
X ( t ) = ( X 1 ( t ) , X 2 ( t ) ) X(t)=(X_1(t),X_2(t)) X(t)=(X1(t),X2(t)) | 系统状态 |
h ( X ( t ) ) = ∑ i = 1 2 h i X i ( t ) + + b i X i ( t ) − h(X(t))=\mathop{\sum}\limits_{i=1}^2h_iX_i(t)^++b_iX_i(t)^- h(X(t))=i=1∑2hiXi(t)++biXi(t)− | 库存成本函数 |
{ 不生产,生产产品1,生产产品2 } | 策略集,用0,1,2表示 |
u ( t ) ∈ { 0 , 1 , 2 } u(t)\in\{0,1,2\} u(t)∈{0,1,2} | 在 t t t 时刻的策略 |
优化问题模型:
f
(
x
)
=
f
(
x
1
,
x
2
)
=
min
u
E
x
u
[
∫
0
∞
e
−
α
t
h
(
X
(
t
)
)
d
t
]
f(x)=f(x_1,x_2)=\min_u E_x^u\left[ \int_0^{\infty} e^{-\alpha t} h(X(t)) dt \right]
f(x)=f(x1,x2)=uminExu[∫0∞e−αth(X(t))dt] 其中
x
=
(
x
1
,
x
2
)
x=(x_1,x_2)
x=(x1,x2) 为初始库存水平,
E
x
u
E_x^u
Exu 是对需求计算期望。
最优解满足下面的HJB方程:
f
(
x
1
,
x
2
)
=
h
(
x
1
,
x
2
)
+
λ
1
f
(
x
1
−
1
,
x
2
)
+
λ
2
f
(
x
1
,
x
2
−
1
)
f(x_1,x_2)=h(x_1,x_2)+\lambda_1 f(x_1-1,x_2)+\lambda_2 f(x_1, x_2-1) \qquad\qquad\qquad\qquad\qquad\qquad\qquad\qquad
f(x1,x2)=h(x1,x2)+λ1f(x1−1,x2)+λ2f(x1,x2−1)
+
min
[
(
μ
1
+
μ
2
)
f
(
x
1
,
x
2
)
,
μ
1
f
(
x
1
+
1
,
x
2
)
+
μ
2
f
(
x
1
,
x
2
)
,
μ
1
f
(
x
1
,
x
2
)
+
μ
2
f
(
x
1
,
x
2
+
1
)
]
+ \min \left [ (\mu_1+\mu_2)f(x_1,x_2), \mu_1 f(x_1+1,x_2)+\mu_2 f(x_1,x_2), \mu_1 f(x_1,x_2)+\mu_2 f(x_1,x_2+1) \right ]
+min[(μ1+μ2)f(x1,x2),μ1f(x1+1,x2)+μ2f(x1,x2),μ1f(x1,x2)+μ2f(x1,x2+1)] 这种方程的核心就是
c
o
s
t
函
数
=
初
始
状
态
的
c
o
s
t
值
+
∑
转
移
概
率
∗
新
状
态
下
的
c
o
s
t
函
数
cost 函数 = 初始状态的 cost 值 + \sum 转移概率 * 新状态下的cost函数
cost函数=初始状态的cost值+∑转移概率∗新状态下的cost函数
⋅
\cdot
⋅
λ
1
f
(
x
1
−
1
,
x
2
)
\lambda_1 f(x_1-1,x_2)
λ1f(x1−1,x2) ,其中
λ
1
\lambda_1
λ1 为销售产品1的速率(状态转移概率),
f
(
x
1
−
1
,
x
2
)
f(x_1-1,x_2)
f(x1−1,x2) 为销售产品1后的状态 cost 函数
⋅
\cdot
⋅
(
μ
1
+
μ
2
)
f
(
x
1
,
x
2
)
(\mu_1+\mu_2)f(x_1,x_2)
(μ1+μ2)f(x1,x2),对应的是 action = 0,也就是不生产的策略,转移概率为
μ
1
+
μ
2
\mu_1+\mu_2
μ1+μ2
⋅
\cdot
⋅ 在每个时刻,只能采取一种 action,所以对三种策略的 cost 要取
min
\min
min,而不是求和