Discover and explore top open-source AI tools and projects—updated daily.
icaros-uscQuality Diversity optimization library
Top 99.9% on SourcePulse
Summary
Pyribs is a Python library for Quality Diversity (QD) optimization, implementing the modular Rapid Illumination of Behavior Space (RIBS) framework. It targets researchers and practitioners, offering a simple, flexible, and accessible tool for exploring QD algorithms, particularly for fixed-dimensional continuous domains, with an emphasis on performance and ease of integration.
How It Works
The library is built around the RIBS framework, which decomposes QD algorithms into three core components: an Archive for storing solutions, Emitters for generating new candidates, and a Scheduler to manage their interaction. This modular design allows users to compose a wide array of QD algorithms by interchanging these components. Pyribs adopts an ask-tell interface for solution generation and evaluation, optimized for fixed-dimensional continuous search spaces to enhance performance and usability.
Quick Start & Requirements
Pyribs requires Python 3.10+. Installation is straightforward via pip: pip install ribs[visualize] for full functionality including visualization tools, or pip install ribs for the base library. Users can verify their installation by running python -c "import ribs; print(ribs.__version__)". Official documentation and tutorials are available at docs.pyribs.org.
Highlighted Details
Maintenance & Community
Developed and maintained by the ICAROS Lab at USC, pyribs fosters community engagement through a Discord server and an infrequent announcements mailing list. Further project status and releases are communicated via these channels.
Licensing & Compatibility
Pyribs is released under the permissive MIT License, allowing for broad compatibility with commercial and closed-source projects without significant restrictions.
Limitations & Caveats
The library's design intentionally focuses on fixed-dimensional continuous domains. Users requiring support for high-dimensional or discrete search spaces may find pyribs less suitable without custom extensions or modifications.
1 month ago
Inactive
ggml-org
ddbourgin