Netlogo 多代理模型:为每个代理创建独特的品种,还是使用代理集?

Netlogo 多代理模型:为每个代理创建独特的品种,还是使用代理集?,netlogo,Netlogo,由于我需要4名玩家拥有自己的变量(所有玩家碰巧也都有),我正在创建单独的品种并声明变量,如下所示: breed [player1] breed [player2] breed [player3] breed [player4] player1-own [mood_player1] player2-own [mood_player2] player3-own [mood_player3] player4-own [mood_player4] 然后,我将每个玩家视为唯一的,并为每个玩家编写代码

由于我需要4名玩家拥有自己的变量(所有玩家碰巧也都有),我正在创建单独的品种并声明变量,如下所示:

breed [player1]
breed [player2]
breed [player3]
breed [player4]

player1-own [mood_player1]
player2-own [mood_player2]
player3-own [mood_player3]
player4-own [mood_player4]
然后,我将每个玩家视为唯一的,并为每个玩家编写代码

我应该改用agentset吗?如果是这样的话,我怎样才能对每个玩家的情绪进行同样轻松的识别呢?谢谢

我通常会建议:

breed [players player]
players-own [mood]
然后,您可以使用以下工具制作4名玩家:

create-players 4
然后您可以按who编号将其称为
player 0
player 1
player 2
,以及
player 3
。这假设它们是最早创造的四只海龟

如果您不喜欢世界卫生组织的数字从0开始,或者如果玩家不是第一批创建的海龟,那么另一个选项是:

breed [players player]
players-own [mood]
globals [player1 player2 player3 player4]

create-players 1 [ set player1 self ]
create-players 1 [ set player2 self ]
create-players 1 [ set player3 self ]
create-players 1 [ set player4 self ]
它绕过了对世卫组织编号的任何依赖