AISA: Auto-Information State Aggregation
Project description
Auto-Information State Aggregation
This is a python module aimed at partitioning networks through the maximization of Auto-Information. If you use this code, please cite the following paper:
State aggregations in Markov chains and block models of networks,
Faccin, Schaub and Delvenne, ArXiv 2005.00337
The module provides also a function to compute the Entrogram of a network with a suitable partition. The Entrogram provides a concise, visual characterization of the Markovianity of the dynamics projected to the partition space. In case you use this, please cite the following paper:
Entrograms and coarse graining of dynamics on complex networks,
Faccin, Schaub and Delvenne, Journal of Complex Networks, 6(5) p. 661-678 (2018),
ArXiv 1711.01987
Getting the code
Requirements
The following modules are required to aisa
to work properly:
numpy
andscipy
networkx
tqdm
(optional)
Install
Download the code here and unzip locally or clone the git
repository from Github.
On the terminl run:
pip install --user path/to/module
Uninstall
On the terminl run:
$ pip uninstall aisa
Usage
Read the online documentation that describes all classes and functions of the module.
Some simple notebook examples on module usage are provided in the examples
subfolder:
- a simple example of computing and drawing the
entrogram
and detecting the partition that maximize the auto-information in a well know small social network, see in nbviewer - an example on how to build a range dependent network and find the partition that maximize auto-nformation, see in nbviewer
License
Copyright: Mauro Faccin (2020)
AISA is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
AISA is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
Check LICENSE.txt for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.