Christian Schulz’s Post

We now share CHSZLabLib via PyPi, an open-source Python library that brings the research output of my lab into a single, unified interface. GitHub: https://lnkd.in/djSWasyq PyPI: https://lnkd.in/dRYrh84x Over the years, our group has developed high-performance C++ solvers for a wide range of combinatorial optimization problems on graphs. These tools represent the state of the art in their respective domains, but using them has always required building C++ code, navigating different interfaces, and understanding library-specific data formats. CHSZLabLib changes that. One install. One API. 26 algorithm modules. What's inside: - Graph Partitioning (KaHIP, HeiStream, SharedMap) - Hypergraph Partitioning & Cuts (FREIGHT, HeiCut) - Community Detection & Clustering (VieClus, SCC, CluStRE, HeidelbergMotifClustering) - Minimum & Maximum Cuts (VieCut, Max-Cut) - Independent Sets & Matching (KaMIS, CHILS, LearnAndReduce, HyperMIS, HeiHGM, red2pack) - Edge Orientation (HeiOrient) - Fully Dynamic Graph Algorithms (DynMatch, DynDeltaOrientation, DynDeltaApprox, DynWMIS) 350,000+ lines of C++, compiled and shipped as pre-built wheels for Linux (x86_64) and macOS (arm64). No compiler needed. Just do pip install chszlablib in your python env and get started. The library wraps each underlying C++ repository with consistent Graph/HyperGraph objects and typed result dataclasses. It interoperates with NetworkX and SciPy out of the box. Streaming interfaces let you process graphs that don't fit in memory, node by node. This is the work of many people. A huge thank you to all current and former group members, student research assistants, and collaborators who built the original C++ libraries over the years. Their names, papers, and repositories are all linked in the README. For scientific use: please cite the original papers for each algorithm you use (listed in the repository). For maximum performance and full parameter control, the underlying C++ libraries remain the right choice. CHSZLabLib prioritizes accessibility and a unified interface. MIT licensed. Contributions and feedback welcome. #GraphAlgorithms #OpenSource #Python #CombinatorialOptimization #AlgorithmEngineering #Research #GraphPartitioning #HPC

  • Overview of library.

Superb work!! Thanks for sharing. Very impressed with the GitHub repo

Like
Reply

Congratulations! Now you are talking. Python Libs are making research matter 😉

See more comments

To view or add a comment, sign in

Explore content categories