2015-07-19 32 views
1

,因爲我需要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] 

我然後把每個玩家獨一無二,寫代碼爲每個。

我應該使用代理集嗎?如果是這樣,我怎樣才能在每個球員的情緒識別方面同樣輕鬆?謝謝。

回答

3

我通常建議:

breed [players player] 
players-own [mood] 

然後你就可以讓4名球員有:

create-players 4 

然後你就可以參考他們誰數量player 0player 1player 2player 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 ] 

繞過對誰編號的任何依賴。