View source: R/efficient_round.R
| combinatorial_round | R Documentation |
Given an approximate design and a number of points, computes all the possible combinations of roundings of each point to the nearest integer, keeps the ones that amount to the requested number of points, and returns the one with the best value for the criterion function.
The search is exhaustive and requires 2^k evaluations where k is the number of
support points. For designs with more than max_support support points the function
requests confirmation (interactive sessions) or stops with an informative error
(non-interactive sessions), unless ask = FALSE.
combinatorial_round(
design,
n,
criterion = NULL,
model = NULL,
parameters = NULL,
par_values = NULL,
weight_fun = function(x) 1,
par_int = NULL,
reg_int = NULL,
matB = NULL,
max_support = 15L,
ask = TRUE
)
design |
either a dataframe with the design to round, or an object of class |
n |
integer with the desired number of points of the resulting design. |
criterion |
character variable with the chosen optimality criterion. Can be one of the following:
|
model |
formula describing the model. Must use |
parameters |
character vector with the parameters of the models, as written in the |
par_values |
numeric vector with the parameters nominal values, in the same order as given in |
weight_fun |
optional one variable function that represents the square of the structure of variance, in case of heteroscedastic variance of the response. |
par_int |
optional numeric vector with the index of the |
reg_int |
optional numeric vector with the ranges of integration, for I-optimality. |
matB |
optional matrix of dimensions k x k, for L-optimality. |
max_support |
integer. Number of support points above which the function triggers the
confirmation mechanism. Default is 15 ( |
ask |
logical. If |
A data.frame with the rounded design to n number of points, or NULL invisibly
if the user declines the confirmation prompt.
aprox_design <- opt_des("D-Optimality", y ~ a * exp(-b / x), c("a", "b"), c(1, 1500), c(212, 422))
combinatorial_round(aprox_design, 27)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.