A new Internet tool for automatic evaluation in Control Systems and Programming
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)
- et al.
On the impact of adaptive test question selection for learning efficiency
Computers and Education
(2010) - et al.
An auto-scoring mechanism for evaluating problem-solving ability in a web-based learning environment
Computers and Education
(2009) - et al.
A new moodle module supporting automatic verification of vhdl-based assignments
Computers and Education
(2010) - et al.
A framework for lab work management in mass courses. application to low level input/output without hardware
Computers and Education
(2007) Web-based dynamic assessment: taking assessment as teaching and learning strategy for improving students e-learning effectiveness
Computers and Education
(2010)- et al.
The automatic control telelab: a user-friendly interface for distance learning
IEEE Transactions on Education
(2003) - et al.
The automatic control telelab–a web-based technology for distance learning
IEEE Control Systems Magazine
(2004) - et al.
Ciclope: foss for developing and managing educational web laboratories
IEEE Transactions on Education
(2007) - et al.
Automatic test-based assessment of programming: a review
Journal on Educational Resources in Computing
(2005) - et al.
p88110: a graphical simulator for computer architecture and organization courses
IEEE Transactions on Education
(2009)