Generates a random design by sampling from the candidate set each update of the algorithm.
random(
design_object,
model,
efficiency_criteria,
utility,
prior_values,
dudx,
candidate_set,
rows,
save_designs,
control
)A list of class 'spdesign' created within the
generate_design function
A character string indicating the model to optimize the design for. Currently the only model programmed is the 'mnl' model and this is also set as the default.
A character string giving the efficiency criteria to optimize for. One of 'a-error', 'c-error', 'd-error' or 's-error'. No default is set and argument must be specified. Optimizing for multiple criteria is not yet implemented and will result in an error.
A named list of utility functions. See the examples and the vignette for examples of how to define these correctly for different types of experimental designs.
A list of priors
A character string giving the name of the prior in the denominator. Must be specified when optimizing for 'c-error'
A matrix or data frame in the "wide" format containing
all permitted combinations of attributes. The default is NULL. If no
candidate set is provided, then it is built from the utility functions
subject to specified exclusions with build_candidate_set.
This is passed in as an object and not a character
string. The candidate set will be expanded to include zero columns to
consider alternative specific attributes.
An integer giving the number of rows in the final design
A boolean indicating whether to save up to 10 intermediate designs. The default value is FALSE.
A list of control options. Set `allow_reversed_pairs = TRUE`
to include the profiles of exchangeable alternatives in every order when the
candidate set is built. See build_candidate_set.
A list of class 'spdesign'
With no restrictions placed, this type of design will only consider efficiency. There is no guarantee that you will achieve attribute level balance, nor that all attribute levels will be present. More efficient designs tend to have more extreme trade-offs.