Presentation is loading. Please wait.

Presentation is loading. Please wait.

Course Overview  What is AI?  What are the Major Challenges?  What are the Main Techniques?  Where are we failing, and why?  Step back and look at.

Similar presentations


Presentation on theme: "Course Overview  What is AI?  What are the Major Challenges?  What are the Main Techniques?  Where are we failing, and why?  Step back and look at."— Presentation transcript:

1 Course Overview  What is AI?  What are the Major Challenges?  What are the Main Techniques?  Where are we failing, and why?  Step back and look at the Science  Step back and look at the History of AI  What are the Major Schools of Thought?  What of the Future? Done

2 Course Overview  What is AI?  What are the Major Challenges?  What are the Main Techniques? (How do we do it?)  Where are we failing, and why?  Step back and look at the Science  Step back and look at the History of AI  What are the Major Schools of Thought?  What of the Future?

3 Course Overview  What is AI?  What are the Major Challenges?  What are the Main Techniques? (How do we do it?)  Where are we failing, and why?  Step back and look at the Science  Step back and look at the History of AI  What are the Major Schools of Thought?  What of the Future?  Search  Logics (knowledge representation and reasoning)  Planning  Bayesian belief networks  Neural networks  Evolutionary computation  Reinforcement learning  Language parsing and speech techniques  Statistical methods (language, learning)

4 Course Overview  What is AI?  What are the Major Challenges?  What are the Main Techniques? (How do we do it?)  Where are we failing, and why?  Step back and look at the Science  Step back and look at the History of AI  What are the Major Schools of Thought?  What of the Future?  Search  Logics (knowledge representation and reasoning)  Planning  Bayesian belief networks  Neural networks  Evolutionary computation  Reinforcement learning  Language parsing and speech techniques  Statistical methods (language, learning)

5 Planning  We have done a sort of planning already  Consider the “search” applied to general problem solving  The sequence of moves with the “Jugs” was a plan  Fill 3 litre  Pour 3 litre into 4 litre  Fill 3 litre …  The sequence of moves in a game is a plan  Why not apply same techniques for general planning?  Try going to the shop to buy milk and a light bulb  We need:  Initial situation  Goal situation  Actions that can be done  + cost of action  Constraints

6 Planning Initial situation: At home, no milk, broken bulb Read a book

7 Planning Initial situation: At home, no milk, broken bulb Read a book Take a nap

8 Planning Initial situation: At home, no milk, broken bulb Read a book Take a nap Eat bread

9 Planning Initial situation: At home, no milk, broken bulb Read a book Take a nap Eat bread Drink juice

10 Planning Initial situation: At home, no milk, broken bulb Read a book Take a nap Eat bread Drink juice Make a phone call

11 Planning Initial situation: At home, no milk, broken bulb Read a book Take a nap Eat bread Drink juice Make a phone call Browse the Web Go out the door

12 Planning Initial situation: At home, no milk, broken bulb Read a book Take a nap Eat bread Drink juice Make a phone call Browse the Web Go out the door Read a book

13 Planning Initial situation: At home, no milk, broken bulb Read a book Take a nap Eat bread Drink juice Make a phone call Browse the Web Go out the door Read a book Take another nap

14 Planning Initial situation: At home, no milk, broken bulb Read a book Take a nap Eat bread Drink juice Make a phone call Browse the Web Go out the door Read a book Take another nap Eat bread

15 Planning Initial situation: At home, no milk, broken bulb Read a book Take a nap Eat bread Drink juice Make a phone call Browse the Web Go out the door Go to Uni Go to friend Go to beach Go to food shop Go to clothes shop Read a book Take another nap Eat bread

16 Planning  Why not apply same techniques for general planning?  Try going to the shop to buy milk and light bulb  We need:  Initial situation  Goal situation  Actions that can be done  + cost of action  Constraints  Problem is not tightly constrained (like jugs, or game)  too many silly (irrelevant) actions  We know they’re silly because of commonsense  Solution (3 parts):

17 Planning  Solution: 1.Represent states, actions with logic sentences  Start state is not just a node, but a description  (NOT have(milk)) AND (NOT have (light_bulb)) AND my_location(home)  Same for goal state  Action is not node to node, where node is complete state  buy(X)  achieves  have(X)  Action does not affect other aspects 2.Allow planner to add actions in any order  Not necessary to work from the top, searching  E.g. add subgoal “buy(milk)” before leaving house  Do important or obvious parts first  Note: state representation important here 3.Divide and conquer  Most things in the world are independent  Can solve subgoals separately (compare with jugs/games)

18 STRIPS Planning (STRIPS = Stanford Research Institute Problem Solver)  Initial state:  (NOT have(milk)) AND (NOT have (light_bulb)) AND my_location(home)  Goal state:  have(milk) AND have (light_bulb) AND my_location(home)  Actions: STRIPS operators Op  Example: go(X)  Precondition  Must be true before action can be performed  Example: my_location(Y) AND path (Y,X)  Effect  How action changes state, ADD facts and DELETE facts  Example: ADD: my_location(X) –DELETE: my_location(Y)

