Multi-arm variance objectives and Neyman allocation
Source:R/cmr_multiarm.R
multiarm_variance_objective.RdHelper functions for shared-control multi-arm variance objectives, oracle values, Neyman allocations, regret, and rectangle vertices.
Usage
multiarm_variance_objective(pi, variances)
multiarm_oracle_variance(variances)
assign_multiarm_neyman(variances)
multiarm_regret(pi, variances)
multiarm_rectangle_vertices(rectangle, max_vertices = 65536L)Arguments
- pi
Named assignment-share vector over all arms, including control arm
"0".- variances
Named variance vector over all arms, including control arm
"0".- rectangle
Multi-arm variance rectangle, either a matrix/data frame with
loweranduppercolumns or a named vector with entries likev_l0,v_u0,v_l1,v_u1.- max_vertices
Maximum number of hyperrectangle vertices to enumerate.
Value
Numeric objective/regret values, named assignment vectors, or a vertex matrix.
assign_multiarm_neyman() returns total assignment shares over control and
all treatment arms. multiarm_rectangle_vertices() returns one row per
variance-rectangle vertex.
See also
Other assignment helpers:
assign_balance(),
realize_allocation(),
stratified_variance_objective(),
variance_objective()
Other rectangle helpers:
binary_rectangle_corners(),
cmr_multiarm_from_rectangle(),
cmr_stratified_from_rectangle(),
cmr_unbounded_from_rectangle(),
folded_binomial_pmf(),
rectangle_bernoulli_binary(),
rectangle_bounded_two_arm(),
rectangle_multiarm(),
rectangle_multiple_outcomes(),
rectangle_proxy(),
rectangle_stratified(),
rectangle_unbounded(),
stratified_variance_objective(),
variance_bounds_bernoulli_exact(),
variance_bounds_maurer_pontil(),
variance_bounds_unbounded_mom()
Examples
variances <- c("0" = 0.05, "1" = 0.10, "2" = 0.04)
pi <- assign_multiarm_neyman(variances)
multiarm_variance_objective(pi, variances)
#> [1] 0.6929822
multiarm_regret(pi, variances)
#> [1] -1.110223e-16