闭环排队理论简介

news2024/11/14 20:32:46

闭环排队理论简介

  • 1. 系统情景
  • 2. 数学描述

在排队理论简介一文中,笔者详细介绍了排队理论的基本内容。在该文中,申请流是来自系统外部的,其强度(或密度)并不取决于系统本身,也不取决于系统的状态。而在本文中,将探讨另一种排队理论,其申请流的强度与系统的状态有关,因而称之为闭环排队系统

1. 系统情景

设想如下情景。在一家工厂中,调试员看管 n n n架机床。每架机床可能在任意时刻发生故障并停止工作,需要调试员的维修,该故障发生的强度(密度)为 λ \lambda λ。如果此时调试员空闲,则开始维修,维修用时
t ˉ m t = 1 μ \bar t_{mt} = \frac{1}{\mu} tˉmt=μ1而如果机床故障时调试员并不空闲(处于忙状态),则故障机床加入等待队列直到调试员来维修。

针对此情景,一般我们感兴趣如下3个指标:

  • 调试员空闲的概率;
  • 出现排队队列的概率;
  • 等待维修的机床数量的平均数。

在此情景中,申请流来自于机床本身,其数量是有限的,并依据其自身的状态(正常/故障)来发出申请。因此,整个申请流的强度自然而然取决于有多少个机床与维修挂钩(不论是正在被维修的还是等待维修的)。

与排队理论简介一文不同的是,闭环排队系统中,申请流的数量是有限的(机床个数有限)。而当申请流的数量过于庞大时,实际上排队系统本身的状态将几乎不影响申请流的状态,因此可以认为二者无关。

2. 数学描述

在该情景中,根据 n n n架机床中出现故障的个数,可以定义系统的不同状态:
S 0 S_0 S0 – 所有机床正常工作,没有机床故障;
S 1 S_1 S1 – 有1个机床故障,调试员维修该机床,其他机床正常工作;
S 2 S_2 S2 – 有2个机床故障,调试员维修一个,另一个等待,而其他机床正常工作;
⋮ \vdots
S n S_n Sn – 所有 n n n个机床都故障,调试员维修一个,其余 ( n − 1 ) (n-1) (n1)个排队等待。

状态图如图所示。
闭环排队理论
从状态 S 0 S_0 S0 S 1 S_1 S1的过程中,起初是所有机床都工作的,因此该过程的强度(密度)是 n λ n\lambda 。同样,从状态 S 1 S_1 S1 S 2 S_2 S2的过程中,起初是 ( n − 1 ) (n-1) (n1)架机床工作、1架机床故障的,因此该过程的强度(密度)是 ( n − 1 ) λ (n-1) \lambda (n1)λ。该低占用向高占用转化的过程以此类推。

而由于只有1个调试员,每次只能修1个机床,因此每次从高占用向低占用转化时的强度一样,都是 μ \mu μ

