M/G/1模型之服务者间隔性服务

问题描述

在生活中,我们经常会遇到服务者在服务的过程中离场的情景,等到服务者再回来继续提供服务,这种情况下,我们如何研究顾客的平均花费时间。该场景的典型模型如下:假设一个排队系统,顾客按照参数为\lambda的泊松过程到达,每个顾客的服务时间服从分布G,假设每个服务者每一次的工作时间服从指数分布,参数为\alpha,之后进入维修状态,维修时间分布为H,假设每一个服务者维修结束后返回继续完成之前顾客的服务,那么我们关心平均一个顾客在系统中完成服务需要多少时间?

问题分析

该问题的与专家雇佣费计算M/G/1模型应用之专家雇佣费用节省问题的问题有很多类似之处,但是不同之处在于该问题服务者每次服务和维修的标准都是持续时间,而专家雇佣费用问题中,专家每次服务的标准是将队列清空,而专家每次休息的标准是队列积累的长度以及持续时间;由于每次专家服务的标准是将队列清空,因此,该系统中每当专家休息时,系统的状态都一致,彼此之间独立,整个过程可以视为更新过程;而在此问题中,每次当专家维修结束时,系统的状态并不一致,彼此之间并不独立,因此整个过程不能视为更新过程。

那么针对该问题应该如何分析呢?首先,我们可以认为该系统中顾客接受服务的时间不仅包含服务者提供服务的时间也包含顾客等待时间,在此情况下,我们可以定义得到此情况下的顾客服务时间的均值以及方差,进而利用M/G/1模型中的P-K方程进行求解,得到相应的平均花费时间。

问题解答

首先我们假设作为顾客其所需的服务时间为S,服从分布G,作为服务者每一次的服务时间为K,服从参数为\alpha的指数分布,每一次的维修时间为R,服从分布H。那么,其相互之间的关系如下图所示:

其中, K_1+K_2+K_3+K_4=SK_i 为指数分布, i=1,2,3,4R_j 服从分布 Hj=1,2,3.

我们最终关注顾客总的接受服务时间 T ,其满足 T=S+\sum_j R_j ,则

\[ \begin{aligned} E\left[T|S\right]=S+E\left[\sum_{j=1}^{N}R_j|S\right] \end{aligned} \]

又由于不同维修之间的间隔为指数分布,那么在接受服务时间S时间间隔内,总的维修次数N满足泊松分布,因此上述计算再次利用N的条件分布,得到

\begin{aligned} E\left[\sum_{j=1}^{N}R_j|S\right]&=E_{N|S}\left[E_{.|S,N}\left[\sum_{j=1}^{N}R_j|S,N\right]\right]\\ &=E_{N|S}\left[N\mu_H|S\right]\\ &=\mu_H S\alpha \end{aligned}


E\left[T|S\right]=S(1+\mu_H \alpha)

\[ E\left[T\right]=E\left[E\left[T|S\right]\right]=\mu_G(1+\mu_H \alpha) \]

其方差的计算如下:

\[ Var\left(T\right)=Var\left(E\left[T|S\right]\right)+E\left[Var(T|S)\right] \]

其中, Var\left(E\left[T|S\right]\right)=\sigma_G^2\left(1+\mu_H\alpha\right)^2 ,并且

\begin{aligned} Var\left(T|S\right)&=Var_{N|S}(E\left[T|S,N\right])+E_{N|S}\left[Var\left(T|S,N\right)\right]\\ &=Var_{N|S}(S+N\mu_H|S,N)+E_{N|S}\left[N\sigma_H^2\right|S,N]\\ &=\mu_H^2S\alpha+\sigma_H^2S\alpha\\ &=E\left[R^2\right]S\alpha \end{aligned}


则, E\left[Var\left(T|S\right)\right]=\alpha\mu_GE\left[R^2\right]

Var(T)=\alpha\mu_GE\left[R^2\right]+\sigma_G^2\left(1+\mu_H\alpha\right)^2

E\left[T^2\right]=Var(T)+(E\left[T\right])^2=\alpha\mu_GE\left[R^2\right]+E\left[S^2\right]\left(1+\mu_H\alpha\right)^2

那么根据P-K公式

\begin{aligned} W_Q=\frac{\lambda E\left[T^2\right]}{2(1-\lambda E\left[T\right])} \end{aligned}

代入得到:
\begin{aligned} W_Q=\frac{\lambda(\alpha\mu_GE\left[R^2\right]+E\left[S^2\right]\left(1+\mu_H\alpha\right)^2)}{2(1-\lambda \mu_G(1+\mu_H \alpha))}\\ =\frac{\lambda\left(\alpha E[S]E\left[R^2\right]+E\left[S^2\right]\left(1+E[R]\alpha\right)^2\right)}{2\left(1-\lambda E[S](1+E[R] \alpha)\right)} \end{aligned}

平均总花费时间为

\begin{aligned} W=W_Q+E\left[T\right] \end{aligned}

问题拓展:等红灯问题

这个问题的一个非常典型的推广应用是等红灯问题:假设我们有一条道路,路口有一架红绿灯,车辆到达服从泊松过程,参数为 \lambda ,每次红灯的时间是 T_r ,每次绿灯的时间是 T_g ,每次绿灯的时候队列中的每辆车都以 v 的速度驶离队列,每辆车的长度为 L ,那么我们关心该道路的平均堵车车辆数为多少,每辆车需要等待多长时间才能通过该路口。

等红灯问题中,与上述问题不一样的地方在于,服务者每次服务的时间和维修时间都是定值,那么相似地我们可以针对新的服务时间计算得到:

\begin{aligned} E[T]&=\int_0^{T_g+T_r}f(t)T(t)dt\\ &=\int_0^{T_g}f(t)\frac{L}{v}dt+\int_{T_g}^{T_g+T_r}f(t)(T_g+T_r-t+\frac{L}{v})dt\\ \end{aligned}

其中 f(t)=\frac{1}{T_g+T_r}

化简得到:

\begin{aligned} E[T]=\frac{L}{v}+\frac{T_r^2}{2(T_g+T_r)} \end{aligned}


而另一方面

\begin{aligned} E[T^2]=\int_0^{T_g+T_r}f(t)T(t)^2dt=(\frac{L}{v})^2+\frac{T_r^2}{T_g+T_r}(\frac{L}{v})+\frac{T_r^3}{3(T_g+T_r)} \end{aligned}


\begin{aligned} W_Q&=\frac{\lambda E[T^2]}{2(1-\lambda E[T])}\\ L_Q&=\lambda W_Q \end{aligned}

发布于 2023-02-18 01:32・IP 属地北京