The Autonomous Empirical Research Group maintains numerous open-source Python (pip) packages for automated scientific discovery. All repositories are available at the AutoResearch GitHub Organization.
Automated Research Assistant (autora) is a Python package for automating and integrating empirical research processes, such as experimental design, data collection, and model discovery. With this package, users can define an empirical research problem and specify the methods they want to employ for solving it. autora is designed as a declarative language in that it provides a vocabulary and set of abstractions to describe and execute scientific processes and to integrate them into a closed-loop system for scientific discovery. The package interfaces with other tools for automating scientific practices, such as scikit-learn for model discovery, sweetpea and sweetbean for experimental design, firebase_admin for executing web-based experiments, and autodoc for documenting the empirical research process. While initially developed for the behavioral sciences, autora is designed as a general framework for closed-loop scientific discovery, with applications in other empirical disciplines.
Documentation & Tutorials: https://autoresearch.github.io/autora/
Repository: https://github.com/AutoResearch/autora
Citation:
Musslick, S., Andrew, B., Williams, C. C., Li, S., Marinescu, I., Dubova, M., ... & Holland, J. G. (2024). AutoRA: Automated research assistant for closed-loop empirical research. Journal of Open Source Software, 9(104), 6839. https://joss.theoj.org/papers/10.21105/joss.06839.pdf
Experimental design is a key ingredient of reproducible empirical research. Yet, given the increasing complexity of experimental designs, researchers often struggle to implement ones that allow them to measure their variables of interest without confounds. SweetPea is an open-source declarative language in Python, in which researchers can describe their desired experiment as a set of factors and constraints. The language leverages advances in areas of computer science to sample experiment sequences in an unbiased way. SweetPea is a standalone package. However, the Autonomous Empirical Research Group leverages SweetPea to automate the design of novel experiments.
Documentation:
https://sweetpea-org.github.io/
Tutorials:
https://sites.google.com/view/sweetpea-ai/tutorials
Repository:
https://github.com/sweetpea-org/sweetpea-py
Citation:
Musslick, S., Cherkaev, A., Draut, B., Butt, A. S., Darragh, P., Srikumar, V., ... & Cohen, J. D. (2021). SweetPea: A standard language for factorial experimental design. Behavior Research Methods, 1-25.
https://link.springer.com/article/10.3758/s13428-021-01598-2
sweetbean is an open-source, domain-specific declarative programming language built in Python, designed to simplify the synthesis of web-based behavioral experiments. It allows researchers to specify a behavioral experiment in declarative form as a sequence of events. Once specified, SweetBean can compile the experiment into a jsPsych experiment for web-based behavioral study with human participants. In addition, SweetBean can generate prompts for conducting the same experiment with a large language model (LLM), enabling automated alignment of LLMs with human behavior.
The SweetBean package integrates with other tools that automate aspects of behavioral research, such as SweetPea for automating experimental design, or AutoRA for orchestrating closed-loop behavioral research studies. Together, these tools form an ecosystem for advancing behavioral research through automated scientific discovery.
Documentation & Tutorials:
https://autoresearch.github.io/sweetbean/
Repository:
https://github.com/AutoResearch/sweetbean
Citation:
Strittmatter, Y., & Musslick, S. (2025). SweetBean: A declarative language for behavioral experiments with human and artificial participants. Journal of Open Source Software, 10(107), 7703. https://joss.theoj.org/papers/10.21105/joss.07703
EEG-GAN is a data augmentation tool for electroencephalography (EEG). It leverages a Generative Adversarial Network (GAN) to obtain trial-level synthetic EEG samples from naturalistic samples that are conditioned on experimental manipulations. The resulting samples can be used to enhance the classification of EEG-Data with any classifier.
Documentation & Tutorials:
https://autoresearch.github.io/EEG-GAN/
Repository:
https://github.com/AutoResearch/EEG-GAN
Citation:
Williams, C. C., Weinhardt, D., Wirzberger, M., & Musslick, S. (in press). Augmenting eeg with generative adversarial networks enhances brain decoding across classifiers and sample sizes. In Proceedings of the 45th Annual Conference of the Cognitive Science Society. Sydney, AU.