CS440/ECE448: Introduction to Artificial Intelligence Midterm exam - - PDF document

cs440 ece448 introduction to artificial intelligence
SMART_READER_LITE
LIVE PREVIEW

CS440/ECE448: Introduction to Artificial Intelligence Midterm exam - - PDF document

CS440/ECE448: Introduction to Artificial Intelligence Midterm exam Solutions Instructor: Prof. Julia Hockenmaier March 3, 2011 Your score Question Points Score Search 11 Propositional logic 10 First-order predicate logic 10


slide-1
SLIDE 1

CS440/ECE448: Introduction to Artificial Intelligence Midterm exam — Solutions

Instructor: Prof. Julia Hockenmaier March 3, 2011 Your score Question Points Score Search 11 Propositional logic 10 First-order predicate logic 10 Constraint satisfaction 10 Agents, and planning 9 Total: 50

1

slide-2
SLIDE 2

Solutions

Part 1: Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (11 points total)

(a) [1 point] Assume you have been give the state space graph of a search problem, and you need to define the corresponding search tree. How many nodes in the search tree correspond to

  • ne node in the state space graph?

Solution: As many as there are paths from the initial state to the node. An infinite number if there are loops. (b) [2 points] Fill in the following table to list the steps in which DFS traverses the search tree given in figure 1 (bottom of page).

Step Node Queue 0. A {B,C} 1. B {D,E,C} 2. D {G,H,E,C} 3. G {H,E,C} 4. H {E,C} 5. E {C}

Solution: (c) [2 points] Why is graph-search DFS complete (for problems with a finite set of states), but tree- search DFS is not? Solution: Graph-search DFS does not get stuck in infinite loops because it keeps track of visited nodes. So it will always terminate with failure or find a solution whenever one exists. Figure 1: A search tree. The goal state is E. A B E D G H F C Page 2/11 CS440/ECE448 Midterm March 3, 2011

slide-3
SLIDE 3

Solutions (d) [1 point] How do heuristic search techniques such as Uniform-Cost Search and A* search differ from systematic search techniques such as DFS/BFS? Solution: Heuristic search algorithms use a priority queue where items are sorted by

  • cost. Systematic search algorithms use a deterministic queuing function.

(e) [1 point] How do the two heuristic search algorithms Uniform-Cost Search and A* search differ from each other? Solution: Uniform-cost considers only the cost to get from start to current state; A* also considers the estimated cost of getting to the goal state. (f) [2 points] In the traveling salesman problem a list of cities (including one home city) and their pairwise distances is given. The task is to find the shortest route that starts and ends in the home city and visits all cities on the list exactly once. Our salesman travels by plane, and can fly directly between any two cities on this list. Flying distances obey the triangle inequality: flying from A to B is always shorter than or equally long as flying from A to C and then from C to B. If we define the home city as unvisited until we get back to it, is the distance to the nearest unvisited city an admissible heuristic? Why? Solution: Yes, because due to the triangle inequality it will never overestimate the true distance. (g) [1 point] When does regular hill-climbing search fail to find the optimal solution? Solution: If it gets stuck in a local maximum (h) [1 point] How does k-best hill climbing differ from random restart hill climbing? Solution:

  • k-best: maintain k searches in parallel (always pick k best next options across

all k searches).

  • random restart: k independent searches from random positions.

March 3, 2011 CS440/ECE448 Midterm Page 3/11

slide-4
SLIDE 4

Solutions

Part 2: Propositional logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (10 points total)

(a) [1 point] Is p∨¬p valid? Solution: Yes. (b) [1 point] In which models is ¬p → q valid? Solution: In the models in which p = true and in the model where p = false and q = true (c) [2 points] Show that ¬[p∨¬(¬q∨¬r)] is logically equivalent to (p∨q) → ¬(p∨r).

¬[p∨¬(¬q∨¬r)] ≡ ... ≡ ... ≡ ... ≡ ... ≡ (p∨q) → ¬(p∨r)

Solution: for example:

