Git Product home page Git Product logo

seirsmodel's Introduction

SEIRS-NIMFA Model for Infectious Disease Dynamics

This project is a Python implementation for a SEIRS-NIMFA compartmental epideiologic model that describes the evolution of a malware infection in an IoT network. This is an individual-based approach described by the following flow diagram:

image
The SEIRS-NIMFA flow diagram for a device i

Here xi(t), wi(t), yi(t), and zi(t) represent the probability of the device i being at each of the compartments, S, E, I, R, repectively, at time t, and bi(t), αi, σi, and ɣi represent the transition rates between the compartments for device i (although these are homogeneous for all the network in the implementation).

Folder Structure

├── SEIRSModel/ # Root directory
│ ├── assets/ # Folder containing images, diagrams, or other assets
│ ├── data/ # Folder containing sample initial configurations
│ │ ├── results/ # Folder where results of the simulation are dynamically saved
│ │ ├── test_case_examples/ # Folder with network configurations in the form of adjacency matrices used for the test cases from the article
│ ├── independent_scripts/ # Folder containing scripts to run code without GUI
│ ├── interface/ # Folder containing Python files for the GUI
│ ├── model/ # Folder containing Python files for the logic of the simulation
│ │ ├── network.py # Network class: IoT device network construction
│ │ ├── seirs_model.py # NIMFA SEIRS model for a homogeneous network with constant parameters
│ │ └── states.py # Enumeration for the states definition
│ ├── interface_seirs.py # File containing main Python script
│ ├── .gitignore # Gitignore file
│ ├── README.md # Project README file
│ └── requirements.txt # Dependencies specification file

Running the Project

Follow these steps to run the SEIRSModel project:

  1. Clone the project

    git clone https://github.com/Lauraquiroga/SEIRSModel.git
    cd SEIRSModel
  2. Install Dependencies
    Create and activate a virtual environment. Install requirements mentioned in the requirements.txt file.

    pip install -r requirements.txt

    Ensure that you have Python installed on your system.

  3. Configure

    Modify or add initial configuration files for your scenarios. These might be found in the data folder.

  4. Run the GUI

    python interface_seirs.py     

    Follow the steps indicated in the GUI according to your requirements.

  5. View Results

    Visualize and save the graphs of the results through the GUI if needed.
    Explore the results in the data/results folder. The simulation dynamically saves output files there.

seirsmodel's People

Contributors

lauraquiroga avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.