Matakuliah Tahun Versi : T0264/Inteligensia Semu : 2005 :1 Pertemuan 8 Representing Knowledge Using Rules 1 Learning Outcomes Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu : • << TIK-99 >> • << TIK-99>> 2 Outline Materi • • • • • Materi 1 Materi 2 Materi 3 Materi 4 Materi 5 3 6.1 Procedural vs Declarative Knowledge Consider the knowledge base : man(Marcus) man(Caesar) person(Cleopatra) x : man(x) person(x) Supose we want to answer the question y : person(y) 4 6.1 Procedural vs Declarative Knowledge We could answer with any one of : y = Marcus y = Caesar y = Cleopatra Now consider an alternative KB : man(Marcus) man(Caesar) x : man(x) person(x) person(Cleopatra) 5 6.2 Logic Programming PROLOG A PROLOG program is composed of a set of Horn clauses. A Horn clause is a clause that has at most one positive literal. Examples : p p q r s r s 6 6.2 Logic Programming A Declarative and a Procedural Representation A Representation in Logic x : pet(x) small(x) apartmentpet(x) x : cat(x) dog(x) pet(x) x : poodle(x) dog(x) small(x) poodle(fluffy) 7 6.2 Logic Programming A Representation in PROLOG apartmentpet(x) pet(x) pet(x) dog(x) small(x) poodle(fluffy). : - pet(x), small(x). : - cat(x). : - dog(x). : - poodle(x). : - poodle(x). 8 6.2 Logic Programming Answering Question in PROLOG ?- apartmentpet(x). ?- cat(fluffy). ?- cat(mittens). 9 6.3 Forward vs Backward Reasoning • Number of start and goal states. • Branching factor in each direction. • Need to justify reasoning. • Triggers for problem solving. 10 6.3 Forward vs Backward Reasoning Sample or the Rules for Solving the 8Puzzle Assume the areas of the tray are numbered: 11 6.3 Forward vs Backward Reasoning Square 1 empty and Square 2 contains tile n Square 2 empty and Square 1 contains tile n Square 1 empty and Square 4 contains tile n Square 4 empty and Square 1 contains tile n Square 2 empty and Square 1 contains tile n Square 1 empty and Square 2 contains tile n 12 6.3 Forward vs Backward Reasoning An Example : 13 6.3 Forward vs Backward Reasoning A Bad Use of Heuristic Bidirectional Search 14 6.4 Matching Representation Affects Matching 15 6.4 Matching White pawn at Square(file e, rank 2) AND Square(file e, rank 3) move pawn from is empty Square(file e, rank 2) AND to Square(file e, rank 4) Square(file e, rank 4) is empty 16 6.4 Matching Many-to-Many Matching • The temporal nature of data. • Structural similarity in rules. mammal(x) feline(x) jaguar(x) carnivorous(x) has-spots(x) mammal(x) feline(x) tiger(x) carnivorous(x) has-stripes(x) 17 6.4 Matching • Persistance of variable binding consistency. son(x,y) grandparent(x,z) son(y,z) 18 6.4 Matching A Bit of Dialogue with ELIZA Person: ELIZA: Person: ELIZA: Person: ELIZA: Men are all alike. In what way? They’re always bugging us about something or other. Can you think of a specific example? Well, my boyfriend made me come here. Your boyfriend made you come here. 19 6.4 Matching Person: ELIZA: Person: ELIZA: Person: ELIZA: He says I’m depressed much of the time. I am sorry to hear you are depressed. It’s true. I am unhappy. Do you think coming here will help you not to be unhappy? I need some help, that much seems certain. What would it mean to you if you got some help? 20 6.4 Matching Person: ELIZA: Perhaps I could learn to get along with my mother. Tell me more about your family. 21 6.4 Matching Some ELIZA - like rules (X me Y) (X you Y) (I remember Z) (Why do remember X just now ?) (My {family-member} is Y) (Who else in your family is Y) (X {family-member} Y) (Tell me more about your family) 22 6.4 Matching Conflict Resolution • Preferences based on rules Rule order Prefer special cases over more general ones • Preferences based on objects Prefer some objects to others location in STM • Preferences based on states 23 6.5 Control Knowledge Syntax for a Control Rule Under conditions A and B, Rules that do {not} mention X { at all, in their left-hand side, in their right-hand side} 24 6.5 Control Knowledge will { definitely be useless, probably be useless ... probably be especially useful definitely be especially useful} 25 << CLOSING>> 26