NetLogo

NetLogo
パラダイム マルチパラダイム: 教育向け、手続き型、エージェント型 (agent-based) 、シミュレーション
登場時期 1999年
設計者 ウリ・ウィレンスキー
最新リリース 6.4.0/ 2023年11月18日 (2023-11-18)
型付け ダイナミック
影響を受けた言語 StarLogo, Logo
プラットフォーム クロスプラットフォーム (JVM)
ライセンス GPL
ウェブサイト ccl.northwestern.edu/netlogo
拡張子 nlogo, nlogo3d

NetLogoとはエージェント型プログラミング言語および統合開発環境である。the NetLogo websiteで無料で入手できる。

概要

LOGOの派生として「敷居が低く限界の無い」概念のもと設計され、「タートル」「パッチ」「オブザーバー」といった形式のエージェントを使ったプログラミングコンセプトとなっている[1]。また複数のオーディエンスを念頭に置き、教育コミュニティにおいて子供への教育やプログラミング経験無しで関連した現象をモデル化するドメインエキスパートに特化している[2]。

NetLogo環境は創発現象の探究を可能にしており、経済学、生物学、物理学、化学、心理学、システムダイナミクスといった様々なドメインのモデルを含む広範なメディアライブラリが付属する[3]。また修正スイッチ、スライダー、チューサー、インプット、他インタフェース要素を使った探究や[4]、新しいモデルの作成や既存モデルの修正も可能になっている。

設計、作成したのはノースウェスタン大学のコネクテッドラーニング・コンピュータベースモデリングセンター長官のウリ・ウィレンスキーであり[5]、開発を牽引したのはセス・チスエである[5]。

技術的基礎

NetLogoはフリー・アンド・オープンソースソフトウェアでライセンスはGPLで、ScalaとJavaで書かれており、Java仮想マシン上で動作する[6]。中核部は部分的にユーザコードをJVMバイトコードにコンパイルするハイブリッドのインタプリタ/コンパイラである[7]。

使用例

NetLogoにおける単純なマルチエージェントモデルの例としてユーザインタフェースにウルフ・シープ・プリデーションモデルが表示されている[8]。時間をかけて捕食者・被捕食者の生物数増加をモデル化している。特徴は以下の通り:

  • 羊とオオカミに見立てた2種類のタートルがある。
  • 両方とも体力が尽きるまでランダムに移動している。
  • またどちらも移動することで体力を消費し、体力が無くなったら死ぬ。
  • 羊は草を食べることで体力を増加させる。
  • オオカミは羊を食べることで体力を増加させる。
  • 両方とも自身の子供と共体力を共有し繁殖できる。

HubNet

HubNetとは教室でNetLogoを使って参加型シミュレーションを動作させる技術である[9]。参加型シミュレーションにおいてユーザグループ全体でシステムの挙動を設定することに参加する。ネットワークコンピュータ、テキサス・インスツルメンツ製グラフ電卓といった個々のデバイスを使うことで各ユーザは分離独立したエージェントとして活動する。HubNet活動の一例としてコモンズの悲劇という経済問題モデルである「トレジディー・オブ・ザ・コモンズ」がある[10]。

脚注

出典

  1. ↑ http://ccl.northwestern.edu/netlogo/docs/programming.html#agents Types of Agents in NetLogo
  2. ↑ Daniel Kornhauser; William Rand; Uri Wilensky (2007年11月15日). Visualization Tools for Agent-Based Modeling in NetLogo (PDF). Agent2007. Chicago, IL. 2012年10月4日閲覧.
  3. ↑ http://ccl.northwestern.edu/netlogo/models/ Models included with NetLogo
  4. ↑ http://ccl.northwestern.edu/netlogo/docs/interface.html#interface
  5. 1 2 Seth Tisue; Uri Wilensky (October 2004). NetLogo: Design and Implementation of a Multi-Agent Modeling Environment (PDF). Agent2004. Chicago, IL. 2012年10月4日閲覧.
  6. ↑ http://ccl.northwestern.edu/netlogo/faq.html
  7. ↑ Forrest Stonedahl; Seth Tisue; Uri Wilensky (2006). Breeding faster turtles: Progress towards a NetLogo compiler (PDF). Agent 2006. Chicago, IL. 2012年10月22日閲覧.
  8. ↑ http://ccl.northwestern.edu/netlogo/models/WolfSheepPredation Wolf Sheep Predation
  9. ↑ http://ccl.northwestern.edu/netlogo/hubnet.html HubNet
  10. ↑ http://ccl.northwestern.edu/netlogo/models/HubNetTragedyoftheCommonsHubNet

参考文献

  • Steven F. Railsback; Volker Grimm (2011). Agent-Based and Individual-Based Modeling: A Practical Introduction. Cambridge: Princeton University Press. ISBN 978-0-691-13674-5 
  • Nigel Gilbert; Klaus G. Troitzch (2005). SIMULATION FOR THE SOCIAL SCIENTIST Second Edition. London: McGraw Hill. ISBN 978-0-335-21600-0 
  • Uri Wilensky; William Rand (2015-04-03). An introduction to agent-based modeling: Modeling natural, social and engineered complex systems with NetLogo.. Cambridge, Massachusetts USA: MIT Press. ISBN 978-0262731898 

外部リンク