scenario can occur in a generated item together with
all other features or scenarios whose variables are set
to TRUE in the considered term, but not together with
the features or scenarios whose variables are set to
FALSE. For example, the condition that mammals,
amphibians and reptiles use legs for locomotion and
fishes and birds use flapper and wings, is represented
by the following boolean term:
(Legs ⇒ (Mammals ∨ Reptiles ∨ Amphibians)) ∧
(Flapper and Wings ⇒ (Fishes ∨ Birds))
(1)
This term represents the conditions that if a ver-
tebrate uses either flapper and wings or legs for loco-
motion, it must be of the corresponding type, but nev-
ertheless it cannot be used for the item generation yet.
The reason for this is that if only this term would be
considered, the variable Legs and the variable Flap-
per and Wings could be set to TRUE at the same
time, suggesting that the compilation of legs, flapper
and wings, mammals, reptiles, amphibians, fishes and
birds is valid. Thus, another boolean term is needed to
enforce the implicit condition of the cognitive model
that only one feature of a source of information and
one scenario of the defined problem can be used in
an item. For the locomotion example the following
terms are needed.
(¬Legs ∧ Flapper and Wings) ∨
(Legs ∧ ¬Flapper and Wings)
(2)
(Fishes ∧ ¬Amphibians ∧ ¬Reptiles
∧ ¬Birds ∧ ¬Mammals) ∨
(¬Fishes ∧ Amphibians ∧ ¬Reptiles
∧ ¬Birds ∧ ¬Mammals) ∨
(¬Fishes ∧ ¬Amphibians ∧ Reptiles
∧ ¬Birds ∧ ¬Mammals) ∨
(¬Fishes ∧ ¬Amphibians ∧ ¬Reptiles
∧ Birds ∧ ¬Mammals) ∨
(¬Fishes ∧ ¬Amphibians ∧ ¬Reptiles
∧ ¬Birds ∧ Mammals)
(3)
In summary, the conjunction of boolean implica-
tion terms for each condition that is defined by the
cognitive model and boolean terms to enforce that for
the problem and each source of information only one
scenario or respectively one feature per item can be
selected, leads to a logical representation of the whole
cognitive model, which we call the cognitive model
expression. Each variable assignment, for which this
expression can be evaluated to TRUE, represents a
valid compilation of case-specific features and scenar-
ios of the represented cognitive model.
4.2.2 Item Generation
The item generation is done in two steps. First, the
computation of the valid feature compilations using
the defined cognitive model expression. Second, the
actual creation of the items by inserting the features
and scenarios of the determined compilations into the
corresponding gaps of the item templates of the item
model. The SAT solver library Sat4j (Le Berre and
Parrain, 2010) is used to determine all valid feature
compilations. To be processed by this library, the cog-
nitive model expression is first transformed into the
CNF format and then into the DIMACS-CNF format.
Once the valid compilations of scenarios and fea-
tures of case-specific sources of information has been
determined, the actual item creation process is per-
formed. For each item template, the first step is to
determine in which gaps scenarios or features of case-
specific sources of information and in which gaps fea-
tures of generic sources of information must be in-
serted. Then, the number of compilations is extended
by combining each possible compilation of features
of generic sources of information with each valid
compilation of scenarios and features of case-specific
sources of information. Finally, the required items
are created by inserting the scenarios and features
of each resulting compilation into the corresponding
item template gaps.
In summary, IGuS is a web service that can be
used to automatically generate items defined by a
given item model, taking into account the conditions
defined by a corresponding cognitive model. The gen-
eration is performed in the following two steps. First,
the cognitive model is transformed into one boolean
expression and a SAT solver is used to determine all
valid compilations of features of case-specific sources
of information. Second, the features and scenarios of
these compilations are inserted into the item templates
of the item model to generate the required items. This
approach has the advantage that the computational
complexity of these steps is inversely proportional to
the frequency with which they need to be performed.
The first step, is computationally expensive, but the
computation result can be reused as long as the cog-
nitive model does not change. Thus, it only needs to
be done once to generate a large number of items. The
second step must be performed for each combination
of item template and determined compilation (i.e., for
each item), but is computationally inexpensive. In ad-
dition, a highly optimized SAT solver is used to deter-
mine valid compilations, so that even the processing
of complex models takes a few seconds at most.
Revision of the AIG Software Toolkit: A Contribute to More User Friendliness and Algorithmic Efficiency
415