Matakuliah Tahun Versi : T0264/Inteligensia Semu : Juli 2006 : 2/1 Pertemuan 2 PROBLEMS, PROBLEM SPACES, AND SEARCH 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 Building a Problem-Solving Program To build a system to solve a particular problem, needed four things : • • • • Define the problem precisely Analyze the problem Represent the task knowledge Choose and apply representation and reasoning technique 4 2.1 Defining the Problem as a State Space Search One Legal Chess Move 5 Another Way to Describe Chess Moves White pawn at Square(file e, rank 2) AND Square(file e, rank 3) is empty AND Square(file e, rank 4) is empty Move pawn from Square(file e, rank 2) TO Square(file e, rank 4) 6 A Water Jug Problem You are given two jugs, a 4-galon one and a 3-galon one. Neither has any measuring marker on it. There is pump that can be used to fill the jugs with water. How can you get exactly 2 gallons of water into the 4-galon jug ? 7 A Water Jug Problem 8 Production Rules for the Water Jug Problem 9 Production Rules for the Water Jug Problem 10 One Solution to the Water Jug Problem Gallon in the 4-gallon Jug Gallon in the 3-gallon Jug Rule Applied 0 0 0 3 2 3 0 9 3 3 2 4 2 7 0 2 5 or 12 2 0 9 or 11 2 0 11 To Specify a Problem To provide a formal description of problem, do the following : • • • • Define the state space that contain all possible configurations of the relevan objects Specify one or more the initial states Specify one or more the goal states Specify a set of rules that describe the actions (operator) available 12 Contoh Kasus • Seorang Petani akan menyeberangkan seekor Kambing, seekor Harimau dan Sayuran dengan sebuah rakit keseberang sungai. Rakit hanya muat petani dengan satu penumpang lainya. Jika ditinggal petani maka kambing dimakan harimau dan sayuran dimakan kambing. Buatlah representasi ruang keadaan agar keempat obyek sampai diseberang sungai masih lengkap. 13 2.2 Production Systems • A set of rules • Knowledge / database • A control strategy • A rule applier 14 Search Techniques Termasuk dalam Blind Search Breadth First Search : semua node dikunjungi sehingga jika ada solusi pasti diketemukan atau tidak terjebak jalan buntu. Tetapi membutuhkan memori besar dan waktu pencarian relatif lama. Dept First Search : node dikunjungi dari ranting paling kiri. Jika ada solusi bisa diketemukan lebih cepat, membutuhkan memori kecil dan waktu pencarian lebih singkat. Tetapi bisa terjebak dalam jalan buntu. 15 2.2.1 Control Strategies Algorithm : Breadth – First Search 1. Set Node-List to the initial state 2. Until a goal is found or Node-List is empty do : a. Remove the first element of Node-List and call it E.If Node-List was empty,quit b. For each rule match againtst E do : • Apply the rule to generate a new state • If the nem state is a goal, quit and return it • Else,add the new state to the end of Node-List 16 Two level of a Breadth-First Search Tree 17 Algorithm : Dept-First Search 1.If the initial state is a goal state, quit and return succes 2.Otherwise,do the following until succes or failure is signaled : a. Generate a successors,E,of the initial state.If there are no more successors,signal failure b. Call Depth-First Search with E as the initial state c. If succes is returned,signal success. Otherwise continue in this loop 18 A Depth-First Search Tree 19 2.2.2 Heuristic Search Some Simple Heuristic Functions Chess The material advantage of our side over the opponent Travelling Salesman The sum of the distances so for Tic-Tac-Toe 1 for each row in which we could win and in which we already have one piece plus 2 for each such row in which we have two pieces 20 Heuristic Search • Heuristic Search is a technique that improves the efficiency of a search process, possibly by sacrificing claims of completeness. Heuristic like tour guides. • Some heuristics help to guide a search process without sacrificing any claims to completeness that the process might previously have had. 21 2.3 Problem Characteristics – – – – – Is the problem decomposable ? Can solution steps be ignored or undone ? Is the problem’s universe predictable? Is a good solution absolute or relative ? Is the desired solution a state of the world or a path to a state ? – Is a large amount of knowledge absolutely required to solve the problem, or is it important only to constrain the search ? – Must problem-solving be interactive? 22 Decomposable Problem 23 2.4 Production System Characteristics • A monotonic production system is a production system in which the application of rule never prevents the later application of another rule that could also have been applied at the time the first rule was selected. • A nonmonotonic production system is one in which this is not true. • A partially commutative production system is production system with the property that if the application of a particular sequence of rules transform state x into state y, then any permutation of those rules that is allowable also transform state x into state y. • A commutative productions system is production system that is both monotonic and partially commutative. 24 Production System Characteristics The four Categories of Production Systems Partially commutative Monotonic Nonmonotonic Theorem proving Robot navigation Not Partially Chemical syntesis commutative Bridge 25 2.5 Design of Search Programs • Some important issues that arise in all of them : - The direction in which to conduct the search (forward vs backward reasoning) - How to select applicable rules (matching) - How to represent each node of the search process (the knowledge representation problem and frame problem) 26 Design of Search Programs A Search Graph for the Water Jug Problem (0,0) (4,0) (1,3) (0,3) (4,3) (3,0) 27 2.6 Additional Problems – The Missionarries and Cannibals – The Tower of Hanoi – The Monkey and Bananas – Cryptarithmetic 28 << CLOSING>> End of Pertemuan 2 Good luck 29