Knowledge Representation: Production Systems II

Size: px
Start display at page:

Download "Knowledge Representation: Production Systems II"

Transcription

1 Knowledge Representation: Production Systems II References: Rich and Knight, Artificial Intelligence, 2nd ed. McGraw-Hill, 1991 Russell and Norvig, Artificial Intelligence: A modern approach, 2nd ed. Prentice Hall,

2 Outline The RETE matching algorithm Conflict resolution strategies 2

3 Matching Let us recall the raining example and add a new fact to the WM New fact: State(Dry) Initial facts: [Raining, Outside] + [State(Dry)] Inference According to the given rules, we may assert that: State(Wet), Develop(Cold) Now known facts are: State(Dry), Raining, Outside, State(Wet), Develop(Cold) The WM is inconsistent! --- as State(Wet) and State(Dry) are asserted at the same time. 3

4 Matching How can we check that with thousands of rules and facts? Using a truth maintenance system Issues: Which global strategy to apply? Forward chaining or backward chaining? Which local strategy to apply? [i.e. which rule should be selected in a recognize-act cycle?] How to deal with the complexity of matching? 4

5 Matching Let us recall that the naïve approach aimed at dealing with matching: in order to find all applicable rules try to match all elements of the working memory against all premises in all rules But... n rules with m premises, on average, and k elements in the working memory lead to nmk possible matches at each cycle Improvement: RETE algorithm 5

6 RETE: System architecture Initial facts WM Rule execution Changes in facts Conflict resolution RETE net Changes in conflict set 6

7 RETE: Algorithm General procedure: Represent all rules in one net Newly generated working memory elements infiltrate the net from above. If they arrive at the bottom, they enlarge the conflict set with the rule instance; else they are added to internal nodes memory Newly deleted working memory elements are treated analogously, but used to narrow the conflict set By sharing and considering updates of the working memory elements only, efficiency can be improved 7

8 RETE: Algorithm Observations Rules have parts of the conditions in common (structural similarity) When a rule is applied the working memory remains almost unchanged (temporal redundancy) Method: compile condition parts of the rule(s) in a net remember previous results and change only those matches that rely on facts that changed 8

9 RETE: Algorithm The net encodes the condition parts (LHS) of the rules Inputs: changes of the working memory (new elements, deleted elements, modified elements) Output: the conflict set (i.e. the applicable rules) 9

10 RETE: Algorithm modified elements are simulated by a deletion The net encodes the condition and parts an addition (LHS) of the rules Inputs: changes of the working memory (new elements, deleted elements, modified elements) Output: the conflict set (i.e. the applicable rules) 10

11 RETE: Algorithm Network of interconnected nodes: input nodes are at the top, output nodes at the bottom Each node represents one or more tests on the LHS of a rule Pattern nodes have one input, and check the names of facts Join nodes have two inputs, and combine facts Terminal nodes at the bottom of the network represent individual rules 11

12 RETE: Network RULE1: IF: (fact1 (atr1?x) (atr2 b)) (fact2 (atr1 c) (atr2?x)) THEN tokens fact1? fact2? atr2 =? b atr1?= c Left.atr1 =? Right.atr2 Join node Activate RULE1 12

13 RETE: Network Some facts (fact1 a b) (fact2 c a) tokens RULE1: IF: (fact1 (atr1?x) (atr2 b)) (fact2 (atr1 c) (atr2?x)) THEN fact1? fact2? atr2 =? b atr1?= c Left.atr1 =? Right.atr2 Join node Activate RULE1 13

14 RETE: Network RULE1: IF: (fact1 (atr1?x) (atr2 b)) (fact2 (atr1 c) (atr2?x)) THEN tokens fact1? fact2? atr2 =? b atr1?= c +(fact1 a b) +(fact2 c a) Left memory Left.atr1 =? Right.atr2 Right memory Join node Activate RULE1 14

15 RETE: Network RULE1: IF: (fact1 (atr1?x) (atr2 b)) (fact2 (atr1 c) (atr2?x)) THEN tokens fact1? fact2? atr2 =? b atr1?= c +(fact1 a b) +(fact2 c a) Left memory Left.atr1 =? Right.atr2 Right memory +((fact1 a b),(fact2 c a)) Activate RULE1 +(R1,(fact1 a b),(fact2 c a)) 15

16 RETE: An example (8-puzzle) RULE-MOVE-RIGHT If cell(x,y,0),cell(x1,y,z), x=x1+1 Then cell(x1,y,0),cell(x,y,z),~cell(x,y,0),~cell(x1,y,z) RULE-MOVE-LEFT If cell(x,y,0),cell(x1,y,z), x=x1-1 Then cell(x1,y,0),cell(x,y,z),~cell(x,y,0),~cell(x1,y,z) RULE-MOVE-UP If cell(x,y,0),cell(x,y1,z), y=y1+1 Then cell(x,y1,0),cell(x,y,z),~cell(x,y,0),~cell(x,y1,z) RULE-MOVE-DOWN If cell(x,y,0),cell(x1,y,z), y=y1-1 Then cell(x,y1,0),cell(x,y,z),~cell(x,y,0),~cell(x,y1,z) 16

17 RETE: An example (8-puzzle) RULE-MOVE-RIGHT If cell(x,y,0),cell(x1,y,z), x=x1+1 Then cell(x1,y,0),cell(x,y,z), ~cell(x,y,0),~cell(x1,y,z) tokens Fact =? cell atr3 =? 0 Left memory Right memory Left.atr1 =? Right.atr1+1 Left.atr2 =? Right.atr2 Activate RULE-MOVE-RIGHT 17

18 RETE: An example (8-puzzle) RULE-MOVE-RIGHT If cell(x,y,0),cell(x1,y,z), x=x1+1 Then cell(x1,y,0),cell(x,y,z), ~cell(x,y,0),~cell(x1,y,z) tokens Fact =? cell atr3 =? 0 Left memory Right memory Left.atr1 =? Right.atr1+1 Left.atr2 =? Right.atr2 Activate RULE-MOVE-RIGHT Left memory Right memory Left.atr1 =? Right.atr1 Left.atr2 =? Right.atr2+1 Activate RULE-MOVE-UP 18

