问题标签 [event-simulation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
114 浏览

simulation - 为什么我们在确定性模拟中需要随机性?

假设世界是确定性的,为什么我们还需要在模拟中引入随机性?

0 投票
2 回答
718 浏览

r - Simmer R 软件包:对 2 名以恒定到达间隔时间到达的患者进行建模

我意识到这里没有很多关于在 R 中使用 Simmer 包进行离散事件模拟的问题,但是我已经浏览了所有的小插曲,找不到执行这个看似简单的任务的答案。

我想模拟 2 位客户以随机的、三角形分布的签到方式到达,到达时间恒定为 10 分钟。这是我使用 simmer 创建的轨迹:

这里的“许多客户”子标题:https ://cran.r-project.org/web/packages/simmer/vignettes/D-bank-1.html#more-customers 是我用来获取上述代码的内容。

运行上面的代码并检查到达时间,上面的代码模拟了一个恒定的 20 分钟的到达间隔时间,但不具有 2 个患者在那个时间到达的特性。我不确定如何创建一个函数来反映这一点。

运行模型会给我以下输出:

对此的任何见解将不胜感激。

0 投票
1 回答
1395 浏览

java - 任何逻辑错误:不是唯一的数据库值

在 Anylogic 离散事件模型中,我试图根据我创建的数据库表设置到达率和每次到达的代理数量。该表包含一列表示材料进入的日期和时间,然后是分配给每种材料的唯一代码和订单号。每种材料只有一个代码,但每天都会分配几个订单号。此外,每天同时收到多种材料。当我设置源以从表中读取数据时,我在运行时收到错误消息:模型创建期间出错: 图片说明在这里 root:不是唯一的数据库值!

我在 Anylogic 上找不到任何解决此错误的帮助。

0 投票
1 回答
134 浏览

verilog - verilog flop RTL 仿真

假设我们有一个 D 触发器。在 RTL 模拟中(这里没有 t_hold 和 t_setup),如果它的数据输入和 clk 同时变化,那么输出应该是什么?clk 上升之前的值还是之后的值?

更难的是,如果 data_in 和时钟连接到同一根线。触发器的输出应该是什么?一直为零?还是一直一个?

我在 ModelSim 中尝试了最后一种情况,我得到输出一直是 1,而我希望它是 0。我希望 RTL​​ 仿真中的触发器应该模拟时钟沿之前的值。

0 投票
1 回答
352 浏览

r - simmer:从轨迹函数内部读取资源

我希望能够根据队列长度修改轨迹内的资源容量。

下面的(简化的)代码不起作用。- 当我尝试get_mon_resources(simStore)在函数内部调用时,代码崩溃并出现错误:

谢谢您的帮助。

0 投票
1 回答
1244 浏览

r - Simmer Get_attribute | 没有到达运行错误

首先,这个simmer_vignette和这个链接advanced_simmer_usage似乎表明错误源于“get_name、get_attribute 和 get_prioritization 旨在用于轨迹内;否则,将没有到达运行,这些函数将抛出一个错误”一个最小的可行示例:

现在这可以正常工作,当我尝试以任何其他方式调用 get_attribute() 时,问题就开始了。在轨迹定义最后的 set_attribute() 之后添加这一行:

抛出上述错误。我真正想做的是调用“离开”函数并将其作为概率赋予属性。我仍然在轨迹中这样做。

不用说,这也会引发错误“get_attribute_(private$sim_obj, key, global) 中的错误:没有到达运行”。
有谁知道这可能是什么原因?我觉得唯一的选择是上面的解释“get_attribute 是为了在轨迹内使用”——但我觉得我正在这样做。

已经谢谢了!

0 投票
1 回答
115 浏览

r - Simmer 记录使用了哪些资源

在下面的 Simmer 代码中,是否有一种方法可以记录患者看到的医生:

也就是说,如果患者 01 看到医生 1,则将其记录在数据表中。

0 投票
1 回答
450 浏览

javascript - 如何将概率分布与代理相关联 - Anylogic

我在 Anylogic 上模拟一个模型,其中代理从队列块流向服务块。我需要使用如下概率分布定义代理在服务中花费的时间:

- 70% 的人在服务中花费了 15 到 30 分钟之间的时间间隔(应该是均匀分布,例如:uniform(15, 30))

- 其中 20% 在 30 到 45 分钟之间

- 其中 10% 在 45 到 60 分钟之间

我已经将一个名为“timeInService”的参数与代理相关联,我想我应该使用它,也许是服务的 Dalay 时间,但我不知道怎么做。

非常感谢!

0 投票
3 回答
535 浏览

r - Use routing logic when dispatching resources with simmer package (or an alternative)

Is there a way to use a (customized) routing engine together with the simmer package for discrete-event simulation? (or an alternative package)


Context: I'm running dicrete-event simulations (DES) with R. Till now all my simulations are built without using one of the R packages designed for DES. Since my code gets bigger and bigger (and performance worse) I'm thinking about switching to one of the R packages designed for DES.

For some portions of my code I see how I could switch it to simmer. But till now I couldn't figure out how to use a routing-logic together with resource dispatching.


Example: The following minimal example shows what kind of functionality I need (and couldn't figure out how to build with simmer).

Generate some data, events (jobs) and resources

Simplified version of a routing logic: calculate the route based on position of event and resources. (For the example just points on a 1-D space between 0 and 1, in the real example a customized version of OSRM algorithm together with historical data..)

Two versions of the simulation. sim just takes the first available resource with no thinking about the waytime. sim_nearest calculates waytimes for all free resources and dispatches to the closest one. sim_nearest is what I want in my real examples and don't know how to build using simmer.

Simulate the two alternatives:

See the differences:

Is it possible to generate the same results with simmer (or another R DES package)?

0 投票
1 回答
534 浏览

module - omn​​et 如何初始化模块和模型?

我阅读了手册,手册中使用伪代码描述了第一个模拟步骤,当模拟开始是从系统模块到子模块的“网络初始化”。在我的模拟示例中,有“simulation.ned”,它用于定义一些模拟变量和 package.ned,其中我定义了网络。

问题是:

  • 当模拟开始时,omnet 如何初始化模块(可能会寻找所有 *.ned 文件以创建完整的网络)?

  • 创建模块时,他是等待生成所有子模块还是立即应用配置(initialize() 方法)或等待创建所有模块然后继续配置?

谢谢