MAS(マルチエージェントシステム)やひとつの生成結果をフィードバックする現象のモデル化、設計システムを考える場合、コンポーネントを実行するたびに各変数が初期化されるのは困りますし、システム全体であるいは個々のエージェント等が変数の値を保つ必要があります。
まずはクラスなどでプロトタイプを記述し、そのインスタンスを別のコンポーネントに送り、送った側でインスタンスの関数をコールする、という構成で実現することができます。
WorldPlan コンポーネント側 (プロトタイプ宣言とインスタンス生成、インスタンスのポート’a’への送信)
クラスの記述方法を説明すべきですが、クラス内部で保つ変数(メンバー変数)は、self. で定義・アクセスします。proc という関数の中に、各設計ステップの処理を書いていきます。siteという入力ポートが暫定でありますが、ここが敷地情報、境界情報、何らかの初期座標、点、などを入力する想定です。
#class(prototype definition)
class WorldPlan:
    def __init__(self):
        self.step = 0
    def proc(self):
        self.step += 1
#create instance
world = WorldPlan()
#send instance to output port "a"
a = world
Process コンポーネント側 (インスタンスの受け取り、インスタンス関数の実行)
こちらのエディタを開いて、”test”ボタンを押下する度に1ステップ実行されます。
#execute function of instance from input port "world" world.proc() print "step:",world.step
↓このあたりのサンプルはすべてこの構成です。
MAS基本形
define functions, define prototypes(class)
シミュレーション Werner’s Model
シミュレーション Reaction-diffusion system 反応拡散系モデル
Category Archives: MAS (Multi-Agent System)
Category Archives: CA (Cellular Automaton)
Percolation

Comments are closed.