![]() |
![]() |
![]() |
liboscats Reference Manual | ![]() |
---|---|---|---|---|
Top | Description | Object Hierarchy | Properties | Signals |
struct OscatsAlgAstrat; gdouble (*OscatsAlgAstratCriterion) (const OscatsModel *model
); void (*OscatsAlgAstratNotify) (OscatsAlgAstrat *Param1
,OscatsExaminee *Param2
,GBitArray *Param3
,gpointer Param4
); void oscats_alg_astrat_register_model (GType model
,OscatsAlgAstratCriterion a
,OscatsAlgAstratCriterion b
); void oscats_alg_astrat_restratify (OscatsAlgAstrat *alg_data
);
"Nblocks" guint : Read / Write / Construct "Ncur" guint : Read "Nequal" guint : Read / Write / Construct "Nitems" GValueArray* : Read / Write "Nstrata" guint : Read / Write / Construct "equal" gboolean : Read / Write / Construct Only "modelKey" gchar* : Read / Write "stratum" GBitArray* : Read
struct OscatsAlgAstrat;
Item selection support algorithm. This algorithm implements (part of)
the a-Stratified item selection method. On registration, the algorithm
will stratify the item bank into the given number of strata. Then, the
algorithm uses the test hint to indicate the current stratum [see
oscats_test_set_hint()
]. The test hint is updated on the
"administered" signal, after the given number of items for
each stratum has been recorded for the examinee.
Note: This algorithm only implements item stratification. It must be used in conjunction with an algorithm to pick an item from within the current stratum (e.g. OscatsAlgClosestDiff or OscatsAlgMaxFisher).
Note: This algorithm does not terminate the test. It must be used in conjunction with an algorithm that signals completion of the CAT (e.g. OscatsAlgFixedLength). If the CAT proceeds beyond that last stratum, a warning will be issued.
OscatsAlgAstrat needs some way of knowing how to find the a-parameter
for each model type. This is accomplished by registering a callback
using oscats_alg_astrat_register_model()
. Default callbacks are
automatically registered for OscatsModelL1p, OscatsModelL2p, and
OscatsModelL3p. These define discrimination as:
[sum_i a_k^2]^{1/2}
for each dimension i.
OscatsAlgAstrat emits the "stratum" signal when the test moves into a new stratum (including at the start of the test), for coordination with other algorithms that may need this information.
References:
1999). "a-Stratified Multistage Computerized Adaptive Testing." Applied Psychological Measurement, , 211-222.
(
void (*OscatsAlgAstratNotify) (OscatsAlgAstrat *Param1
,OscatsExaminee *Param2
,GBitArray *Param3
,gpointer Param4
);
void oscats_alg_astrat_register_model (GType model
,OscatsAlgAstratCriterion a
,OscatsAlgAstratCriterion b
);
Registers functions to identify the discrimination and difficulty
parameters for model
. Note that this happens automatically for
OscatsModelL1p, OscatsModelL2p, and OscatsModelL3p.
|
the GType of the OscatsModel |
|
function that returns the discrimination |
|
function that returns the difficulty |
void oscats_alg_astrat_restratify (OscatsAlgAstrat *alg_data
);
Performs the stratification again. This function only needs to be called in complex simulations for which the stratification parameters (such as the number of strata, number of items per statum, the model key, etc.) change after the test has been constructed, which is not usual.
Note: This will reset the internal iterator to the first stratum, but does not emit "stratum".
|
the OscatsAlgAstrat agorithm data |
"Nblocks"
property"Nblocks" guint : Read / Write / Construct
The number of b blocks. If 0, then b blocking is not used.
Default value: 0
"Ncur"
property"Ncur" guint : Read
The number (0-based) of the current stratum.
Default value: 0
"Nequal"
property"Nequal" guint : Read / Write / Construct
The number of items to select from each stratum if "equal"
is TRUE
. Otherwise, see "Nitems".
Allowed values: >= 1
Default value: 5
"Nitems"
property"Nitems" GValueArray* : Read / Write
An array indicating how many items to select from each stratum. May only
be set if "equal" is FALSE
. The number of strata is
inferred from the length of the array.
"Nstrata"
property"Nstrata" guint : Read / Write / Construct
The number of strata. Note: If "equal" is FALSE
, this
value may not be set. Instead, the number of strata is taken from
"Nitems".
Allowed values: >= 1
Default value: 2
"equal"
property"equal" gboolean : Read / Write / Construct Only
If TRUE
, the number of items selected from each stratum is the same,
namely "Nequal", and "Nitems" is ignored.
If FALSE
, the number of items selected from each stratum must be
specified by "Nitems", and both "Nequal"
and "Nstrata" are ignored.
Default value: TRUE
"modelKey"
property"modelKey" gchar* : Read / Write
The key indicating which model to use for stratification. A NULL
value
or empty string indicates the item's default model.
Default value: NULL
"stratum"
property"stratum" GBitArray* : Read
The bit array indicating which items are in the current stratum.
"stratum"
signalvoid user_function (OscatsAlgAstrat *test,
OscatsExaminee *e,
GBitArray *stratum,
gpointer user_data) : Action
The "stratum" signal is emitted when the examinee moves to a new stratum (including at the beginning of the test).
|
an OscatsTest |
|
an OscatsExaminee |
|
the proposed OscatsItem |
|
user data set when the signal handler was connected. |