Greedy Experimental Design Construction
Overview
Computes experimental designs for two-arm experiments with covariates using multiple methods, including: (0) complete randomization and randomization with forced-balance; (1) greedy optimization of a balance objective function via pairwise switching; (2) numerical optimization via 'gurobi'; (3) rerandomization; (4) Karp's method for one covariate; (5) exhaustive enumeration for small sample sizes; (6) binary pair matching using 'nbpMatching'; (7) binary pair matching plus method (1) to further optimize balance; (8) binary pair matching plus method (3) to further optimize balance; (9) Hadamard designs; and (10) simultaneous multiple kernels. For the greedy, rerandomization, and related methods, three objective functions are supported: Mahalanobis distance, standardized sums of absolute differences, and kernel distances via the 'kernlab' library. This package is the result of a stream of research that can be found in Krieger, A. M., Azriel, D. A., and Kapelner, A. (2019). "Nearly Random Designs with Greatly Improved Balance." Biometrika 106(3), 695-701 doi:10.1093/biomet/asz026. Krieger, A. M., Azriel, D. A., and Kapelner, A. (2023). "Better experimental design by hybridizing binary matching with imbalance optimization." Canadian Journal of Statistics, 51(1), 275-292 doi:10.1002/cjs.11685.
Install
Health
- OK13 OK2026-10-24
- NOTE11 OK, 2 NOTE2026-06-09
- ERROR10 OK, 2 NOTE, 1 ERROR2026-06-08
- NOTE11 OK, 2 NOTE2026-05-01
- OK14 OK2026-04-22
Show 4 earlier changesHide 4 earlier changes
- ERROR13 OK, 1 ERROR2026-04-18
- OK14 OK2026-04-06
- ERROR13 OK, 1 ERROR2026-04-04
- OK14 OK2026-03-10
Documentation
- Help pages
- 74
- Examples that run
- 0%45 never run
- Exported functions with examples
- 85%
- Documented parameters
- 100%
- Return-value docs
- 68%
- Help pages citing references
- 1%
Downloads
Repository
- PRs merged (all time)
- 100%
- Median days to close, 50 most recently updated closed issues
- 444
- Median days to close, 50 most recently updated closed PRs
- 0
Forks over time
Releases over time
Issues over time
Commits over time
4 development-tooling and community-health practices detected across 2 families in the upstream repository
Checks run against github.com/kapelner/greedyexperimentaldesign on 2026-10-21.
The R CMD check workflow runs on Linux, macOS and Windows
GitHub Pages site last deployed 2026-09-03 · The repository has a site deploy workflow
This repository shows signs of AI coding tools.
- Codexfirst seen 2026-04-27Named in .gitignore: .codex
- Claude Codefirst seen 2026-04-30Named in .gitignore: .claudeCommits: at least 2 crediting it in the message
- Claude Fable 5.12 commits · Sep 2026
Dependencies
Installing GreedyExperimentalDesign adds 57 packages (31 with compiled code, 56 MB of source tarballs). Heaviest: stringi 11 MB, ggplot2 6.0 MB, data.table 5.7 MB.
Code & Tests
People & History
Pick two releases to compare their code metrics.
- 1.6.1Latest2026-04-30 · current release · diff ↗ ·
added 8 exports
compute_distance_matrix_gpu, compute_kernel_matrix_gpu, compute_multiple_kernel_objective_vals_gpu, compute_objective_vals_gpu, compute_randomization_metrics_gpu, full_greedy_search_gpu, ged_gpu_available, ged_gpu_devices - RR 4.6.0 released · 2026-04-24
- 1.62026-01-09 · diff ↗ ·
removed 3 exports
initBinaryMatchExperimentalDesignSearch, initBinaryMatchFollowedByGreedyExperimentalDesignSearch, initBinaryMatchFollowedByRerandomizationDesignSearchadded 13 exports
all_elements_same_cpp_wrap, compute_distance_matrix_cpp_wrap, create_all_ys_cpp_wrap, gen_pm_designs_cpp_wrap, gen_var_cov_matrix_block_designs, generate_block_design_cpp_wrap, initBinaryMatchExperimentalDesignSearchObject, initBinaryMatchFollowedByGreedyExperimentalDesignSearchObject, initBinaryMatchFollowedByRerandomizationDesignSearchObject, initGurobiNumericalOptimizationExperimentalDesignObject, resultsGurobiNumericalOptimizeSearch, safe_cov_inverse, shuffle_cpp_wrap - RR 4.5.0 released · 2025-04-11
- RR 4.4.0 released · 2024-04-24
- 1.5.6.12023-07-12 · diff ↗ ·
added 3 exports
imbalanced_block_designs, imbalanced_complete_randomization, optimize_asymmetric_treatment_assignment - RR 4.3.0 released · 2023-04-21
- 1.5.5
- 1.52022-11-04 · diff ↗ ·
removed 3 exports
binaryMatchExperimentalDesignSearch, binaryMatchFollowedByGreedyExperimentalDesignSearch, binaryMatchFollowedByRerandomizationDesignSearchadded 5 exports
initBinaryMatchExperimentalDesignSearch, initBinaryMatchFollowedByGreedyExperimentalDesignSearch, initBinaryMatchFollowedByRerandomizationDesignSearch, initGreedyMultipleKernelExperimentalDesignObject, resultsMultipleKernelGreedySearch - RR 4.2.0 released · 2022-04-22
- RR 4.1.0 released · 2021-05-18
- 1.42020-12-07 · diff ↗ ·
removed 4 exports
complete_randomization_with_balanced_ns, gurobi_multiple_designs, initGurobiNumericalOptimizationExperimentalDesignObject, resultsGurobiNumericalOptimizeExperimentalDesignadded 12 exports
binaryMatchExperimentalDesignSearch, binaryMatchFollowedByGreedyExperimentalDesignSearch, binaryMatchFollowedByRerandomizationDesignSearch, complete_randomization_with_forced_balanced, compute_gram_matrix, greedy_orthogonalization_curation, greedy_orthogonalization_curation2, hadamardExperimentalDesign, resultsBinaryMatchSearch, resultsBinaryMatchThenGreedySearch, resultsBinaryMatchThenRerandomizationSearch, standardize_data_matrix - RR 4.0.0 released · 2020-04-24
- RR 3.6.0 released · 2019-04-26
- unarchivedReturned to CRAN2018-07-15
- 1.22018-07-15 · diff ↗ ·
added 4 exports
complete_randomization_with_balanced_ns, gurobi_multiple_designs, initGurobiNumericalOptimizationExperimentalDesignObject, resultsGurobiNumericalOptimizeExperimentalDesign
Package metadata
- First published
- 2016-12-08
- Total releases
- 9 / 10 yrs
- License
- GPL-3 OSI
- Minimum R
- ≥ 4.1.0
- Download size
- 166 KB
Cite
Cite this package
Run in R for the authors' preferred citation:
citation("GreedyExperimentalDesign")This package has no citation file, so citation() returns this entry built from DESCRIPTION.
Cite the R Observatory
For a number measured here: a download total, a coverage figure, an archival date.
From data release v2026-10-25, which the citation names so these numbers can be found later. More on citing and the projects behind them.