我正在 AnyLogic 中构建一个基于代理的模型,以显示学习者在整个高中从一个年级到下一个年级的进展情况。我的州(8 年级至 12 年级)已在我的代理“页面”中绘制,如下所示。
我已经根据不同的代理变量定义了所有状态的转换规则。为了查看我的基本模型是否有效,我将
getMain().dropout_count++
添加到“退出”状态的“进入操作”中。我的主模拟页面中还有一个名为 dropout_count
的变量,它应该显示有多少学习者退出了。
但是,这一点我过不了。我不断收到错误消息
对于类型
getMain()
,方法Learner
未定义
我做错了什么或者我错过了什么?这似乎是最微不足道的错误,但我不知道如何修复它。
不确定为什么
getMain()
没有增加 dropout_count
。
使用
main
或 get_Main()
(注意 getMain()
的区别!!)。如果您的 Learner
作为代理群体嵌入到 Main
中,则两者都有效。
如果没有,您可以随时使用
((Main)getRootAgent)
进行暴力破解。
无论如何:开始使用代码完成,因为它告诉您可以在任何地方编码什么,不能在任何地方编码:https://anylogic.help/anylogic/ui/using-intelli-sense.html
最后,了解您的模型层次结构:https://anylogic.help/advanced/code/access.html#where-am-i-and-how-do-i-get-to