Notes
Slide Show
Outline
1
Foundations of Artificial Intelligence
  • Revision
2
Final Exam
  • Venue: SR 1 (S16)
  • Date: Tuesday, 26 April 2004
  • Time: 1:00 – 3:00 pm
3
Format
  • One A4 sized sheet allowed to the test
  • Eight questions, emphasizing material covered after the midterm
    • Yes, all material in the course will be covered on the exam
4
Outline
  • Agents
  • Search
    • Uninformed Search
    • Informed Search
  • Adversarial Search
  • Constraint Satisfaction
  • Knowledge-Based Agents
  • Uncertainty and Learning
5
Agent types
  • Four basic types in order of increasing generality:
  • Simple reflex agents
  • Model-based reflex agents
  • Goal-based agents
  • Utility-based agents
6
Simple reflex agents
7
Model-based reflex agents
8
Goal-based agents
9
Utility-based agents
10
Creating agents
  • Where does the intelligence come from?
  • Coded by the designers
    • Knowledge representation – predicate and first order logic
  • Learned by the machine
    • Machine learning – expose naïve agent to examples to learn useful actions


11
Learning agents
12
Searching for solutions
  • In most agent architectures, deciding what action to take involves considering alternatives


  • Searching is judged on optimality, completeness and complexity


  • Do I have a way of gauging how close I am to a goal?
    • No:
    • Yes:
13
Uninformed search
  • Formulate the problem, search and then execute actions


  • Apply Tree-Search


  • For environments that are
    • Deterministic
    • Fully observable
    • Static
14
Tree search algorithm
  • Basic idea:
    • offline, simulated exploration of state space by generating successors of already-explored states
15
Summary of algorithms
  • Breadth-First – FIFO order
  • Uniform-Cost – in order of cost
  • Depth-First – LIFO order
  • Depth-Limited – DFS to a maximum depth
  • Iterative Deepening – Iterative DLS.


  • Bidirectional – also search from goal towards origin
16
Repeated states: Graph-Search
17
Informed search
  • Heuristic function h(n) =
    cost of the cheapest path from n to goal.


  • Greedy Best First Search
    • Minimizing estimated cost to goal
  • A* Search
    • Minimizing total cost
18
Properties of heuristic functions
  • Admissible: never overestimates cost
  • Consistent: estimated cost from node n+1 is    than cost from node n + step cost.


  • A* using Tree-Search is optimal if the heuristic used is
    • Graph-Search needs an consistent heuristic.  Why?

19
Local search
  • Good for solutions where the path to the solution doesn’t matter
    • Often work on
    • Don’t search systematically
    • Often require very little memory


  • Correlated to online search
    • Have only access to the local state
20
Local search algorithms
  • Hill climbing search – choose best successor
  • Beam search – take the best k successor
  • Simulated annealing – allow backward moves during beginning steps
  • Genetic algorithm – breed k successors using crossover and mutation
21
Searching in specialized scenarios
  • Properties of the problem often allow us to formulate
    • Better heuristics
    • Better search strategy and pruning

  • Adversarial search
    • Working against an opponent
  • Constraint satisfaction problem
    • Assigning values to variables
    • Path to solution doesn’t matter
    • View this as an incremental search
22
Adversarial Search
  • Turn-taking, two-player, zero-sum games
  • Minimax algorithm:
    • One ply:
    • Max nodes: agent’s move, maximize utility
    • Min nodes: opponent’s move, minimize utility
    • Alpha-Beta pruning: rid unnecessary computation.
23
Constraint Satisfaction
  • Discrete or continuous solutions
    • Discretize and limit possible values


  • Modeled as a constraint graph


  • As the path to the solution doesn’t matter, local search can be very useful.
24
Techniques in CSPs
  • Basic: backtracking search
    • DFS for CSP
    • A leaf node (at depth v) is a solution


  • Speed ups
    • Choosing variables
      • Minimum remaining values
      • Most constrained variable / degree
    • Choosing values
      • Least constraining value
25
Pruning CSP search space
  • Before expanding node, can prune the search space
  • Forward checking
    • Pruning values from remaining variables
  • Arc consistency
    • Propagating stronger levels of consistency
    • E.g., AC-3 (applicable before searching and
      during search)

  • Balancing arc consistency with actual searching.
