Expert SystemsThe candidate must demonstrate knowledge and understanding, practical skills and problem solving based on the following content statements:
Expert Systems in context
♦ Description of the advantages/benefits of expert systems, including preservation of expertise, dissemination of expert knowledge, training, combining expertise of multiple experts.
♦ Description of the limitations/drawbacks of expert systems, including restricted domain, high development and maintenance costs.
♦ Description of the social, ethical and legal implications of expert systems, including responsibility for ‘bad’ advice.
♦ Distinction between expert systems and other information systems (including Management/ Executive Information Systems, Decision Support Systems).
♦ Comparison of databases and expert systems, in terms of representation of data/knowledge; method of extraction of information/knowledge.
♦ Description of the characteristics of a deductive database which combines the inferencing of an expert system with the power of a database for large scale storage of ‘facts’.
♦ Description of the components of an expert system: knowledge base, inference engine, user interface.
♦ Correct classification and description of the domains and main characteristics of the following ‘classical’ expert systems: MYCIN, ONCOCIN, R1/XCON, INTERNIST, DENDRAL, PROSPECTOR, OPS5, STRIPS.
Characteristics of Expert Systems
♦ Description of the knowledge base as representing knowledge in a knowledge representation language (KRL).
♦ Representation of knowledge in a range of knowledge representation forms, including forward and backward chaining rules, factor tables, decision trees.
♦ Transformation of knowledge between representations.
♦ Description of the advantages and limitations of each representation.
♦ Representation of simple statements using propositional (zero order) or predicate (1st order) logic.
♦ Comparison of forward chaining and backward chaining inference engines.
♦ Description of the main characteristics of a forward chaining system: working memory; conflict set; conflict resolution.
♦ Explanation of why conflict resolution strategies are required.
♦ Explanation of how different conflict resolution strategies achieve the required effect, including:
rule ordering (first-come-first-served), recency, specificity/size ordering, refractoriness, data ordering, context limiting/setting a rule agenda.
♦ Description of the RETE algorithm for achieving conflict resolution.
♦ Representation of the degree of certainty of the data provided by the user, the degree of certainty inherent in the rules within the rule base, or the degree of certainty in the conclusion reached using certainty factors (as percentages or probabilities).
♦ Calculation of the certainty of a conclusion using the formula
CFconc = CFrule x min(CFcond1, CFcond2, ...).
♦ Explanation of how explanations are generated, using a rule tree.
Development, use and evaluation of Expert Systems
♦ Description of the stages of development of an expert system, and the roles performed by personnel at each stage: knowledge acquisition/elicitation, knowledge representation, system validation.
♦ Description of the sources of error which can occur at each stage of development, including expert’s knowledge; mis-interpretation of expert knowledge; programming; inferencing; expert system advice beyond the ‘limits of ignorance’.
♦ Querying of the expert system to answer more complex unstructured questions.
♦ Design of a set of structured test cases to thoroughly test an expert system.
♦ Critical evaluation of an expert system, in terms of: purpose (type of expert system, domain of expertise); range and coverage of rules; quality of reasoning; quality of user interface (structure/syntax/order of questions asked, presentation of conclusion; quality of explanation facilities); correctness of conclusions; fitness for purpose.
Construction of a working Expert System
♦ Description and demonstration of techniques of analysis, design, implementation, testing and evaluation of an expert system.
♦ Derivation of suitable attribute-value pairs, from an extended piece of unstructured text, involving some multi-valued attributes.
♦ Representation of attribute-value pairs as a factor table and as a decision tree.
♦ Derivation of structured rules involving multiple (3 or more) conditions to represent knowledge.
♦ Construction of forward and backward chaining rules (in pseudocode or appropriate KRL).
♦ Exemplification of parameterised rules which can provide multiple conclusions.
♦ Construction of a rule base of at least 15 rules, demonstrating chaining to a minimum of three levels.
♦ Derivation of structured questions to extract necessary information from a user consultation in an efficient manner, without duplication.
♦ Entry of rules into an expert system shell.
♦ Debugging of rules to produce a working system.
♦ Design and use of a set of structured test cases to thoroughly test that the expert system produces correct results against the knowledge provided.