这里给出不同状态 S i S_i Si出现的概率:
p 1 = n λ μ p 0 p 2 = n ( n − 1 ) λ 2 μ 2 p 0 ⋮ p n = n ( n − 1 ) ( n − 2 ) ⋯ 2 ⋅ 1 ⋅ λ n μ n p 0 p 0 = 1 1 + n ( λ / μ ) + n ( n − 1 ) ( λ / μ ) 2 + ⋯ + n ( n − 1 ) ⋯ 2 ⋅ 1 ⋅ ( λ / μ ) n p_1 = \frac{ n \lambda }{\mu} p_0 \\ p_2 = \frac{ n (n-1) \lambda ^2 }{\mu^2} p_0 \\ \vdots \\ p_n = \frac{ n (n-1) (n-2) \cdots 2 \cdot 1 \cdot \lambda ^n}{\mu ^n} p_0 \\ p_0 = \frac{1}{ 1 + n \left( \lambda / \mu \right) + n (n-1) \left( \lambda / \mu \right)^2 + \cdots + n (n-1) \cdots 2 \cdot1 \cdot \left( \lambda / \mu \right)^n } p1=μp0p2=μ2n(n1)λ2p0pn=μnn(n1)(n2)21λnp0p0=1+n(λ/μ)+n(n1)(λ/μ)2++n(n1)21(λ/μ)n1
λ / μ = ρ \lambda / \mu = \rho λ/μ=ρ则上式可以写为
p 0 = 1 1 + n ρ + n ( n − 1 ) ρ 2 + ⋯ + n ( n − 1 ) ⋯ 2 ⋅ 1 ⋅ ρ n p_0 = \frac{1}{ 1 + n \rho + n (n-1) \rho^2 + \cdots + n (n-1) \cdots 2 \cdot1 \cdot \rho^n } p0=1+nρ+n(n1)ρ2++n(n1)21ρn1 p 1 = n ρ p 0 p_1 = n \rho p_0 p1=nρp0 p 2 = n ( n − 1 ) ρ 2 p 0 ⋮ p n = n ( n − 1 ) ⋯ 2 ⋅ 1 ⋅ ρ n p 0 (1) p_2 = n (n-1) \rho^2 p_0 \\ \vdots \\ p_n = n (n-1) \cdots 2 \cdot 1 \cdot \rho^n p_0 \tag{1} p2=n(n1)ρ2p0pn=n(n1)21ρnp0(1)式中,进入每个方块的强度为乘,出每个方块的强度为除。

对于该系统来说,绝对通过性指的是单位时间内故障的平均次数。当没有故障时的概率为 p 0 p_0 p0,那么显然,有故障的概率(也是调试员不空闲的概率)为
P = 1 − p 0 P = 1 - p_0 P=1p0如果调试员为忙,则单位时间内他可修理的机床数为 μ \mu μ,因此绝对通过性为
A = ( 1 − p 0 ) μ A = \left( 1 - p_0 \right) \mu A=(1p0)μ而调试员空闲的概率即为没有故障发生的概率 p 0 p_0 p0

故障机床的平均个数可以用如下期望来计算
w ˉ = 1 ⋅ p 1 + 2 ⋅ p 2 + ⋯ + n ⋅ p n = ∑ i = 1 n i ⋅ p i \bar w = 1 \cdot p_1 + 2 \cdot p_2 + \cdots + n \cdot p_n = \sum_{i=1} ^n i \cdot p_i wˉ=1p1+2p2++npn=i=1nipi此数值也可以通过绝对通过性来计算。我们知道,每架机床发生故障的强度为 λ \lambda λ;同时,平均来说系统中将正常工作有 ( n − w ˉ ) \left( n - \bar w \right) (nwˉ)架机床;因而这些正常工作的机床发生的故障数应该为 ( n − w ˉ ) λ \left( n - \bar w \right) \lambda (nwˉ)λ;根据绝对通过性的定义,有
( n − w ˉ ) λ = ( 1 − p 0 ) μ \left( n - \bar w \right) \lambda = \left( 1 - p_0 \right) \mu (nwˉ)λ=(1p0)μ由此得到
w ˉ = n − μ λ ( 1 − p 0 ) = n − 1 − p 0 ρ \bar w = n - \frac{\mu}{\lambda} \left( 1 - p_0 \right) = n - \frac{1 - p_0}{\rho} wˉ=nλμ(1p0)=nρ1p0接下来计算等待队列中等待修理的机床的个数。设所有与“修理”相关的机床数为 W W W,包括队列中等待的个数 R R R与正在修理的个数 Ω \Omega Ω
W = R + Ω W = R + \Omega W=R+Ω显然,由于只有一个调试员,因此 Ω \Omega Ω只能取1或0。相应地,其期望为
Ω ˉ = 0 ⋅ p 0 + 1 ⋅ ( 1 − p 0 ) = 1 − p 0 \bar \Omega = 0 \cdot p_0 + 1 \cdot \left(1 - p_0 \right) = 1 - p_0 Ωˉ=0p0+1(1p0)=1p0那么队伍中等待修理的机床的平均个数为
R ˉ = w ˉ − Ω ˉ = n − 1 − p 0 ρ − ( 1 − p 0 ) = n − ( 1 − p 0 ) ( 1 + 1 ρ ) \bar R = \bar w - \bar \Omega = n - \frac{1 - p_0}{\rho} - \left(1 - p_0 \right) = n - \left(1 - p_0 \right) \left( 1 + \frac{1}{\rho} \right) Rˉ=wˉΩˉ=nρ1p0(1p0)=n(1p0)(1+ρ1)最后来看产能相关的指标。设一架机床的产能为 l l l,则可以计算出单位时间内因故障而造成的产能损失为
L = w ˉ l L = \bar w l L=wˉl

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/798643.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

