0

Rebellion モデルに基づいて NetLogo でシミュレーションを実行しています。このモデルでは、一部のエージェントがアクティブになりますが、他のエージェントによって非アクティブ化される可能性があります。

私の質問は、アクティブなエージェントの最高の価値を維持する方法ですか? すべてのエージェントが非アクティブ化されると、シミュレーションは終了します。シミュレーション中にアクティブなエージェントの数を数えます:

[アクティブ?] を持つエージェントをカウントし、

しかし、この数値の最大値を保存する方法がわかりません。すべてのステップで実行を測定できることはわかっていますが、繰り返し回数があるため、この最大数を保存することをお勧めします。

よろしく、マシーク。

4

1 に答える 1

0

これまでに発生した最大値をグローバル変数に保持し、新しい最大値に達するたびに更新できます。

globals [
  max-active-agents
]

to setup
  set max-active-agents 0
end

to go
  let nb-active-agents agents with [ active? ]
  if nb-active-agents > max-active-agents [ 
    set max-active-agents nb-active-agents
  ]
end
于 2012-04-18T18:39:59.663 に答える