Trouble and improvements in the use of wims for numerical purposes

and some other issues.

I report here some trouble I faced during 2 months of development of OEF WIMS exercises for students of University of Nice and Sophia-Antipolis (France)(see the server in Nice for any information and to experiment this free software developed by G. Xiao). A detailed account of this research and experiment is in preparation.
From my experiment and for the features described below, WIMS seems an ideal solution for e-learning of mathematics including numerical solutions of complex equations.

Didactic situation

These exercises have been used by roughly 100 students of "licence" MASS (third year of University) in the fall semester of 2004; these students are studying Mathematics and Economics; my lecture is devoted to Data analysis; but due to lack of time, I concentrate on Principal components analysis and Factor analysis. As the students have been studying Linear Algebra Elementary statistics and Differential Calculus, I think it is important that the student understand the simple Euclidean affine geometry concepts that are involved in these 2 methods rather to use commercial software where the ideas are blurred by graphic interfaces. As the students have a lack of practice of Euclidean affine geometry, I spend several weeks about implicit (Cartesian) and parametric equations of straight lines and planes; intersections of lines and planes and orthogonal projection on lines and planes, barycentric calculus; starting from the 2 D and 3D case and evolving to higher dimensions. For this, preliminary work, I have used existing WIMS exercises as well as developed some new ones.

New exercises using Octave

But the real novelty is the development of exercises for Principal components analysis and Factor analysis. In these 2 methods, the main data is a rectangular matrix, the lines and columns of which represent statistical variables . The main computational issue is the computation of eigenvectors and eigenvalues of a Correlation matrix. As it is well known, such a computation cannot be performed using symbolic manipulations so we use numerical software. A link between WIMS and the numerical package Octave was already working so we choose to use it to implement our exercises. However, this experiment seems to be the first one to use intensively Octave with matrix manipulations for WIMS exercises.

Here is a list of troubles:

  1. Apart of parsing errors which are clearly located, the main trouble when interfacing Octave program in a WIMS OEF exercise is that the errors are not clearly located; it is of paramount importance that this be improved; in order that teachers develop new exercises it should be easy to use such Octave program to build WIMS exercises; this not the case now!
  2. The other main trouble is that some words of the Octave program may be interpreted directly by WIMS instead of being sent to Octave; ex:
     rows , columns 
    are keywords of Octave and WIMS; they are directly interpreted as keywords of WIMS even if they are within an Octave program; an other example is the character # which is the beginning of a commentary; it is also interpreted by WIMS, so that it is not possible to let the commentaries of an Octave program, except by converting them to string variables. Moreover no diagnostic error even to warn the author of the exercises.
  3. A minor trouble is the obligation of ending all instructions by a semi-column ( including do loops and if-then blocks ) except the last one which should be a "display" of the variable to be passed to WIMS
  4. The basic language used in WIMS is HTML enhanced with Latex; moreover it is interfaced with symbolic computation software (Pari and Maxima) and with a numerical computation software Octave; in this experiment we have mainly used the last one; the availability of these features make WIMS an ideal solution for e-learning of mathematics and my experiments show that it is very well suited for the training of students for numerical solutions including writing programs to solve complex problems. The text editor suited for such developments is X-emacs and in particular its minor modes (Latex, HTML, Octave); but there is no minor mode for OEF WIMS exercises; I believe that the possibility of using such a minor mode encompassing Latex, HTML and Octave mode would provide a considerable improvement in the preparation of such exercises. Who could write such a minor x-emacs mode for WIMS exercises?
  5. In numerical linear algebra, we use several arrays: for example, a given matrix and the resulting eigenvalues and eigenvectors; the way of passing a matrix from Octave to WIMS is tedious and subject to errors
    1. First, in an Octave program, we can get a variable from WIMS by putting its name with an anti-slash before it; this is easy but if we forget the anti-slash, we get no error diagnosis but a wrong result; moreover for a matrix, we should put square brackets.
    2. Second, the presentation of a matrix is not the same by octave and WIMS; WIMS manipulates matrices by separation of rows with a semi-column and the elements of a line with a comma; but apparently, Octave cannot easily output a matrix in such a way; the present solution is a to use a WIMS utility script(see below in the example):
    3. Example:
       \text{ a1 = wims(exec octave [2,-1,0,0,0,0,0;
      -1,2,-1,0,0,0,0;
      0,-1,2,-1,0,0,0;
      0 ,0,-1,2,-1,0,0;
      0 ,0, 0, -1,2,-1,0;
      0 ,0, 0, 0,-1,2,-1;
      0, 0 ,0, 0,0,-1,2])}
      \text{a=wims(lines2rows wims(rawmatrix \a1))} \text{lamdaa= wims( exec octave aa= [\a]; lamdaa=eig(aa); disp(lamdaa) )}
      the last command brings the matrix defined in the previous instruction to octave and computes its eigenvalues.

Other issues:

  1. The evaluation of exams; presently if the student has several trials, say three trials, WIMS selects the best mark of the three trials; if the teacher is not satisfied by it, for each student, he should find the marks of the three trials and manipulate them (for example checking if an exercise which fails for the best trial was not good in an other trial and take this into account).
  2. The timing of an exam is misleading for the teacher: he has to provide the starting and final time in a tedious way and he is given no feedback, so that he is not given the opportunity of checking what he has typed.
  3. The possibility of asking to the student a numerical matrix is not in the long list of possible types of answers (however, this is possible for a symbolic matrix); a possible way of dealing with such an answer may be found (in french) at "matrices dans Wims, calculs numériques" with some other informations including an example of eigenvalue computation exercise.

Copyright (C) December 2004 B. Rousselet. Verbatim copying and distribution is permitted in any medium, provided this notice is preserved.

B. Rousselet,
U.N.S.A. Laboratoire J.A. Dieudonné
U.M.R. C.N.R.S. 6621, Parc Valrose, F 06108 Nice, Cedex 2, email: br@math.unice.fr