MAS コミュニティ
artisoc質問用掲示板(アーカイブ)
  
質問掲示板は移転しました。新掲示板はこちら

質問 (解決済み)

[artisocモデル] Agt型とAgtType型の違いとその正体
質問者: tumutuboさん , 質問日時: 2020/12/06 16:38
 Agt型とAgtType型の違いは何が違うのでしょうか?エージェント”agent”を作成した場合これがAgtTypeでその"agent"で生成されているエージェントのことがAgt型だと考えていますがこれであっているのか疑問です。
 また、2つの型の正体は何なのでしょうか。ヘルプには”エージェントの実態値”であったり”エージェントの種別”と書いてありますがよくわかりません。エージェントがなんらかの関数で周りにいるエージェントを認知し、そのエージェントに影響を与えるときにAgtTypeなどを使うのでしょうか。やはり2つの違いも、中身もいまいちよく分かりません。何か具体例があると分かりやすいです。よろしくお願いします。



▼解決した回答


おすすめは書籍『人工社会構築指南』を完読することですが、
簡単に説明すると、
AgtTypeはエージェントタイプ(種別)で、Agtはエージェント(実態)です。

例えば、レシピブック01を例に説明しますと、

https://mas.kke.co.jp/howto/test00/

AgtTypeは、ツリーで定義され、
例えばMap(空間)の上にPerson(エージェント型)を定義したもので、
Universe.Map.Personと表記されます。

CountAgt(Universe.Map.Person)
とすると、Universe.Map.Personの人数が取得できます。

また、
Dim personAgtSet As AgtSet, personAgt As Agt

MakeAgtSet(personAgtSet, Universe.Map.Person)
For Each personAgt In personAgtSet
// personAgtがエージェントの実態で、personAgt.X、personAgt.Yなどと記述すると、各エージェント変数を参照したり、代入したりできます
Next personAgt

ちなみに、personAgtSetはエージェント集合型で、エージェントのリストを格納します。

回答者: m.tamada さん , 回答日時: 2020/12/07 09:42

▼ 全ての回答


おすすめは書籍『人工社会構築指南』を完読することですが、
簡単に説明すると、
AgtTypeはエージェントタイプ(種別)で、Agtはエージェント(実態)です。

例えば、レシピブック01を例に説明しますと、

https://mas.kke.co.jp/howto/test00/

AgtTypeは、ツリーで定義され、
例えばMap(空間)の上にPerson(エージェント型)を定義したもので、
Universe.Map.Personと表記されます。

CountAgt(Universe.Map.Person)
とすると、Universe.Map.Personの人数が取得できます。

また、
Dim personAgtSet As AgtSet, personAgt As Agt

MakeAgtSet(personAgtSet, Universe.Map.Person)
For Each personAgt In personAgtSet
// personAgtがエージェントの実態で、personAgt.X、personAgt.Yなどと記述すると、各エージェント変数を参照したり、代入したりできます
Next personAgt

ちなみに、personAgtSetはエージェント集合型で、エージェントのリストを格納します。

回答者: m.tamada さん , 回答日時: 2020/12/07 09:42
よくわかりました。ありがとうございます。

回答者: tumutubo さん , 回答日時: 2020/12/07 10:16



Copyright © KOZO KEIKAKU ENGINEERING Inc. All Rights Reserved.
( 会社情報 情報セキュリティ・個人情報について )