19 STRIPS Planning (STRIPS = Stanford Research Institute Problem Solver) go(food_shop) my_location(home) AND path (home,food_shop) ADD: my_location(food_shop) DELETE: my_location(home)

20 STRIPS Planning (STRIPS = Stanford Research Institute Problem Solver) go(X) my_location(Y) AND path (Y,X) ADD: my_location(X) DELETE: my_location(Y) go(food_shop) my_location(home) AND path (home,food_shop) ADD: my_location(food_shop) DELETE: my_location(home)

21 How to Search for a Plan?  We could search forward from our initial state  We saw that this would search loads of silly actions  We could search backwards from our goal state  Works better, but still searching silly actions  No heuristic to find actions that get closer to initial state  Need a heuristic…  Means-ends analysis  Find actions that reduce the difference between initial and goal states  Newell and Simon’s General Problem Solver  Generates heuristics from a table  “Table of differences”  identifies operators (actions) to reduce types of differences  Needs a lot of human input

22 Newell & Simon " Human Problem Solving" 1972. “I want to take my son to nursery school. What’s the difference between what I have and what I want? One of distance. What changes distance? My automobile. My automobile doesn’t work. What is needed to make it work? A new battery. What has new batteries? An auto repair shop. I want the repair shop to put in a new battery; but the shop doesn’t know I need one. What is the difficulty? One of communication. What allows communication? A telephone...”

23 How to Search for a Plan?  We could search forward from our initial state  We saw that this would search loads of silly actions  We could search backwards from our goal state  Works better, but still searching silly actions  No heuristic to find actions that get closer to initial state  Need a heuristic…  Means-ends analysis  Find actions that reduce the difference between initial and goal states  Newell and Simon’s General Problem Solver  Generates heuristics from a table  “Table of differences”  identifies operators (actions) to reduce types of differences  Needs a lot of human input

24 How to Search for a Plan?  Modern Approach: Search space of plans, not states  Nodes can be partial bits of plans  Search what action to add  Backtrack if stuck  Least commitment  Leave choices to be worked out later if possible  Variable values  e.g. shop: buy(milk,X)  Partial Ordering  e.g. socks example  What is a plan?  Actions you will take  Fix variable values in a step  Ordering among actions  Causal links

25 Start Left Sock Right Sock Right Shoe Left Shoe Finish

26  Modern Approach: Search space of plans, not states  Nodes can be partial bits of plans  Search what action to add  Backtrack if stuck  Least commitment  Leave choices to be worked out later if possible  Variable values  e.g. shop: buy(milk,X)  Partial Ordering  e.g. socks example  What is a plan?  Actions you will take  Fix variable values in a step  Ordering among actions  Causal links How to Search for a Plan? go(X) X= food_shop go(Y) Y= hardware_shop go(X) before go(Y) go(X) causes buy(milk,X)

27 How to Search for a Plan? go(X) X= food_shop go(Y)Y= hardware_shop go(X) before go(Y) go(X) causes buy(milk,X) go(X) X= food_shop go(Y)Y= hardware_shop go(X) causes buy(milk,X)

28 How to Search for a Plan? GOAL: have(milk) have (light_bulb) my_location(home) INITIAL STATE: (NOT have(milk)) (NOT have (light_bulb)) my_location(home)

29 How to Search for a Plan? GOAL: have(milk) have (light_bulb) my_location(home) buy(milk) my_location(food_shop) INITIAL STATE: (NOT have(milk)) (NOT have (light_bulb)) my_location(home)

30 How to Search for a Plan? GOAL: have(milk) have (light_bulb) my_location(home) buy(milk) my_location(food_shop) INITIAL STATE: (NOT have(milk)) (NOT have (light_bulb)) my_location(home) Black arrow indicates Causal Link (this implies 1.Causal link protected and 2.Ordering in this way too)

31 How to Search for a Plan? GOAL: have(milk) have (light_bulb) my_location(home) buy(milk) my_location(food_shop) buy(bulb) my_location(hardware_shop) INITIAL STATE: (NOT have(milk)) (NOT have (light_bulb)) my_location(home)

32 How to Search for a Plan? GOAL: have(milk) have (light_bulb) my_location(home) buy(milk) my_location(food_shop) buy(bulb) my_location(hardware_shop) go(home,food_shop) my_location(home) INITIAL STATE: (NOT have(milk)) (NOT have (light_bulb)) my_location(home)

33 How to Search for a Plan? GOAL: have(milk) have (light_bulb) my_location(home) buy(milk) my_location(food_shop) buy(bulb) my_location(hardware_shop) go(home,hardware_shop) go(home,food_shop) my_location(home) INITIAL STATE: (NOT have(milk)) (NOT have (light_bulb)) my_location(home)

