エージェントベースのモデリングリソース[終了]
-
03-07-2019 - |
解決
2009年6月からの質問に答えるアンケートを見つけました:
エージェントベースのモデリングおよびシミュレーションツールの調査
Au。 R.J.アラン
要約
エージェントベースのモデリングとシミュレーションは計算的に 離散イベントシミュレーションに基づく要求の厳しいテクニックとその 遺伝的アルゴリズムの起源。それは強力なテクニックです 動的で複雑なシステムをシミュレートし、“緊急事態を観察する動作。 ABMSの最も一般的な用途は、ソーシャルシミュレーションと最適化です トラフィックフローやサプライチェーンなどの問題。調査します 計算科学および工学におけるその他の用途。 ABMSは GPGPUなどの新しいアーキテクチャでの実行に適合 CUDA)。アルゴンヌ国立研究所にはExascale ABMSのWebサイトがあります SciDACからの資金提供を受けてIBM BlueGeneでモデルを実行した プログラム。 ABMS方法論に関するワークショップを開催する予定です。 2009年夏のアプリケーション。キーワードエージェントベースのモデリング、 考古学
他のヒント
NetLogo もお勧めします。これは、(Lispに基づいた)ロゴに基づいたIDE +環境+プログラミング言語であり、マルチエージェントモデルを非常に高速に構築できます。他のライブラリで実装するのに数週間かかっていたはずのアルゴリズムを、数時間で研究記事から再現(シミュレーション)できることがわかりました。
OSCON 2008で Dramatis を紹介しました。これはRubyおよびPython用のエージェントベースのフレームワークです。著者(Steven Parkes)は彼のブログにいくつかの参考文献があり、言語にとらわれない俳優ディスカッションリスト。
erights.orgのこのページには、 Actorsメッセージパッシングモデルを紹介および調査するコアペーパーです。
ウィキペディアにもかなり良いリンクがあります:
http://en.wikipedia.org/wiki/Comparison_of_agent-based_modeling_software
モデリングの側面では、エージェント指向のモデリング言語であるFAMLを見てください。これはかなりアカデミックな論文ですが、興味に応じて役立つ場合があります。 http://ieeexplore.ieee.org/xpl/freepre_abs_all.jsp?isnumber=4359463&arnumber=4967615
これが古いスレッドであることは知っていますが、余分な情報を追加しても問題ないと思いました。 エージェントベースのモデリング専用の新しいWebサイトがあります。このサイトには、多くの分野でエージェントベースのモデリングに取り組んでいる論文、チュートリアル、ツール、リソース、および研究者へのリンクが含まれています。
古いスレッドですが、完全を期すため、 Anylogic および pyabm はABMに使用できます。
複数の環境/言語でエージェントベースのモデルをプログラミングした経験があります。私の意見では、比較的単純なモデルを実装する場合は、Netlogoを使用します。頑丈なモデルにもNetlogoを使用することもできます(これは成功しました)が、ある時点で、特にjava / python / c ++などのプログラミング言語の柔軟性は、Netlogoで利用可能なネイティブメソッドの利便性を上回ります。パフォーマンスが大きな問題になるとき。
再貼り付けは少し肥大化しています。経験豊富なプログラマーの場合、ABMの構築を開始するために本当に必要なのは、イベントをスケジュールし、乱数を描画する機能だけです。残り(エージェント/環境とその動作の定義)は、自分で作成できます。モデル内のオブジェクトの管理に関しては、慣れている通常のデータ構造(配列/ハッシュ/ツリー/など)を使用してください。このため、「ABMUtils」という非常に軽量なJavaライブラリを開発しています。 (githubで)スケジューラーを実装し、乱数ジェネレーターをラップします。これは開発の初期段階ですが、今後数か月にわたって物事を具体化する(シンプルに保つ)ことを期待しています。
進化経済学者の場合は、シミュレーション開発研究所(LSD)も確認できます。
PHPおよびJava開発者は、 KATO をご覧ください。