Symu is a C# opensource framework for organization simulation.
You can develop your own application to run virtual experiments with organizations and capture their dynamic behaviors, their evolutions.
Symu targets agnostic organizations as social groups and does not plan to implement functionality for specific types of organizations.
Website : http://symu.org/
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.
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.
Because we believe that such a framework is valuable for organizations and academics. And that academics can enrich use cases and models implemented in this framework.
The main project is SymuEngine. This is the framework you'll use to build your own application in batch or GUI mode. SymuTools is a set of utilities for SymuEngine. Those two projects come with their test project, mainly unit tests. They are helpful for developers to understand how to use the framework.
The sample projects are interesting to understand what the framework can do. They are divided into models, for example learning and forgetting models. They also come with their test project, which are more integration tests and a guide to use this framework in batch mode. They allow you to discover, understand and configure each model, in this sense it is a good entry point.
See the list of CONTRIBUTORs.md who participated in this project.
Please read CONTRIBUTING.md for details on how you can contribute and the process for contributing.
Please read CODE_OF_CONDUCT.md for details on our code of conduct if you want to contribute.
We use SemVer for versioning. For the versions available, see the tags on this repository.
This project is licensed under the GNU General Public License v2.0 - see the LICENSE.md file for details
Symu is used in projects:
- Symu.biz, an enterprise level implementation