Click here to load reader

Lecture4 (1)

  • View
    307

  • Download
    2

Embed Size (px)

DESCRIPTION

 

Text of Lecture4 (1)

  • 1. Overview of Artificial Intelligence Thomas R. Ioerger Associate Professor Department of Computer Science Texas A&M University

2. What is AI? Real applications, not science fiction Control systems, diagnosis systems, games, interactive animations, combat simulations, manufacturing scheduling, transportation logistics, financial analysis, computer-aided tutoring, search- and-rescue robots 3. Different Perspectives Philosophical perspective What is the nature of intelligence? Can a machine/program ever be truly intelligent? Strong AI hypothesis: Is acting intelligently sufficient? laws of thought; rational (ideal) decision-making Socrates is a man; men are mortal; therefore, Socrates is mortal Psychological perspective What is the nature of human intelligence? Cognitive science concept representations, internal world model, information processing metaphor role of ST/LT memory? visualization? emotions? analogy? creativity? build programs to simulate inference, learning... 4. Mathematical perspective Is intelligence a computable function? input: world state, output: actions Can intelligence be systematized? (Leibnitz) just a matter of having enough rules? higher-order logics for belief, self-reference Engineering (pragmatic) perspective AI helps build complex systems that solve difficult real- world problems decision-making (agents) use knowledge-based systems to encode expertise (chess, medicine, aircraft engines...) sense decide act weak methods: Search Planning strong methods: Inference 5. Search Algorithms Define state representation Define operators (fn: stateneighbor states) Define goal (criteria) Given initial state (S0), generate state space S0 6. Many problems can be modeled as search tic-tac-toe states=boards, operator=moves symbolic integration states=equations, opers=algebraic manipulations class schedule states=partial schedule, opers=add/remove class rock band tour (traveling salesman problem) states=order of cities to visit, opers=swap order robot-motion planning states=robot configuration, opers=joint bending 7. 1 2 12 3 6 8 13 14 4 5 7 9 10 11 15 1 2 43 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Depth-first search (DFS) Breadth-first search (BFS) Notes: recursive algorithms using stacks or queues BFS often out-performs, due to memory limits for large spaces choice depends on complexity analysis: consider exponential tree size O(bd ) 8. Heuristics give guidance to search in terms of which nodes look closest to the goal node evaluation function h(n)=w1*(piece_differential)+w2*(center_control)+ w3*(#pieces_can_be_taken)+w4*(#kings) greedy algorithms search these nodes first bias direction of search to explore best parts of state space (most likely to contain goal) A* algorithm optimal (under certain conditions) finds shortest path to a goal insensitive to errors in heuristic function 9. Specialized Search Algorithms Game-playing two-player zero-sum games (alternate moves) minimax algorithm: form of look-ahead If I make a move, how will opponent likely respond? Which move leads to highest assured payoff? Constraint-satisfaction problems (CSPs) state=partial variable assignment goal find assignment that satisfies constraints algorithms use back-tracking, constraint propagation, and heuristics pre-process constraint-graph to make more efficient examples: map-coloring, propositional satisfiability, server configuration 10. Variables WA, NT, Q, NSW, V, SA, T Domains Di = {red,green,blue} Constraints: adjacent regions must have different colors, e.g., WA NT CSP algorithms operate on the constraint graph 11. Planning How to transform world state to achieve goal? operators represent actions encode pre-conditions and effects in logic Initial state: in(kitchen) have(eggs) have(flour) have(sugar) have(pan) ~have(cake) Goal: have(cake) mix dry ingredients mix wet ingredients transfer ingredients from bowl to pan bake at 350 apply frosting pre-conds: x ingredient(x,cake) &dry(x)have(x) effect: mixed(dry_ingr) pre-conds: mixed(dry_ingr)& mixed(wet_ingr) pre-cond: baked goto kitchen goto store start car buy milk sautee another example to think about: planning rescue mission at disaster site 12. Planning How to transform world state to achieve goal? operators represent actions encode pre-conditions and effects in logic Initial state: in(kitchen) have(eggs) have(flour) have(sugar) have(pan) ~have(cake) Goal: have(cake) mix dry ingredients mix wet ingredients transfer ingredients from bowl to pan bake at 350 apply frosting pre-conds: x ingredient(x,cake) &dry(x)have(x) effect: mixed(dry_ingr) pre-conds: mixed(dry_ingr)& mixed(wet_ingr) pre-cond: baked goto kitchen goto store start car buy milk sautee another example to think about: planning rescue mission at disaster site 13. Planning Algorithms have(cake)