Metadata-Version: 2.4
Name: pyscat
Version: 0.1.0
Summary: PyScat: a Python library for scatter-search metaheuristics.
Author: Daniel Weindl
License-Expression: BSD-3-Clause
Project-URL: Homepage, https://github.com/ICB-DCM/pyscat
Project-URL: Source, https://github.com/ICB-DCM/pyscat
Project-URL: Documentation, https://pyscat.readthedocs.io/
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Science/Research
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Scientific/Engineering :: Mathematics
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy>=2.0
Requires-Dist: pypesto
Requires-Dist: fides
Provides-Extra: test
Requires-Dist: pytest>=7; extra == "test"
Requires-Dist: pre-commit>=3; extra == "test"
Requires-Dist: pytest-rerunfailures; extra == "test"
Requires-Dist: scipy; extra == "test"
Requires-Dist: pypesto[cma,ipopt]; extra == "test"
Provides-Extra: cma
Requires-Dist: pypesto[cma]; extra == "cma"
Provides-Extra: ipopt
Requires-Dist: pypesto[ipopt]; extra == "ipopt"
Provides-Extra: doc
Requires-Dist: sphinx; extra == "doc"
Requires-Dist: sphinx-rtd-theme; extra == "doc"
Requires-Dist: sphinx-autodoc-typehints; extra == "doc"
Requires-Dist: sphinxcontrib-bibtex; extra == "doc"
Requires-Dist: nbsphinx; extra == "doc"
Requires-Dist: scipy; extra == "doc"
Dynamic: license-file

[![ReadTheDocs status](https://app.readthedocs.org/projects/pyscat/badge/?version=latest)](https://pyscat.readthedocs.io/)
[![PyPI - Version](https://img.shields.io/pypi/v/pyscat)](https://pypi.org/project/pyscat/)
[![DOI](https://zenodo.org/badge/1103842718.svg)](https://doi.org/10.5281/zenodo.17787407)

# PyScat

*A Python library for scatter-search metaheuristics.*

> **Note**
> This package is still under development. Documentation is incomplete,
> and the API may change without notice.
> For now, please use the scatter search implementation in
> [pyPESTO](https://pypesto.readthedocs.io/en/latest/).

PyScat currently implements two scatter-search algorithms:

* **Enhanced Scatter Search (eSS)**
  based on the work by Egea et al. (2007)
  ([DOI:10.1021/ie801717t](https://doi.org/10.1021/ie801717t))
* **Self-Adaptive Cooperative enhanced Scatter Search (saCeSS)**
  based on the work by Penas et al. (2017)
  ([DOI:10.1186/s12859-016-1452-4](https://doi.org/10.1186/s12859-016-1452-4))

PyScat currently builds on top of the
[pyPESTO](https://pypesto.readthedocs.io/en/latest/) framework for parameter
estimation and leverages its problem definition and optimizer interfaces.

## 📖 Documentation

Documentation is available at
[pyscat.readthedocs.io](https://pyscat.readthedocs.io/).

## 📦 Installation

From [PyPI](https://pypi.org/project/pyscat/):

```bash
pip install pyscat
```

Latest development version from [GitHub](https://github.com/ICB-DCM/pyscat):

```bash
pip install git+https://github.com/ICB-DCM/pyscat@main
```
