Frage

Ich möchte wissen, welche Art von Toolkits, Sprachen, Bibliotheken existieren für agentenbasierte Modellierung und was sind die Vor / Nachteile von ihnen?

Einige Beispiele von dem, was ich denke an sind Swarm , Repast und MASS .

War es hilfreich?

Lösung

fand ich eine Umfrage von Juni 2009, dass Ihre Frage zu beantworten:

Umfrage von Agentenbasierte Modellierung und Simulation Tools

Au. R. J. Allan

  

Zusammenfassung
  Agentenbasierte Modellierung und Simulation ist ein rechen   anspruchsvolle Technik, die auf diskrete Ereignissimulation und seine mit   Ursprünge in der genetischen Algorithmen. Es ist eine leistungsstarke Technik für   Simulation dynamische komplexe Systeme und „emergent“ Verhalten zu beobachten.   Die häufigsten Anwendungen von ABMS sind in sozialen Simulation und Optimierung   Probleme, wie Verkehrsfluss und Lieferketten. Wir werden untersuchen,   andere Verwendungen in Computational Science und Engineering. ABMS hat   geeignet ist, auf neue Architekturen wie GPGPU zu laufen (zum Beispiel unter Verwendung von nVidia   CUDA). Argonne National Laboratory haben eine Website auf Exascale ABMS   und haben Modelle auf dem IBM Blue Gene laufen mit Mitteln aus dem SciDAC   Programm. Wir planen einen Workshop über ABMS methodolgies zu organisieren und   Anwendungen im Sommer 2009 Keywords agentenbasierte Modellierung,   Archäologie

http://epubs.cclrc.ac.uk/bitstream/3637 /ABMS.pdf

Andere Tipps

Ich empfehle auch NetLogo . Es ist eine IDE + Umwelt + Programmiersprache basiert auf das Logo (die auf Lisp beruhte), die Sie extrem schnelle Multi-Agenten-Modelle können bauen. Ich habe festgestellt, dass ich reproduzieren kann (Simulation) Algorithmen von Forschungsartikeln in ein paar Stunden, Algorithmen, die Wochen gedauert hätte, mit anderen Bibliotheken zu implementieren.

Sie können rel="noreferrer"> dieser Seite unter

Ich habe eingeführt Dramatis auf der OSCON 2008 ist ein Agent-basiertes Framework für Ruby und Python. Der Autor (Steven Parkes) hat einige Referenzen in seinem Blog und arbeitet an einer sprachunabhängig Schauspieler Diskussionsliste rel="nofollow .

Diese Seite bei erights.org eine große Menge von Verweisen auf hat, was ich denke, ist die Kernpapiere, die die Schauspieler Message-Passing-Modell einzuführen und erforschen.

Es gibt auch eine ziemlich gute Verbindung in wikipedia:

http://en.wikipedia.org/wiki/Comparison_of_agent-based_modeling_software

Auf der Modellierung Seite haben Sie einen Blick auf FAML, einem agentenorientierten Modellierungssprache. Das ist eine ziemlich wissenschaftliche Arbeit, aber es kann je nach Ihren Interessen helfen: http://ieeexplore.ieee.org/xpl/freepre_abs_all.jsp?isnumber=4359463&arnumber=4967615

Ich weiß, das ist ein alter Thread, aber ich dachte, es nicht einige zusätzliche Informationen hinzuzufügen, würde weh tun. Es gibt eine große neue Website, die agentenbasierte Modellierung gewidmet ist. Die Website enthält Links zu Papiere, Tutorials, Tools, Ressourcen und Forscher arbeiten an agentenbasierten Modellierung in einer Reihe von Bereichen.

Sie sollten auch einen Blick auf Madkit und Turtlekit

Alt Faden, aber der Vollständigkeit halber auch Anylogic und pyabm die für ABM genutzt werden kann.

Ich habe Erfahrung Programmierung agentenbasierte Modelle in verschiedenen Umgebungen / Sprachen. Meine Meinung ist, dass wenn Sie ein relativ einfaches Modell implementieren möchten, verwenden Sie Netlogo. Es ist auch möglich, Netlogo für schwere Modelle zu verwenden, wie gut (ich dies erfolgreich getan habe), aber an einem gewissen Punkt der Flexibilität einer Programmiersprache wie Java / Python / C ++ überwiegt die Bequemlichkeit der nativen Methoden in Netlogo, vor allem wenn die Leistung wird zu einem wichtigen Thema.

Repast wird immer ein bisschen aufgebläht. Wenn Sie ein erfahrener Programmierer sind, alle müssen Sie wirklich ein ABM dem Bau ist die Fähigkeit, Ereignisse zu planen und Zufallszahlen zu zeichnen. Der Rest (Definition von Agenten / Umgebungen und dessen Verhalten) Sie selbst basteln können. Wenn es darum geht, die Objekte in Ihrem Modell zu verwalten, verwenden Sie die regelmäßigen Datenstrukturen, die Sie gewohnt sind (Arrays / Hashes / Bäume / etc.). Zu diesem Zweck habe ich die Entwicklung eine sehr leichte Java-Bibliothek namens „ABMUtils“ (auf Github), die einen Scheduler implementiert und wickelt einen Zufallszahlengenerator. Dies ist in der frühen Entwicklungsphase, aber ich erwarte, dass die Dinge konkretisieren in den kommenden Monaten (es einfach zu halten).

Wenn Sie ein evolutionärer Ökonom sind, können Sie auch überprüfen, Labor für Simulation Entwicklung (LSD) .

PHP und Java-Entwickler sollten einen Blick auf KATO .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top