Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 CS 385 Fall 2006 Chapter 8 Strong Method (knowledge-intensive) Problem Solving 8.1, 8.2, 8.4.1, 8.4.2.

Similar presentations


Presentation on theme: "1 CS 385 Fall 2006 Chapter 8 Strong Method (knowledge-intensive) Problem Solving 8.1, 8.2, 8.4.1, 8.4.2."— Presentation transcript:

1 1 CS 385 Fall 2006 Chapter 8 Strong Method (knowledge-intensive) Problem Solving 8.1, 8.2, 8.4.1, 8.4.2

2 2 Intelligence The first principle of knowledge engineering is that the problem-solving power exhibited by an intelligent agent’s performance is primarily the consequence of its knowledge base and only secondarily the conse- quence of the inference method employed. (Feigenbaum) Is this true for people? It is a capital mistake to theorize in the absence of the facts. (Arthur Conan Doyle) What is intelligence/expertise? I don’t know how to define it, but I know when I see it. (Stewart Potter) Humans can solve problems because they know a lot, often in some area of expertise.

3 3 Expert Systems When I call someone an expert –what are the types of tasks s/he does? –how? Attributes of an expert? –specialist –limited domain Expert: –any person with an ordinary knowledge of a subject who carries a briefcase and is more than 50 miles away from home Expert systems –developed to mimic human problem solving –restricted to specific problem domains

4 4 Expert Systems Typical areas: –interpretation –prediction –diagnosis –design –planning –monitoring –debugging –instruction –control Next class: give a specific example of each

5 5 Example: swine (simple wine) Goal: pick a wine Knowledge: –if the meal is meat or turkey, you want a red wine –if the meal is fish or poultry but not turkey you want a white wine –the red wine is beaujolais –the white wine is chablis What's to be determined? –the main-component of the meal (ask the user) –the color of the wine (based on main-component) –the wine (based on the color) See swine knowledge as a collection of if/then rules –goal: what is to be determined

6 6 SWINE goal = wine. rule-1: if main-component = meat then best-color = red. rule-2: if main-component = fish then best-color = white. rule-3: if main-component = poultry and has-turkey = no then best-color = white. rule-4: if main-component = poultry and has-turkey = yes then best-color = red. rule-5: if best-color = red then wine = beaujolais. rule-6: if best-color = white then wine = chablis. So, where to start? question(has-turkey) = 'Does the meal have turkey in it?'. legalvals(has-turkey) = [yes, no]. multivalued(main-component). question(main- component) = 'Is the main component of the meal meat, fish or poultry?'. legalvals(main-component) = [meat, fish, poultry].

7 7 Example: Adaptive Radar Control Air Force program to apply current AI technology to improve radar detection capabilities –2-year, 6 man-year effort –C-Band (phased array) radar at Griffis Air Force Base –expert system built in PROLOG My role –proposal writer –program manager –AI person –interface between academic AF program manager and technical radar engineers –cat herder

8 8 Adaptive Radar Control What is it? –radar sends a signal, some of it is echoed back –signal processing of the radar returns to try to determine where and what objects are –interference (clutter): birds, rain, echos from the ground –adjust radar parameters (dwell time, power level, waveform modification) so as to improve detection capabilities Objective: –maximize probability of target detection Why a candidate for an expert system? –expertise exists –an important problem –try out a new, unexplored, promising technology

9 9 The Radar Engineer's View

10 10 My View Signal Processing (ST-100) Radar Control (HP 2117) Adaptive Control (VAX) C Band Radar

11 11 Rules Identifying sources of interference: if (x, y, z, found in radar returns) interference is a jammer if (x, y, z, found in radar returns) interference is rain clutter Identifying electronic countermeasures if (narrow band jammer detected) implement frequency hopping

12 12 Project Summary Problems –focusing the effort –extracting rules from the radar experts –PROLOG –making the equipment work –managing a group of people with different skills –keeping within budget Was this AI? –No only 20 rules in 13,000 lines of code mostly configuring equipment and signal processing –Yes attempt to automate human intelligence

13 13 Building an Expert System Three major components: –knowledge base (the facts and rules for the specific application) –inference engine (uses KB to reach a conclusion) –user interface (allows user to develop KB, run consultation) Figure 8.1 is more complicated, but same basic functions Major characteristic: separation of knowledge and control –knowledge can be represented more naturally (rules) –builders can focus on the knowledge, not the inferencing

14 14 Figure 8.1: E xpert system architecture Expert system shell

15 15 8.1.3 Conceptual Models and Their Role in Knowledge Acquisition Typical in expert system heyday –guys in expensive suits throwing random rules together –expert systems sold as a way to avoid structuring knowledge –people thought they had only to write down a bunch of rules and they captured intelligence Equivalent ideas –anyone can program –anyone can build a database –anyone can set up a web site Not true –as the knowledge engineer starts to understand the problem, structures emerge –conceptual model: the knowledge engineer’s understanding of the problem solving process, not the final result