34 How to Search for a Plan? GOAL: have(milk) have (light_bulb) my_location(home) buy(milk) my_location(food_shop) buy(bulb) my_location(hardware_shop) go(home,hardware_shop) go(home,food_shop) my_location(home) INITIAL STATE: (NOT have(milk)) (NOT have (light_bulb)) my_location(home)

35 How to Search for a Plan? GOAL: have(milk) have (light_bulb) my_location(home) buy(milk) my_location(food_shop) buy(bulb) my_location(hardware_shop) go(home,hardware_shop) go(home,food_shop) my_location(home) INITIAL STATE: (NOT have(milk)) (NOT have (light_bulb)) my_location(home)

36 How to Search for a Plan? GOAL: have(milk) have (light_bulb) my_location(home) buy(milk) my_location(food_shop) buy(bulb) my_location(hardware_shop) go(home,hardware_shop) go(home,food_shop) my_location(home) INITIAL STATE: (NOT have(milk)) (NOT have (light_bulb)) my_location(home) clash

37 How to Search for a Plan? GOAL: have(milk) have (light_bulb) my_location(home) buy(milk) my_location(food_shop) buy(bulb) my_location(hardware_shop) go(home,food_shop) my_location(home) INITIAL STATE: (NOT have(milk)) (NOT have (light_bulb)) my_location(home) BACKTRACK Try a different way to achieve my_location(hardware_shop)

38 How to Search for a Plan? GOAL: have(milk) have (light_bulb) my_location(home) buy(milk) my_location(food_shop) buy(bulb) my_location(hardware_shop) go(home,food_shop) my_location(home) INITIAL STATE: (NOT have(milk)) (NOT have (light_bulb)) my_location(home) go(food_shop,hardware_shop) my_location(food_shop) Try a different way to achieve my_location(hardware_shop)

39 How to Search for a Plan? GOAL: have(milk) have (light_bulb) my_location(home) buy(milk) my_location(food_shop) buy(bulb) my_location(hardware_shop) go(home,food_shop) my_location(home) INITIAL STATE: (NOT have(milk)) (NOT have (light_bulb)) my_location(home) go(food_shop,hardware_shop) my_location(food_shop) Clash!

40 How to Search for a Plan? GOAL: have(milk) have (light_bulb) my_location(home) buy(milk) my_location(food_shop) buy(bulb) my_location(hardware_shop) go(home,food_shop) my_location(home) INITIAL STATE: (NOT have(milk)) (NOT have (light_bulb)) my_location(home) go(food_shop,hardware_shop) my_location(food_shop) Need a constraint on ordering Clash!

41 How to Search for a Plan? GOAL: have(milk) have (light_bulb) my_location(home) buy(milk) my_location(food_shop) buy(bulb) my_location(hardware_shop) go(home,food_shop) my_location(home) INITIAL STATE: (NOT have(milk)) (NOT have (light_bulb)) my_location(home) go(food_shop,hardware_shop) my_location(food_shop) Red arrow indicates Ordering

42 How to Search for a Plan? GOAL: have(milk) have (light_bulb) my_location(home) buy(milk) my_location(food_shop) buy(bulb) my_location(hardware_shop) go(home,food_shop) my_location(home) INITIAL STATE: (NOT have(milk)) (NOT have (light_bulb)) my_location(home) go(food_shop,hardware_shop) my_location(food_shop) go(hardware_shop,home)

43 How to Search for a Plan? GOAL: have(milk) have (light_bulb) my_location(home) buy(milk) my_location(food_shop) buy(bulb) my_location(hardware_shop) go(home,food_shop) my_location(home) INITIAL STATE: (NOT have(milk)) (NOT have (light_bulb)) my_location(home) go(food_shop,hardware_shop) my_location(food_shop) go(hardware_shop,home)

44 Industrial Planners  Applications  Assembly, Integration, Verification of spacecraft (European Space Agency)  Space missions  Job Shop scheduling (Hitachi)  Other issues  Hierarchical  Top level: prepare booster, capsule, cargo, launch  Low level: insert nuts, fasten bolts  Conditional effects  Depends on state  Time  e.g. window when machine is available  Resources  Budget  Number of Workers  Number of machines / robots  Changing/uncertain world  Conditional planning  Action/execution monitoring

45 Planning – Recap…  Problem solving was already a type of planning  Why not use it for general planning?  Other way: What about general planning for problem solving?  Solution: 1.Represent states, actions with logic sentences 2.Allow planner to add actions in any order 3.Divide and conquer  Search…  Forwards, Backwards, Heuristic?  Search space of plans, not states  What is a plan?  Actions you will take  Fix variable values in a step  Ordering among actions  Causal links  Least commitment  Variable values  Partial Ordering  Real world planning:  Hierarchical, Conditional effects, Time, Resources, Changing/uncertain world


Download ppt "Course Overview  What is AI?  What are the Major Challenges?  What are the Main Techniques?  Where are we failing, and why?  Step back and look at."

Similar presentations


Ads by Google