网络安全法律法规

数据参考:CISP官方 目录 国家立法体系网络安全法解析网络安全相关法律 一、国家立法体系 1、我国的立法体系 我国的立法体系在网络空间治理中扮演着基础工作的角色。为了应对快速发展的网络技术和威胁,我国采取了多级立法机制来完善网络空间的法律…

【uniapp】十分钟带你封装uniapp的api请求

前端面试题库 (面试必备) 推荐:★★★★★ 地址:前端面试题库 前言 最近刚好接了个私活,顺便把之前做到的项目中没有写出来的功能点单独拿出来写一篇吧! 其实在我的uniapp专栏里面写了不少关…

Kafka 入门到起飞系列 - 怎么从ISR中选出的Leader呢? Leader选举机制

上文我们讲了分区分成Leader 和 Follower两种角色,当Leader宕机后,会从ISR同步副本中选出一个分区作为leader分区继续工作,那么leader是怎么选出来的呢? 怎么从ISR中选出的Leader呢? Leader选举机制 比如有这么个分布…

梯度下降法和牛顿法

梯度下降法和牛顿法都是优化方法。 梯度下降法 梯度下降法和相关知识可以参考导数、偏导数、梯度、方向导数、梯度下降、二阶导数、二阶方向导数一文。梯度下降法是一种迭代地每次沿着与梯度相反方向前进的不断降低损失函数的优化方法。梯度下降只用到一阶导数的信息&#xf…

word怎么转换成pdf?分享几种转换方法

word怎么转换成pdf?将Word文档转换成PDF文件有几个好处。首先,PDF文件通常比Word文档更容易在不同设备和操作系统上查看和共享。其次,PDF文件通常比Word文档更难以修改,这使得它们在需要保护文件内容的情况下更加安全可靠。最后&a…

Linux 学习记录59(ARM篇)

Linux 学习记录59(ARM篇) 本文目录 Linux 学习记录59(ARM篇)一、IIC总线1. 概念2. IIC总线硬件连接 二、系统框图三、IIC时序1. 起始信号 / 停止信号2. 数据传输信号3. 应答信号 / 非应答信号4. 寻址信号 四、IIC协议1. 主机给从机发送一个字节(写)2. 主机给从机发送多个连续字…

Lab———Git使用指北

Lab———Git使用指北 🤖:使用IDEA Git插件实际工作流程 💡 本文从实际使用的角度出发,以IDEA Git插件为基本讲述了如果使用IDEA的Git插件来解决实际开发中的协作开发问题。本文从 远程仓库中拉取项目,在本地分支进行开发&#x…

【C++】STL中list的模拟实现(增删查改,迭代器封装,运算符重载)

