Exams

We will have an in class midterm exam and a final during the regularly scheduled final time.

Midterm exam

Here are some notes on the midterm exam.

(1) There will be questions that ask you to write or understand Python code.

(2) The exam will be based on the concepts, techniques and algorithms discussed in our text book and in class.

(3) It's important to have read all of chapters 1-6 and section 17.6 in our text. This will fill in some of the gaps in our class coverage and discussions and also provide more background knowledge.

(4) You can look at the old mid-term exams found linked from this page. Note that there will be no questions on Lisp, Prolog or any topics related to them (e.g., unification).

(5) listed below are things you should be prepared to do.

Chapter 2: Intelligent agents

  • Understand the basic frameworks and characteristics of environments and agents introduced in chapter 2.

Chapters 3 and 4: Search

  • Take a problem description and come up with a way to represent it as a search problem by developing a way to represent the states, actions, and recognize a goal state.
  • Be able to analyze a state space to estimate the number of states, the 'branching factor' of its actions, etc.
  • Know the properties that characterize a state space (finite, infinite, etc.) and algorithms that are used to find solutions (completeness, soundness, optimality, etc).
  • Understand both uninformed and informed search algorithms including breadth first, depth first, best first, algorithm A, algorithm A*, iterative deepening, depth limited, bi-directional search, beam search, uniform cost search, etc.
  • Understand local search algorithms including hill-climbing and its variants, simulate annealing and genetic algorithms.
  • Know how to simulate these algorithms.
  • Be able to develop heuristic functions and tell which ones are admissible.
  • Understand how to tell if one heuristic is more informed than another.

Chapter 5: Constraint Satisfaction Problems

  • Understand the basics of CSP, including variables, domains, constraints.
  • Be able to take a problem description and set it up as a CSP problem.
  • Understand the forward checking and ARC-3 algorithms and be able to simulate them.
  • Understand the min-constraints algorithm and be able to simulate it.

Chapter 6: Adversarial search (and 17.6) Game theory

  • Understand the basic characteristics of games
  • Understand and be able to simulate Minimax with and without alpha-beta.
  • Be able to take a game and develop a representation for it and its moves and to describe a static evaluation function.
  • Understand how to handle games with uncertainty.
  • Be familiar with the basic concepts of game theory -- strategies, payoffs, Nash equilibrium, prisoner's dilemma, etc. how and when they come into play.

Chapter 7: Logical Agents

  • Propositional logic
  • Using propositional logic as a knowledge representation system
  • Reasoning with propositional logic
  • Resolution
  • Horn clauses

Some old midterms

Here are sone old midterm exams:

Final exam

The final exam will only cover material since the midterm exam, thought there is some overlap with the material in chapters 7 and 8. We'll make an effort to have problems that you can easily finish in the allotted time if you know the material.

  • Review the lecture notes since the midterm, but reviewing the material starting with propositional logic. The notes are in 10, 11, 12, 13, 14, and 15
  • Read the following sections from our text:
    • 7 Propositional Logic
    • 8 First Order Logic
    • 9 Inference in propositional and first order logic
    • 10 Classical planning
    • 12 Knowledge representation
      only 12.1, 12.2, 12.6.1
    • 13 Probability
      only 13.1-13.5
    • 14 Bayesian networks
      only 14.1-14.4
    • 18 Learning
      only 18.1-18.3 and 18.9
  • Here are exams from 1998, 2001, 2006 and 2009 that you can use as examples of what to expect.
  • For your amusement, here are some really old final exams from 1992, 1993 and 1994.