排队系统仿真 包含C.doc
《排队系统仿真 包含C.doc》由会员分享,可在线阅读,更多相关《排队系统仿真 包含C.doc(9页珍藏版)》请在三一办公上搜索。
1、排队系统仿真实验1. 实验目的离散事件系统大量存在于现实生活中。离散事件系统往往是随机的,具有复杂的变化关系,难以用常规的微分方程、差分方程等模型来描述,计算机仿真技术是解决这类问题的有效手段。排队系统是一种非常重要的离散事件系统,也是最早研究的离散事件系统。本实验通过设计一种最简单的单服务台排队系统仿真程序,深入理解排队系统的建模与仿真方法,掌握排队系统仿真的基本步骤和程序设计技术,了解离散事件系统仿真的一般原理。2. 排队系统仿真程序功能模拟一个单服务台单队列排队系统的运行过程,完成一定数量活动实体的服务过程,输出排队系统的常用统计指标。仿真运行时间(可由活动实体数确定)、活动实体到达平均
2、时间间隔、平均服务时间作为参数在程序运行时输入。3. 关键技术(1)随机数发生器乘同余法递推公式:程序中采用:(2)随机变量的产生变换抽样法指数分布随机变量的产生:其中,为到达(或服务)速率,1/到达时间平均间隔(或平均服务时间),u为随机数。(3)排队、到达、服务模式排队规则:先到先服务(FIFO);到达模式:泊松到达,即相邻两个顾客到达的时间间隔服从指数分布;服务模式:服务台为活动实体提供服务的时间是随机的,服从指数分布。(4)常用统计性能指标计算平均延误时间:其中,Di为第i个活动实体在队列中耽误的时间。平均滞留时间:其中,Wi为第i个活动实体在系统中滞留的时间,Si为第i个活动实体接受
3、服务台服务的时间。平均队长:其中,Q(t)为t时刻系统中队列的长度。平均实体数:其中,L(t)为t时刻系统中的活动实体数,Q(t)为t时刻队列的长度,S(t)为t时刻接受服务台服务的活动实体数。4. 程序架构(1)基本模块void initialize(void); /*变量初始化*/void timing(void);/*时间调度*/void arrive(void);/*到达事件处理*/void depart(void);/*离开事件处理*/void report(void);/*统计量输出*/void update_time_avg_stats(void);/*统计量的更新*/float
4、 expon(float mean);/*指数分布随机变量的变换抽样法*/(2)程序流程(main()函数)(3)到达事件处理流程(arrive()函数)(4)离开事件处理流程(depart()函数)5. 程序设计(1)定义#include #include /*#include lcgrand.h Header file for random-number generator. */#define Q_LIMIT 100 /* Limit on queue length. */#define BUSY 1 /* Mnemonics for servers being busy */#defi
5、ne IDLE 0 /* and idle. */int next_event_type, num_custs_delayed, num_delays_required, num_events, num_in_q, server_status;float area_num_in_q, area_server_status, mean_interarrival, mean_service, sim_time, time_arrivalQ_LIMIT + 1, time_last_event, time_next_event3, total_of_delays;FILE *infile, *out
6、file;float lcgrand(int stream);void initialize(void);void timing(void);void arrive(void);void depart(void);void report(void);void update_time_avg_stats(void);float expon(float mean);(2)主程序main() /* Main function. */ /* Open input and output files. */ infile = fopen(mm1.in, r); outfile = fopen(mm1.ou
7、t, w); /* Specify the number of events for the timing function. */ num_events = 2; /* Read input parameters. */ fscanf(infile, %f %f %d, &mean_interarrival, &mean_service, &num_delays_required); /* Write report heading and input parameters. */ fprintf(outfile, Single-server queueing systemnn); fprin
8、tf(outfile, Mean interarrival time%11.3f minutesnn, mean_interarrival); fprintf(outfile, Mean service time%16.3f minutesnn, mean_service); fprintf(outfile, Number of customers%14dnn, num_delays_required); /* Initialize the simulation. */ initialize(); /* Run the simulation while more delays are stil
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 排队系统仿真 包含C 排队 系统 仿真 包含

链接地址:https://www.31ppt.com/p-2385390.html