API reference
CATPlots.CATPlots
ComputerAdaptiveTesting.Aggregators
ComputerAdaptiveTesting.NextItemRules
ComputerAdaptiveTesting.NextItemRules.catr_next_item_aliases
CATPlots.LabelledToggleGrid
CATPlots.MenuGrid
ComputerAdaptiveTesting.Aggregators.EnumerationOptimizer
ComputerAdaptiveTesting.Aggregators.RiemannEnumerationIntegrator
ComputerAdaptiveTesting.CatConfig.CatLoopConfig
ComputerAdaptiveTesting.CatConfig.CatRules
ComputerAdaptiveTesting.NextItemRules.AbilityVarianceStateCriterion
ComputerAdaptiveTesting.NextItemRules.DistributionExpectationBasedItemCriterion
ComputerAdaptiveTesting.NextItemRules.ExhaustiveSearch1Ply
ComputerAdaptiveTesting.NextItemRules.ItemCriterion
ComputerAdaptiveTesting.NextItemRules.ItemStrategyNextItemRule
ComputerAdaptiveTesting.NextItemRules.NextItemRule
ComputerAdaptiveTesting.NextItemRules.NextItemStrategy
ComputerAdaptiveTesting.NextItemRules.PointExpectationBasedItemCriterion
ComputerAdaptiveTesting.NextItemRules.RandomNextItemRule
ComputerAdaptiveTesting.NextItemRules.StateCriterion
ComputerAdaptiveTesting.NextItemRules.UrryItemCriterion
ComputerAdaptiveTesting.TerminationConditions.FixedItemsTerminationCondition
ComputerAdaptiveTesting.TerminationConditions.TerminationCondition
ComputerAdaptiveTesting.Aggregators.maybe_tracked_ability_estimate
ComputerAdaptiveTesting.Sim.auto_responder
ComputerAdaptiveTesting.Sim.prompt_response
ComputerAdaptiveTesting.Sim.run_cat
ComputerAdaptiveTesting.Sim.run_random_comparison
ComputerAdaptiveTesting.Aggregators
— ModuleThis module takes care of integrating and optimizing over the ability/difficulty space. It includes TrackedResponses, which can store cumulative results during a test.
ComputerAdaptiveTesting.Aggregators.EnumerationOptimizer
— TypeArgmax + max over the ability likihood given a set of responses with a given coefficient using exhaustive search.
TODO: Add item bank trait for enumerable item banks.
ComputerAdaptiveTesting.Aggregators.RiemannEnumerationIntegrator
— TypeIn case an item bank is enumerable (e.g. GriddedItemBank), then this method integrates over the ability likihood given a set of responses with a given coefficient function using a Riemann sum (aka the rectangle rule).
ComputerAdaptiveTesting.Aggregators.maybe_tracked_ability_estimate
— MethodThis method returns a tracked point estimate if it is has the given ability estimator, otherwise it computes it using the given ability estimator.
ComputerAdaptiveTesting.Sim.auto_responder
— MethodThis function constructs a next item function which automatically responds according to responses
.
ComputerAdaptiveTesting.Sim.prompt_response
— MethodThis response callback simply prompts
ComputerAdaptiveTesting.Sim.run_cat
— MethodRun a given CatLoopConfig
ComputerAdaptiveTesting.Sim.run_random_comparison
— FunctionThis function compares a given CAT configuration with a CAT using a random next item selection rule.
ComputerAdaptiveTesting.TerminationConditions.FixedItemsTerminationCondition
— Typestruct FixedItemsTerminationCondition <: ComputerAdaptiveTesting.TerminationConditions.TerminationCondition
num_items::Int64
ComputerAdaptiveTesting.TerminationConditions.TerminationCondition
— Typeabstract type TerminationCondition <: ComputerAdaptiveTesting.ConfigBase.CatConfigBase
ComputerAdaptiveTesting.NextItemRules
— ModuleThis module implements the next item selection rules, which form the main part of CAT.
Bibliography
[1] Linden, W. J., & Pashley, P. J. (2009). Item selection and ability estimation in adaptive testing. In Elements of adaptive testing (pp. 3-30). Springer, New York, NY.
ComputerAdaptiveTesting.NextItemRules.catr_next_item_aliases
— ConstantThis mapping provides next item rules through the same names that they are available through in the catR
R package. TODO compability with mirtcat
ComputerAdaptiveTesting.NextItemRules.AbilityVarianceStateCriterion
— Typestruct AbilityVarianceStateCriterion{DistEst<:ComputerAdaptiveTesting.Aggregators.DistributionAbilityEstimator, IntegratorT<:ComputerAdaptiveTesting.Aggregators.AbilityIntegrator} <: ComputerAdaptiveTesting.NextItemRules.StateCriterion
dist_est::ComputerAdaptiveTesting.Aggregators.DistributionAbilityEstimator
integrator::ComputerAdaptiveTesting.Aggregators.AbilityIntegrator
This StateCriterion
returns the variance of the ability estimate given a set of responses.
ComputerAdaptiveTesting.NextItemRules.DistributionExpectationBasedItemCriterion
— Typestruct DistributionExpectationBasedItemCriterion{DistributionAbilityEstimatorT<:ComputerAdaptiveTesting.Aggregators.DistributionAbilityEstimator, AbilityIntegratorT<:ComputerAdaptiveTesting.Aggregators.AbilityIntegrator, StateCriterionT<:ComputerAdaptiveTesting.NextItemRules.StateCriterion} <: ComputerAdaptiveTesting.NextItemRules.ExpectationBasedItemCriterion
ability_estimator::ComputerAdaptiveTesting.Aggregators.DistributionAbilityEstimator
integrator::ComputerAdaptiveTesting.Aggregators.AbilityIntegrator
state_criterion::ComputerAdaptiveTesting.NextItemRules.StateCriterion
This ItemCriterion wraps a StateCriterion and looks at its expected value for a particular item 1-ply ahead by integrating over an ability curve.
ComputerAdaptiveTesting.NextItemRules.ExhaustiveSearch1Ply
— Typestruct ExhaustiveSearch1Ply <: ComputerAdaptiveTesting.NextItemRules.NextItemStrategy
parallel::Bool
ComputerAdaptiveTesting.NextItemRules.ItemCriterion
— Typeabstract type ItemCriterion <: ComputerAdaptiveTesting.ConfigBase.CatConfigBase
ComputerAdaptiveTesting.NextItemRules.ItemStrategyNextItemRule
— Typestruct ItemStrategyNextItemRule{NextItemStrategyT<:ComputerAdaptiveTesting.NextItemRules.NextItemStrategy, ItemCriterionT<:ComputerAdaptiveTesting.NextItemRules.ItemCriterion} <: ComputerAdaptiveTesting.NextItemRules.NextItemRule
strategy::ComputerAdaptiveTesting.NextItemRules.NextItemStrategy
criterion::ComputerAdaptiveTesting.NextItemRules.ItemCriterion
ItemStrategyNextItemRule
which together with a NextItemStrategy
acts as an adapter by which an ItemCriterion
can serve as a NextItemRule
.
ItemStrategyNextItemRule(bits...; ability_estimator=nothing, parallel=true)
Implicit constructor for ItemStrategyNextItemRule. Will default to ExhaustiveSearch1Ply
when no NextItemStrategy
is given.
ComputerAdaptiveTesting.NextItemRules.NextItemRule
— Typeabstract type NextItemRule <: ComputerAdaptiveTesting.ConfigBase.CatConfigBase
Abstract base type for all item selection rules. All descendants of this type are expected to implement the interface (rule::NextItemRule)(responses::TrackedResponses, items::AbstractItemBank)::Int
NextItemRule(bits...; ability_estimator=nothing, parallel=true)
Implicit constructor for NextItemRule. Uses any given NextItemRule
or delegates to ItemStrategyNextItemRule
.
ComputerAdaptiveTesting.NextItemRules.NextItemStrategy
— Typeabstract type NextItemStrategy <: ComputerAdaptiveTesting.ConfigBase.CatConfigBase
ComputerAdaptiveTesting.NextItemRules.PointExpectationBasedItemCriterion
— Typestruct PointExpectationBasedItemCriterion{PointAbilityEstimatorT<:ComputerAdaptiveTesting.Aggregators.PointAbilityEstimator, StateCriterionT<:ComputerAdaptiveTesting.NextItemRules.StateCriterion} <: ComputerAdaptiveTesting.NextItemRules.ExpectationBasedItemCriterion
ability_estimator::ComputerAdaptiveTesting.Aggregators.PointAbilityEstimator
state_criterion::ComputerAdaptiveTesting.NextItemRules.StateCriterion
This ItemCriterion wraps a StateCriterion and looks at its expected value for a particular item 1-ply ahead based on a point ability estimate.
ComputerAdaptiveTesting.NextItemRules.RandomNextItemRule
— Typestruct RandomNextItemRule{RandomT<:Random.AbstractRNG} <: ComputerAdaptiveTesting.NextItemRules.NextItemRule
rng::Random.AbstractRNG
: Default: Xoshiro()
This is the most basic rule for choosing the next item in a CAT. It simply picks a random item from the set of items that have not yet been administered.
ComputerAdaptiveTesting.NextItemRules.StateCriterion
— Typeabstract type StateCriterion <: ComputerAdaptiveTesting.ConfigBase.CatConfigBase
ComputerAdaptiveTesting.NextItemRules.UrryItemCriterion
— Typestruct UrryItemCriterion{AbilityEstimatorT<:ComputerAdaptiveTesting.Aggregators.PointAbilityEstimator} <: ComputerAdaptiveTesting.NextItemRules.ItemCriterion
ability_estimator::ComputerAdaptiveTesting.Aggregators.PointAbilityEstimator
This item criterion just picks the item with the raw difficulty closest to the current ability estimate.
ComputerAdaptiveTesting.CatConfig.CatLoopConfig
— TypeConfiguration for a simulatable CAT.
ComputerAdaptiveTesting.CatConfig.CatRules
— Typestruct CatRules{NextItemRuleT<:ComputerAdaptiveTesting.NextItemRules.NextItemRule, TerminationConditionT<:ComputerAdaptiveTesting.TerminationConditions.TerminationCondition, AbilityEstimatorT<:ComputerAdaptiveTesting.Aggregators.AbilityEstimator, AbilityTrackerT<:ComputerAdaptiveTesting.Aggregators.AbilityTracker} <: ComputerAdaptiveTesting.ConfigBase.CatConfigBase
next_item::ComputerAdaptiveTesting.NextItemRules.NextItemRule
: The rule to choose the next item in the CAT given the current state.
termination_condition::ComputerAdaptiveTesting.TerminationConditions.TerminationCondition
: The rule to choose when to terminate the CAT.
ability_estimator::ComputerAdaptiveTesting.Aggregators.AbilityEstimator
: The ability estimator, which estimates the testee's current ability.
ability_tracker::ComputerAdaptiveTesting.Aggregators.AbilityTracker
: The ability tracker, which tracks the testee's current ability level. Default: NullAbilityTracker()
Configuration of the rules for a CAT. This all includes all the basic rules for the CAT's operation, but not the item bank, nor any of the interactivity hooks needed to actually run the CAT.
This may be more a more convenient layer to integrate than CatLoopConfig if you want to write your own CAT loop rather than using hooks.
CatRules(; next_item=..., termination_condition=..., ability_estimator=..., ability_tracker=...)
Explicit constructor for CatRules.
CatRules(bits...)
Implicit constructor for CatRules.
CATPlots.CATPlots
— ModuleThis module contains helpers for creating CAT/IRT related plots. This module requires the optional depedencies AlgebraOfGraphics, DataFrames and Makie to be installed.
CATPlots.LabelledToggleGrid
— TypeFor information about attributes, use attribute_help(LabelledToggleGrid)
.
CATPlots.MenuGrid
— TypeFor information about attributes, use attribute_help(MenuGrid)
.