is software that attempts to provide an answer to a problem, or clarifyuncertainties where normally one or more humanexpertswould need to be consulted. Expertsystems are most common in a specific problem domain and is a traditional application and/or subfield of artificial intelligene. A wide variety of methods can be used to simulate the performanceof the expert however common to most or all are 1) the creation of a knowledge base which usessomeknowledgerepresentation formalism to capture the Subject Matter Expert’s(SME) knowledgeand 2) a process of gathering that knowledge from the SME and codifying it according to theformalism, which is called knowledge engineering. Expert systems may or may not have learningcomponents but a third common element is that once the system is developed it is proven by being placed in the same real world problem solving situation as the human SME, typically as an aid tohuman workers or a supplement to some information system.Expert systems were introduced by researchers in the Stanford Heuristic Programming Project,Edward Feiganbaum, PI, with the Dendral and Mycin systems. Principal contributors to thetechnology were Bruce Buchanan, Edward Shortliffe, Randall Davis, William vanMelle, Carli Scott,and others at Stanford. Expert systems were among the first truly successful forms of AI software.The topic of expert systems has many points of contact with general systems theory, operationsresearch, business proces re-engineering and various topics in applied mathematics and managementscience.
EXPERT SYSTEM – RELATED TERMS
1. CERTAINITY FACTORSA human, when reasoning, does not always conclude things with 100% confidence: he mightventure, "If Fritz is green, then he is probably a frog" (after all, he might be a chameleon). This typeof reasoning can be imitated by using numeric values called
. For example, if it is knownthat Fritz is green, it might be concluded with 0.85 confidence that he is a frog; or, if it is known that3
Prof. Michael Stiber
CSS 482 will introduce you to a completely different way of programming, in which you specify rules of behavior, rather than algorithms. This is an especially powerful approach for problems that change often or where solutions involve application of human knowledge, rather than intricate calculations. Since their commercial introduction in the early 1980s, expert systems have undergone tremendous growth, representing the most successful application of artificial intelligence technology. Today, they are used in business, science, engineering, manufacturing, etc. Example applications include: computer configuration, fault diagnosis, computer-aided instruction, data interpretation, planning and prediction, and process control.
This course will have an additional focus on building expert systems applications as part of larger systems, including web-based and enterprise systems. Besides rule-based programming, expert systems operation, and knowledge engineering, topics will include aspects of Java that are useful for developing these systems, such as JavaBeans, serialization, applets, servlets, J2EE, JavaServer Pages, Tomcat, web services, and XML.
November 7, 2010: All systems are go for a web app homework assignment. You should have received a pointer to the beta CSS wiki page with instructions for installation of Apache Tomcat in your email. Homework 5 is now live.
October 20, 2010: I have figured out the problem we were having with user input validation in class, and have updated code on the website under "example programs".
October 13, 2010: Homework 2 has been extended to Friday. Homework 3 is still due next Wednesday.
October 12, 2010: The PDF for our course scheduling in-class exercises is now up on this site; see the link on the left.
October 8, 2010: I've updated the description to homework 2 to clarify the first part.
September 29, 2010: Homework 1 is up under "Homework Assignments", and I have fixed the authorization for access to the Jess code so that everyone in the class should be able to get to it. Let me know if you have any problems. Expect guidance (or a script) for improving the installation under Windows so that Jess will be runnable from any directory.
September 20, 2010: The web site is now up-to-date, with a syllabus and schedule for the quarter. if you can, please bring a laptop to class; we will be running this class like a workshop. If you can't bring a laptop, sharing someone else's will be fine, just make sure to take notes and email any necessary files to yourself.
August 27, 2010: Web site update coming soon. Stay tuned for more information about the fall 2010 course update!