create_cat_design | R Documentation |
create_cat_design
is a helper function for
cat_sim
and cat_sim_fast
functions. It
defines the simulation design.
Ideally, there is a design element for each item. So within this design (which is a list), there are $k$ design elements for each potentially administered item. Each of these sub-design elements are also a list.
create_cat_design(
ip = NULL,
title = NULL,
true_ip = NULL,
first_item_rule = "fixed_theta",
first_item_par = list(theta = 0),
next_item_rule = "mfi",
next_item_par = NULL,
ability_est_rule = "eap",
ability_est_par = NULL,
final_ability_est_rule = NULL,
final_ability_est_par = NULL,
termination_rule = c("min_item", "min_se", "max_item"),
termination_par = list(min_item = 10, min_se = 0.33, max_item = 20),
testlet_rules = NULL,
exposure_control_rule = NULL,
exposure_control_par = NULL,
content_bal_rule = NULL,
content_bal_par = NULL,
ability_type = "theta"
)
ip |
An If If |
title |
A string value representing the title of this CAT design. |
true_ip |
An Default: |
first_item_rule |
The method how the first item is administered.
The main effect of this is to select the first item administered
to an examinee. If, for example, first item is desired to be a
fixed one or randomly selected from the item pool, then set that
rule in Default: Possible values and required parameters:
|
first_item_par |
Parameters for the first item rule. Default: |
next_item_rule |
A vector of length one or length maximum test length which is designating the next item selection rules. Default: Note that, currently, if there are testlets in an item pool and a testlet is selected for administration using one of the methods below, all items within that testlet will be administered regardless of the next item selection rule. Possible values and required parameters:
|
next_item_par |
A list of length one or length maximum test length
that sets the parameters of next item selection rules. It can also
be Default: |
ability_est_rule |
A vector of length one or length maximum test length which is designating the next item selection rules. Default: Possible values and required parameters:
|
ability_est_par |
A list of length one or length maximum test length
that sets the parameters of ability estimation rules. It can also
be * If If it is If it is a list of one, it means that the parameters will be the same throughout the test. The names of the list elements will represent the parameter types. A list of lists with length of maximum test length designate different parameters for different items in the test progress. |
final_ability_est_rule |
The ability estimation method that will be
used to calculate the final ability estimate. The methods and
the parameters are the same as Default: |
final_ability_est_par |
A list of parameters that will be used
for the method designated by the Default: |
termination_rule |
This parameter determines how CAT algorithm decides terminate the test. The order of termination rules is important. The algorithm will
check the rules in that order. If for example
The The "test length" refers to "Item" objects, i.e. individual items not testlets. For example, if an item pool has 10 testlets each having 2 items and 15 standalone items which are not within a testlet, then the test length can go up to 35 (2 x 10 + 15). Default:
. If this is missing, then the item pool size will be set as maximum length.
|
termination_par |
A list of termination rule parameters. This
is a named list with length equal to the length of
Default: |
testlet_rules |
A The default value is It is assumed that items within testlet are administered together. In other words, an item that does not belong to a selected testlet cannot be administered between two items that belong to the same testlet. The following list elements are available:
|
exposure_control_rule |
A vector of length one or length maximum test
length which is designating the next item selection rules. It can
be Default: Possible values and required parameters:
|
exposure_control_par |
A list of length one or maximum test length
designating the exposure control for each item. If there are no
parameters it will be Default: |
content_bal_rule |
Whether a content balancing is imposed on item
selection. Default value is Default: Possible values and required parameters:
|
content_bal_par |
Parameters of Default: |
ability_type |
The type of ability the test is measuring. By default it is IRT based single 'theta'.
Default: |
A cat_design
object that holds the test specifications of a
CAT.
Emre Gonulates
Sympson, J., & Hetter, R. D. (1985). Controlling item-exposure rates in computerized adaptive testing. 973–977.
cat_sim
### Example Designs ###
# Fixed length test IRT test with ability estimation EAP-ML
n_items <- 30
ip <- itempool(data.frame(a = runif(n_items, .5, 1.5), b = rnorm(n_items)))
cd <- create_cat_design(ip = ip, next_item_rule = 'random',
termination_rule = 'min_item',
termination_par = list('min_item' = n_items))
cd
create_cat_design(ip = ip, next_item_rule = 'random')
n_ip <- 55
ip <- itempool(data.frame(a = runif(n_ip, .5, 1.5), b = rnorm(n_ip)))
# Check the default:
create_cat_design()
create_cat_design(ip = ip)
### Termination Rule ###
create_cat_design(
termination_rule = c('min_item', 'min_se', 'max_item'),
termination_par = list(min_item = 10, min_se = .33, max_item = 20))
cd <- create_cat_design(ip = ip, termination_rule = c('min_item', 'min_se'),
termination_par = list(min_item = 10, min_se = .33))
### Next Item Rule ###
create_cat_design(ip = ip, next_item_rule = 'random', next_item_par = NULL)
create_cat_design(
ip = ip, termination_rule = c('min_item', 'max_item'),
termination_par = list(min_item = 20, max_item = 20),
next_item_rule = 'fixed',
next_item_par = list(item_id = ip$item_id[1:20]))
# Linear test where all of the items in the item pool administered in the
# same order as item pool
ip <- generate_ip(n = 15)
create_cat_design(
ip = ip, termination_rule = c('max_item'),
termination_par = list(max_item = 15),
next_item_rule = 'fixed')
# Generate an item pool with two testlets and three standalone items and
# administer first seven items as a linear test.
ip <- c(generate_testlet(n = 2, testlet_id = "t1"), generate_ip(n = 3),
generate_testlet(n = 5, testlet_id = "t2"))
create_cat_design(
ip = ip, termination_rule = c('max_item'),
termination_par = list(max_item = 7),
next_item_rule = 'fixed')
# A linear test where the item order is predefined.
ip1 <- itempool(data.frame(b = rnorm(5)), item_id = paste0("i",1:5))
cd <- create_cat_design(
ip = ip1,
next_item_rule = 'fixed',
next_item_par = list(item_id = c("i3", "i2", "i4", "i5", "i1")),
ability_est_rule = "eap",
termination_rule = 'max_item', termination_par = list(max_item = 5))
### Ability Estimation Rule ###
create_cat_design(
ability_est_rule = 'eap',
ability_est_par = list(prior_dist = 'unif',
prior_par = list(min = -2, max = 2),
min_theta = -4, max_theta = 4,
no_of_quadrature = 31))
create_cat_design(
ability_est_rule = 'ml',
ability_est_par = list(min_theta = -4, max_theta = 4, criterion = 0.01))
### Exposure Control ###
create_cat_design(exposure_control_rule = 'randomesque',
exposure_control_par = list(num_items = 1))
# 5-4-3-2-1 exposure control
create_cat_design(
exposure_control_rule = 'randomesque',
exposure_control_par = lapply(c(5:1, rep(1, 15)),
function(x) list(num_items = x)))
### Content Balancing ###
create_cat_design(
content_bal_rule = 'max_discrepancy',
content_bal_par = list(target_dist = c(
Geometry = .3, `Rational Numbers` = .2, Algebra = .5)))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.