Develop your own application to run virtual experiments with organizations and capture their dynamic behaviors, their evolutions.
Symu is a core of discrete-event multiagent simulation library in C#. It is designed to be the foundation for custom-purpose
human-centered organization simulation. Symu implements agnostic organizations as social groups to target the most general use cases.
Organization as complex systems
Symu models groups and organizations as complex systems. It captures the variability in human, technological and organizational factors through heterogeneity in information processing capabilities, but also in knowledge and resources. Also, the non-linearity of the model generates complex temporal behavior due to dynamic relationships among agents.
Symu targets agnostic organizations as social groups and does not plan to implement functionality for specific types of organizations.
Some useful links:
- Website : symu.org
- Documentation : docs.symu.org
- Code : github.symu.org
- Issues : github.symu.org/issues
- Twitter : symuorg
How it works
Symu models groups and organizations as complex systems and captures the variability in human, technological and organizational factors through heterogeneity in information processing capabilities, knowledge and resources.
The non-linearity of the model generates complex temporal behavior due to dynamic relationships among agents.
What it is
Symu is a multi-agent system, time based with discrete events, for the co-evolution of agents and socio-cultural environments.
Agents are decision-making units and can represent various levels of analysis such as individuals, groups or organizations.
Agents are autonomous, rationally bounded and tasks based.
They interact simultaneously in a shared environment that interacts in turn with the agents, via asynchronous messages.
Why open source
Because we believe that such a framework is valuable for organizations and academics.
Symu is based on a library of theoretical models:
organization theory, social networks, socio-cultural environment, information diffusion, socio-technical environment…
With our academic program, we will first implement models that you want to use for you.
Symu works only on Windows when you use SymuForm. Otherwise, it can be used on Linux, but it have not been tested.
Symu is built upon different repositories. We don't use git submodules. So that, to build Symu and its examples solutions, you'll need to check the dependencies manually.
To build Symu you have to add the Symu.Common.dll and Symu.DNA.dll as dependencies. You find this library in the Symu.Common and Symu.DNA repositories. To build Symu examples, you'll need to add Symu.dll, Symu.Forms.dll, Symu.Common.dll and Symu.DNA.dll as dependencies.
As it is a core library, you can't run Symu as is. The sample projects are interesting to understand what the framework can do. They are divided into models, for example learning and forgetting models. They allow you to discover, understand and configure each model, in this sense it is a good entry point. You can find executables files of those examples in the latest release.
See the list of CONTRIBUTORS who participated in this project.
Please read CONTRIBUTING for details on how you can contribute and the process for contributing.
Code of conduct
Please read CODE_OF_CONDUCT for details on our code of conduct if you want to contribute.
This project is licensed under the GNU General Public License v2.0 - see the LICENSE file for details
Paid consulting and support options are available from the corporate sponsors. See Symu services.
Symu is used in projects:
Symu.biz: an enterprise level implementation