19 RETE: An example (8-puzzle) tokens T1=+ (cell (1,1,1)) Fact =? cell T1 atr3 =? 0 Left memory T1 Right memory Left.atr1 =? Right.atr1+1 Left.atr2 =? Right.atr2 Activate RULE-MOVE-RIGHT Left memory T1 Right memory Left.atr1 =? Right.atr1 Left.atr2 =? Right.atr2+1 Activate RULE-MOVE-UP 19

20 RETE: An example (8-puzzle) T1=+ (cell (1,1,1)) tokens Fact =? cell T1 disappears atr3 =? 0 Left memory T1 Right memory Left.atr1 =? Right.atr1+1 Left.atr2 =? Right.atr2 Activate RULE-MOVE-RIGHT Left memory T1 Right memory Left.atr1 =? Right.atr1 Left.atr2 =? Right.atr2+1 Activate RULE-MOVE-UP 20

21 RETE: An example (8-puzzle) T1=+ (cell (1,1,1)) tokens Fact =? cell T2 = + (cell (1,2,0)) atr3 =? 0 Left memory T1 Right memory Left.atr1 =? Right.atr1+1 Left.atr2 =? Right.atr2 Activate RULE-MOVE-RIGHT Left memory T1 Right memory Left.atr1 =? Right.atr1 Left.atr2 =? Right.atr2+1 Activate RULE-MOVE-UP 21

22 RETE: An example (8-puzzle) T1 = + (cell (1,1,1)) T2 = + (cell (1,2,0)) tokens Fact =? cell T2 atr3 =? 0 T1 T1 T2 T2 T2 T2 Left memory Right memory Left memory Right memory Left.atr1 =? Right.atr1+1 Left.atr2 =? Right.atr2 Left.atr1 =? Right.atr1 Left.atr2 =? Right.atr2+1 Activate RULE-MOVE-RIGHT Activate RULE-MOVE-UP 22

23 RETE: An example (8-puzzle) T1 = + (cell (1,1,1)) T2 = + (cell (1,2,0)) tokens Fact =? cell atr3 =? 0 T1 T1 T2 T2 T2 T2 Left memory Right memory Left memory Right memory Left.atr1 =? Right.atr1+1 Left.atr2 =? Right.atr2 Activate RULE-MOVE-RIGHT Left.atr1 =? Right.atr1 Left.atr2 =? Right.atr2+1 Activate RULE-MOVE-UP T2 & T1 Rule effect is deleting cell(1,2,0) 23

24 RETE: An example (8-puzzle) T1 = + (cell (1,1,1)) T2 = + (cell (1,2,0)) tokens Fact =? cell T3 = - (cell (1,2,0)) T3 atr3 =? 0 T1 T1 T2 T2 T2 T3 T3 T3 T2 T3 Left memory Right memory Left memory Right memory Left.atr1 =? Right.atr1+1 Left.atr2 =? Right.atr2 Activate RULE-MOVE-RIGHT Left.atr1 =? Right.atr1 Left.atr2 =? Right.atr2+1 Activate RULE-MOVE-UP T2 & T1 24

25 RETE: An example (8-puzzle) T1 = + (cell (1,1,1)) T2 = + (cell (1,2,0)) T3 = - (cell (1,2,0)) tokens Fact =? cell T3 atr3 =? 0 T1 T1 T2 T2 T2 T3 T3 X X T3 X T2 X T3 Left memory Right memory Left memory Right memory Left.atr1 =? Right.atr1+1 Left.atr2 =? Right.atr2 Activate RULE-MOVE-RIGHT Left.atr1 =? Right.atr1 Left.atr2 =? Right.atr2+1 Activate RULE-MOVE-UP T2 & T1 25

26 RETE: An example (8-puzzle) T1 = + (cell (1,1,1)) T2 = + (cell (1,2,0)) T3 = - (cell (1,2,0)) tokens Fact =? cell atr3 =? 0 T1 T1 T2 T2 X T2 X X T2 X Left memory Right memory Left memory Right memory Left.atr1 =? Right.atr1+1 Left.atr2 =? Right.atr2 Activate RULE-MOVE-RIGHT Left.atr1 =? Right.atr1 Left.atr2 =? Right.atr2+1 Activate RULE-MOVE-UP X T2&T1 26

27 Conflict resolution Important because it can affect the solution Conflict set is a set of pairs of the form <production rule, matching wm elements> CR strategy can be general or domain specific 27

28 Conflict resolution in OPS5 General strategy: Means-Ends Analysis a) Delete instantiations of rules if they have already been fired b) Try matching first against elements that have entered the WM most recently c) Prefer the most specific rules (i.e. those with more specific preconditions) d) If several rules can be fired then perform a random choice 28

29 Conflict resolution in OPS5 General strategy: MEA a) Delete instantiations of rules if they have already been fired b) Try matching first against elements that have entered the WM To avoid most endless recently loops... c) Prefer the most specific rules (i.e. those with more specific preconditions) d) If several rules can be fired then perform a random choice 29

30 Conflict resolution in OPS5 General strategy: MEA It appears reasonable that more recent elements describe better the current situation Modeled according to the behavior of human short-term memory a) Delete instantiations of rules if they have already been fired b) Try matching first against elements that have entered the WM most recently c) Prefer the most specific rules (i.e. those with more specific preconditions) d) If several rules can be fired then perform a random choice 30

31 Conflict resolution in OPS5 General strategy: MEA a) Delete instantiations of rules if they have already been fired Can be used for modeling exceptions b) Try matching first against elements that have entered the WM most recently c) Prefer the most specific rules (i.e. those with more specific preconditions) d) If several rules can be fired then perform a random choice 31

32 Conflict resolution in OPS5 General strategy: MEA a) Delete instantiations of rules if they have already been fired Can be used for modeling exceptions b) Try matching first against elements that have entered the WM most recently c) Prefer the most specific rules (i.e. those with more specific preconditions) d) If several rules can be fired then perform a random choice 32

33 Conflict resolution in OPS5 General strategy: MEA a) Delete instantiations of rules if they have already been fired b) Try matching first against elements that have entered the WM most recently Using a non-deterministic approach c) Prefer the most specific rules (i.e. those with more specific preconditions) d) If several rules can be fired then perform a random choice 33

