Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Netlogo 如何有效地在所有代理都具有的一个变量上创建数据_Netlogo_Agent - Fatal编程技术网

Netlogo 如何有效地在所有代理都具有的一个变量上创建数据

Netlogo 如何有效地在所有代理都具有的一个变量上创建数据,netlogo,agent,Netlogo,Agent,我正在与一个关于电动汽车充电行为的NetLogo模型合作。所有(500)个代理监控他们的我的充电需求,我想知道当我改变现行政策干预时,这种紧急行为会发生什么(在这种情况下是电费)。我试图显示充电特性的变化,如充电持续时间、充电功率等 及时在代理的我的收费需求上创建数据的最佳方式是什么 现在,我正在使用以下代码将其所有数据绘制在一个图形中: ask adopters [ create-temporary-plot-pen (word-who) set-plot-pen-color col

我正在与一个关于电动汽车充电行为的NetLogo模型合作。所有(500)个代理监控他们的
我的充电需求
,我想知道当我改变现行政策干预时,这种紧急行为会发生什么(在这种情况下是电费)。我试图显示充电特性的变化,如充电持续时间、充电功率等

及时在代理的
我的收费需求
上创建数据的最佳方式是什么

现在,我正在使用以下代码将其所有数据绘制在一个图形中:

ask adopters 
 [ create-temporary-plot-pen (word-who)
   set-plot-pen-color color
   plotxy ticks my-charging-demand
 ]
这是可行的,但不幸的是,它也使模型速度慢得令人难以置信,因为每滴答一次就要更新500支钢笔。由于模型中的每个刻度代表5分钟,因此在全年/运行完成之前,模型需要105120个刻度。因此,速度很重要:-)


是否有更有效的方法来跟踪/创建所有代理都拥有的一个变量的数据

如果我理解正确,您希望每个代理始终记住其变量my charging demand的值。如果是这样,最简单的方法(但我不知道是否更有效)是将列表作为一个turtle变量。因此,修改您的
turtles-own
以添加另一个变量:

adopters-own
[ ....
  my-charging-demand
  my-charging-demand-series
]
只要你有计算需求的代码,就把结果添加到列表中

ask adopters
[ ...
  set my-charging-demand ...
  set my-charging-demand lput my-charging-demand my-charging-demand-series
  ...
]

我无法想象一个500行的图是可读的。该图应该显示我的充电需求的平均值,或者我的充电需求大于某个阈值的海龟比例。

谢谢@JenB!说得好。该图绝对不可读,基本上只是一个填充图。我之所以使用这种方法,是因为我想不出一种方法来为turtle自身的变量创建超过100000个刻度的数据,但列表现在完全有意义了:-)你认为与绘图方法相比,这会花费更少的(处理)时间吗?老实说,我不知道列表与绘图的效率。我认为这是一个试一试的问题。我也对答案感兴趣。这里有一个简短的测试@JenB基本情况(一个图中有500支笔):4:00分钟导致1226个刻度基本情况(没有上面提到的图):4:00分钟导致3682个刻度根据您的输入调整模型(代理更新他们自己的列表):4:00分钟导致3673个刻度。因此,这是一种跟踪代理自身变量的更快的方法。现在,我只需要了解如何在一个CSV文件中导出所有海龟自己的列表,但我想这应该不会太难。很高兴它提供了帮助,并感谢您提供的性能信息。如果您在出口方面遇到问题,请回来问一个新问题