16 16 Fig 8.4The role of mental or conceptual models in problem solving. 5 Does this match any of the ways you work?

17 17 Conceptual Models E.G. car diagnostics: –what are the problems –what factors contribute to each –what are the observable symptoms Same for radar: –what are the types of interference –what are their characteristics –how can they be mitigated –what data do I have to develop to make informed decisions –the last was very difficult

18 18 8.2 Rule-Based Expert Systems The knowledge base is a set of rules These can be viewed as productions Productions systems are a precursor to expert systems (See SWINE as a production system, data- and goal- driven)

19 19 A small expert system for analysis of automotive problems.

20 20 Fig 8.8The and/or graph searched in the car diagnosis example, with the conclusion of Rule 4 matching the first premise of Rule 1.

21 21 Fig 8.5The production system for car diagnostics, goal driven.

22 22 Fig 8.6After Rule 1 has fired ? Note addition of '?' Which rule fires next? ?

23 23 Fig 8.7After Rule 4 has fired Note the stack-based approach to goal reduction This is depth first since premises of rule 1 are explored before going to rule 2 ? ? ?

24 24 Our notation Iter.Working MemoryConflict Set Rule Fired 1the problem is X1, 2, 31 2getting gas? engine turns over? the problem is X 4, 2, 34 3gas in fuel tank? gas in carburator? →getting gas engine turns over? the problem is X 2, 3 Ask gas in fuel tank? gas in carburator? engine turns over? If the first two are true, add getting gas to working memory. If one of them is false, fire rule 2 4engine turns over? lights come on? the problem is X

25 25 Planning Find steps to accomplish a specific task What do you plan and how? Knowledge intensive –organize pieces of knowledge and partial plans Major application: robotics –originally: make a plan, have a robot implement –today: robot may give feedback along the way Method –search through the space of possible actions until a sequence that accomplishes the task is found

26 26 Famous example: The blocks world Start stateGoal

27 27 Frame problem Specifies –what is true in one state –what is changed by a specific action E.g. pickup e in the preceding slide changes state to

28 28 Predicates for clear (X), ontable (X), and gripping ()

29 29 Fig 8.19 Portion of the state space

30 30 STRIPS (STanford Research Institute Planning System) A method to efficiently represent planning operations Triples describe an operation P: precondition for the operation A: add to the description of the state space D: delete from the description of the state space E.g. to pick up an object? P: the arm is not gripping it it must not have anything on top it must be on the table A: the arm is gripping D: it is no longer on the table and "ungripped"

31 31 Pickup, putdown, stack, and unstack: pickup(X) P: gripping( )  clear(X)  ontable(X) A: gripping(X) D: ontable(X)  gripping() putdown(X) P: gripping(X) A: ontable(X)  gripping( )  clear(X) D: gripping(X) stack(X) P: clear(Y)  gripping(X) A: on(X,Y)  gripping( )  clear(X) D: clear(Y)  gripping(X) unstack(X) P: clear(X)  gripping( )  on(X,Y) A: gripping(X)  clear(Y) D: gripping()  on(X,Y)

32 32 Start Goal Problem: nonlinearity of subgoals ontable(a) //REMOVE ontable(c) ontable(d) on(b, a) //SAME? on(e, d) gripping() clear(b) clear(c) //REMOVE clear(e) ontable(c) ontable(d) on(b, a) on(e, d) on(a, c) //NEW gripping() clear(b) clear(c) In order to achieve on(a, c) we need to undo on(b, a)

33 33 Triangle Tables For organizing specific sequences of actions within a plan Relates preconditions of an action to its postconditions Used to determine what operations can be performed Format –atomic actions along the diagonal –preconditions in the row –postconditions in the column Purpose: interleave preconditions and postconditions of small actions that make up a larger goal Example: go from on(X,Y) to on(X,Y)  on(Y,Z) (a macro action consisting of a sequence of atomic actions)

34 34 Fig 8.21A triangle table, from on(X,Y) to on(X,Y)  on(y,Z)

35 35 on(X,Y) to on(X,Y)  on(Y,Z): Try unstack(X,Y) Try putdown(X) What happens when we back up? gripping() clear(X) on(X,Y) ontable(Y) clear(z) gripping(X) clear(Y).... unstack(X,Y) gripping() clear(X) on(X,Y) clear(z) gripping(X)..... unstack(X,Y) ontable(Y).. clear(Y). gripping(). putdown(X)

36 36 Observations Note the use of X, Y, Z –the table for on(X,Y) → on(X,Y)  on(Y,Z) can be reused When something goes wrong –back up and check what is still true –indicated by nth kernel (3 rd kernel is within the blue box)


Download ppt "1 CS 385 Fall 2006 Chapter 8 Strong Method (knowledge-intensive) Problem Solving 8.1, 8.2, 8.4.1, 8.4.2."

Similar presentations


Ads by Google