¬[p∨¬(¬q∨¬r)] ≡ ¬p∧(¬q∨¬r) ≡ (¬p∧¬q)∨(¬p∧¬r) ≡ ¬(p∨q)∨(¬p∧¬r) ≡ (p∨q) → (¬p∧¬r) ≡ (p∨q) → ¬(p∨r)

(d) [1 point] What is a literal in propositional logic? Solution: A propositional variable (atomic formula), or the negation of a proposi- tional variable (atomic formula). (e) [1 point] What is a clause in propositional logic? Solution: A disjunction of literals Page 4/11 CS440/ECE448 Midterm March 3, 2011

slide-5
SLIDE 5

Solutions (f) [1 point] When is a formula in propositional logic in conjunctive normal form? Solution: When it is a conjunction of clauses. (g) [1 point] Define Modus Ponens in propositional logic. Solution: p → q p q (h) [1 point] Show how resolution can be used to derive a contradiction between p and ¬p. Solution: p ¬p / (i) [1 point] How can we prove that α | = β using resolution? Solution: Show that α ∧¬β is not satisfiable/derives a contradiction. March 3, 2011 CS440/ECE448 Midterm Page 5/11

slide-6
SLIDE 6

Solutions

Part 3: First-order predicate logic . . . . . . . . . . . . . . . . . . . . . . . . (10 points total)

(a) [2 points] Translate into predicate logic:

  • A. “All birds that are not penguins fly”.

Solution:

∀x [bird(x)∧¬p(x)) → fly(x)]

  • r ∀x [bird(x) → [¬p(x)) → fly(x)]]
  • B. “Every child has exactly two parents.”

Solution: ∀x∃y∃z[c(x) → (p(y,x)∧ p(z,x)∧z = y∧∀wp(w,x) → (w = y∨ w = z))] ∀x∃y∃z[c(x) → (p(y,x)∧ p(z,x)∧z = y∧ = ∃wp(w,x)∧(w = y∨w = z))] (b) [1 point] What is a interpretation of a unary function such as motherOf(x)? Solution: A function D → D from entities in the domain to other entities in the do- main. (c) [1 point] When is the formula ∀x student(x) true? Solution: If all entities in the domain are in the set that is the interpretation of student. (d) [1 point] When is the formula student(John′) true? (John′ is a constant) Solution: If the entity that is the interpretation of John is in the interpretation of student. Page 6/11 CS440/ECE448 Midterm March 3, 2011

slide-7
SLIDE 7

Solutions (e) [1 point] Are the following formulas in prenex normal form?

  • A. ∀xP(x) → ¬∃yQ(x,y).
  • B. ∀x¬∃P(x) → Q(x,y)

Solution: No, neither is in prenex NF. (f) [2 points] Skolemize the following formulas:

  • A. ∀x∃y∀zP(x,y,z)

Solution: ∀x∀zP(x,S(x),z)

  • B. ∃y∀x∀zP(x,y,z)

Solution: ∀x∀zP(x,S,z) (g) [2 points] Do the following sets of formulas unify? If they do, what is the most general unifier, and what is the resulting unification instance? If they don’t, give the reason. (Variables are written as lowercase letters, constants as uppercase letters).

  • A. P(x,y,y) and P( f(C),C,v)

Solution: MGU = x/ f(C),y/C,v/y (0.5), result: P( f(C),C,C) (0.5)

  • B. P(x, f(x)), P(x,y), P(g(u),u)

Solution: no, there is a loop. March 3, 2011 CS440/ECE448 Midterm Page 7/11

slide-8
SLIDE 8

Solutions

Part 4: Constraint satisfaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . (10 points total)

