基于Petri网的复杂空竭休假排队系统的性能评价

  • 格式:pdf
  • 大小:793.17 KB
  • 文档页数:8

第3O卷第4期 2012年7月 应用科学学报 JOURNAL OF APPLIED SCIENCES_——Electronics and Information Engineering Vl01.30 No.4 Ju1.2012 

DOI:10.3969/j.issn.0255—8297.2012.04.009 

基于Petri网的复杂空竭休假排队系统的性能评价 

方 欢 , 陆 阳 ,v, 葛方振 , 黄镇谨 

1.合肥工业大学计算机与信息学院,合肥230009 2.安徽理工大学理学院,安徽淮南232001 3.安徽省矿山物联网与安全监控技术重点实验室,合肥230088 

摘要:针对复杂空竭排队系统难以得到性能指标解析解的问题,提出基于Petri网模拟的近似解方法.通 过CPN Tools建立4种休假策略下排队系统的Petri网模型,在定义排队系统的性能指标数学期望公式的基础 上,使用Data Collector采集模型模拟的动态数据,得到相关的性能指标结果和期望收益.仿真结果表明这种基 于Petri网模型的近似求解方法是有效的,建立的模型和基于模型的性能分析方法具有可扩展性、复用性和界面友 好性. 关键词:复杂排队系统;空竭休假服务;Petri网;休假策略;近似解 中图分类号:TP399 文章编号:0255—8297(2012)04.0379—08 

Performance Evaluation for Complex Queueing System under 

Exhaustive—Service Policies Based on Petri Nets 

FANG Huan ,一,LU Yang ,v,GE Fang—zhen ,HUANG Zhen-jin j.School of Computer and Information,He University of Technology,Hefei 230009,China 2.College o{Sciences,Anhui University o/Science and Technology}Huainan 232001}Anhui Province,China 3.The Anhui Provincial Key Laboratory ofMine IoT and Mine Safety Supervisory Control,Hefei 230088,China 

Abstract:Since it is difficult to obtain analytical solutions of performance indices for complex queueing systems,a method for finding approximate solutions is presented based on Petri net.With the CPN tools,a 

Petri net model is constructed for queueing system under four vacation policies.Based on the mathematical formula for performance indices,performance indices and expected profits are calculated from the dynamic data collected by Data Collector in the simulation.The results show that the method based on model simulation is effective,the models and the performance analysis method based on the models have flexible scalability, reusability and a friendly interface. Keywords:complex queueing system,exhaustive service,Petri nets,vacation policy,approximate solution 

空竭休假排队系统是休假排队系统的一个重要研 

究分支.在这类系统的研究中,最受关注的是平均队 

长、平均等待时间及平均休假服务台数目的求解问题. 

目前,对空竭休假排队系统的研究大多考虑服务台的 

数目和休假策略两个方面.根据服务台的数目可分 

为单服务台[1-3】情形和多服务台[4-6]情形.对前者的研 

究,一般采用随机过程的稳态概率法求解理论,得到 队长、等待时间等性能指标的解析解;对后者的研究, 

则利用矩阵几何方法和拟生灭随机过程对队长、等待 

时间等指标进行随机分解,从而得到相关的性能评价 

公式.从休假策略来看,分别考虑单重休假[4]、休假 

时执行不同服务速率[5]及多重休假【6】等问题. 

可以看出,这些休假排队系统的理论分析和求解 

方法建立在随机分解和矩阵几何【2-7】等方法的基础上, 

收稿日期:2011—04—28: 修订日期:2011,06—13 基金项目:国家自然科学基金(No.60873195,No.61070220);高等学校博士点基金(No.20090111110002) ̄i0J 作者简介:方欢,讲师,博士生,研究方向:Petri ̄理论及应用、离散事件动态系统的建模与分析、智能控制等,E-mail fanghuanO307@163.com;陆阳,教授,博导,研究方向:计算机控制、传感器网络、可靠性工程,E-mail:luyang.hf@126.COITI

 380 应用科学学报 第30卷 

通过求解稳态概率分布得到性能指标的解析解,但这 

种求解方法存在3个难点:1)求解过程均在系统具备 

稳态分布的条件下进行,如果排队系统不满足稳态分 

布的前提条件,这种数学求解方法就不再适用.2)求 

解结论可重用性差,当排队系统的约束条件改变时, 

E述已有的结论都不能直接应用.另外,无论是单服 

务台还是多服务台,一般都忽略服务台从服务状态转 

入休假状态的系统关闭时间(closetime)和从休假状 态转入服务状态的系统启动时间fstarttime)[1,443],或 

