|
|
1
7
离散事件模拟是一个非常广泛的术语;你可以模拟任何东西,从柠檬水摊,到跨国公司的交易和物流,到复杂的软件系统,再到尚不存在的新的计算机体系结构(而且比模拟运行的机器要复杂和先进得多)。 我将使用我所在领域(计算机体系结构)的一个例子,但它在计算上的开销应该可以很好地概括。很多时候,您试图模拟一个分布式系统,其中有许多具有自己简单控制逻辑的独立代理,它们共同实现一个非常复杂的动态系统。在计算系统的情况下,模拟器的组合工作集至少与所有组合组成组件的架构、微架构和内存状态一样大。如果每个组件都稍微复杂,这意味着在完成模拟的每个时间步时,您的时间和空间位置都会大大减少。每个时间步都需要运行整个工作集,这意味着缓存利用率很低,可能会影响性能一到两个数量级。这种模式是不可避免的,因为在多个时间段内独立运行每个组件,并且只定期合并结果是有问题的,而且系统越复杂,耦合性越强。 此外,您通常希望保留各种统计信息,这些信息会在组件模拟之上引入大量额外的空间和时间开销。 简言之,下限是模拟所有组件的复杂度之和。在实践中,如果您有许多组件,如果您的组件更复杂,甚至是实质上更复杂,那么会引入很多低效率 不同的 最后一件事:离散事件模拟通常涉及将项目放置在队列中,并基于跟踪一组指针来查找将请求放置在哪个队列中。这些操作很难并行化,使问题进一步复杂化。然而,正如我前面提到的,术语“离散事件模拟”可以包含从琐碎到不可能的任何内容,因此提取一般模式是困难的。 |
|
|
2
1
计算机模拟通常会快速运行多个场景并进行比较。 monte-carlo simulation 跑了几千次。
|
|
|
Kelumsd · 根据颜色改变3条车道上移动乌龟的车道 2 年前 |
|
|
Jane Wayne · Gibbs采样未产生预期结果 8 年前 |
|
|
TheAvenger · R rugarch模拟 8 年前 |
|
|
Cameron Yeo · C#太阳系,行星轨道数学问题 8 年前 |
|
|
Ahmad Ahsan · 如何获取特定范围内的车辆数量 8 年前 |