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

AnyLogic调用setPreferredSpeed()报this.b为空的问题求助

AnyLogic中调用setPreferredSpeed函数报NullPointerException问题

问题描述

我在AnyLogic模型中尝试用以下代码修改车辆智能体种群的偏好速度:

setPreferredSpeed(10, KPH);

我将这段代码分别放在了三个位置:

  • Vehicle智能体内部创建的语句图中
  • Vehicle智能体属性面板的「On startup」字段
  • Main模块内carMoveTo块的「On enter」字段

但无论放在哪个位置,都会抛出相同的空指针错误:

Cannot invoke "com.anylogic.libraries.road.Car_xjal.setPreferredSpeed(double, com.anylogic.engine.SpeedUnits)" because "this.b" is null

代码补全功能显示可以正常输入该函数,但运行时必定触发错误。例如将代码放在carMoveTo块的「On enter」字段时,完整错误栈如下:

Exception during discrete event execution:
Cannot invoke "com.anylogic.libraries.road.Car_xjal.setPreferredSpeed(double)" because "this.b" is null

java.lang.NullPointerException: Cannot invoke "com.anylogic.libraries.road.Car_xjal.setPreferredSpeed(double)" because "this.b" is null

at com.anylogic.libraries.road.CarExtension.setPreferredSpeed(Unknown Source)
at skagway_broadway_test.Main.setPreferredSpeed(Main.java:2116)
at skagway_broadway_test.Main._carMoveTo_onEnter_xjal(Main.java:952)
at skagway_broadway_test.Main$7.onEnter(Main.java:652)
at skagway_broadway_test.Main$7.onEnter(Main.java:1)
at com.anylogic.libraries.road.CarMoveTo.a(Unknown Source)
at com.anylogic.libraries.road.CarMoveTo$8.onEnter(Unknown Source)
at com.anylogic.libraries.processmodeling.Delay.b(Unknown Source)
at com.anylogic.libraries.processmodeling.Delay$9.onEnter(Unknown Source)
at com.anylogic.libraries.processmodeling.InputBlock$1.b(Unknown Source)
at com.anylogic.libraries.processmodeling.InPort.a(Unknown Source)
at com.anylogic.libraries.processmodeling.InPort.receiveImmediately(Unknown Source)
at com.anylogic.libraries.processmodeling.InputBlock$1.a(Unknown Source)
at com.anylogic.libraries.processmodeling.OutPort.a(Unknown Source)
at com.anylogic.libraries.processmodeling.OutPort.b(Unknown Source)
at com.anylogic.libraries.processmodeling.OutputBlock.forwardReadyEntityNotification(Unknown Source)
at com.anylogic.libraries.processmodeling.InputBlock$1.a(Unknown Source)
at com.anylogic.libraries.processmodeling.OutPort.a(Unknown Source)
at com.anylogic.libraries.processmodeling.OutPort.b(Unknown Source)
at com.anylogic.libraries.processmodeling.PlainTransfer$1.a(Unknown Source)
at com.anylogic.libraries.processmodeling.OutPort.a(Unknown Source)
at com.anylogic.libraries.processmodeling.OutPort.b(Unknown Source)
at com.anylogic.libraries.processmodeling.OutPort.a(Unknown Source)
at com.anylogic.libraries.processmodeling.OutputBlock.a(Unknown Source)
at com.anylogic.libraries.processmodeling.OutputBlock$2.a(Unknown Source)
at com.anylogic.libraries.processmodeling.OutputBlock$2.action(Unknown Source)
at com.anylogic.libraries.processmodeling.AsynchronousExecutor_xjal$a.execute(Unknown Source)
at com.anylogic.engine.LibraryEventHandler$e.execute(Unknown Source)
at com.anylogic.engine.Engine.a(Unknown Source)
at com.anylogic.engine.Engine.hk(Unknown Source)
at com.anylogic.engine.Engine$e.run(Unknown Source)

已尝试的排查步骤

  • 参考过同类问题的解决方案,已确认Vehicle智能体的「Use in Flowcharts as Car」选项处于勾选状态,但问题未解决
  • 错误触发时机:当Vehicle进入名为「straight」的carMoveTo块时,该块的「On enter」字段中调用了setPreferredSpeed(60);
  • carSource块已配置偏好速度,车辆可正常在道路网络生成并进入流程

补充信息

相关设置截图:

希望有人能解释「this.b is null」的具体含义,并提供解决该问题的建议,我可以补充更多模型细节。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 03:57:13