A little container and simulator for Complex Adaptive Systems (CAS)

Overview

Complex Adaptive Systems

Description

This is a little container and simulator for Complex Adaptive Systems (CAS).

CAS are typically living Complex Systems.

If you understand italian you can read Thesis.pdf where I explain the theory behind this work.

There are 3 differents CAS modelled in this simulator. In order of Complexity:

  1. An Ant Simulator;
  2. A Social Game System;
  3. The Game of Life by Conway.

The first one is actually a CASS (A social CAS) that simulate an ant colony.

Ants are characterized by living in a complex adaptive social system form of many ants. A single ant is pretty stupid, but many of them communicating and reacting to one another usually generates emergent behavior. // An abstract of emergent behavior you can observe and other observations

The Social Game System modelled here is a simple CASS in which the agents of the system don't move around. They live, die, meet other agents (called acquaintances), that lives near them, to communicate with them and procreate. The system showcase emergent behavior such as overpopulation, scarcity of food, aggregate behavior, cooperation and competition between different characters.

The Game of Life modelled here used the rules of the model invented by J.H.Conway. It is a cellular automata and one of the simpler CAS you can build. Every agent of the systems runs one basic rule that simulate a tendency of equilibrium in the number of popoulation. The system eventually lies on one equilibrium. There are three different equilibrium points. One in which no agent is alive. One in which the agents are fixed and don't move around anymore. One in which two or more agents form a pattern in which the agents die and born endlessly in cycle in the same spot. Every time you run a simulation eventually you will end up on one of this three different equilibrium point. Note the non-linearity of the system. A single newborn or a new death can destabilize the system and lead it to a whole new state and maybe a different final equilibrium point.

Build and Run

Build the src folder with a jdk from java 8 onward. Works best if imported in IntelliJ.

Run the simulation by running "Launcher.Launcher.java".

How to

In the Options Menu you can click on a button to toggle between the three different models.

Select which model you want to simulate than REMEMBER to click on Apply to see the changes.

Run the simulation with the Play button, change the speed by moving the slider to the bottom-right corner.

Every square on the grid is either full or empty. Every agent of te system at a given time occupies only one square. You can create new agents with a click on an empty square on the grid or kill one if you click on a full square.

Different models behave differently and have different buttons and actions. For example if you run "Social Game System" and click on Pause you can hover on a square on the grid to see the acquaintances of the agent associated with that square.

You might also like...

API gateway for REST and SOAP written in Java.

Membrane Service Proxy Reverse HTTP proxy (framework) written in Java, that can be used as an API gateway as a security proxy for HTTP based integrati

Dec 31, 2022

An extensible Java framework for building XML and non-XML streaming applications

Smooks Framework This is the Git source code repository for the Smooks Project. Build Status Building Pre-requisites JDK 8 Apache Maven 3.2.x Maven gi

Dec 1, 2022

The open-source Java obfuscation tool working with Ant and Gradle by yWorks - the diagramming experts

The open-source Java obfuscation tool working with Ant and Gradle by yWorks - the diagramming experts

yGuard yGuard is an open-source Java obfuscation tool. With yGuard it is easy as pie ( 🍰 ) to configure obfuscation through an extensive ant task. yG

Jan 2, 2023

TChart Simple and fast charts

TChart Simple and fast charts

TChart Simple and fast charts. Current version Beta 0.9.1 Preview Import jitpack.io gradle allprojects

Sep 20, 2022

ThirdEye is an integrated tool for realtime monitoring of time series and interactive root-cause analysis.

ThirdEye is an integrated tool for realtime monitoring of time series and interactive root-cause analysis. It enables anyone inside an organization to collaborate on effective identification and analysis of deviations in business and system metrics. ThirdEye supports the entire workflow from anomaly detection, over root-cause analysis, to issue resolution and post-mortem reporting.

Oct 17, 2022

A lightweight staff chat plugin for BungeeCord and Spigot.

A lightweight staff chat plugin for BungeeCord and Spigot with 2-way Discord chat support and many other great features.

