Black-it
bancaditalia.github.io
Spec sheet
- Purpose
- Black-it is a black-box calibrator that estimates model parameters using a loss function and selected search algorithms.Read 12 Oct 2026 · bancaditalia.github.io
- Intended users
- The project describes use across economics, epidemiology, biology, logistics, and other agent-based modeling or simulation research.Read 4 Oct 2026 · github.com
- Support
- The project documentation directs users to GitHub Issues for support, bug reports, and feature requests, and lists author email as another feedback route.Read 12 Oct 2026 · bancaditalia.github.io
- License
- Black-it is released under the GNU Affero General Public License v3 or later (AGPLv3+).Read 12 Oct 2026 · bancaditalia.github.io
- Maker
- The project documentation credits Banca d'Italia and identifies original author Gennaro Catapano and co-authors or maintainers.Read 12 Oct 2026 · bancaditalia.github.io
- Built-in losses
- Documented loss functions include MinkowskiLoss, MethodOfMomentsLoss, GslDivLoss, and FourierLoss.Read 12 Oct 2026 · bancaditalia.github.io
- Calibration process
- Calibration iteratively samples parameters, simulates data for each sample, and evaluates a loss against real data until the loss is close to zero or the iteration limit is reached.Read 12 Oct 2026 · bancaditalia.github.io
- Checkpointing
- When a saving folder is configured, calibration checkpoints are saved after each batch and can be restored to resume an interrupted run.Read 4 Oct 2026 · bancaditalia.github.io
- Checkpoints
- Calibration checkpoints can be saved automatically per batch and restored to resume an interrupted calibration.Read 12 Oct 2026 · bancaditalia.github.io
- Custom models
- Users can provide a custom model function or wrap an external simulator for use with the calibrator.Read 12 Oct 2026 · bancaditalia.github.io
- Customization
- Users can implement custom models, loss functions, and samplers by extending the package’s interfaces.Read 4 Oct 2026 · bancaditalia.github.io
- Distribution
- The package can be installed from PyPI with pip install black-it or directly from its GitHub repository.Read 4 Oct 2026 · github.com
- External simulators
- A Python wrapper can connect an external simulator, including models written in low-level languages or using Mesa, through a language-agnostic interface.Read 4 Oct 2026 · bancaditalia.github.io
- General use
- The package can also optimize built-in or custom models when several search techniques need to be combined.Read 4 Oct 2026 · bancaditalia.github.io
- Installation
- The documentation says the package requires Python 3.9 or later and can be installed with pip install black-it.Read 12 Oct 2026 · bancaditalia.github.io
- Intended audience
- PyPI classifies the package for developers and science or research users.Read 12 Oct 2026 · pypi.org
- Intended use
- The package was created with agent-based models in mind and can also be used as a general optimizer for built-in or custom models.Read 12 Oct 2026 · bancaditalia.github.io
- Parallel execution
- Model simulation is parallelized by default across the computer’s CPU cores, and the process count can be set with n_jobs.Read 4 Oct 2026 · bancaditalia.github.io
- Parallelization
- Model simulations are parallelized by default across the computer's cores, and the number of processes can be set with n_jobs.Read 12 Oct 2026 · bancaditalia.github.io
- Requirements
- The project requires Python 3.9 or later; the documentation also lists Poetry as a requirement.Read 4 Oct 2026 · bancaditalia.github.io
- Search algorithms
- Documented samplers include random uniform, Halton, R sequence, best batch, Gaussian process, XGBoost, random forest, and particle swarm samplers.Read 12 Oct 2026 · bancaditalia.github.io
- Search methods
- Documented samplers include uniform and low-discrepancy methods, plus methods based on prior results such as Gaussian process, XGBoost, random forest, and particle swarm samplers.Read 4 Oct 2026 · bancaditalia.github.io
- Simulator compatibility
- The simulator wrapper interface is language agnostic and the documentation describes using Python ABM frameworks such as Mesa or custom low-level models.Read 12 Oct 2026 · bancaditalia.github.io
Where Specifiction places it
- Statistical Analysis Software#103 of 1066.8