34 Conflict resolution in OPS5 Problem specific strategies Add extra conditions to rules to avoid conflicts R1 IF [interested in starter motor] and [engine does not turn] and [battery is not flat] THEN [ask user to test starter motor] Disadvantages mixture of factual knowledge and heuristic knowledge difficult to maintain for large knowledge bases 34

35 Problem-specific conflict resolution Better to separate factual knowledge object level knowledge from from control knowledge meta-level knowledge R1 IF [engine does not turn] and [battery is not flat] THEN [ask user to test starter motor] META-RULE-R1 IF [interested in starter motor] THEN [select rule R1] 35

36 Requirements of control strategies Expressiveness Adequacy (naturalness) Modularity Independence of rule base and control strategy Sensitivity (react to dynamic changes) Stability (continuity in behavior) Compositionality (can add new rules without major unwanted effects) 36

37 Evaluation There is no single most adequate knowledge representation algorithm for everything Choose based on what should be represented and how the knowledge should be processed (inference) 37

38 38

Knowledge Representation

Knowledge Representation Knowledge Representation References Rich and Knight, Artificial Intelligence, 2nd ed. McGraw-Hill, 1991 Russell and Norvig, Artificial Intelligence: A modern approach, 2nd ed. Prentice Hall, 2003 Outline

More information

26:198:722 Expert Systems

26:198:722 Expert Systems 26:198:722 Expert Systems Machine learning Rule-based Expert Systems CLIPS Machine Learning ASSISTANT uses Binarization -------------Attributes------------- ---Decision--- Height Hb Hr Hd Eyes Attractiveness

More information

Principles of Autonomy and Decision Making

Principles of Autonomy and Decision Making Massachusetts Institute of Technology 16.410-13 Principles of Autonomy and Decision Making Problem Set #6 (distributed 10/22/04). Paper solutions are due no later than 5pm on Friday, 10/29/04. Please give

More information

Problem solving as Search (summary)

Problem solving as Search (summary) Problem solving as Search (summary) References Russell and Norvig, Artificial Intelligence: A modern approach, 2nd ed. Prentice Hall, 2003 (chapter 3) Nilsson, Artificial intelligence: A New synthesis.

More information

ARTIFICIAL INTELLIGENCE LECTURE 3. Ph. D. Lect. Horia Popa Andreescu rd year, semester 5