(a) [1 point] How does a constraint graph express binary constraints? Solution: nodes = variables; edges: binary constraints (b) [1 point] How does a constraint hypergraph express global constraints? Solution: One hyperedge for each global constraint. (c) [1 point] What does it mean for node X to be arc-consistent with node Y? Solution: For each value in the domain of X there has to be a value in the domain of Y such that the constraint between X and Y is obeyed. (d) [1 point] What is a solution of a constraint-satisfaction problem? Solution: A complete legal assignment (of values to variables). (e) [1 point] When does a constraint-satisfaction problem fail? Solution: When one variable has an empty domain. Figure 2: In KenKen, the numbers in each set of cells (indiciated by a thicker border) have to be combined using an arithmetic operation (e.g. ×) to yield a result (e.g. 6). The Latin Square on the right is a solution to the KenKen puzzle on the left. 1 2 3 3 3 2 2 1 1 3x3 Latin square 3x3 KenKen

3 +3 x6 x6

Page 8/11 CS440/ECE448 Midterm March 3, 2011

slide-9
SLIDE 9

Solutions (f) [1 point] A Latin square (see Figure 2) is an n ×n table whose cells are filled with numbers from 1 to n in such a way that each row and column of the table contains each number ex- actly once. How do you formalize the task of generating a Latin square as a constraint satisfaction problem? Solution: Variables = cells. Domains = numbers from 1 to n. Constraints: one all- Diff constraint for each row and column. (g) [1 point] What is the constraint graph for the Latin square task? Solution: nodes/variables = boxes; edges: no two boxes in the same cell or row can be equal (alternative: binarized allDiff) (h) [1 point] KenKen (see Figure 2) is a logic puzzle similar to Sudoku. The task is to find a Latin square for an empty n × n table. The twist is that the cells of this table are partitioned into sets (indicated by a thicker border) whose numbers have to be combined by addition

  • r multiplication to yield a prespecified result. What are the additional global constraints

that KenKen introduces beyond the Latin square problem? Solution: one global constraint for each box. (i) [1 point] How can the arithmetic constraints in KenKen be expressed in a constraint hypergraph? (You do not have to draw a hypergraph). Solution: One hyperedge for each arithmetic constraint (j) [1 point] How can the arithmetic constraints in KenKen be expressed in a constraint graph? Solution: This requires the introduction of one auxiliary variable for each global arithmetic constraint. March 3, 2011 CS440/ECE448 Midterm Page 9/11

slide-10
SLIDE 10

Solutions

Part 5: Agents, and planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (9 points total)

(a) [2 points] Describe what it means for a task environment to be...

  • A. ... partially observable:

Solution: The sensors don’t provide complete information about the en- vironment

  • B. ... non-deterministic:

Solution: The actions have a non-deterministic effect on the environ- ment.

  • C. ... dynamic

Solution: The environment can change on its own accord, even when the agent does not perform an action.

  • D. ... episodic:

Solution: The agent has to react to a single percept (rather than a percept sequence). (b) [1 point] What is a fluent? Solution: A predicate that can be true or false, depending on the situation/state (c) [2 points] What does the definition of an operator (e.g. move(x,y,z) (move x from y to z) consist of? Solution: Preconditions (a set of fluents that have to be true for the operator to be applicable) and effects (a set of fluents that will be true after the operator has been applied). (d) [1 point] What is the difference between an operator and a corresponding action? Solution: The action is a ground instance of the operator (i.e.: all variables are re- placed by constants.) Page 10/11 CS440/ECE448 Midterm March 3, 2011

slide-11
SLIDE 11

Solutions (e) [1 point] What is the frame problem? Solution: We need to know what remains true when we apply an action. (f) [1 point] How do Situation Calculus and STRIPS differ in how they solve the frame problem? Which approach is better, and why? Solution: Situation Calculus specifies which fluents remain the same, STRIPS spec- ifies which fluents change. It is better/easier/more efficient to specify which fluents change, because typically fewer things change than remain the same. (g) [1 point] The basic insight behind SATplan is that a plan of fixed length n can be translated into a formula of propositional logic. Why is this always the case in classical planning? Solution: Because in classical planning we always deal with a finite domain (database semantics) as well as a finite number of operators and predicates, and thus have only a finite number of possible actions and fluents. March 3, 2011 CS440/ECE448 Midterm Page 11/11