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

AnyLogic智能体模型中,如何用数据库按时间生成飞机智能体?

解决方案:按数据库指定时间生成飞机智能体

不用流程库的Source块,也能轻松实现按数据库时间触发智能体生成,以下是具体步骤:

1. 预加载数据库计划数据

在模型启动事件(On startup)中,把数据库里的飞机生成计划(包含生成时间、智能体属性等字段)加载到有序集合里,确保按时间排序:

// 假设数据库表flight_data包含arrival_time(生成时间,单位与模型时间一致)、flight_id等字段
List<Map<String, Object>> flightSchedule = selectMapList("SELECT * FROM flight_data ORDER BY arrival_time");

2. 用事件链逐个触发生成

步骤细节:

  • 创建一个int类型变量currentFlightIndex,初始值设为0,用来追踪当前处理的计划条目。
  • 创建自定义事件(命名为generateFlight),在事件的Action中写入生成逻辑:
    // 获取当前计划的参数
    Map<String, Object> currentPlan = flightSchedule.get(currentFlightIndex);
    double targetTime = (double)currentPlan.get("arrival_time");
    
    // 创建飞机智能体并放置到机场附近
    Plane newPlane = add_Plane(); // 替换为你的智能体类型和Population名称
    newPlane.setLocation(airportNearbyPoint); // airportNearbyPoint是预设的机场附近坐标点
    
    // 给智能体赋值属性(比如航班ID)
    newPlane.flightId = (String)currentPlan.get("flight_id");
    
    // 处理下一条计划
    currentFlightIndex++;
    // 若还有未处理计划,安排下一次事件触发
    if(currentFlightIndex < flightSchedule.size()){
        double nextTime = (double)flightSchedule.get(currentFlightIndex).get("arrival_time");
        generateFlight.restart(nextTime - time());
    }
    
  • 在模型启动事件中,安排第一次事件触发:
    if(flightSchedule.size() > 0){
        double firstTime = (double)flightSchedule.get(0).get("arrival_time");
        generateFlight.schedule(firstTime);
    }
    

3. 更简洁的替代方案:批量创建一次性事件

如果不想维护索引变量,可在启动时直接为每个计划创建独立的一次性事件:

for(Map<String, Object> plan : flightSchedule){
    double targetTime = (double)plan.get("arrival_time");
    // 创建匿名事件到点执行生成逻辑
    Event generateEvent = new Event(this){
        public void action(){
            Plane newPlane = add_Plane();
            newPlane.setLocation(airportNearbyPoint);
            newPlane.flightId = (String)plan.get("flight_id");
        }
    };
    generateEvent.schedule(targetTime);
}

注意事项

  • 确保数据库时间单位与模型时间单位一致(比如统一为秒/分钟),避免时间偏差。
  • 智能体的状态图默认在创建后会自动进入初始状态,无需额外触发。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 13:51:04