UPDATE 5 October 2013: Due to changes in the latest Java plugin, eXpertise2Go cannot be used in the way described here. However, I have successfully used a similar system, CLIPS, to create expert systems and use the examples, tasks, and lesson ideas described here. Please see Creating an Expert System with CLIPS.
eXpertise2Go (e2g) is a nice little program for creating expert systems. Compared to many systems I have tried this seems quite easy to use (for ITGS students too, hopefully).
It runs as a Java applet and the knowledge base is written as a text file, which is the only file students need to edit. For example, below are the rules and the user interface prompts for a system that chooses the correct title for a person (Señor, Señorita, Señora). If you are used to “traditional” sequential programming, the key thing to remember is that the rules here are not assessed in the order they are written. I’ve used deliberately long variable names (in square brackets):
REM Test program to show correct title for a person RULE [Call them senor] If [the result of the gender test] = "male" Then [recommended title] = "Senor"
RULE [Call them senorita] If [the result of the gender test] = "female" and [the marital status] = "single" Then [recommended title] = "Senorita"
RULE [Call them senora] If [the result of the gender test] = "female" and [the marital status] = "married" Then [recommended title] = "senora" PROMPT [the marital status] Choice CF "What is their marital status?" "married" "single" PROMPT [the result of the gender test] Choice CF "What is the gender?" "male" "female" GOAL [recommended title]
I think this definitely has potential to help ITGS students understand expert systems as part of the Robotics, Artificial Intelligence, and Expert Systems Higher Level topic.