<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Generation of Test Tasks in Systems of Computer Mathematics for Educational Purposes</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Michael Lvov</string-name>
          <email>lvov@ksu.ks.ua</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Hanna Shmarova</string-name>
          <email>hanna.shmarova@gmail.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Kherson State University</institution>
          ,
          <addr-line>Uníversitets'ka, 27 73000, Kherson</addr-line>
          ,
          <country country="UA">Ukraine</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>The study of exact sciences includes not only lectures but also the active forms of learning (practical classes, laboratory work and so on). Thus, it is necessary to control not only declarative knowledge but also procedural knowledge of the students (the knowledge of methods for solving problems). This article describes functional requirements, mathematical models, and algorithms for the development of the modules of procedural knowledge testing in the systems of computer mathematics for educational purposes. We present methods of generation of test tasks implemented in the web application “Test on Mathematics”.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>There are two approaches to solve the problem of the generation of specific test tasks:
saving a series of similar tests in the database and using algorithms for automatic
generation of tests implemented as system procedures. Each of these approaches has
its advantages and disadvantages. In the first case, it is necessary to spend a lot of
time to fill the database, and tests are repeated. In the second case, the large amount of
time is spent on the implementation of algorithms for automatic generation, but each
test is unique. The weighted approach is to:
1. Develop a single common model for each sufficiently wide class of tests, as well as
models and algorithms for generating conditions and answers for this model.
2. Develop common CASE-technologies for description subclasses of test tasks based
on a single common model.
3. Develop joint mechanisms for storing and calling of algorithms for generation of
specific test tasks.</p>
      <p>Test Tasks-Templates
The expression  ( 1, … ,   ;  1, … ,   ) in signature ∑ in subject domain  is
called expression template.</p>
    </sec>
    <sec id="sec-2">
      <title>Variables  1, … ,   are called variable templates or metavariables. The common</title>
      <p>range of values for metavariables is set  (  ∈  ). It follows that in each
particular case, each of the variable templates represents one of the variables.</p>
    </sec>
    <sec id="sec-3">
      <title>Variables  1, … ,   are called coefficient templates or parameters. The range of</title>
      <p>values for parameters is numerical sets (  ∈  ). It follows that in each particular
case, each of the coefficient templates is a number.</p>
      <p>Example 1
 1 1 +  2 2 is expression template.</p>
      <p>Specific instances of this template: 2 + 3 , − 2  + 5 and so on. Suppose
3
 ( 1, … ,   ;  1, … ,   ) is expression template and   ∈  ,   ∈  , then
 1,…,   ( 1, … ,   ;  1, … ,   ) =  ( 1, … ,   ;  1, … ,   )
 1,…, 
is called specialization (a special case or instance) of  ( 1, … ,   ;  1, … ,   ).</p>
      <p>Expression templates define the common view of the model and common view of
the answer for test task. It follows that the basis of determining the test task  is pair
&lt;   ,   &gt;, where   ,   are expressions templates (Fig.1), defined on
common lists of metavariables (   ) and parameters (  ).Then
 ( 
,  
) =&lt;  
( 
,  
),  
(</p>
      <p>In tests on equivalent expressions transformation  
means semantic equality in domain  .
,  
=  
) &gt;
, where " =
"</p>
      <p>In addition to the signature of the domain system function  ( ) is used in the
definition of a template of test task. It is defined on the set of expressions of the
sub</p>
      <p>Descriptions for test tasks’ templates are used in a procedure for generation
instances of tests. In the simplest case, the procedure 
has specification:
where  =&lt;</p>
      <p>&gt;.

tion “Test on Mathematics”</p>
      <sec id="sec-3-1">
        <title>In this example condition has the form:</title>
      </sec>
      <sec id="sec-3-2">
        <title>The semantics of condition description is:</title>
      </sec>
      <sec id="sec-3-3">
        <title>Example 3. Apply the formulas of abridged multiplication:</title>
        <p>Suppose the user describes following template for this test task:</p>
        <p>,  are metavariables,  ,  ,  ,  are parameters. Using conditions leads to a
reduction of templates’ number and extension of test tasks’ classes. Thus, test task  4
describes all classes of test tasks with templates  1,  2,  3 in conjunction with
additional conditions = 1,  = 1,  = 0 ∨  = 1,  = 0 ∨  = 1. Description of the
conditions corresponds to the syntax:
 Each atomic condition divides all set of tests into two classes. First class is a class,
