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
Solutions Part 1: Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (11 points total) [1 point] (a) 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 one 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. [2 points] (b) 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 { B,C } 0. A { D,E,C } 1. B { G,H,E,C } 2. D { H,E,C } 3. G 4. H { E,C } 5. E { C } Solution: [2 points] (c) 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 C D E F G H Page 2/11 CS440/ECE448 Midterm March 3, 2011
Solutions [1 point] (d) 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. [1 point] (e) 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. [2 points] (f) 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. [1 point] (g) When does regular hill-climbing search fail to find the optimal solution? Solution: If it gets stuck in a local maximum [1 point] (h) 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
Solutions Part 2: Propositional logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (10 points total) Is p ∨¬ p valid? [1 point] (a) Solution: Yes. In which models is ¬ p → q valid? [1 point] (b) Solution: In the models in which p = true and in the model where p = false and q = true Show that ¬ [ p ∨¬ ( ¬ q ∨¬ r )] is logically equivalent to ( p ∨ q ) → ¬ ( p ∨ r ) . [2 points] (c) ¬ [ 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 ) [1 point] (d) What is a literal in propositional logic? Solution: A propositional variable (atomic formula), or the negation of a proposi- tional variable (atomic formula). [1 point] (e) What is a clause in propositional logic? Solution: A disjunction of literals Page 4/11 CS440/ECE448 Midterm March 3, 2011
Solutions [1 point] (f) When is a formula in propositional logic in conjunctive normal form? Solution: When it is a conjunction of clauses. [1 point] (g) Define Modus Ponens in propositional logic. p → q Solution: p q Show how resolution can be used to derive a contradiction between p and ¬ p . [1 point] (h) Solution: ¬ p p 0 / How can we prove that α | = β using resolution? [1 point] (i) Solution: Show that α ∧¬ β is not satisfiable/derives a contradiction. March 3, 2011 CS440/ECE448 Midterm Page 5/11
Solutions Part 3: First-order predicate logic . . . . . . . . . . . . . . . . . . . . . . . . (10 points total) [2 points] (a) Translate into predicate logic: A. “All birds that are not penguins fly”. Solution: ∀ x [ bird ( x ) ∧¬ p ( x )) → fly ( x )] or ∀ 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 ))] [1 point] (b) 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. When is the formula ∀ x student ( x ) true? [1 point] (c) Solution: If all entities in the domain are in the set that is the interpretation of student. When is the formula student ( John ′ ) true? ( John ′ is a constant) [1 point] (d) 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
Solutions [1 point] (e) 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. [2 points] (f) 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 ) [2 points] (g) 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
Solutions Part 4: Constraint satisfaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . (10 points total) [1 point] (a) How does a constraint graph express binary constraints? Solution: nodes = variables; edges: binary constraints [1 point] (b) How does a constraint hypergraph express global constraints? Solution: One hyperedge for each global constraint. [1 point] (c) 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. [1 point] (d) What is a solution of a constraint-satisfaction problem? Solution: A complete legal assignment (of values to variables). [1 point] (e) 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 1 x6 x6 3 3 1 2 3x3 Latin square 3x3 KenKen Page 8/11 CS440/ECE448 Midterm March 3, 2011
Solutions [1 point] (f) 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. [1 point] (g) 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) [1 point] (h) 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 or 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. [1 point] (i) 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 [1 point] (j) 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
Recommend
More recommend