Mar 30, 2022

This service checks the Co-WIN public API at a specific interval and send update to users specified telegram bot.

COVID VACCINE TELEGRAM BOT USING SPRING BOOT This application is a covid vaccine slot notifier via telegram bot. This application uses public CO-WIN A

Oct 4, 2022

Leaked for stupid reasons. please leave a star and follow me

Leaked for stupid reasons. please leave a star and follow me

Neko+ Leaked for stupid reasons. please leave a star and follow me. i wont provide ANY support https://discord.gg/zv9aytZW join neko+ discord! credits

Jul 19, 2021

BitBase is a Client-Server based Crypto trading platform which offers live pricing, dynamic charts, user portfolio, account settings... and much more!

BitBase is a Client-Server based Crypto trading platform which offers live pricing, dynamic charts, user portfolio, account settings... and much more!

BitBase-Crypto-Trading-Platform BitBase is a Client-Server based Crypto trading platform which offers live pricing, dynamic charts, user portfolio, ac

Feb 11, 2022
Owner
Pietro Dondi
Studente di Informatica alla Sapienza Università di Roma. Computer Science student at Sapienza Università di Roma. Love Data Science, AI, Software Development.
Pietro Dondi
Simple API, Complex Emails (JavaMail smtp wrapper)

Simple Java Mail Simple Java Mail is the simplest to use lightweight mailing library for Java, while being able to send complex emails including CLI s

Benny Bottema 1k Jan 5, 2023
a little project that will help you get in jail

Heftgen [ˈhɛftçən] ausgesprochen: Heftchen Development Install this npm module globally (https://www.npmjs.com/package/git-conventional-commits) Enabl

null 5 Jun 26, 2021
Sauron, the all seeing eye! It is a service to generate automated reports and track migrations, changes and dependency versions for backend services also report on known CVE and security issues.

SAURON - VERSION AND DEPLOYMENT TRACKER DESCRIPTION Sauron, the all seeing eye! It is a service to generate automated reports and track migrations, ch

FREENOWTech 20 Oct 31, 2022
A calculator that performs various operations such as addition, subtraction, multiplication and division of positive and negative values

A calculator that performs various operations such as addition, subtraction, multiplication and division of positive and negative values The calculator also does percentages, square roots and squares

Andrey Fabricio 1 Jan 31, 2022
A Local implementation of a java library functions to create a serverside and clientside application which will communicate over TCP using given port and ip address.

A Local implementation of java library functions to create a serverside and clientside application which will communicate over TCP using given port and ip address.

Isaac Barry 1 Feb 12, 2022
Tripoli imports raw mass spectrometer data files and supports interactive review and archiving of isotopic data.

Tripoli imports raw mass spectrometer data files and supports interactive review and archiving of isotopic data. Tripoli facilitates visualization of temporal trends and scatter during measurement, statistically rigorous filtering of data, and calculation of statistical parameters.

CIRDLES 7 Dec 15, 2022
Java Notes & Codes for better understanding and it contains all the funtions with examples and also added Cheat Sheet for Revision

Java Notes & Codes for better understanding and it contains all the funtions with examples and also added Cheat Sheet for Revision...

Ujjawal Singh 1 Nov 30, 2022
Automatically discover and tag PII data across BigQuery tables and apply column-level access controls based on confidentiality level.

Automatically discover and tag PII data across BigQuery tables and apply column-level access controls based on confidentiality level.

Google Cloud Platform 18 Dec 29, 2022
A Java to iOS Objective-C translation tool and runtime.

J2ObjC: Java to Objective-C Translator and Runtime Project site: https://j2objc.org J2ObjC blog: https://j2objc.blogspot.com Questions and discussion:

Google 5.9k Dec 29, 2022
Make Slack and Facebook Bots in Java.

JBot Make bots in Java. JBot is a java framework (inspired by Howdyai's Botkit) to make Slack and Facebook bots in minutes. It provides all the boiler

Ram 1.2k Dec 18, 2022