You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在AnyLogic中可视化行人智能体的行进距离?

在AnyLogic中实时可视化行人行进距离直方图

实现步骤

  • 创建数据存储集合
    在模型里添加一个ArrayList<Double>类型的变量,命名为pedestrianDistances,用来存储每个行人的最终行进距离。

  • 绑定距离收集逻辑
    找到行人离开系统的触发节点(比如到达目标区域的on enter事件、离开模型的on exit事件),添加代码:

    pedestrianDistances.add(ped.getDistanceTraveled());
    

    其中ped是当前触发事件的行人智能体,getDistanceTraveled()是行人库自带的获取累计行进距离的方法。

  • 配置直方图组件
    从组件库拖入Histogram到画布,在属性面板设置Data为pedestrianDistances,再根据预期的距离范围调整分组区间(bins)数量和范围。

  • 设置实时刷新
    两种方式可选:

    1. 每次添加数据后立即刷新:在收集距离的事件里追加代码
      histogram.repaint();
      
    2. 定时刷新:添加Timer组件,触发时调用histogram.repaint();,比如每隔1秒刷新一次。
  • 可选:动态调整区间范围
    如果不确定距离范围,可在刷新时自动计算数据极值并调整直方图范围:

    if (!pedestrianDistances.isEmpty()) {
        double maxDist = Collections.max(pedestrianDistances);
        double minDist = Collections.min(pedestrianDistances);
        histogram.setRange(minDist, maxDist);
    }
    

注意事项

  • 若模型行人数量大,可定期清理旧数据避免内存占用过高:
    if (pedestrianDistances.size() > 1000) {
        pedestrianDistances.remove(0);
    }
    
  • 可添加Text组件绑定表达式average(pedestrianDistances),实时显示平均行进距离。

内容的提问来源于stack exchange,提问作者Kirill

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 13:54:50