Elsevier

Computers & Education

Volume 59, Issue 2, September 2012, Pages 535-550
Computers & Education

A new Internet tool for automatic evaluation in Control Systems and Programming

https://doi.org/10.1016/j.compedu.2011.12.016Get rights and content

Abstract

In this paper we present a web-based innovative education tool designed for automating the collection, evaluation and error detection in practical exercises assigned to computer programming and control engineering students. By using a student/instructor code-fusion architecture, the conceptual limits of multiple-choice tests are overcome by far. The proposed system is also able to individually parameterize the exercises for each student and allows an instructor to implement innovative self-learning techniques in which student can obtain a measure of their knowledge continuously along the whole course length. The proposed automatic evaluation system has been applied to several control engineering courses at the University of Seville and the results several case studies are presented here.

Highlights

► A new paradigm for automatic evaluation, via conversion of student answers into executable code. ► The code is executed along with instructor-defined code, in order to compute a grade. ► Solid empirical evidence: over 2000 automatic evaluations carried out in real-life. ► Features: 100% web-based, flexible and multidisciplinary (Control Systems, Mechanics, Science…). ► Strong security features for fraud protection.

Introduction

The quick expansion of the Internet as a community collaborative tool in all sectors started in the nineties and has now reached maturity. The uses of today’s XHTML pages little has to do with the initial, mostly static, contents of that period. Recently, the term Web 2.0 has been coined in order to denote a second generation of the Net, based on user communities which are responsible for providing most part of the content. Team collaboration, file sharing, blogging, product user ratings and forums are popular tools, implemented in content management systems such as Drupal and Joomla. Worldwide education institutions have started using packages such as Moodle and WebCT, that offer all these collaborative tools, plus some additional features, at the service of education. The use of this technological framework in education reduces the student mobility requirements (restraining expenses in education institutions and companies) and enables a closer interaction between teacher and students (using different tools such as forums, e-mail, FAQ, immediate course material delivery, warnings, grades, planning, calendars, etc…). In Kapur and Stillman, 1997, Poindexter and Heck, 1999, Heck et al., 2000, an overview of the possibilities offered to educators is presented.

In control systems education there has been great interest in web platforms that enable the users to interact with a remote laboratory system, either real (see Cedazo et al., 2007, Casini et al., 2003, Casini et al., 2004) or simulated (Maussion and Tricot, 2008, Sanchez et al., 2004, Sanchez et al., 2006, Torres et al., 2006), extending to the web the crucial aspect of practical educational work in engineering.

However, learning management systems, though very effective in distributing material and collecting the student assignments, offer limited evaluation capabilities, in general reduced to multiple-choice questions (MCQs). The use of MCQs in Engineering is widespread Petridis et al., 2003, Tartaglia and Tresso, 2002 and its convenience is currently under discussion Gentil and Exel (2004). From our perspective, more sophisticated tools specific for evaluating elaborate projects from students are highly desirable. Little effort has been made in order to automatically grade complex assignments while some interesting examples in diverse fields are Jiang et al., 2009, Jaaskelainen et al., 2009, Gerosa and Narayanan, 2008, Chiou et al., 2009.

On Computer Science, a number of approaches have been developed whose characteristics include automatic evaluation, see for example Douce et al., 2005, Gutiérrez et al., 2010. In Control Engineering, student assignments likely to be automatically graded range from mathematical problems (e.g. eigenvalue problems, state-space matrix analysis), controller parameter tuning, simulation-based work, and algorithm programming exercises. Among the few virtual laboratories that offer automatic evaluation for programming courses we find Rodriguez, Zamorano et al., 2007, Rodriguez, Pedraza, Garcia et al., 2007, Rodriguez, Pedraza, Dopico et al., 2007, Garcia et al., 2009, however, they provide particular solutions that cannot be used in other applications.

