Identification of Snakes
The TMYCIN inference engine provides a general framework for defining and utilizing rules for an expert system. This program comes with two sample rule bases, a very simplistic database for identifying rocks and a moderate database for identifying some snakes. A more extensive database also has been developed, using an expanded version of TMYCIN, for advising incoming students which courses they should take first at Grinnell College.
Identification of Rocks
To gain some experience with TMYCIN, run the rocks expert system:
acl interpreter.
(load "~walker/261/labs/rocks.lsp")Note that the database automatically loads the TMYCIN inference engine as well.
(doconsult)
Note that the expert system will prompt you for the conclusion, if the data do not fit the rules known.
(why) (whynot obsidian)Describe what happens.
~walker/261/labs/rocks.lsp to identify the context name, the
parameters, the initial data, and the goals for this file.
Identification of Snakes
For a more interesting session, we consider the snakes database, found in
file ~walker/261/labs/snakes.lsp.
In each case, what questions are asked and what conclusions are drawn?
For each result, note for future reference the identification number (e.g., snake844) given by TMYCIN.
(why) or (whynot ---),
following the discussion in Section 7.2 of the documentation.
(showrule 'rule01) (englrule 'rule01)
showprops
command retrieves this information by identification. For example,
(showprops 'snake844)retieves the property list for the snake with identification snake844.
Use showprops to examine the property lists for the tests you
ran earlier.
~walker/261/labs/snakes.lsp to
identify the context, parameters, initial data, and goals.
Use this information, together with the rules, to explain why the program followed a particular line of questioning for the test cases you ran earlier.
The Department of Mathematics and Computer Science uses an expert system to help advise students about which mathematics and computer science courses they might take first. The program, which expands TMYCIN, was first developed in the Spring, 1993, as a student-faculty project; students Vikram Subramaniam and Ivan Sykes worked with faculty member Henry Walker. The program has been refined and expanded several times over the years to reflect new or revised courses.
Input includes high school transcript information and standardized test scores; the program then suggests a first mathematics course and a first computer science course for a student. The program can be used interactively with the user entering needed data, or the program can process information received electronically from the Registrar. In this latter mode, the program can generate letters for students.
Click here, if you would like instructions to run various forms of this program.
The TMYCIN Program
The code for TMYCIN is found in ~walker/261/labs/tmycin.lsp.
Review this LISP code as you have time to identify relevant parts and
algorithms of this program.
http://www.math.grin.edu/~walker/courses/162/lab-expert-sys.html