人在仿真软件金宝app

金宝app仿真软件和基于模型的设计

令人惊讶的结果与SimEvents建模队列

今天我很高兴欢迎嘉宾博客需要摩尼工作在我们的开发组织。

介绍

你曾经在超市结账,不知道为什么你在慢线?当我看到这个文章在《连线》杂志,立即吸引了我的注意。当我读这篇文章时,我知道我必须努力把理论考试SimEvents——一个离散事件仿真插件适合建模排队系统的仿真软件。金宝app

两种类型的队列

我开始通过构建一个简单的模型的四个超市柜台登记。我做了两个并行版本的设置——一个使用四个单独的队列和一个用一个“蛇形”四个寄存器为食的队列。

队列

让在SimEvents看到这是如何实现的。

的模拟,我需要模型随机客户进入检测区域。我使用实体SimEvents代表客户和我可以生成这些实体随机时间间隔后一个指数分布。在代我还可以指定一个随机的时间(也指数分布),客户将被分配在一个寄存器的特殊属性对应的实体。我选择的平均服务时间(通常用1 / \μ)美元是2分钟,平均到达时间(通常用1 / \λ)美元是1分钟。

然后我克隆每个客户我生成,这样我可以练习这两种不同的线配置相同。

生成实体

模型的四个独立队列是喂四收银机,我使用一个开关,线路客户最短的四个队列。每个队列然后订阅服务器代表付款登记。这个服务器持有客户的时间是设置在一代。

分离队列

模型“蛇形”队列中,我使用一个队列为四个寄存器通过一个开关,线路客户免费注册一个。

蜿蜒的队列

正如您可能已经注意到的,这两个模型使用计时器块(秒表的图标),跟踪时间统计数据实体/客户。这个情节让我的顾客的平均等待时间的两个配置以及最小和最大等待时间。

仿真结果

让我们运行模型,看看被绘制。

平均等待时间

正如你所看到的,配置与四个队列的平均结果在更长的等待时间!

振奋人心的是,如果我们从SimEvents比较结果理论上的M / M / c队列的解决方案,我们可以看到,这个比赛很好,2.173913秒的结果“蛇形”模式:

理论解

注意,有一些近似(但没有分析结果)的平均到达时间最短的队列策略”,然而我不会进入这个博客。

先进的分析

一旦我的模型设置,还做了一些其他有趣的实验。我不会详细在这篇文章中,但是如果你感兴趣你可以下载相关的模型和文件使用这篇文章的链接在最后和他们一起玩。能激起您的兴趣,我总结了我在实验中观察到的一些有趣的事情:

  • 测量“幸运::通过将一个ID分配给每个客户,我常常试图衡量“幸运”顾客到达后一个特定的客户能够达到一个收银机之前“倒霉”的客户。到达和服务上面使用的时间,我很惊讶,只有13%的顾客都跑到一个“倒霉”的情况。我觉得这个在现实生活中经常发生在我身上!
  • 系统利用率的影响:1分钟的到达时间和服务时间2分钟,系统利用率是50%。如果我们把客户到达时间~ 30秒,然后系统利用率提高57% ~ 95%,我们看到,客户变得不幸。或许这解释了我们看到在最近的杂货店的圣诞佳节!
  • 让我们试着聪明::到目前为止,客户在我的模型总是选择最短的队列。通过测量更SimEvents队列和服务器的统计数据,可以总是选择“最佳”队列(你有一个完美的每个客户需要多长时间的估计寄存器)和四个队列系统执行一模一样蜿蜒的队列。当然,没有人可以完美的估计时间达到客户在收银机。代表这种效果,我们可以添加一些随机性的影响包括人类乐观偏见我们的模拟。当我这样做时,蜿蜒的队列再次胜出。
  • 可怕的“价格检查巷4”:“价格检查”发生在我们这些服务时间的不可预知性的另一个因素。在SimEvents,我们可以启用“暂停”输入服务器模型这一效应。再一次当你这样做时,你开始发现你最好不要用蛇形队列。

我从没想过我会这样说,但是,这些实验的基础上,也许是时候给航空公司和银行应有的——他们做设置一行交易。

现在轮到你了

在这里下载最终模型,并详细描述,让我们知道你想离开这里的评论

|

评论

留下你的评论,请点击在这里MathWorks账户登录或创建一个新的。