
 
TinyMCE supports only standard HTML math 
symbols, we extended its library with a module for 
handling mathematical expressions. Once entered, 
these are rendered into images using the 
LatexRender scripts 
(http://www.mayer.dial.pipex.com/tex.htm). 
All MatPort printouts have the standard PDF 
(Portable Document Format) format. 
The MatPort forum is based upon the PHPBB
TM
  
(http://www.phpbb.com/) open-source forum 
solution. 
Last but not least, we set formatting MatPort 
visual options in a centralized document that is 
referenced from PHP files by using CSS (Cascading 
Style Sheets). 
3  DECISION SUPPORT SYSTEM 
We are aware of the fact that only providing a 
dataset of math items is not enough. We need to 
incorporate an extrinsic motivation system to 
“bribe” the 6
th
 to 9
th
 grade students to practice 
mathematics. There are rare children who are 
intrinsically motivated to do repetitive, boring tasks.  
3.1  How to Motivate Children? 
A student who solves a MatPort math item receives 
information on the progress through graphical 
symbols and stimulative words (Fig. 2).  
In addition, the application provides information 
on math items that need to be further solved to 
receive a higher score. These can be supplementary 
or additional items to help strengthen or increase 
knowledge, respectively. The information is 
provided by the MatPort decision support system, 
when the automatic search facility is used. 
3.2 Genetic Algorithm 
The MatPort decision support system that motivates 
students to continue solving exercises is based upon 
an evolutionary computation method, i.e., the 
genetic algorithm (GA) (Goldberg, 1989; Bäck, 
1996). 
The GA is based on a heuristic method, which 
requires little information to search effectively in a 
large search space. The algorithm employs an initial 
population of chromosomes, which evolve to the 
next generation by probabilistic transition rules 
(randomized genetic operators) such as selection, 
crossover and mutation. The objective function 
evaluates the quality (fitness) of solutions coded as 
chromosomes. This information is used to perform 
an effective search for better solutions. There is no 
need of other auxiliary knowledge. The GA tends to 
take advantage of the fittest solutions by giving them 
greater weight and by concentrating the search in the 
regions of the search space with likely improvement. 
The GA mechanism is presented in Fig. 7. 
 
Initialize the population of 
chromosomes; 
While stop condition not met do: 
  Calculate the fitness for each 
member in the population using the 
fitness function
; 
  Select and reproduce individuals 
according to their fitness; 
  Perform genetic operators 
(crossover and mutation) on the 
population. 
Figure 7: The GA’s pseudocode. 
The GA is a population-based evolutionary 
approach that allows searching within a broad set of 
solutions from the search space simultaneously. 
Namely, because there are many math items (few 
hundreds or even more than thousand math items per 
a grade) and interrelated content areas (more than 
100 content areas per a grade), the student may 
continue solving items in many possible ways that 
may or may not lead to a higher score. Moreover, 
math items are dynamically generated by teachers 
(i.e., the item dataset expands with time) and the 
student may start solving them anywhere in the 
dataset. In the GA, there is a risk of converging to a 
local optimum, but good results of various research 
work obtained in other optimization problem areas 
(Papa and Koroušić Seljak, 2005; Koroušić Seljak, 
2006; Tušar et al, 2007; Korošec and Šilc, 2008) 
encouraged us to consider the GA approach as a 
promising approach to the decision making problem. 
The idea is to find a set of math items within 
different content areas that, when solved 
correctly, improve the user’s knowledge and 
increase his/her score as much as possible. The set 
of items should consist of math problems from all 
poorly scored content areas and the areas that 
precede these areas. Therefore, before start 
searching, the system identifies all the feasible 
items, i.e., math problems from the poorly scored 
content areas. These items form some kind of a pool 
of relevant items P for current score improvement. 
3.2.1 Encoding 
The suggested list of math items needed to improve 
the score is encoded into a chromosome, where each 
 
MATHPORT - Web Application to Support Enhancement in Elementary Mathematics Pedagogy
85