School time table scheduling in Prolog

The school Time-Table Scheduling task is a very hard operations research and engineering problem, especially when-implemented in a conventional language. That is due to the imperative, deterministic nature of most conventional languages, such as BASIC and PASCAL and to the long series of constraints and goals inside the problem. The descriptive, logic-based and nondeterministic nature of Prolog language, and its ability to backtrack allows one to easily obtain a deductive data base, mixing the facts, rules, and constraints of the Time-table. Two systems, one nonmonotonic, and one monotonic with a non-monotonic reasoning structure are compared and their performances in a significant test are discussed. The approach may be easily generalized to other analogous engineering, scheduling and operations research problems.

[1]  Leon Sterling,et al.  Logical Levels of Problem Solving , 1984, J. Log. Program..

[2]  Drew McDermott,et al.  Non-Monotonic Logic I , 1987, Artif. Intell..

[3]  Mark Stefik,et al.  Planning with Constraints (MOLGEN: Part 1) , 1981, Artif. Intell..

[4]  Nils J. Nilsson,et al.  Artificial Intelligence , 1974, IFIP Congress.

[5]  Alberto Martelli,et al.  Optimizing decision trees through heuristically guided search , 1978, CACM.

[6]  Robert A. Kowalski,et al.  Logic for problem solving , 1982, The computer science library : Artificial intelligence series.

[7]  Jon Doyle,et al.  A Truth Maintenance System , 1979, Artif. Intell..

[8]  Alberto Martelli,et al.  On the Complexity of Admissible Search Algorithms , 1977, Artif. Intell..