【问题标题】:Simulation stuck because of the if condition in AnyLogic由于 AnyLogic 中的 if 条件,模拟卡住了
【发布时间】:2023-02-20 19:30:54
【问题描述】:

我正在检查任何服务中是否有可供代理人使用的位置。

使用上面的代码我的模拟运行了一个小时然后卡住了。

当我从代码中删除提到的 if 条件(在下图中)时,模拟工作正常。

我认为这是因为 while 循环没有中断。让我知道是什么导致了这个问题。

【问题讨论】:

    标签: simulation anylogic


    【解决方案1】:

    你永远不应该编码while (true)。尽管您指定了中断条件,但这是一种不好的做法,因为您无法对其进行调试(正如您现在在这里所体验的那样:))。

    最好完全避免 while 循环,只有在极少数情况下您才需要它们。

    使用 for 循环或一些完全不同的设置重写您的代码。在您的情况下,您可能想为 rand 值尝试 switch 语法或简单的 if-else 逻辑。

    【讨论】:

      猜你喜欢
      • 2023-02-10
      • 1970-01-01
      • 1970-01-01
      • 2017-01-11
      • 2021-09-26
      • 1970-01-01
      • 1970-01-01
      • 2015-09-08
      相关资源
      最近更新 更多