bonabeauextendedmodel

Data and code for an extension of the Bonabeau model adding a second competitive group in the society.

https://github.com/marcsadurniparera/bonabeauextendedmodel

Science Score: 57.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 2 DOI reference(s) in README
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.5%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Data and code for an extension of the Bonabeau model adding a second competitive group in the society.

Basic Info
  • Host: GitHub
  • Owner: MarcSadurniParera
  • License: cc0-1.0
  • Language: Jupyter Notebook
  • Default Branch: main
  • Homepage:
  • Size: 35.6 MB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created almost 2 years ago · Last pushed 8 months ago
Metadata Files
Readme License Citation

README.md

Data and Code to reproduce the manuscript

Emergence of social hierarchies in a society with two competitive groups

The manuscript is available at: https://doi.org/10.1016/j.chaos.2025.116660

Abstract

Agent-based models describing social interactions among individuals can help to better understand emerging macroscopic patterns in societies. One of the topics which is worth tackling is the formation of different kinds of hierarchies that emerge in social spaces such as cities. Here we propose a Bonabeau-like model by adding a second group of agents. The fundamental particularity of our model is that only a pairwise interaction between agents of the opposite group is allowed. Agent fitness can thus only change by competition among the two groups, while the total fitness in the society remains constant. The main result is that for a broad range of values of the model parameters, the fitness of the agents of each group show a decay in time except for one or very few agents which capture almost all the fitness in the society. Numerical simulations also reveal a singular shift from egalitarian to hierarchical society for each group. This behaviour depends on the control parameter , playing the role of the inverse of the temperature of the system. Results are invariant with regard to the system size, contingent solely on the quantity of agents within each group. Finally, scaling laws are provided thus showing a data collapse from different model parameters and they follow a shape which can be related to the presence of a phase transition in the model.

Prerequisites

To run all the code and scripts for this paper, you will need to install: - Fortran 90 - Gnuplot - Python

How to Use the Code

Fortran 90

  1. Compilation:

    • Open the terminal in the directory where the .f90 files are located.
    • Compile the code using the following command: sh gfortran Name.f90 randomgenerator.f90 -o Name.exe
    • Example for this project: sh gfortran bonabeau_extended.f90 dranxor.f90 -o b.exe
  2. Execution:

    • Run the executable by opening the terminal in the directory where the .exe file is located and typing: sh ./Name.exe
    • Example for this project: sh ./b.exe

Gnuplot

  • To generate most of the figures, run the Gnuplot scripts in the same directories where you have the generated .dat files from the Fortran 90 code. sh gnuplot Name.gnu
  • Example for this project: sh gnuplot thermalizationfitness.gnu ### Python
  • Installation:
    • Install Jupyter Notebook if you haven't already: sh pip install notebook
    • Install the necessary Python packages by running: sh pip install -r requirements.txt (Ensure that you have a requirements.txt file listing all the necessary packages, or manually install the required packages as needed.)
  1. Running the Jupyter Notebook:
    • Open Jupyter Notebook by running the following command in your terminal: sh jupyter notebook
    • Navigate to the directory containing the notebook file (.ipynb) and open it.
    • Execute the cells in the notebook to run the Python code and generate the required outputs.

Owner

  • Name: Marc Sadurní Parera
  • Login: MarcSadurniParera
  • Kind: user
  • Location: Barcelona
  • Company: https://www.ubics.net/

PhD Researcher in Complex Systems Physics.

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
title: "Emergence of social hierarchies in a society with two competitive groups"
authors:
  - family-names: Sadurní Parera
    given-names: Marc
    orcid: https://orcid.org/0000-0002-9870-5513
    affiliation: Universitat de Barcelona
version: 1.0.0
doi: https://doi.org/10.48550/arXiv.2406.18168
date-released: 2025-05-27
license: Creative Commons
repository-code: https://github.com/MarcSadurniParera/BonabeauExtendedModel

GitHub Events

Total
  • Push event: 6
Last Year
  • Push event: 6