This method creates an object of type binary_then_greedy_experimental_design and will find optimal matched pairs which
are then greedily switched in order to further minimize a balance metric. You can then
use the function resultsBinaryMatchThenGreedySearch
to obtain the randomized allocation vectors. For one column
in X, the matching just sorts the values to find the pairs trivially.
initBinaryMatchFollowedByGreedyExperimentalDesignSearch(
X,
diff_method = FALSE,
compute_dist_matrix = NULL,
...
)
An object of type binary_experimental_design
which can be further operated upon.
The design matrix with $n$ rows (one for each subject) and $p$ columns (one for each measurement on the subject). This is the design matrix you wish to search for a more optimal design.
Once the subjects (i.e. row vectors) are paired, do we create a set of $n$/2 difference
vectors and feed that into greedy? If TRUE
, this technically breaks the objective
function, but it is shown to have better performance. The default is thus FALSE
.
The function that computes the distance matrix between every two observations in X
,
its only argument. The default is NULL
signifying euclidean squared distance optimized in C++.
Arguments passed to initGreedyExperimentalDesignObject
. It is recommended to set
max_designs
otherwise it will default to 10,000.
Adam Kapelner