i-Prolog: A Web-Based Intelligent Tutoring System for Learning Prolog

Intelligent tutoring systems (ITS) incorporate techniques for transferring knowledge and skills to students. These systems use a combination of computer-aided instruction methods and artificial intelligence. In this paper we present a web-based intelligent tutoring system. Although it can be used as a generic learning mechanism, in this paper, as a proof of concept we used it for learning Prolog. We present the architecture of our system and we provide details on each one of its modules. Each lesson includes the corresponding lecture with theory and exercises, a practice module where students can apply the corresponding theory and an assessment module to verify user’s understanding. The system can be used with or without a teacher enabling distant learning. Among the novelties of our system is its flexibility to adapt to individual student choices and profile, offering a wide range of alternatives and trying to continuously keep the interest of the final user. The preliminary evaluation performed confirms the usability of our system and the benefits of using it for learning Prolog.

[1]  Emmanouil I. Marakakis,et al.  Developing a Collaborative Knowledge System for Cancer Diseases , 2017, 2017 IEEE 30th International Symposium on Computer-Based Medical Systems (CBMS).

[2]  Chee-Kit Looi Automatic debugging of Prolog programs in a Prolog Intelligent Tutoring System , 1991 .

[3]  Ioannis P. Vlahavas,et al.  CSPCONS: A Communicating Sequential Prolog with Constraints , 2002, SETN.

[4]  Manolis Tsiknakis,et al.  Patient Empowerment through Personal Medical Recommendations , 2015, MedInfo.

[5]  Janet Rountree,et al.  Learning and Teaching Programming: A Review and Discussion , 2003, Comput. Sci. Educ..

[6]  Manolis Tsiknakis,et al.  PMIR: A Personal Medical Information Recommender , 2014, MIE.

[7]  Johan Jeuring,et al.  Ask-Elle: an Adaptable Programming Tutor for Haskell Giving Automated Feedback , 2017, International Journal of Artificial Intelligence in Education.

[8]  Arthur C. Graesser,et al.  Intelligent Tutoring Systems , 2018, Lecture Notes in Computer Science.

[9]  Tiffany Barnes,et al.  Preface for the Special Issue on AI-Supported Education in Computer Science , 2017, International Journal of Artificial Intelligence in Education.

[10]  Emmanouil I. Marakakis,et al.  A knowledge-based interactive verifier for logic programs , 2014, Int. J. Knowl. Based Intell. Eng. Syst..

[11]  Moon-Chuen Lee An augmented Prolog programming environment for tutoring applications , 1990, IEA/AIE '90.

[12]  Manolis Tsiknakis,et al.  Development of interactive empowerment services in support of personalised medicine , 2014, Ecancermedicalscience.

[13]  Gabriele Weiler,et al.  The p-medicine portal—a collaboration platform for research in personalised medicine , 2014, Ecancermedicalscience.

[14]  John R. Anderson,et al.  Locus of feedback control in computer-based tutoring: impact on learning rate, achievement and attitudes , 2001, CHI.

[15]  Kenneth R. Koedinger,et al.  Data-Driven Hint Generation in Vast Solution Spaces: a Self-Improving Python Programming Tutor , 2015, International Journal of Artificial Intelligence in Education.

[16]  Mike Joy,et al.  Approaches for Learning Prolog Programming , 2007 .