cat_sim: Computerized Adaptive Test (CAT) Simulation

View source: R/cat_sim.R

cat_simR Documentation

Computerized Adaptive Test (CAT) Simulation

Description

cat_sim function simulates computerized adaptive test (CAT) for one or more simulees. For long simulations, cat_sim_fast function can be used.

Usage

cat_sim(true_ability, cd, verbose = -1)

Arguments

true_ability

True ability vector to generate item responses.

cd

A cat_design object that is created by function create_cat_design.

verbose

This is an integer that will print the stage of the test. For example, if the value verbose = 10, a message will be printed at each tenth iteration of the cat_simulation. Default value is -1, where no message will be printed. If the value is 0, only the start time and end time of the simulation will be printed.

Value

If the length of true_ability vector is one a "cat_output" class output will be returned. This is a list containing following elements:

true_ability

True ability (theta) value to generate item responses.

est_history

A list where each element represent a step of the CAT test. It has following elements:

est_before

The estimated ability before the administration of the item.

se_before

The standard error of the estimated ability before the administration of the item.

testlet

TRUE if the item belongs to a testlet.

item

Item-class object that is administered at this step.

resp

The simulated response of the simulee for the item administered at this step using simulee's true_ability value.

est_after

The estimated ability after the administration of the item.

se_after

The standard error of the estimated ability after the administration of the item.

If the length of the true_ability is more than 1, a list of cat_output objects will be returned for each value of true_ability.

Author(s)

Emre Gonulates

See Also

create_cat_design

Examples

ip <- generate_ip(n = 50)
# Check the default:
cd <- create_cat_design(ip = ip)
cat_sim(true_ability = rnorm(1), cd = cd)

# Multiple theta, optionally set names to the the vector to give examinee IDs
true_theta <- setNames(c(-2, 0.4, 1.5), c("Jimmy", "Ali", "Mirabel"))
cd <- create_cat_design(
  ip = ip,
  ability_est_rule = 'ml',
  termination_rule = c('min_item', 'min_se', 'max_item'),
  termination_par = list(min_item = 10, min_se = .33, max_item = 20))
cat_sim(true_ability = true_theta, cd = cd)

irt documentation built on Nov. 10, 2022, 5:50 p.m.