多代理模型:为每个代理创建独特的品种还是使用代理集?
Multi-agent model: To create unique breeds for each agent or to use agentset?
因为我需要 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
然后你可以用player 0
、player 1
、player 2
和player 3
来称呼他们。这假设它们是创建的前四只海龟。
如果您不喜欢 who 数字从 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 ]
这绕过了对编号的依赖。
因为我需要 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
然后你可以用player 0
、player 1
、player 2
和player 3
来称呼他们。这假设它们是创建的前四只海龟。
如果您不喜欢 who 数字从 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 ]
这绕过了对编号的依赖。