文章目录 前言大体框架: 一、节点的封装(list_node)二、迭代器的封装(_list_iterator)1.类模板的定义:2.构造函数3.前置,后置4.前置--,后置--5.解引用(operator*())6. ->重载(operator- >…

代码随想录算法学习心得 49 | 647.回文子串、516.最长回文子序列...

一、最长回文子序列 链接:力扣 描述:给你一个字符串 s ,找出其中最长的回文子序列,并返回该序列的长度。 子序列定义为:不改变剩余字符顺序的情况下,删除某些字符或者不删除任何字符形成的一个序列。 思…

练习时长两年半的入侵检测

计算机安全的三大中心目标是:保密性 (Conf idential ity) 、完整性 (Integrity) 、可用性 (Availability) 。 身份认证与识别、访问控制机制、加密技术、防火墙技术等技术共同特征就是集中在系统的自身加固和防护上,属于静态的安全防御技术,…

将Python远控隐藏在文档图片中的行动分析

1、概述 ** **近日,安天CERT通过网络安全监测发现了一起恶意文档释放Python编写的远控木马事件。通过文档内容中涉及的组织信息和其中攻击者设置的诱导提示,安天CERT判断该事件是一起针对阿塞拜疆共和国国家石油公司进行的定向攻击活动。此次事件中&…

单线程与多线程的理解与学习(入门到深入)

文章目录 一、在Java中,有多种方式可以创建线程。以下是几种常用的方法:二、线程的调度线程的调度分为两种调度模型分时调度模型抢占式调度模型 三、线程传值四、什么是线程同步五、线程安全六、线程的同步机制七、线程控制 一、在Java中,有多…

惠普HP Color Laser 150a开机红色感叹号闪烁不打印故障解决方法

故障描述: 惠普HP Color Laser 150a开机红色感叹号闪烁,不能打印,电脑提示C3-6140。 检测分析: 在解决C3-6140错误代码之前,我们需要先检查打印机是否连接正常。如果打印机连接不正常,也可能会出现这个错误…

mysql_2.4——安装常见问题

1. 将MySQL添加到环境变量 将 mysql 的 bin 目录地址添加到 系统环境变量 --> PATH 中 2. 将MySQL添加到服务 以管理员的方式启动 cmd (命令提示窗口),使用命令进入到 [mysql]\bin ,执行如下命 令。 # mysqld --install (服务名) # 如: mysqld --…

SQL注入实操Less21-30)

文章目录 一、sqli-lab靶场1.轮子模式总结2.Less-21a.注入点判断b.轮子测试c.获取数据库名称d.获取表信息e.获取列信息f.获取表内数据 3.Less-22a.注入点判断b.轮子测试c.获取数据库名称d.获取表信息e.获取列信息f.获取表内数据 4.Less-23a.注入点判断b.轮子测试c.获取数据库名…

questasim界面的个性化设置

安装好questasim后默认的波形查看界面字体很小,颜色看起来也不舒服,所以调整了一下颜色布局如下图,顺便记录一下波形窗口颜色大小及选中行高亮如何设置 ​​​​​​​ 1、波形字体颜色设置 参考如何设置一个清爽的仿真窗口(仿真…

【无标题】linux就该这么学

linux就该这么学 欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants 创建一个自定义列表如何创建一个注脚…

杰哥教你用Python对Emotet投递的恶意Excel表格提取IoCs

背景介绍 工作遇到多个经过同样方式混淆并隐藏的宏代码文档,利用Excel表格特性,将数据分离在不同的单元格中,再使用Office自带的函数对单元格的数值进行提取后组合成代码字符串运行。运行的代码完成下载恶意文件到本地并注册为服务的恶意行为…

spring项目中idea提示Application context not configured for this file

今天在重构项目的时候,碰到一个问题。就是在spring底下,有一个包里面的所有配置类,在idea的开发工具类底下提示,Application context not configured for this file,如图所示 一开始以为是警告,不予处理&am…

04 linux之C 语言高级编程

gcc和gdb GNU工具 编译工具:把一个源程序编译为一个可执行程序调试工具:能对执行程序进行源码或汇编级调试软件工程工具:用于协助多人开发或大型软件项目的管理,如make、CVS、Subvision其他工具:用于把多个目标文件链…