者仅考虑了系统的启动时间[2,71.文献『31虽然同时考 

虑了系统的关闭时间和系统的启动时间,但是仅适用 

于单服务台的排队情形.3)当排队系统的约束因素增 

加时,在使用矩阵随机分解法或者差分方程求解法的 过程中,概率矩阵R[2-7】的求解十分困难. 

另外,针对排队系统的软件模拟问题,普遍使用 

MATLAB软件【8]对排队系统进行离散化,再分别考虑 

排队系统的到达部分和服务部分.然而这种软件模拟 

的方法并不能实现真正意义上的并发,且MATLAB 

缺乏图形化的模拟,故模拟效果不佳. 

Petri网是一种系统的数学和图形的建模和分析 

工具,特别适用于复杂系统的设计和分析.用Petri网 

表示并发、互斥、同步显得直接,自然,精确;同 

时,Petri网坚实的数学基础可以为系统模型的设计 和分析提供一种有效的方法.将Petri网运用到排 

队系统分析的研究不多,目前仅有一些文献[9-111利 

用Petri网对具有实际应用背景的简单排队系统进行 

研究,并得到了一些性能指标的解析解. 

对于复杂的空竭休假排队系统G /G/c/ ̄,尚未 有性能指标解析解求解的研究,其中GT表示输入过 

程服从一般概率分布,G表示服务时间服从一般概率 

分布,C表示服务台数目(c≥1),。。表示顾客源的数 目无穷大.排队系统GI/C/c/ ̄具有广义队列的参数 

设置,同时服务台包含开启时间和关闭时间.因此, 

寻找一种简单通用的方法得到复杂空竭休假排队系 

统G1/C/c/ ̄的性能指标是十分必要的,即使得不到 精确的解析解,求得的近似解也至少应具有较小的误 

差.本文针对具有一般参数设置以及包含系统开启和 

关闭时间的空竭休假排队系统GT/G/c/ ̄列举了4种 

休假策略,借助Petri网模型的模拟仿真给出了相关 

性能指标近似解的求解方法.这种基于模型模拟的性 

能分析方法利用CPN Tools对休假排队系统的几种 

休假策略进行建模和分析,经过给定时间长度的系统 

模拟,通过Data Collector采集相关数据,得到排队 

系统的平均队长、平均等待时间、服务台的休假率和 

服务台的利用率等性能评价指标.为了说明所得近似 

值的精确度,与具有精确解的两种休假策略的排队系 统进行比较,从而了解近似解的准确程度. 

1 不同休假策略下的排队系统模型 

有关颜色Petri网的基本概念和CPN Tools的具 

体语法构成规则可参考文献【12—13】,这里为了模型理 

解的方便,仅对建模过程经常使用的记号或符号作简 

要说明. 

CPN Tools中时间类型颜色集的声明格式是在普 

通声明语句后加上timed,如colset Serve=with server 

timed表示带时间戳的枚举型,c@t表示为颜色C贴 

上一个时间戳t,m@+ 表示为m增加一个时间延 

迟i.后引号(、)是颜色集的构造符号,i、C表示i个颜 

色C.一般地,单元型变量的默认值记为(),空列表记 

为nn或『1,e::2表示取队列2的队头元素,2】一22表 

示连接两个字表为一个表,且Z2的队头在 l的队尾 

之后. 

图1给出了建立层次Petri网休假排队系统模型 

共用的类型和变量声明,其中C,lamda,mu,thetal 

startime,closetime分别表示服务台的数目、控制顾 

客到达时间间隔、控制服务台平均服务时间、控制服 

务台平均休假时间、控制服务台由休假状态转为服务 

状态的系统开启时间和控制服务台由服务状态转为休 

假状态的关闭时间. 

T colest UNIT--unit timed; t colest INT=int; T varproctime:INT: T varvactime:INT: T colset UU=wjth serv; v colset STATE=with normlvac; ,colset Server=product UU STATE timed; ,vat server:Server; ,colset JobType--with AIB; T colset Job=record jobType:JobType AT:INT= r Vatiob:Job; ’colset Jobs=list Job; T varjobs:Jobs; T colset ServerxJob=product Server*Job timed; ,fun expTime(mean:int)= let val realMean=Rea1.fromInt mean val rv=exponential((1.0/realMean)) 11'/ floor(rv+O.5、 end; T funintTimeO= Intlnf.tolnt(tim )); ,funnewJob0 {jobType=JobType.ran(), AT =intTime0} T val c:5: val lamda=667; va1 mu=2000; va1 theta=5000; val starttime=l20; val closetime=l00; 图1休假排队系统模型的颜色集声明