エージェント集合操作(基本操作)¶
add¶
エージェント集合型変数にエージェントを追加する。
add(agt)
agt - 追加するエージェント。
※「[集合型変数].[関数名]」の形で用いる
※Python標準の関数です。詳しくはPython公式ドキュメントを参照してください。
https://docs.python.org/ja/3/library/stdtypes.html#set
# エージェント集合peopleにエージェントtaroを追加する
people.add(taro)
clear¶
エージェント集合型変数の中身をクリアする。
clear()
※「[集合型変数].[関数名]」の形で用いる
※Python標準の関数です。詳しくはPython公式ドキュメントを参照してください。
https://docs.python.org/ja/3/library/stdtypes.html#set
# エージェント集合peopleの中身をクリアする
people.clear()
copy¶
エージェント集合型変数をコピーする。
copy()
※「[集合型変数].[関数名]」の形で用いる
※Python標準の関数です。詳しくはPython公式ドキュメントを参照してください。
https://docs.python.org/ja/3/library/stdtypes.html#set
# エージェント集合peopleをコピーしてpeople2を作成する
people2 = people.copy()
count_agt¶
引数の指定に当てはまるエージェントの数を取得する。
count_agt(agttype=None, space=None, layer=None, only_alive=False)
agttype - 指定するエージェント種別。指定しない場合は全てのエージェント種別。
space - 指定する空間。指定しない場合は全ての空間。
layer - 指定するレイヤ。指定しない場合は全てのレイヤ。
only_alive - killフラグが立っていないエージェントのみを指定するかどうか。初期値はFalse。 ※killフラグはkill_agt関数によって立てられる
# エージェント種別personのエージェント数を取得する
n = count_agt(agttype=Universe.city.person)
n = count_agt(agttype=Universe.city.person, only_alive=True) # killフラグが立っていないエージェント数を取得する
count_agtset¶
エージェント集合型変数が保持しているエージェント数を取得する。
count_agtset(agtset)
# エージェント集合peopleのエージェント数を取得する
n = count_agtset(people)
discard¶
エージェント集合型変数から、指定したエージェントを削除する。
discard(agt)
※「[集合型変数].[関数名]」の形で用いる
※Python標準の関数です。詳しくはPython公式ドキュメントを参照してください。
https://docs.python.org/ja/3/library/stdtypes.html#set
# エージェント集合peopleからエージェントtaroを削除する
people.discard(taro)
randchoice¶
エージェント集合からランダムに1つのエージェントを取り出す。
randchoice(agtset)
# エージェント集合peopleからランダムに1つのエージェントを取り出し変数oneに格納する
one = randchoice(people)
randsample¶
エージェント集合からランダムに重複なく複数のエージェントを取り出す
randsample(agtset, num)
agtset - 対象とするエージェント集合
num - 取り出すエージェントの個数
# エージェント集合peopleからランダムに2つのエージェントを取り出し変数pairに格納する
pair = randsample(people)