Motivated by the above discussion, we have developed a fully novel virtual education platform designed for automating the collection, evaluation and error detection in practical exercises assigned to control engineering students that allows to introduce user (instructor) defined code in some computer language (nowadays Matlab and C language are implemented), to algorithmically evaluate the student’s solution. This opens the possibility of functional evaluation of complex engineering designs, such as computer algorithms, controller tuning, control system design analysis exercises and much more. In mathematics there are several web-based systems based on using computer algebra system (CAS) with the internet delivery to provide a sophisticated mechanism with which to grade students’ work Klai et al., 2000, Sangwin, 2004, Mavrikis and Maciocia, 2003, albeit do not address the requirements of programming and in general are aimed at designing online courses based on a sequence of short, concise questions whose solution is a function that has to be defined using the appropriate syntax. The platform presented in this paper allows for more complex mathematical (and engineering) exercises in which the student solution is not a single function and moreover, the problem may be personalized for each student beyond a simple randomization. In addition, it allows the implementation not only of traditional assessment, but also dynamic assessment, see for example Wang (2010), based teaching methodologies in engineering courses with a large number of students. In the sequel we will describe the new evaluation tool and analyze a particular experience carried out in a control systems design course at the University of Seville. Many exercises in this field have a common algorithmic structure and a set of numerical specifications that can be automatically verified using our approach.

Section snippets

Automatic evaluation paradigms

Most virtual education platforms often include automatic evaluation tools. The most common tool is a multiple selection quiz where the student must answer some question by choosing one or more options from a list of available answers. There are a number of variations around this scheme. For instance, the questions may be chosen randomly from a database, so that no pair of exams is identical or even adapt to the latest responses of the student as proposed in Barla et al. (2010). Moreover,

Architecture of the proposed solution

At the beginning of our project, some instructors from the field of control engineering were consulted, and we observed that, to a certain extent, many of them used ad hoc Matlab scripts (.m) or C programs specifically designed to implement to some extent the evaluation paradigms presented in the previous sections. In addition, e-mail or general–purpose virtual education tools were used to collect the work from students. These approaches have been long used by some educators and they present

Guidelines for developing an automatic evaluation script

In this section we present the basic structure of the evaluation code that an instructor must design in order to use the proposed application. Although in general each exercise is unique, most exercises belong to one of the evaluation paradigms presented in Section 2. We review next these cases.

Case study: 2008 Systems Theory

The automated evaluation web server was first used during the Spring quarter of 2008 in the course Systems Theory, a compulsory course in second year of the Industrial Engineer degree at the University of Seville. The course was followed in 2008 by 366 students divided into four different groups. In order to pass the course the students have to do four different exercises based on carrying out a series of simulations using Matlab and Simulink. The exercises are different for each student

Case study: 2008 Automatic Control

In this section we present the results of the application of the proposed automated evaluation scheme to the Autumn quarter of 2008 in the course Automatic Control, a third year compulsory course the Industrial Engineer career of the University of Seville. The course was followed in 2009 by 334 students divided into four different groups. In this course, the automated evaluation web server has been used to evaluate a final course project. The project consists in the design of several

Case study: 2010 Computer Science and Programming

In this section we present the results of the application of the proposed automated evaluation scheme Computer Science and Programming, a first year compulsory course the Industrial Engineer career of the University of Seville. The course was followed in 2010 by 412 students divided into four different groups. In this course, the automated evaluation web server has been used to evaluate eight different assignments. Each assignment consisted on the definition of three functions for which the

Summary of past experiences

In order to support the claims of this paper, besides the two case studies, a summary of past experiences carried out since 2007 with our tool is presented in Table 6. In this table, a list of all the courses offered by the University of Seville which used the tool presented is shown. The entry “Degree” shows in which degree the course is taught while the entries “Period” and “Students” show the period of time in which the tool has been used and the total number of students which have followed

Conclusions

In this paper we have presented a novel web based application which can be used to collect and evaluate student’s submissions of control course projects and exercises. The application was first applied with students of the Engineering School of the University of Seville, where it is being used on a weekly basis in numerous courses. The automatic evaluation web server allows the instructor to collect and automatically correct students submissions using a Matlab script, which provides a general

How to test the application

Should the reader be interested in testing and using the application by freely creating auto-evaluated exercises and assigning them to their students, it is possible to do so on a fully functional application running on a public server. Please contact the authors by e-mail to gain password access.

Acknowledgment

Financial support from the University of Seville, under the programme Plan de Renovación de las Metodologías Docentes, 2007–2010, is gratefully acknowledged.

References (28)

  • S. Gentil et al.

    Is it feasible to teach control with MCQs?

  • M. Gerosa et al.

    Investigating automatic assessment of reading comprehension in young children

  • B.S. Heck et al.

    Integrating the web into traditional teaching methods

  • A. Jaaskelainen et al.

    Automatic gui test generation for smartphone applications–an evaluation

  • Cited by (0)

    View full text