https://github.com/aspuru-guzik-group/olympus
Olympus: a benchmarking framework for noisy optimization and experiment planning
Science Score: 33.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
○codemeta.json file
-
○.zenodo.json file
-
✓DOI references
Found 2 DOI reference(s) in README -
✓Academic publication links
Links to: arxiv.org, rsc.org -
✓Committers with academic emails
2 of 7 committers (28.6%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (19.8%) to scientific vocabulary
Keywords
Repository
Olympus: a benchmarking framework for noisy optimization and experiment planning
Basic Info
- Host: GitHub
- Owner: aspuru-guzik-group
- License: mit
- Language: Jupyter Notebook
- Default Branch: main
- Homepage: https://aspuru-guzik-group.github.io/olympus/
- Size: 145 MB
Statistics
- Stars: 88
- Watchers: 11
- Forks: 28
- Open Issues: 27
- Releases: 0
Topics
Metadata Files
README.md
Olympus: a benchmarking framework for noisy optimization and experiment planning

Olympus provides a consistent and easy-to-use framework for benchmarking optimization algorithms. With olympus you can:
* Build optimization domains using continuous, discrete and categorical parameter types.
* Access a suite of 23 experiment planning algortihms via a simple and consistent interface
* Access 33 experimentally-derived benchmarks and 33 analytical test functions for optimization benchmarks
* Easily integrate custom optimization algorithms
* Easily integrate custom datasets, which can be used to train models for custom benchmarks
* Enjoy extensive plotting and analysis options for visualizing your benchmark experiments
You can find more details in the documentation.
Installation
Olympus can be installed with pip:
pip install olymp
The package can also be installed via conda:
conda install -c conda-forge olymp
Finally, the package can be built from source:
git clone https://github.com/aspuru-guzik-group/olympus.git
cd olympus
python setup.py develop
You can explore Olympus using the following Colab notebook:
Dependencies
The installation only requires:
* python >= 3.6
* numpy
* pandas
Additional libraries are required to use specific modules and objects. Olympus will alert you about these requirements as you try access the related functionality.
Use cases
The following projects have used Olympus to streamline the benchmarking of optimization algorithms.
- Bayesian optimization with known experimental and design constraints for chemistry applications
- Golem: an algorithm for robust experiment and process optimization
- Equipping data-driven experiment planning for Self-driving Laboratories with semantic memory: case studies of transfer learning in chemical reaction optimization
Citation
Olympus is an academinc research software. If you make use of it in scientific publications, please cite the following articles:
``` @article{haseolympus2021, author = {H{\"a}se, Florian and Aldeghi, Matteo and Hickman, Riley J. and Roch, Lo{\"\i}c M. and Christensen, Melodie and Liles, Elena and Hein, Jason E. and Aspuru-Guzik, Al{\'a}n}, doi = {10.1088/2632-2153/abedc8}, issn = {2632-2153}, journal = {Machine Learning: Science and Technology}, month = jul, number = {3}, pages = {035021}, title = {Olympus: a benchmarking framework for noisy optimization and experiment planning}, volume = {2}, year = {2021} }
@misc{hickmanolympus2023, author = {Hickman, Riley and Parakh, Priyansh and Cheng, Austin and Ai, Qianxiang and Schrier, Joshua and Aldeghi, Matteo and Aspuru-Guzik, Al{\'a}n}, doi = {10.26434/chemrxiv-2023-74w8d}, language = {en}, month = may, publisher = {ChemRxiv}, shorttitle = {Olympus, enhanced}, title = {Olympus, enhanced: benchmarking mixed-parameter and multi-objective optimization in chemistry and materials science}, urldate = {2023-06-21}, year = {2023}, } ``` The preprint is also available at https://arxiv.org/abs/2010.04153.
License
Olympus is distributed under an MIT License.
Owner
- Name: Aspuru-Guzik group repo
- Login: aspuru-guzik-group
- Kind: organization
- Website: http://aspuru.chem.harvard.edu/
- Repositories: 30
- Profile: https://github.com/aspuru-guzik-group
GitHub Events
Total
- Watch event: 9
- Member event: 2
- Push event: 1
- Pull request event: 3
- Fork event: 5
- Create event: 1
Last Year
- Watch event: 9
- Member event: 2
- Push event: 1
- Pull request event: 3
- Fork event: 5
- Create event: 1
Committers
Last synced: over 1 year ago
Top Committers
| Name | Commits | |
|---|---|---|
| rileyhickman | r****3@g****m | 112 |
| priyansh-1902 | 7****2 | 16 |
| rhickman | r****n@v****l | 8 |
| Matteo Aldeghi | m****h@m****e | 6 |
| Florian Häse | h****n@g****m | 3 |
| Cyrille Lavigne | c****e@m****a | 2 |
| Sterling G. Baird | 4****d | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 11 months ago
All Time
- Total issues: 28
- Total pull requests: 9
- Average time to close issues: 8 months
- Average time to close pull requests: about 1 month
- Total issue authors: 10
- Total pull request authors: 8
- Average comments per issue: 0.93
- Average comments per pull request: 0.22
- Merged pull requests: 5
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 2
- Average time to close issues: N/A
- Average time to close pull requests: 23 days
- Issue authors: 0
- Pull request authors: 2
- Average comments per issue: 0
- Average comments per pull request: 0.0
- Merged pull requests: 1
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- sgbaird (10)
- matteoaldeghi (9)
- jingexu (1)
- GuochenZhou (1)
- wiseodd (1)
- j-h-CoDe (1)
- JurgisR (1)
- qai222 (1)
- ennichita (1)
- mwleklin (1)
Pull Request Authors
- rileyhickman (2)
- gkwt (2)
- EliaSavino (2)
- qai222 (1)
- felix-s-k (1)
- clavigne (1)
- priyansh-1902 (1)
- sgbaird (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 453 last-month
- Total dependent packages: 1
- Total dependent repositories: 4
- Total versions: 1
- Total maintainers: 1
pypi.org: olymp
Benchmarking framework for noisy optimization and experiment planning
- Homepage: https://github.com/aspuru-guzik-group/olympus
- Documentation: https://olymp.readthedocs.io/
- License: mit
-
Latest release: 0.0.1b0
published almost 6 years ago
Rankings
Maintainers (1)
Dependencies
- m2r2 *
- msmb_theme *
- nbsphinx *
- sphinx *
- sphinx_rtd_theme *
- SQSnobFit *
- botorch *
- cma *
- deap *
- dragonfly-opt *
- gpyopt *
- gryffin *
- hebo *
- hyperopt *
- matplotlib *
- pandas *
- phoenics *
- pyDOE *
- pyswarms *
- seaborn *
- silence-tensorflow *
- sobol-seq ==0.2.0
- sqlalchemy *
- tensorflow ==1.15
- tensorflow-probability ==0.8
- SQSnobFit *
- cloudpickle ==1.1.1
- cma *
- deap *
- gpyopt *
- hyperopt *
- matplotlib *
- pandas *
- phoenics *
- pkginfo *
- protobuf *
- pyDOE *
- pyswarms *
- pyyaml *
- scikit-learn *
- scipy *
- seaborn *
- setuptools >=41.0.0
- silence-tensorflow *
- silence_tensorflow *
- sobol_seq *
- sqlalchemy *
- tensorflow ==1.15
- tensorflow-probability ==0.8
- matplotlib *
- numpy *