空間エージェント関数(エージェント集合生成)

make_agtset_around_own

連続空間上で指定した視野の範囲内にいるエージェントの集合を返す。

make_agtset_around_own(distance, include_self, agttype=None)

  • distance - 視野の広さ。

  • include_self - Falseのときエージェント集合に自分を含まず、Trueのとき含む。

  • agttype - 集める対象とするエージェント種別。初期値はNoneで、このとき全てのエージェント種別を対象とする。

※基本的に、空間エージェントのルールエディタ内で「self.[関数名]」の形で用いる
※連続空間でのみ使用可能。

# 自分から距離5以内のエージェントを全て取得する(自分を含まない)
# (空間エージェントのルールエディタに記述)
neighbors = self.make_agtset_around_own(5, False)

# 自分から距離3以内のUniverse.hiroba.hitoエージェントを取得する(自分を含む)
# (空間エージェントのルールエディタに記述)
neighbors = self.make_agtset_around_own(5, True, agttype=Universe.hiroba.hito)

make_agtset_around_own_sqgrid

四角格子空間上で、指定した視野の範囲内にいるエージェントの集合を返す。

make_agtset_around_own_sqgrid(distance, include_self, agttype=None, manhattan=False)

  • distance - 視野の広さ。

  • include_self - Falseのときエージェント集合に自分を含まず、Trueのとき含む。

  • agttype - 集める対象とするエージェント種別。初期値はNoneで、このとき全てのエージェント種別を対象とする。

  • manhattan - Falseのときは視野をチェビシェフ距離で、Trueのときはマンハッタン距離で定義する。初期値はFalse。

※基本的に、空間エージェントのルールエディタ内で「self.[関数名]」の形で用いる

# 自分から距離5以内のエージェントを全て取得する(自分を含まない)
# (空間エージェントのルールエディタに記述)
neighbors = self.make_agtset_around_own(5, False)

# 自分から距離3以内のUniverse.hiroba.hitoエージェントを取得する(自分を含む)
# (空間エージェントのルールエディタに記述)
neighbors = self.make_agtset_around_own(5, True, agttype=Universe.hiroba.hito)