Date of Award
Doctor of Philosophy in Computing Sciences - (Ph.D.)
Computer and Information Science
Peter A. Ng
James A. McHugh
Richard B. Scherl
Raymond Tzuu-Yau Yeh
A Knowledge-Based Tutoring System, also sometimes called an Intelligent Tutoring System, is a computer based instructional system that uses artificial intelligence techniques to help people learn some subject. The goal of the system is to provide private tutoring to its students based on their different backgrounds, requests, and interests. The system knows what subject materials it should teach, when and how to teach them, and can diagnose the mistakes made by the students and help them correct the mistakes.
The major objective of this dissertation is to investigate and develop a generic framework upon which we can build a Knowledge-Based Tutoring System effectively. As an example, we have focused on developing SQL-TUTOR, a tutoring system for teaching SQL concepts and programming skills. The generic architecture of the system is rooted at the popular view that a tutoring process between a tutor (either a human being or a machine) and a student is a knowledge communication process. This process can be divided into a series of communication cycles and each communication cycle consists of four phases, namely, planning, discussing, evaluating, and remedying phases.
One major feature of the architecture proposed by us in this dissertation is its curriculum knowledge base which contains the knowledge about the course curriculum, We have developed a representation schema for describing the goal structure of the course, the prerequisite relationships among the course materials, and the multiple views to organize these materials. The inclusion of the curriculum knowledge in a KBTS allows the system to create different curricula for each individual student and to diagnose the student's errors more effectively.
The system also provides a group of operators for the student to hand-tailor his/her curricula when he/she starts learning the course. The student can use these operators to select a specific path to go through the course materials, to pick a specific topic from the curricula to study, or to remove a particular topic from the curricula. Since the student can construct his/her own learning plans by these operators, he/she is relatively free to determine how to study the course materials and, as a result, he/she can become more active in the tutoring process.
The knowledge about a subject domain is stored in a set of topics and a sample database. The content of a topic consists of a set of related domain concepts. Each concept is described by both natural and formal forms. The relationships among the concepts are modeled a type of semantic network called the context network. The sample database contains a set of sample tables and an enhanced system catalog which contains the knowledge about the name, semantic meanings of the database objects. The built-in Problem Solver of the system allows the system to reason over the networks and the sample database and answer various kinds of questions raised by the student about the domain concepts and their relationships.
The knowledge of writing SQL queries is embodied in a set of examples attached to the topics. Each of such an example is carefully designed for one category of SQL query problems. An example in SQL-TUTOR is a packed knowledge chunk which can serve several important teaching purposes, including generating problem descriptions with different levels of details, formulating various SQL solutions for the given problem, explaining these solutions to the student, and evaluating SQL queries written by the student.
Zhou, Gang, "Towards designing a knowledge-based tutoring system : SQL-tutor as an example" (1996). Dissertations. 1000.