26
Propositional and First Order Logic
  • Propositional Logic
    • Facts are true or false


  • First Order Logic
    • Relationships and properties of objects
    • More expressive and succinct
      • Quantifiers, functions
      • Equality operator
    • Can convert back to prop logic to do
27
Inference in logic
  • Given a KB, what can be inferred?
    • Query- or goal-driven
      • Backward chaining, model checking (e.g. DPLL), resolution


    • Deducing new facts
      • Forward chaining
        • Efficiency: track # of literals of premise using a count or Rete networks
28
Inference in logic
  • Chaining
    • Requires
    • Uses Modus Ponens for sound reasoning
    • Forward or Backward types


  • Resolution
    • Requires Conjunctive Normal Form
    • Uses Resolution for sound reasoning
    • Proof by Contradiction
29
Inference in FOL
  • Don’t have to propositionalize
    • Could lead to infinite sentences functions


  • Use unification instead
    • Standardizing apart
    • Dropping quantifiers
      • Skolem constants and functions

  • Inference is semidecidable
    • Can say yes to entailed sentences, but non-entailed sentences will never terminate
30
Connection to knowledge-based agents
  • CSP can be formulated as logic problems and vice versa
  • CSP search as model checking





  • Local search: WalkSAT with min-conflict heuristic
31
Inference and CSPs
  • Solving a CSP via inference
    • Handles special constraints (e.g., AllDiff)
    • Can learn new constraints not expressed by KB designer
  • Solving inference via CSP
    • Whether a query is true under all possible constraints (satisfiable)


  • Melding the two: Constraint Logic Programming (CLP)


32
Uncertainty
  • Leads us to use probabilistic agents
    • Only one of many possible methods!


  • Modeled in terms of random variables
    • Again, we examined only the discrete case


  • Answer questions based on full joint distribution


33
Inference by enumeration
  • Interested in the posterior joint distribution of query variables given specific values for evidence variables
    • Summing over hidden variables
    • Cons: Exponential complexity


  • Look for absolute and conditional independence to reduce complexity
34
Prolog
  • Engine for FOL


  • Syntax
    • Variables
    • Relations
  • Execution pattern in prolog
    • Which clauses?
    • Which goals?
35
Natural Language Processing
  • Processing vs. Generation
  • Deals mostly with one sentence at a time
  • Main problem: ambiguity! (at many levels)


  • Parsing: assigning structure to a sentence via re-write rules
    • Lexicon: nonterminal to terminal rules
    • Grammar: nonterminals to nonterminals


  • Grammars can over/undergenerate


36
Parsing
  • Bottom-up or top-down
    • Which is more efficient for what cases?

  • Augmented Grammars
    • FOL version of parsing – parsing with parameters
    • Use unification to get agreement.
37
Bayesian networks
  • One way to model dependencies
  • Variable’s probability only depends on its parents
  • Use product rule and conditional dependence to calculate joint probabilities
  • Easiest to structure causally
    • From root causes forward
    • Leads to easier modeling and lower complexity

38
Learning
  • Inductive learning - based on past examples
  • Learn a function h() that approximates real function f(x) on examples x


  • Balance complexity of hypothesis with fidelity to the examples
    • Minimize α E(h,D)  + (1-α) C(h)



39
Learning Algorithms
  • Many out there but the basics are:
  • K nearest neighbors
    • Instance-based
    • Ignores global information
  • Naïve Bayes
    • Strong independence assumption
    • Scales  well due to assumptions
    • Needs normalization when dealing with unseen feature values
  • Decision Trees
    • Easy to understand its hypothesis
    • Decides feature based on information gain
40
Training and testing
  • Judge induced h()’s quality by using a test set
  • Training and test set must be separate; otherwise peeking occurs
  • Modeling noise or specifics of the training data can lead to overfitting
    • Use pruning to remove parts of the hypothesis that aren’t justifiable
41
Where to go
 from here?
  • Just the tip of the iceberg


  • Many advanced topics
    • Introduced only a few
    • Textbook can help in exploration of AI
42
That’s it
  • Thanks for your attention over the semester
  • See you at the exam!