Skip to content

Jpickard1/Hypergraph-Analysis-Toolbox

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

368 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Hypergraph Analysis Toolbox (HAT)

Documentation MATLAB File Exchange PyPI version

HAT is a general-purpose software suite for constructing, analyzing, and visualizing hypergraphs and higher-order structures. Originally motivated by the analysis of Pore-C genomic data, HAT is designed to be versatile and extensible across domains with a focus on tensor, dynamics, and control based algorithms for higher order networks


Features

  • Flexible construction β€” build hypergraphs from edge lists, incidence matrices, or adjacency tensors; directed and undirected; weighted and unweighted
  • Metrics β€” centrality, similarity, entropy, and more
  • Spectral methods β€” Laplacians and related operators
  • Tensor analysis β€” eigenvalues, decompositions, and Kronecker products
  • Controllability and observability β€” analysis of higher-order dynamical systems
  • Visualization β€” hypergraph drawing utilities
  • Interoperability β€” import/export with HIF, HyperNetX, and HypergraphX

Installation

Python

pip install HypergraphAnalysisToolbox

Requires Python β‰₯ 3.11.

MATLAB

Download from MATLAB File Exchange or clone this repository and add the Matlab/ directory to your MATLAB path.


Quick Start

import numpy as np
from HAT import Hypergraph

# Construct from an edge list
H = Hypergraph(edge_list=[[0, 1, 2], [0, 1, 3]])

# Construct from an incidence matrix
D = np.array([[1, 1],
              [1, 1],
              [1, 0],
              [0, 1]])
H = Hypergraph(incidence_matrix=D)

Documentation

Full documentation β€” including API reference, tutorials, and examples β€” is available at:

https://hypergraph-analysis-toolbox.readthedocs.io


Related Publications

Paper Link
Structural Controllability of Large-Scale Hypergraphs Preprint
Data-Driven Tensor Decomposition Identification of Homogeneous Polynomial Dynamical Systems Preprint
Scalable Hypergraph Algorithms for Observability of Gene Regulation European Control Conference
Deciphering Multiway Interactions in the Human Genome Nature Communications
Geometric Aspects of Observability of Hypergraphs IFAC Workshop on Lagrangian and Hamiltonian Methods for Non Linear Control
Observability of Hypergraphs IEEE Conference on Decision and Control
Kronecker Products of Tensors and Hypergraphs SIAM Journal on Matrix Analysis and Applications
HAT: Hypergraph Analysis Toolbox PLOS Computational Biology
Hypergraph Similarity Measures IEEE TRANSACTIONS ON NETWORK SCIENCE AND ENGINEERING
Controllability of Hypergraphs IEEE TRANSACTIONS ON NETWORK SCIENCE AND ENGINEERING
Tensor Entropy for Uniform Hypergraphs Tensor Entropy for Uniform Hypergraphs
Multilinear Control Systems Theory SIAM J. CONTROL OPTIM.

Citation

If you use HAT in your research, please cite:

@article{pickard2023hat,
    title={HAT: Hypergraph analysis toolbox},
    author={Pickard, Joshua and Chen, Can and Salman, Rahmy and Stansbury, Cooper and Kim, Sion and Surana, Amit and Bloch, Anthony and Rajapakse, Indika},
    journal={PLOS Computational Biology},
    volume={19},
    number={6},
    pages={e1011190},
    year={2023},
    publisher={Public Library of Science San Francisco, CA USA}
}

Contributing

Bug reports and feature requests are welcome via GitHub Issues.

About

A software for hypergraph and multi-way network analysis 🌐

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors