Presentation is loading. Please wait.

Presentation is loading. Please wait.

Knowledge and search, page 1 CSI 4106, Winter 2005 Knowledge and search Points Properties of knowledge  Completeness  Objectivity  Certainty  Formalizability.

Similar presentations


Presentation on theme: "Knowledge and search, page 1 CSI 4106, Winter 2005 Knowledge and search Points Properties of knowledge  Completeness  Objectivity  Certainty  Formalizability."— Presentation transcript:

1 Knowledge and search, page 1 CSI 4106, Winter 2005 Knowledge and search Points Properties of knowledge  Completeness  Objectivity  Certainty  Formalizability The role of search A small case study

2 Knowledge and search, page 2 CSI 4106, Winter 2005 Properties of knowledge: completeness "Knowledge is always incomplete": true or false? What do we need to know when we play a game? make a holiday plan? recognize a picture?

3 Knowledge and search, page 3 CSI 4106, Winter 2005... completeness (2) Even in a very restricted real-life domain there may be unexpected situations. Find examples of such situations in buying groceries, fixing a car. Knowledge contained in an AI software system for some application is necessarily much less complete than what we know about this application: true or false?

4 Knowledge and search, page 4 CSI 4106, Winter 2005 Properties of knowledge: objectivity Knowledge may be objective or subjective: we have to make a distinction between facts and beliefs. Beliefs are associated with agents. Jack is planning a gift for his mother. He believes that she dislikes classical music. Will he buy a Mozart CD for her? Is there anything subjective in the game of chess? Is there anything objective in art appreciation?

5 Knowledge and search, page 5 CSI 4106, Winter 2005 Properties of knowledge: certainty Knowledge may be certain or uncertain. Diagnostic expert systems are a good example: faults and repair advice do not always logically follow from observations or symptoms. What (if anything) can we conclude with certainty from a sick person's short breath? a car engine noise? a position in a chess game? Probability plays an essential role here -- more to come, later.

6 Knowledge and search, page 6 CSI 4106, Winter 2005 Properties of knowledge: formalizability Knowledge may or may not be easily formalized -- written down in some symbolic language (recall the physical-symbol systems). People often operate in an approximate manner and allow themselves a margin of error. Perhaps the same should be possible for intelligent systems, except that systems only have explicit knowledge that has been put into them.

7 Knowledge and search, page 7 CSI 4106, Winter 2005... formalizability (2) People rely on experience; systems must have experience formalized as well. Which of the following can be formalized (represented!) with little effort: the rules of ice hockey? the relationship between moods and colours? the decision-making of a loan officer in a bank? a surgical procedure?

8 Knowledge and search, page 8 CSI 4106, Winter 2005 The role of search Intelligent behaviour requires knowledge. There is a hypothesis is that intelligent action can be reduced to search. While intelligence is certainly more than search, the hypothesis is attractive: search is well understood, easily mechanized, manageable, and so on. Formally represented knowledge can also be easily used in search.

9 Knowledge and search, page 9 CSI 4106, Winter 2005 The role of search (2) Search means systematic traversal of a space of possible solutions of a problem. A search space is usually a graph (often as simple as a tree). A node represents a partial solution. An edge represents a step in the construction of a solution.

10 Knowledge and search, page 10 CSI 4106, Winter 2005 The role of search (3) The purpose of search may be: to find a path in the graph from a start node to a goal node (that is, from an initial to a final situation), to find a goal node. Examples in textbooks are often puzzles and games -- not surprisingly, because these problems are the easiest to present as search. The challenge is to try it with other kinds of problems.

11 Knowledge and search, page 11 CSI 4106, Winter 2005 The role of search (4) Examples of such problems: Analyze an English sentence. Debug a Pascal procedure. Program a robot.

12 Knowledge and search, page 12 CSI 4106, Winter 2005 A small case study A farmer has a wolf, a goat and a cabbage. He wants to cross the river from the south bank to the north bank. There is a boat that can only carry the farmer and at most one of his possessions. The wolf left alone with the goat will eat it. The goat left alone with the cabbage will eat it. How can the farmer cross the river and lose none of the three?

13 Knowledge and search, page 13 CSI 4106, Winter 2005... case study (2) This is a classical example of a planning problem. We must find a sequence of actions that will take the farmer across the river. At each moment, the whole situation is in one of its possible states. A state describes the position of the farmer, his three possessions and the boat with respect to the north and south bank of the river. An action is one crossing of the river, north or south. As a result of such an action, the farmer, the boat and possibly one of the three objects transfer from one bank to the other. There are constraints on actions, as no action should leave to an unsafe state.

14 Knowledge and search, page 14 CSI 4106, Winter 2005... case study (3) In the initial situation, everything is on the south bank. In the desired final situation the farmer and his three possessions are on the north bank. We will represent a situation as a four-tuple of locations: of the farmer, the wolf, the goat and the cabbage. We do not need to represent the position of the boat, because in is always located on the same bank as the farmer. For example, in the situation situation(s, n, s, n) the farmer and the goat are on the south bank, and the other two on the north bank. Is this situation safe?

15 Knowledge and search, page 15 CSI 4106, Winter 2005... case study (4) We represent the initial situation as situation(s,s,s,s) and the final situation as situation(n,n,n,n) Four actions are possible in each situation. The farmer transfers himself to the opposite bank; he also transfers nothing, or the wolf, or the goat, or the cabbage. We will represent these actions as Prolog terms: moved( nothing ) moved( wolf ) moved( goat ) moved( cabbage )

16 Knowledge and search, page 16 CSI 4106, Winter 2005... case study (5) A situation is safe if it is safe both for the goat and the cabbage. The goat is safe if the farmer is on the same bank of the river, or when the wolf is not. The cabbage is safe if the farmer is on the same bank, or when the goat is not. We can express in Prolog everything we know about this problem. First, the main predicate: successfulMoves( Mvs ) :- movesLeadingTo( Mvs, situation( n, n, n, n ) ). Mvs is a list of representations of actions.

17 Knowledge and search, page 17 CSI 4106, Winter 2005... case study (6) No actions are necessary to stay in the initial situation: movesLeadingTo( [], situation( s, s, s, s ) ). Otherwise, let Mvs1 be a list of legal actions leading to situation S1. Perform one more action and add it to Mvs1 : movesLeadingTo( Mvs, S ) :- movesLeadingTo( Mvs1, S1 ), transforms( Mv, S1, S ), append( Mvs1, [Mv], Mvs ), safe( S ).

18 Knowledge and search, page 18 CSI 4106, Winter 2005... case study (7) North is opposite south: opposite( n, s ). opposite( s, n ). The four possible actions: transforms( moved( nothing ), situation( X, Z1, Z2, Z3 ), situation( Y, Z1, Z2, Z3 ) ) :- opposite( X, Y ). transforms( moved( wolf ), situation( X, X, Z2, Z3 ), situation( Y, Y, Z2, Z3 ) ) :- opposite( X, Y ). continued

19 Knowledge and search, page 19 CSI 4106, Winter 2005... case study (8) transforms( moved( goat ), situation( X, Z1, X, Z3 ), situation( Y, Z1, Y, Z3 ) ) :- opposite( X, Y ). transforms( moved( cabbage ), situation( X, Z1, Z2, X ), situation( Y, Z1, Z2, Y ) ) :- opposite( X, Y ). The safety rules are as discussed earlier: safe( S ) :- safe_for_goat( S ), safe_for_cabbage( S ).

20 Knowledge and search, page 20 CSI 4106, Winter 2005... case study (9) The farmer and the goat together: safe_for_goat( situation( X, Z1, X, Z3 ) ). The wolf and the goat separated: safe_for_goat( situation( X, Z1, Y, Z3 ) ) :- opposite( Z1, Y ).

21 Knowledge and search, page 21 CSI 4106, Winter 2005... case study (10) The same for the goat and the cabbage: safe_for_cabbage( situation( X, Z1, Z2, X ) ). safe_for_cabbage( situation( X, Z1, Z2, Y ) ) :- opposite( Z2, Y ). And finally here is a solution: ?- successfulMoves( Mvs ). Mvs = [moved(goat), moved(nothing), moved(wolf), moved(goat), moved(cabbage), moved(nothing), moved(goat)] Yes

22 Knowledge and search, page 22 CSI 4106, Winter 2005... case study (11) This program requires cuts in the definitions of safe_for_cabbage and safe_for_goat if it is to lose its annoying nondeterminism. It will then quickly deliver the other optimal solution: Mvs = [moved(goat), moved(nothing), moved(cabbage), moved(goat), moved(wolf), moved(nothing), moved(goat)] After that, the program begins to deliver non- optimal solutions, longer and longer, with the unproductive moved(X), moved(X) inserted just about everywhere.


Download ppt "Knowledge and search, page 1 CSI 4106, Winter 2005 Knowledge and search Points Properties of knowledge  Completeness  Objectivity  Certainty  Formalizability."

Similar presentations


Ads by Google