【问题标题】:Is there a way to record when (and how often) Transporters get within a certain distance of each other?有没有办法记录运输者何时(以及多久)彼此相距一定距离?
【发布时间】:2021-02-02 06:31:44
【问题描述】:

我有一个 AnyLogic 模拟模型,使用卡车和叉车作为代理(运输车类型),除其他外,我想识别其中一个与另一个相距一定距离(例如在 5 米内)。我会将这个计数记录为模型主空间中的变量。我正在使用路径引导导航。 我已经看到了一种方法“agentsInRange”,它可能能够做到这一点,但不知道从哪里调用它。我假设我应该能够使用“与障碍物的最小距离”(TransporterFleet)和“碰撞检测超时”(TransporterControl)的 AL 功能? 提前致谢!

【问题讨论】:

    标签: anylogic


    【解决方案1】:

    由于似乎没有为此预先构建的功能,afaik,最简单的方法是:

    1. 将一个 int 变量添加到您的传输代理类型 counter
    2. 将事件添加到您的传输器类型checkCollision,每秒触发一次左右
    3. 在这种情况下,循环遍历整个运输者群体并计算接近 X 米的数量(使用 distanceTo(otherTransporter) 并编写您自己的自定义代码)
    4. 将该号码添加到counter

    请注意,这在计算上可能非常低效,因为它非常暴力。但可能已经足够了:)

    【讨论】:

      猜你喜欢
      • 2017-09-25
      • 1970-01-01
      • 2016-10-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-29
      • 2016-01-05
      • 2019-07-04
      相关资源
      最近更新 更多