离散事件仿真示例

本文关键字:仿真 事件 | 更新日期: 2023-09-27 18:18:47

我想在c#中执行一个离散事件模拟。我想要三个球同时在屏幕上滚动,按照随机游动模式。第1次球出现并开始滚动,第5次球出现,第2次球出现,第10次球出现。当任何两个球靠得足够近时,球的颜色应该改变(只要它们保持接近)。

我是非常新的离散事件模拟,我想了解,我们如何在c#编程?创建模型需要哪些步骤。我懂图形和其他东西

离散事件仿真示例

新手注意:

使用操作系统计时器或线程不是离散事件模拟应该工作的方式。使用其中一个作为构建块可能会产生误导或完全错误。
  • 先阅读维基百科关于离散事件模拟(DES)的文章

  • 有所谓的"形式主义"的"模型",在数学上证明在事件模拟中有效。你需要实现一个(例如DEVS)。

  • 你可能想看看维基百科上列出的离散事件模拟软件的DES列表。

  • 你也可以找到有用的sigmawiki(程序,例子,教程)关于DES, SharpSim和React。

使用计时器(将其从工具箱中拖到设计器中的窗体上,或者根据需要在代码中实例化它)。双击计时器以在代码中设置_Tick事件,该事件将每N毫秒触发一次(计时器的.Interval属性控制此事件)。将.Interval设置为1000(1秒),并使用跟踪自己在X和Y坐标中的位置的对象。

使用Random对象生成球的下一个位置变化方向,并在计时器的_Tick事件中更新每个球的位置变量。

使用原始线程也是可能的,但是Timer为您提供了一些功能,而不必自己管理所有内容。