gpt4 book ai didi

algorithm - 何时丢弃离散事件仿真中的事件

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:37:11 24 4
gpt4 key购买 nike

在大多数 DES 示例中,我看到事件触发状态更改,并可能在未来安排一些新事件。但是,如果我模拟台球游戏,这还不是全部。

在这种情况下,感兴趣的事件是击球和球相互碰撞以及与垫子的碰撞。状态由每个球的位置和速度组成。

在碰撞或射击之后,我将首先重新计算一个新状态,然后从那里我将计算所有可能的 future (第一次)碰撞。奇怪的是,我将不得不丢弃所有之前安排的事件,因为这些事件描述了只有状态改变之前才有可能发生的碰撞。

所以似乎有两种做DES的方法。

  • 一个, future 的事件是根据状态计算的,过去安排的所有事件都随着状态的每次变化而丢弃(如台球示例),以及
  • 另一个,其中每个事件都会导致状态更改并可能安排新事件,但永远不会丢弃旧事件(就像我见过的大多数示例一样)。

这很难相信。

Billiard 示例还有一个令人恼火的特性,即 future 事件是根据系统的全局 状态计算的。需要考虑所有的球,而不仅仅是参与碰撞或击球的球。

我想知道我的 Billard 示例是否与经典 DES 不同。无论如何,我正在寻找对此类问题进行推理的正确方法,即

  • 我怎么知道要丢弃哪些事件?
  • 我怎么知道在安排 future 事件时要考虑哪些国家
  • 是否有可能“安全”或“万无一失”的方法来计算 future 事件(以性能为代价)?

一个明显的答案是“这完全取决于您的问题领域”。将不胜感激更准确的答案或文献指针

最佳答案

您的示例与其他 DES 模型并不独特或不同。

还有第三种你忽略的选项,即当特定事件发生时,特定的其他事件将被取消。例如,在流行病模型中,您可以安排感染事件。每个感染事件随后安排 1) 患者的关键时间,超过该时间死亡变得不可避免,具有与患者的人口统计数据、该人口统计的死亡率和疾病进展率相对应的一些概率和一些延迟;或 2) 患者的康复。如果医疗干预根据某种分类策略排队,治疗可能会或可能不会在关键时间之前发生。如果不是,则安排死亡,否则取消关键时间事件并安排恢复事件。

这些类型的事件调度、事件取消和参数化,以便您可以识别调度/取消适用于哪些实体,这些都可以用 Lee Schruben 创建的称为“事件图”的符号来描述。参见 'Schruben, Lee 1983。使用事件图进行模拟建模。 ACM 的通信。 26:原始论文的 957-963',或查看此 tutorial from the 1996 Winter Simulation Conference可在线免费获得。

您可能还想看看这篇标题为“Simple Movement and Detection in Discrete Event Simulation”的论文,它出现在 2005 年冬季模拟 session 上。

关于algorithm - 何时丢弃离散事件仿真中的事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23753951/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com