ARTIFICIAL INTELLIGENCE LECTURE 3. Ph. D. Lect. Horia Popa Andreescu rd year, semester 5 ARTIFICIAL INTELLIGENCE LECTURE 3 Ph. D. Lect. Horia Popa Andreescu 2012-2013 3 rd year, semester 5 The slides for this lecture are based (partially) on chapter 4 of the Stuart Russel Lecture Notes [R,

More information

The term 'LEX' is based on the fact, that the lexicographical order order plays an important role in the second filter.

The term 'LEX' is based on the fact, that the lexicographical order order plays an important role in the second filter. Conflict Resolution Strategies in the OPS5 Rule Interpreter 136 OPS5 includes two conflict resolution strategies: LEX and MEA. In each strategy, multiple filters are arranged in a cascade. LEX (default

More information

The Cheapest Way to Obtain Solution by Graph-Search Algorithms

The Cheapest Way to Obtain Solution by Graph-Search Algorithms Acta Polytechnica Hungarica Vol. 14, No. 6, 2017 The Cheapest Way to Obtain Solution by Graph-Search Algorithms Benedek Nagy Eastern Mediterranean University, Faculty of Arts and Sciences, Department Mathematics,

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence CSC348 Unit 4: Reasoning, change and planning Syedur Rahman Lecturer, CSE Department North South University syedur.rahman@wolfson.oxon.org Artificial Intelligence: Lecture Notes

More information

Introduction to CLIPS

Introduction to CLIPS Introduction to CLIPS Overview of CLIPS Facts Rules Rule firing Control techniques Example CS 460, Session 21 1 CLIPS basic elements Fact-list: global memory of data Knowledge-base: contain all the rules

More information

Lecture 18. Questions? Monday, February 20 CS 430 Artificial Intelligence - Lecture 18 1

Lecture 18. Questions? Monday, February 20 CS 430 Artificial Intelligence - Lecture 18 1 Lecture 18 Questions? Monday, February 20 CS 430 Artificial Intelligence - Lecture 18 1 Outline Chapter 6 - Constraint Satisfaction Problems Path Consistency & Global Constraints Sudoku Example Backtracking

More information

7. Rules in Production Systems

7. Rules in Production Systems 7. Rules in Production Systems KR & R Brachman & Levesque 2005 102 Direction of reasoning A conditional like P Q can be understood as transforming assertions of P to assertions of Q goals of Q to goals

More information

Rete algorithm. Contents. Overview

Rete algorithm. Contents. Overview Rete algorithm The Rete algorithm (/ ri:ti:/ REE-tee or / reɪti:/ RAY-tee, rarely / ri:t/ REET or /rɛ teɪ/ re- TAY) is a pattern matching algorithm for implementing production rule systems. It is used

More information

Programming Languages Third Edition

Programming Languages Third Edition Programming Languages Third Edition Chapter 12 Formal Semantics Objectives Become familiar with a sample small language for the purpose of semantic specification Understand operational semantics Understand

More information

Problem Solving: Informed Search

Problem Solving: Informed Search Problem Solving: Informed Search References Russell and Norvig, Artificial Intelligence: A modern approach, 2nd ed. Prentice Hall, 2003 (Chapters 1,2, and 4) Nilsson, Artificial intelligence: A New synthesis.

More information

Artificial Intelligence CSC 361

Artificial Intelligence CSC 361 Artificial Intelligence CSC 361 Prof. Mohamed Batouche Computer Science Department CCIS King Saud University Riyadh, Saudi Arabia mbatouche@ccis.ksu.edu.sa Intelligent Systems Part I: Expert Systems Developing

More information

Deduction Rule System vs Production Rule System. Prof. Bob Berwick. Rules Rule

Deduction Rule System vs Production Rule System. Prof. Bob Berwick. Rules Rule Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science 6.034 Artificial Intelligence, Fall 2003 Recitation 2, September 11/12 Rules Rule Prof. Bob Berwick Agenda

More information

PROPOSITIONAL LOGIC (2)

PROPOSITIONAL LOGIC (2) PROPOSITIONAL LOGIC (2) based on Huth & Ruan Logic in Computer Science: Modelling and Reasoning about Systems Cambridge University Press, 2004 Russell & Norvig Artificial Intelligence: A Modern Approach

More information

Applying AI in Application Security

Applying AI in Application Security FEATURE Applying AI in Application Security Do you have something to say about this article? Visit the Journal pages of the ISACA website (www.isaca. org/journal), find the article and click on the Comments

More information

Simulation of Petri Nets in Rule-Based Expert System Shell McESE

Simulation of Petri Nets in Rule-Based Expert System Shell McESE Abstract Simulation of Petri Nets in Rule-Based Expert System Shell McESE F. Franek and I. Bruha Dept of Computer Science and Systems, McMaster University Hamilton, Ont., Canada, L8S4K1 Email: {franya

More information

Lecture Outline. Rule Based Systems. Production Systems. Production Systems. Production Systems. Production Systems

Lecture Outline. Rule Based Systems. Production Systems. Production Systems. Production Systems. Production Systems Lecture Outline Rule Based Systems Michael J. Watts http://mike.watts.net.nz Production systems Facts & Templates Production rules The inference process Advantages of production systems Disadvantages of

More information

Building a Large-Scale Generic Object Model: Applying the CYC Upper Ontology to Object Database Development in Java

Building a Large-Scale Generic Object Model: Applying the CYC Upper Ontology to Object Database Development in Java Building a Large-Scale Generic Object Model: Applying the CYC Upper Ontology to Object Database Development in Java Stephen Strom strom@acm.org Senior Architect TechTrader www.techtrader.com Summary The

More information

The Search Ahead Conflict Resolution for Parallel Firing of Production Systems

The Search Ahead Conflict Resolution for Parallel Firing of Production Systems The Search Ahead Conflict Resolution for Parallel Firing of Production Systems Ching-Chi Hsu and Feng-Hsu Wang Department of Computer Science and Information Engineering National Taiwan University Taipei,

More information

Intelligent Systems: Reasoning and Recognition. CLIPS: RULE Syntax, Actions, The RETE Algorithm. Production System Architecture...

Intelligent Systems: Reasoning and Recognition. CLIPS: RULE Syntax, Actions, The RETE Algorithm. Production System Architecture... Intelligent Systems: Reasoning and Recognition James L. Crowley ENSIMAG 2 / MoSIG M1 Second Semester 2014/2015 Lesson 5 25 February 2015 CLIPS: RULE Syntax, Actions, The RETE Algorithm Production System

More information

CS 354R: Computer Game Technology

CS 354R: Computer Game Technology CS 354R: Computer Game Technology AI Fuzzy Logic and Neural Nets Fall 2018 Fuzzy Logic Philosophical approach Decisions based on degree of truth Is not a method for reasoning under uncertainty that s probability

More information

Logical reasoning systems

Logical reasoning systems Logical reasoning systems Theorem provers and logic programming languages Production systems Frame systems and semantic networks Description logic systems CS 561, Session 19 1 Logical reasoning systems

More information

15-780: Graduate AI Homework Assignment #2 Solutions

15-780: Graduate AI Homework Assignment #2 Solutions 15-780: Graduate AI Homework Assignment #2 Solutions Out: February 12, 2015 Due: February 25, 2015 Collaboration Policy: You may discuss the problems with others, but you must write all code and your writeup

More information

Week 8: Constraint Satisfaction Problems

Week 8: Constraint Satisfaction Problems COMP3411/ 9414/ 9814: Artificial Intelligence Week 8: Constraint Satisfaction Problems [Russell & Norvig: 6.1,6.2,6.3,6.4,4.1] COMP3411/9414/9814 18s1 Constraint Satisfaction Problems 1 Outline Constraint

More information

Outline. Best-first search

Outline. Best-first search Outline Best-first search Greedy best-first search A* search Heuristics Admissible Heuristics Graph Search Consistent Heuristics Local search algorithms Hill-climbing search Beam search Simulated annealing

More information

Nonlinear State-Space Planning: Prodigy4.0

Nonlinear State-Space Planning: Prodigy4.0 Nonlinear State-Space Planning: Prodigy4.0 Manuela Veloso Carnegie Mellon University Computer Science Department Planning - Fall 2001 Planning - Problem Solving Newell and Simon 1956 Given the actions

More information

Rule-Based Systems. Reasoning Systems. Rule-Based Systems: early history. Rule-Based Systems

Rule-Based Systems. Reasoning Systems. Rule-Based Systems: early history. Rule-Based Systems Reasoning Systems In this part of the module we take a broad look at a variety of techniques for creating reasoning systems. These are traditional AI techniques that are successfully used in modern applications.

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence Lesson 1 1 About Lecturer: Prof. Sarit Kraus TA: Galit Haim: haimga@cs.biu.ac.il (almost) All you need can be found on the course website: http://u.cs.biu.ac.il/~haimga/teaching/ai/

More information

Module 8. Other representation formalisms. Version 2 CSE IIT, Kharagpur

Module 8. Other representation formalisms. Version 2 CSE IIT, Kharagpur Module 8 Other representation formalisms 8.1 Instructional Objective The students should understand the syntax and semantic of semantic networks Students should learn about different constructs and relations

More information

Rule partitioning versus task sharing in parallel processing of universal production systems

Rule partitioning versus task sharing in parallel processing of universal production systems Rule partitioning versus task sharing in parallel processing of universal production systems byhee WON SUNY at Buffalo Amherst, New York ABSTRACT Most research efforts in parallel processing of production

More information

A MULTI-DIMENSIONAL DATA ORGANIZATION THAT ASSISTS IN THE PARSING AND PRODUCTION OF A SENTENCE

A MULTI-DIMENSIONAL DATA ORGANIZATION THAT ASSISTS IN THE PARSING AND PRODUCTION OF A SENTENCE A MULTI-DIMENSIONAL DATA ORGANIZATION THAT ASSISTS IN THE PARSING AND PRODUCTION OF A SENTENCE W. Faris and K. Cheng Department of Computer Science University of Houston Houston, TX, 77204, USA http://www.cs.uh.edu

More information

Token Ring and. Fiber Distributed Data Interface (FDDI) Networks: Token Ring and FDDI 1

Token Ring and. Fiber Distributed Data Interface (FDDI) Networks: Token Ring and FDDI 1 Token Ring and Fiber Distributed Data Interface (FDDI) Networks: Token Ring and FDDI 1 IEEE 802.5 Token Ring Proposed in 1969 and initially referred to as a Newhall ring. Token ring :: a number of stations

More information

STIN2103. Knowledge. engineering expert systems. Wan Hussain Wan Ishak. SOC 2079 Ext.: Url:

STIN2103. Knowledge. engineering expert systems. Wan Hussain Wan Ishak. SOC 2079 Ext.: Url: & Knowledge STIN2103 engineering expert systems Wan Hussain Wan Ishak SOC 2079 Ext.: 4786 Email: hussain@uum.edu.my Url: http://www.wanhussain.com Outline System Design System architecture and conceptual

More information

Outline. Best-first search

Outline. Best-first search Outline Best-first search Greedy best-first search A* search Heuristics Local search algorithms Hill-climbing search Beam search Simulated annealing search Genetic algorithms Constraint Satisfaction Problems

More information

Overview of expert system shells

Overview of expert system shells Overview of expert system shells Krzysztof Kaczor, Szymon Bobek, Grzegorz J. Nalepa Institute of Automatics AGH University of Science and Technology, Poland In»ynieria wiedzy 12.05.2010, Kraków http://geist.agh.edu.pl

More information

FPGA: FIELD PROGRAMMABLE GATE ARRAY Verilog: a hardware description language. Reference: [1]

FPGA: FIELD PROGRAMMABLE GATE ARRAY Verilog: a hardware description language. Reference: [1] FPGA: FIELD PROGRAMMABLE GATE ARRAY Verilog: a hardware description language Reference: [] FIELD PROGRAMMABLE GATE ARRAY FPGA is a hardware logic device that is programmable Logic functions may be programmed

More information

Artificial Intelligence

Artificial Intelligence Torralba and Wahlster Artificial Intelligence Chapter 8: Constraint Satisfaction Problems, Part I 1/48 Artificial Intelligence 8. CSP, Part I: Basics, and Naïve Search What to Do When Your Problem is to

More information

CS 4510/9010 Applied Machine Learning

CS 4510/9010 Applied Machine Learning CS 4510/9010 Applied Machine Learning Neural Nets Paula Matuszek Spring, 2015 1 Neural Nets, the very short version A neural net consists of layers of nodes, or neurons, each of which has an activation

More information

KRON: An Approach for the Integration of Petri Nets in Object Oriented Models of Discrete Event Systems

KRON: An Approach for the Integration of Petri Nets in Object Oriented Models of Discrete Event Systems KRON: An Approach for the Integration of Petri Nets in Object Oriented Models of Discrete Event Systems J.L. Villarroel, J.A. Bañares and P.R. Muro-Medrano Departamento de Ingeniería Eléctrica e Informatica

More information

Computer Architecture: Part III. First Semester 2013 Department of Computer Science Faculty of Science Chiang Mai University

Computer Architecture: Part III. First Semester 2013 Department of Computer Science Faculty of Science Chiang Mai University Computer Architecture: Part III First Semester 2013 Department of Computer Science Faculty of Science Chiang Mai University Outline Decoders Multiplexers Registers Shift Registers Binary Counters Memory

More information

Formal Languages and Compilers Lecture VI: Lexical Analysis

Formal Languages and Compilers Lecture VI: Lexical Analysis Formal Languages and Compilers Lecture VI: Lexical Analysis Free University of Bozen-Bolzano Faculty of Computer Science POS Building, Room: 2.03 artale@inf.unibz.it http://www.inf.unibz.it/ artale/ Formal

More information

Induction and Semantics in Dafny

Induction and Semantics in Dafny 15-414 Lecture 11 1 Instructor: Matt Fredrikson Induction and Semantics in Dafny TA: Ryan Wagner Encoding the syntax of Imp Recall the abstract syntax of Imp: a AExp ::= n Z x Var a 1 + a 2 b BExp ::=

More information

Lecture 1 Contracts. 1 A Mysterious Program : Principles of Imperative Computation (Spring 2018) Frank Pfenning

Lecture 1 Contracts. 1 A Mysterious Program : Principles of Imperative Computation (Spring 2018) Frank Pfenning Lecture 1 Contracts 15-122: Principles of Imperative Computation (Spring 2018) Frank Pfenning In these notes we review contracts, which we use to collectively denote function contracts, loop invariants,

More information

Testing & Symbolic Execution

Testing & Symbolic Execution Testing & Symbolic Execution Software Testing The most common way of measuring & ensuring correctness Input 2 Software Testing The most common way of measuring & ensuring correctness Input Observed Behavior

More information

SRI VIDYA COLLEGE OF ENGINEERING & TECHNOLOGY REPRESENTATION OF KNOWLEDGE PART A

SRI VIDYA COLLEGE OF ENGINEERING & TECHNOLOGY REPRESENTATION OF KNOWLEDGE PART A UNIT II REPRESENTATION OF KNOWLEDGE PART A 1. What is informed search? One that uses problem specific knowledge beyond the definition of the problem itself and it can find solutions more efficiently than

More information

Testing, Fuzzing, & Symbolic Execution

Testing, Fuzzing, & Symbolic Execution Testing, Fuzzing, & Symbolic Execution Software Testing The most common way of measuring & ensuring correctness Input 2 Software Testing The most common way of measuring & ensuring correctness Input Observed

More information

Semantic Web. Ontology Pattern. Gerd Gröner, Matthias Thimm. Institute for Web Science and Technologies (WeST) University of Koblenz-Landau

Semantic Web. Ontology Pattern. Gerd Gröner, Matthias Thimm. Institute for Web Science and Technologies (WeST) University of Koblenz-Landau Semantic Web Ontology Pattern Gerd Gröner, Matthias Thimm {groener,thimm}@uni-koblenz.de Institute for Web Science and Technologies (WeST) University of Koblenz-Landau July 18, 2013 Gerd Gröner, Matthias

More information

Evaluation and Implementation of Match Algorithms for Rule-based Multi-Agent Systems using the Example of Jadex

Evaluation and Implementation of Match Algorithms for Rule-based Multi-Agent Systems using the Example of Jadex Universität Hamburg Fakultät für Mathematik, Informatik und Naturwissenschaften Evaluation and Implementation of Match Algorithms for Rule-based Multi-Agent Systems using the Example of Jadex Master's

More information

Models and Tools for Improving Efficiency in Constraint Logic Programming. Antoni Ligęza

Models and Tools for Improving Efficiency in Constraint Logic Programming. Antoni Ligęza Decision Making in Manufacturing and Services Vol. 5 2011 No. 1 2 pp. 69 78 Models and Tools for Improving Efficiency in Constraint Logic Programming Antoni Ligęza Abstract. Constraint Satisfaction Problems

More information

Lectures 20, 21: Axiomatic Semantics

Lectures 20, 21: Axiomatic Semantics Lectures 20, 21: Axiomatic Semantics Polyvios Pratikakis Computer Science Department, University of Crete Type Systems and Static Analysis Based on slides by George Necula Pratikakis (CSD) Axiomatic Semantics

More information

Outline. Best-first search

Outline. Best-first search Outline Best-first search Greedy best-first search A* search Heuristics Local search algorithms Hill-climbing search Beam search Simulated annealing search Genetic algorithms Constraint Satisfaction Problems

More information

Chapter 3. Describing Syntax and Semantics

Chapter 3. Describing Syntax and Semantics Chapter 3 Describing Syntax and Semantics Chapter 3 Topics Introduction The General Problem of Describing Syntax Formal Methods of Describing Syntax Attribute Grammars Describing the Meanings of Programs:

More information

Formal specification of semantics of UML 2.0 activity diagrams by using Graph Transformation Systems

Formal specification of semantics of UML 2.0 activity diagrams by using Graph Transformation Systems Formal specification of semantics of UML 2.0 activity diagrams by using Graph Transformation Systems Somayeh Azizi 1, Vahid Panahi 2 Computer science department, Sama Technical and vocational, Training

More information

Teaching Scheme BIT/MMC/BCS Database Systems 1

Teaching Scheme BIT/MMC/BCS Database Systems 1 Teaching Scheme BIT/MMC/BCS Database Systems 1 Level : 1 Year : 2000 2001 Konstantina Lepinioti (tlepinio@bournemouth.ac.uk) Melanie Coles (mcoles@bournemouth.ac.uk) Autumn Term Week Lecture Seminar/Lab

More information

CHAPTER 4: ARCHITECTURE AND SYSTEM DESIGN OF PROPOSED EXPERT SYSTEM: ESOA

CHAPTER 4: ARCHITECTURE AND SYSTEM DESIGN OF PROPOSED EXPERT SYSTEM: ESOA CHAPTER 4: ARCHITECTURE AND SYSTEM DESIGN OF PROPOSED EXPERT SYSTEM: ESOA Pages: From 49 to 64 This chapter presents the Architecture, frameworf^and system design of the we6-6ased expert system. This chapter

More information

Artificial Intelligence. Chapters Reviews. Readings: Chapters 3-8 of Russell & Norvig.

Artificial Intelligence. Chapters Reviews. Readings: Chapters 3-8 of Russell & Norvig. Artificial Intelligence Chapters Reviews Readings: Chapters 3-8 of Russell & Norvig. Topics covered in the midterm Solving problems by searching (Chap. 3) How to formulate a search problem? How to measure

More information

CS 380/480 Foundations of Artificial Intelligence Winter 2007 Assignment 2 Solutions to Selected Problems

CS 380/480 Foundations of Artificial Intelligence Winter 2007 Assignment 2 Solutions to Selected Problems CS 380/480 Foundations of Artificial Intelligence Winter 2007 Assignment 2 Solutions to Selected Problems 1. Search trees for the state-space graph given below: We only show the search trees corresponding

More information

Creating and Analyzing Software Architecture

Creating and Analyzing Software Architecture Creating and Analyzing Software Architecture Dr. Igor Ivkovic iivkovic@uwaterloo.ca [with material from Software Architecture: Foundations, Theory, and Practice, by Taylor, Medvidovic, and Dashofy, published

More information

Lecture Notes on Top-Down Predictive LL Parsing

Lecture Notes on Top-Down Predictive LL Parsing Lecture Notes on Top-Down Predictive LL Parsing 15-411: Compiler Design Frank Pfenning Lecture 8 1 Introduction In this lecture we discuss a parsing algorithm that traverses the input string from l eft

More information

Using Local Trajectory Optimizers To Speed Up Global. Christopher G. Atkeson. Department of Brain and Cognitive Sciences and

Using Local Trajectory Optimizers To Speed Up Global. Christopher G. Atkeson. Department of Brain and Cognitive Sciences and Using Local Trajectory Optimizers To Speed Up Global Optimization In Dynamic Programming Christopher G. Atkeson Department of Brain and Cognitive Sciences and the Articial Intelligence Laboratory Massachusetts

More information

Modular Petri Net Processor for Embedded Systems

Modular Petri Net Processor for Embedded Systems Modular Petri Net Processor for Embedded Systems Orlando Micolini 1, Emiliano N. Daniele, Luis O. Ventre Laboratorio de Arquitectura de Computadoras (LAC) FCEFyN Universidad Nacional de Córdoba orlando.micolini@unc.edu.ar,

More information

The architecture of Eiffel software 3.1 OVERVIEW classes clusters systems

The architecture of Eiffel software 3.1 OVERVIEW classes clusters systems 3 Draft 5.02.00-0, 15 August 2005 (Santa Barbara). Extracted from ongoing work on future third edition of Eiffel: The Language. Copyright Bertrand Meyer 1986-2005. Access restricted to purchasers of the

More information

ECE521: Week 11, Lecture March 2017: HMM learning/inference. With thanks to Russ Salakhutdinov

ECE521: Week 11, Lecture March 2017: HMM learning/inference. With thanks to Russ Salakhutdinov ECE521: Week 11, Lecture 20 27 March 2017: HMM learning/inference With thanks to Russ Salakhutdinov Examples of other perspectives Murphy 17.4 End of Russell & Norvig 15.2 (Artificial Intelligence: A Modern

More information

Research of the Rule Engine based on XML

Research of the Rule Engine based on XML 3rd International Conference on Materials Engineering, Manufacturing Technology and Control (ICMEMTC 2016) Research of the Rule Engine based on XML Zhao Ni1, a, Lifang Bai2, b 1 Zhengzhou Institute of

More information

l Some materials from various sources! n Current course textbook! Soma 1! Soma 3!

l Some materials from various sources! n Current course textbook! Soma 1! Soma 3! Ackwledgements! Test generation algorithms! Mani Soma! l Some materials from various sources! n r. Phil Nigh, IBM! n Principles of Testing Electronic Systems by S. Mourad & Y. Zorian! n Essentials of Electronic

More information

Lecture 1 Contracts : Principles of Imperative Computation (Fall 2018) Frank Pfenning

Lecture 1 Contracts : Principles of Imperative Computation (Fall 2018) Frank Pfenning Lecture 1 Contracts 15-122: Principles of Imperative Computation (Fall 2018) Frank Pfenning In these notes we review contracts, which we use to collectively denote function contracts, loop invariants,

More information

EXPERT SYSTEMS. Chapter 7. Asfia Rahman

EXPERT SYSTEMS.   Chapter 7. Asfia Rahman 1 EXPERT SYSTEMS Chapter 7 2 SYLLABUS CONTENT Candidates should be able to: 1. describe the components of an expert system 2. explain how the components of an expert system produce possible solutions 3.

More information

Finite State Machines: Motivating Examples

Finite State Machines: Motivating Examples Finite State Machines: Motivating Examples Greg Plaxton Theory in Programming Practice, Spring 2005 Department of Computer Science University of Texas at Austin The Wolf-Goat-Cabbage Puzzle A shepherd

More information

High Level Synthesis

High Level Synthesis High Level Synthesis Design Representation Intermediate representation essential for efficient processing. Input HDL behavioral descriptions translated into some canonical intermediate representation.

More information

Yuki Osada Andrew Cannon

Yuki Osada Andrew Cannon Yuki Osada Andrew Cannon 1 Humans are an intelligent species One feature is the ability to learn The ability to learn comes down to the brain The brain learns from experience Research shows that the brain

More information

CS164: Midterm I. Fall 2003

CS164: Midterm I. Fall 2003 CS164: Midterm I Fall 2003 Please read all instructions (including these) carefully. Write your name, login, and circle the time of your section. Read each question carefully and think about what s being

More information

Knowledge Representation. Dr. Asaad Sabah Hadi

Knowledge Representation. Dr. Asaad Sabah Hadi Knowledge Representation Dr. Asaad Sabah Hadi 1 Knowledge Knowledge is a collection of specialized facts, procedures and judgment rules High Degree of Abstraction Knowledge Information Low Data Quantity

More information

Artificial Intelligence

Artificial Intelligence Torralba and Wahlster Artificial Intelligence Chapter 8: Constraint Satisfaction Problems, Part I 1/48 Artificial Intelligence 8. CSP, Part I: Basics, and Naïve Search What to Do When Your Problem is to

More information

Performance Evaluation of Semantic Registries: OWLJessKB and instancestore

Performance Evaluation of Semantic Registries: OWLJessKB and instancestore Service Oriented Computing and Applications manuscript No. (will be inserted by the editor) Performance Evaluation of Semantic Registries: OWLJessKB and instancestore Simone A. Ludwig 1, Omer F. Rana 2

More information

Chapter S:II (continued)

Chapter S:II (continued) Chapter S:II (continued) II. Basic Search Algorithms Systematic Search Graph Basics State Space Search Depth-First Search Backtracking Breadth-First Search Uniform-Cost Search S:II-60 Basic Search Algorithms

More information

Research Report AI A Numerical Equation Solver in Prolog Michael A. Covington Artificial Intelligence Programs The University of Georgia

Research Report AI A Numerical Equation Solver in Prolog Michael A. Covington Artificial Intelligence Programs The University of Georgia Research Report AI 1989 02 A Numerical Equation Solver in Prolog Michael A. Covington Artificial Intelligence Programs The University of Georgia Athens, Georgia 30602 U.S.A. A Numerical Equation Solver

More information

Monday, September 13, Parsers

Monday, September 13, Parsers Parsers Agenda Terminology LL(1) Parsers Overview of LR Parsing Terminology Grammar G = (Vt, Vn, S, P) Vt is the set of terminals Vn is the set of non-terminals S is the start symbol P is the set of productions

More information

Usability. Daniela Rosner. Web Architecture, October 9, School of Information UC Berkeley

Usability. Daniela Rosner. Web Architecture, October 9, School of Information UC Berkeley Usability Daniela Rosner Web Architecture, 290-03 October 9, 2007 School of Information UC Berkeley Outline Introduction what is usability Best Practices common solutions Design Patterns shared languages

More information

CS 4100/5100: Foundations of AI

CS 4100/5100: Foundations of AI CS 4100/5100: Foundations of AI Constraint satisfaction problems 1 Instructor: Rob Platt r.platt@neu.edu College of Computer and information Science Northeastern University September 5, 2013 1 These notes

More information

Uni-Rete: Specializing the Rete Match Algorithm for the Unique-attribute Representation

Uni-Rete: Specializing the Rete Match Algorithm for the Unique-attribute Representation Uni-Rete: Specializing the Rete Match Algorithm for the Unique-attribute Representation Milind Tambe, Dirk Kalp School of Computer Science Carnegie Mellon University Pittsburgh, Pa 15213-3890 Paul Rosenbloom

More information

Set 9: Planning Classical Planning Systems. ICS 271 Fall 2013

Set 9: Planning Classical Planning Systems. ICS 271 Fall 2013 Set 9: Planning Classical Planning Systems ICS 271 Fall 2013 Outline: Planning Classical Planning: Situation calculus PDDL: Planning domain definition language STRIPS Planning Planning graphs Readings:

More information

M.D UNIVERSITY SCHEME OF STUDIES AND EXAMINATION M.TECH 2nd YEAR (COMPUTER SCIENCE & ENGINEERING) SEMESTER 3rd CBCS Scheme effective from

M.D UNIVERSITY SCHEME OF STUDIES AND EXAMINATION M.TECH 2nd YEAR (COMPUTER SCIENCE & ENGINEERING) SEMESTER 3rd CBCS Scheme effective from M.D UNIVERSITY SCHEME OF STUDIES AND EXAMINATION M.TECH 2nd YEAR (COMPUTER SCIENCE & ENGINEERING) SEMESTER 3rd CBCS Scheme effective from 2017-18 Sl. No Course No. Subject Teaching Schedule Examination

More information

Review: Creating a Parallel Program. Programming for Performance

Review: Creating a Parallel Program. Programming for Performance Review: Creating a Parallel Program Can be done by programmer, compiler, run-time system or OS Steps for creating parallel program Decomposition Assignment of tasks to processes Orchestration Mapping (C)

More information

This Lecture. BUS Computer Facilities Network Management. Internetworking. Internetworking

This Lecture. BUS Computer Facilities Network Management. Internetworking. Internetworking his Lecture BUS3150 - Computer Facilities Network Management Principles of internetworking. Protocol Version 4 (v4). v4 Address structure including subnetworking. Faculty of nformation echnology Monash

More information

Informatics 2D. Coursework 1: Search and Games

Informatics 2D. Coursework 1: Search and Games Informatics 2D. Coursework 1: Search and Games Stefanie Speichert, Vaishak Belle January 30, 2019 1 Introduction The objective of this assignment is to help you understand the various search algorithms

More information

CONSIDERATIONS CONCERNING PARALLEL AND DISTRIBUTED ARCHITECTURE FOR INTELLIGENT SYSTEMS

CONSIDERATIONS CONCERNING PARALLEL AND DISTRIBUTED ARCHITECTURE FOR INTELLIGENT SYSTEMS CONSIDERATIONS CONCERNING PARALLEL AND DISTRIBUTED ARCHITECTURE FOR INTELLIGENT SYSTEMS 1 Delia Ungureanu, 2 Dominic Mircea Kristaly, 3 Adrian Virgil Craciun 1, 2 Automatics Department, Transilvania University

More information

Outline. Informed Search. Recall: Uninformed Search. An Idea. Heuristics Informed search techniques More on heuristics Iterative improvement

Outline. Informed Search. Recall: Uninformed Search. An Idea. Heuristics Informed search techniques More on heuristics Iterative improvement Outline Informed Search ECE457 Applied Artificial Intelligence Fall 2007 Lecture #3 Heuristics Informed search techniques More on heuristics Iterative improvement Russell & Norvig, chapter 4 Skip Genetic

More information

Joint Entity Resolution

Joint Entity Resolution Joint Entity Resolution Steven Euijong Whang, Hector Garcia-Molina Computer Science Department, Stanford University 353 Serra Mall, Stanford, CA 94305, USA {swhang, hector}@cs.stanford.edu No Institute

More information

PROBLEM SOLVING AND SEARCH IN ARTIFICIAL INTELLIGENCE

PROBLEM SOLVING AND SEARCH IN ARTIFICIAL INTELLIGENCE Artificial Intelligence, Computational Logic PROBLEM SOLVING AND SEARCH IN ARTIFICIAL INTELLIGENCE Lecture 2 Uninformed Search vs. Informed Search Sarah Gaggl Dresden, 28th April 2015 Agenda 1 Introduction

More information

Heuristic Optimisation

Heuristic Optimisation Heuristic Optimisation Lecture 10: Properties of A* Dr. Sándor Zoltán Németh nemeths@for.mat.bham.ac.uk http://web.mat.bham.ac.uk/s.z.nemeth HO p.1 The properties to be studied Completeness Admissibility

More information

Perceptrons and Backpropagation. Fabio Zachert Cognitive Modelling WiSe 2014/15

Perceptrons and Backpropagation. Fabio Zachert Cognitive Modelling WiSe 2014/15 Perceptrons and Backpropagation Fabio Zachert Cognitive Modelling WiSe 2014/15 Content History Mathematical View of Perceptrons Network Structures Gradient Descent Backpropagation (Single-Layer-, Multilayer-Networks)

More information

Mustafa Jarrar: Lecture Notes on Artificial Intelligence Birzeit University, Chapter 3 Informed Searching. Mustafa Jarrar. University of Birzeit

Mustafa Jarrar: Lecture Notes on Artificial Intelligence Birzeit University, Chapter 3 Informed Searching. Mustafa Jarrar. University of Birzeit Mustafa Jarrar: Lecture Notes on Artificial Intelligence Birzeit University, 2018 Chapter 3 Informed Searching Mustafa Jarrar University of Birzeit Jarrar 2018 1 Watch this lecture and download the slides

More information

The Discrete Event Calculus for Games and Other (Soft) Real Time Systems

The Discrete Event Calculus for Games and Other (Soft) Real Time Systems The Discrete Event Calculus for Games and Other (Soft) Real Time Systems Matthew Fuchs, PhD Paideia Computing Corp mattfuchs@paideiacomputing.com Outline Movie The target DEC explained DEC as a programming

More information

DURING the last decade, fuzzy expert systems have been

DURING the last decade, fuzzy expert systems have been IEEE TRANSACTIONS ON FUZZY SYSTEMS, VOL. 6, NO. 4, NOVEMBER 1998 563 FuzzyShell: A Large-Scale Expert System Shell Using Fuzzy Logic for Uncertainty Reasoning Juiyao Pan, Guilherme N. DeSouza, and Avinash

More information

Application: Programming Language Semantics

Application: Programming Language Semantics Chapter 8 Application: Programming Language Semantics Prof. Dr. K. Madlener: Specification and Verification in Higher Order Logic 527 Introduction to Programming Language Semantics Programming Language

More information

Finite State Machines (FSMs) and RAMs and CPUs. COS 116, Spring 2011 Sanjeev Arora

Finite State Machines (FSMs) and RAMs and CPUs. COS 116, Spring 2011 Sanjeev Arora Finite State Machines (FSMs) and RAMs and CPUs COS 116, Spring 2011 Sanjeev Arora Recap Combinational logic circuits: no cycles, hence no memory Sequential circuits: cycles allowed; can have memory as

More information

A FUZZY ARDEN SYNTAX COMPILER Fehre K 1, 2, Mandl H 2, Adlassnig K-P 1, 2

A FUZZY ARDEN SYNTAX COMPILER Fehre K 1, 2, Mandl H 2, Adlassnig K-P 1, 2 A FUZZY ARDEN SYNTAX COMPILER Fehre K 1, 2, Mandl H 2, Adlassnig K-P 1, 2 Abstract The Arden Syntax for Medical Logic Systems is a standard for clinical knowledge representation, maintained by the Health

More information