where this condition is satisfied, second class is a class, where it fails (in this case
corresponding value is randomly generated from the range of values, that are
defined by parameter descriptions):  ≔  | ≔  ().
 Independent conditions are listed with separation by commas. All particular cases
are defined by all possible combinations of conditions.
 Conjunction unites independent conditions that describe the same particular case.
 Disjunction combines dependent conditions, each of which defines different
individual cases.</p>
        <p>Test generation algorithm returns a single particular test in each of its call.
Therefore, the condition is reduced to canonical form
Φ 
where Φ defines one particular case. Let’s use logical variables that are
corresponding to atomic conditions:
 = ( = 1), 
= ( = 1),  0 = (
= 0),  1 = (</p>
        <p>= 1),  0 = ( = 0),</p>
        <p>∷= 
|
∷= 
; |
&amp; (
= 
|
, 
)|
= 
;
∨ (
.</p>
        <p>),</p>
      </sec>
      <sec id="sec-3-4">
        <title>Then various tests are described via a Zhegalkin polynomial:</title>
        <p />
      </sec>
      <sec id="sec-3-5">
        <title>Each monomial describes one particular test. It is necessary to write the polynomi</title>
      </sec>
      <sec id="sec-3-6">
        <title>Presentation of tests’ set for given template via polynomial  is used in the classi</title>
        <p>fication of tests according to their computational complexity. The complexity of the
test is determined by a degree of the monomial (the number of boolean variables).
The smaller is the degree of monomial, the more complex is a case of the test. In
given example, the simplest tests are tests 
 0
 0, 
 0 1, 
 1 0, 
most difficult test is test with all randomly generated parameters.</p>
        <p>Semantics for the</p>
        <p>procedure:
1. Randomly substitute one of the variables that are listed in the description of the
metavariables into the  template instead of each metavariables   (Fig.4).
2. Randomly substitute one of the values that are listed in the description of the
parameters into the T template instead of each parameters   (Fig.5).</p>
      </sec>
      <sec id="sec-3-7">
        <title>3. Calculate the function</title>
        <p>in the resulting instance (Fig.6).
4. Return the result of calculations in the form  =&lt;  
interface of web application “Test on Mathematics”
In this article, we describe functional requirements, mathematical models, and
algorithms for the development of the modules of procedural knowledge testing in the
systems of computer mathematics for educational purposes.</p>
      </sec>
      <sec id="sec-3-8">
        <title>Using of generation of test tasks saves time because there is no need to spend a lot of time to fill a database with conditions and answers for each task. The generator provides a large number of similar tasks based on a single template and each instance of the test is unique.</title>
      </sec>
      <sec id="sec-3-9">
        <title>The testing system based on the results of this research is implemented in the web</title>
        <p>application “Test on Mathematics”. The system of computer mathematics for
educational purposes “Test on Mathematics” will reduce the burden on teachers via
automatic generation of the tests and verification of the answers. Thus, it is easy to control
procedural knowledge during the absence of student (during his illness, during
quarantine, etc.).
1. Lvov M.S. Proektirovanie logicheskogo vyvoda kak poshagovogo reshenija
zadach v matematicheskih sistemah uchebnogo naznachenija / M. S. Lvov //
Upravljajushhie sistemy i mashiny. – 2008. –No1. – S.25–32.
2. Lvov M.S. Koncepcija proghramnoji systemy pidtrymky matematychnoji
dijaljnosti./ M.S.Lvov // Komp'juterno-orijentovani systemy navchannja: Zb. nauk.
praci/ K.:NPU im. M.P.Draghomanova.– Vyp. 7.–2003.– S.36–48.
3. Lvov M.S. Koncepcija, arhitektura i funkcional'nost' gibkoj raspredelennoj
programmnoj sredy uchebnogo naznachenija dlja srednej shkoly. Rabochee mestometodista
/M. Lvov //Upravljajushhie sistemy i mashiny. –2009. –No 6. –S. 71-78.
4. Lvov M.S. Raspredelennye programmnye sredy uchebnogo naznachenija.</p>
        <p>Podsistema upravlenija uchebnym processom / M.S. Lvov // Upravljajushhie sistemy
i mashiny. – 2010. –No1. – S. 66 – 71.
5. Lvov M.S. Matematicheskie testy v sistemah komp'juternoj matematiki
uchebnogo naznachenija. / M.S.Lvov // Upravljajushhie sistemy i mashiny. –2011. –
No6. – S.60–67</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list />
  </back>
</article>