dixit@uscvax.UUCP (Vish Dixit) (03/24/85)
I agree with Curtis Goodhart's comments on Expert systems. It raises the following questions: 1. is an Expert System simply a programming methodology? 2. must it be written in a particular language for it to be an ES? 3. Must it embody large/imprecise body of knowledge and employ heuristic/adhoc rules? 4. finaly, what is the most important charasteristic of an ES - programming style, language, or the domain? Also, there seems to be a craze for writing ES for every problem. (You know that when even the campus recruiters start asking about them.) If only programming methodology (Forward production System) is the criterion Assembly language programs would qualify to be called Expert Systems. (?) Here it goes: An assembly language program is written as a sequence of instructions of the form <operation> <operand> <operand> ... The <operands> are usualy the internal registers and some memory. The internal registers and the memory could be considered as the database (short term memory). Each instruction is simply a Rule of the expert system. The Rules are <condition> <action> pairs. In the assembly program, the conditions and some actions are implicit to save the space. Thus the instructions ORG 2000H MOV A,B .... ORG 3000H MOV A,B ... JNZ 2000H actually stand for the rules: (PC is program counter) <PC=2000H OR PC=3000H> then <MOV A,B> <PC++> <PC=??? AND NZ> then <PC := 2000H> The order of these rules is immeterial. The microprocessor control simply looks at whatever rule has its condition satisfied, fetches it and executes it until it is explicitly put into Halt mode or it none of rules can be applied (PC runs over). The actions, conditions, etc are very restricted, nevertheless they are there. signed -:) USENET: ...!{sdcrdcf,randvax}!uscvax!dixit CSNET: dixit@usc-cse.csnet ARPA: dixit%usc-cse@csnet-relay.arpa MABEL: (213) 747-3684 USMAIL: EE-systems, SAL-337, Univ. of Southern Calif., Los Angeles, CA 90089-0781