Learn R Programming

⚠️There's a newer version (1.5.6.1) of this package.Take me there.

GreedyExperimentalDesign (version 1.5.5)

Greedy Experimental Design Construction

Description

Computes experimental designs for a two-arm experiment with covariates via a number of methods: (0) complete randomization and randomization with forced-balance, (1) Greedily optimizing a balance objective function via pairwise switching. This optimization provides lower variance for the treatment effect estimator (and higher power) while preserving a design that is close to complete randomization. We return all iterations of the designs for use in a permutation test, (2) The second is via numerical optimization (via 'gurobi' which must be installed, see ) a la Bertsimas and Kallus, (3) rerandomization, (4) Karp's method for one covariate, (5) exhaustive enumeration to find the optimal solution (only for small sample sizes), (6) Binary pair matching using the 'nbpMatching' library, (7) Binary pair matching plus design number (1) to further optimize balance, (8) Binary pair matching plus design number (3) to further optimize balance, (9) Hadamard designs, (10) Simultaneous Multiple Kernels. In (1-9) we allow for three objective functions: Mahalanobis distance, Sum of absolute differences standardized and Kernel distances via the 'kernlab' library. This package is the result of a stream of research that can be found in Krieger, A, Azriel, D and Kapelner, A "Nearly Random Designs with Greatly Improved Balance" (2016) , Krieger, A, Azriel, D and Kapelner, A "Better Experimental Design by Hybridizing Binary Matching with Imbalance Optimization" (2021) .

Copy Link

Version

Install

install.packages('GreedyExperimentalDesign')

Monthly Downloads

236

Version

1.5.5

License

GPL-3

Issues

Pull Requests

Stars

Forks

Maintainer

Adam Kapelner

Last Published

November 17th, 2022

Functions in GreedyExperimentalDesign (1.5.5)

computeBinaryMatchStructure

Compute Binary Matching Strcuture
compute_gram_matrix

Gram Matrix Computation
GreedyExperimentalDesign

Greedy Experimental Design Search
automobile

Data concerning automobile prices.
initOptimalExperimentalDesignObject

Begin a Search for the Optimal Solution
initBinaryMatchFollowedByRerandomizationDesignSearch

Begin a Search for Binary Matching Followed by Rerandomization
initRerandomizationExperimentalDesignObject

Begin a Rerandomization Search
complete_randomization

Implements complete randomization (without forced balance)
generate_stdzied_design_matrix

Generates a design matrix with standardized predictors.
complete_randomization_with_forced_balanced

Implements forced balanced randomization
initBinaryMatchExperimentalDesignSearch

Begin a Binary Match Search
compute_objective_val

Computes Objective Value From Allocation Vector
greedy_orthogonalization_curation2

Curate More Orthogonal Vectors Greedily
initBinaryMatchFollowedByGreedyExperimentalDesignSearch

Begin a Search for Binary Matching Followed by Greedy Switch Designs
greedy_orthogonalization_curation

Curate More Orthogonal Vectors Greedily
hadamardExperimentalDesign

Create a Hadamard Design
compute_randomization_metrics

Computes Randomization Metrics (explained in paper) about a design algorithm
print.binary_then_rerandomization_experimental_design

Prints a summary of a binary_then_rerandomization_experimental_design object
plot.greedy_experimental_design_search

Plots a summary of a greedy search object object
initGreedyExperimentalDesignObject

Begin A Greedy Pair Switching Search
plot.greedy_multiple_kernel_experimental_design

Plots a summary of a greedy_multiple_kernel_experimental_design object
print.greedy_experimental_design_search

Prints a summary of a greedy_experimental_design_search object
summary.binary_then_greedy_experimental_design

Prints a summary of a binary_then_greedy_experimental_design object
resultsMultipleKernelGreedySearch

Returns the results (thus far) of the greedy design search for multiple kernels
summary.binary_then_rerandomization_experimental_design

Prints a summary of a binary_then_rerandomization_experimental_design object
plot_obj_val_by_iter

Plots the objective value by iteration
plot_obj_val_order_statistic

Plots an order statistic of the object value as a function of number of searches
resultsGreedySearch

Returns the results (thus far) of the greedy design search
resultsOptimalSearch

Returns the results (thus far) of the optimal design search
resultsKarpSearch

Returns the results (thus far) of the karp design search
initGreedyMultipleKernelExperimentalDesignObject

Begin A Greedy Pair Multiple Kernel Switching Search
summary.karp_experimental_design_search

Prints a summary of a karp_experimental_design_search object
print.optimal_experimental_design_search

Prints a summary of a optimal_experimental_design_search object
initKarpExperimentalDesignObject

Begin Karp Search
summary.greedy_experimental_design_search

Prints a summary of a greedy_experimental_design_search object
print.pairwise_matching_experimental_design_search

Prints a summary of a pairwise_matching_experimental_design_search object
stopSearch

Stops the parallelized greedy design search.
summary.binary_match_structure

Prints a summary of a binary_match_structure object
summary.greedy_multiple_kernel_experimental_design

Prints a summary of a greedy_multiple_kernel_experimental_design object
print.greedy_multiple_kernel_experimental_design

Prints a summary of a greedy_multiple_kernel_experimental_design object
print.karp_experimental_design_search

Prints a summary of a karp_experimental_design_search object
resultsBinaryMatchThenGreedySearch

Returns unique allocation vectors that are binary matched
print.binary_match_structure

Prints a summary of a binary_match_structure object
print.binary_then_greedy_experimental_design

Prints a summary of a binary_then_greedy_experimental_design object
print.rerandomization_experimental_design_search

Prints a summary of a rerandomization_experimental_design_search object
summary.optimal_experimental_design_search

Prints a summary of a optimal_experimental_design_search object
resultsBinaryMatchSearch

Binary Pair Match Search
resultsBinaryMatchThenRerandomizationSearch

Returns unique allocation vectors that are binary matched
standardize_data_matrix

Standardizes the columns of a data matrix.
resultsRerandomizationSearch

Returns the results (thus far) of the rerandomization design search
startSearch

Starts the parallelized greedy design search.
searchTimeElapsed

Returns the amount of time elapsed
summary.pairwise_matching_experimental_design_search

Prints a summary of a pairwise_matching_experimental_design_search object
summary.rerandomization_experimental_design_search

Prints a summary of a rerandomization_experimental_design_search object