An open-source Python package for simplified, customizable Computerized Adaptive Testing (CAT) using Bayesian methods.
- Bayesian Methods: Built-in support for Bayesian ability estimation with customizable priors
- Flexible Architecture: Object-oriented design with abstract classes for easy extension
- Item Response Theory: Full support for 1PL, 2PL, 3PL, and 4PL models, GRM, GPCM
- Multiple Estimators:
- Maximum Likelihood Estimation (MLE)
- Bayesian Modal Estimation (BM)
- Expected A Posteriori (EAP)
- Item Selection Strategies: Maximum information criterion
- Content Balancing: Maximum Priority Index, Weighted Penalty Model
- Exposure Control: Randomesque Item Selection, Maximum Priority Index
- Simulation Framework: Comprehensive tools for CAT simulation and evaluation
- Real-world Application: Direct transition from simulation to production testing
- Stopping Criteria: Support for standard error and test length criteria
- Data Management: Built-in support for CSV and pickle data formats
Install from PyPI using pip:
pip install adaptivetestingFor the latest development version:
pip install git+https://github.com/condecon/adaptivetestingWe welcome contributions! Please see our GitHub repository for:
- Issue tracking
- Feature requests
- Pull request guidelines
- Development setup
This package is designed for researchers and practitioners in:
- Educational assessment
- Psychological testing
- Cognitive ability measurement
- Adaptive learning systems
- Psychometric research
The package facilitates the transition from research simulation to real-world testing applications without requiring major code modifications.
If you use this package for your academic work, please provide the following reference: Engicht, J., Bee, R. M., & Koch, T. (2025). Customizable Bayesian Adaptive Testing with Python – The adaptivetesting Package. Open Science Framework. https://doi.org/10.31219/osf.io/d2xge_v1
@online{engichtCustomizableBayesianAdaptive2025,
title = {Customizable {{Bayesian Adaptive Testing}} with {{Python}} – {{The}} Adaptivetesting {{Package}}},
author = {Engicht, Jonas and Bee, R. Maximilian and Koch, Tobias},
date = {2025-08-06},
eprinttype = {Open Science Framework},
doi = {10.31219/osf.io/d2xge_v1},
url = {https://osf.io/d2xge_v1},
pubstate = {prepublished}
}
This project is licensed under the terms specified in the LICENSE file.