Create a Clowder object.
An object containing arrays of Cat configurations and corpora.
An object containing Cat configurations for each Cat instance. Keys correspond to Cat names, while values correspond to Cat configurations.
An object containing arrays of stimuli for each corpus.
OptionalearlyStopping?: EarlyStoppingAn optional EarlyStopping instance to use for early stopping.
OptionalrandomSeed?: string | nullA random seed for reproducibility. If not provided, a random seed will be generated.
The corpus that was provided to this Clowder when it was created.
The early stopping condition in the Clowder configuration.
The number of items presented to each Cat instance.
The subset of the input corpus that this Clowder has not yet "seen".
The responses received by each Cat instance.
The subset of the input corpus that this Clowder has "seen" so far.
The standard error of measurement estimates for each Cat instance.
The stopping reason in the Clowder configuration.
The theta estimates for each Cat instance.
Updates the ability estimates for the specified Cat instances.
The names of the Cat instances to update.
The item parameter(s) (zeta) for the given stimuli.
The corresponding answer(s) (0 or 1) for the given stimuli.
Optionalmethod: stringOptional method for updating ability estimates. If none is provided, it will use the default method for each Cat instance.
Update the ability estimates for the specified catsToUpdate and select the next stimulus for the catToSelect.
This function processes previous items and answers, updates internal state, and selects the next stimulus
based on the remaining stimuli and corpusToSelect.
The parameters for updating the Cat instance and selecting the next stimulus.
OptionaladditionalItemsToRemove?: MultiZetaStimulus[]Optional additional items to remove from the remainingItems.
Optionalanswers?: 0 | 1 | (0 | 1)[]An array of answers (0 or 1) corresponding to items.
OptionalcatsToUpdate?: string | string[]A single Cat or array of Cats for which to update ability estimates.
OptionalcatToEvaluateEarlyStopping?: stringThe Cat instance to use for selecting the next stimulus.
OptionalcorpusToSelectFrom?: stringThe corpus to use for selecting the next stimulus. If not provided, catToSelect will be used.
Optionalitems?: MultiZetaStimulus | MultiZetaStimulus[]An array of previously presented stimuli.
OptionalitemSelect?: stringOptional item selection method (if applicable).
Optionalmethod?: stringOptional method for updating ability estimates (if applicable).
OptionalrandomlySelectUnvalidated?: booleanOptional flag indicating whether to randomly select an unvalidated item for catToSelect.
OptionalreturnUndefinedOnExhaustion?: booleanOptional flag indicating whether to return undefined when no validated items are available.
undefined if no further validated stimuli are available.If any items are not found in the Clowder's corpora (validated or unvalidated).
The function operates in several steps:
catToSelect and catsToUpdate.
b. Ensures items and answers arrays are properly formatted.catsToUpdate.
c. Removes the provided items from the remainingItems.catToSelect, considering only remaining items that are valid for that cat.
b. If desired, randomly selects an unvalidated item for catToSelect.
The Clowder class is responsible for managing a collection of Cat instances along with a corpus of stimuli. It maintains a list of named Cat instances and a corpus where each item in the coprpus may have IRT parameters corresponding to each named Cat. Clowder provides methods for updating the ability estimates of each of its Cats, and selecting the next item to present to the participant.