Question 1
Based on the above data, answer the given subquestions.
Does the Depth First Search algorithm find the path to the goal?
Yes
No
Cannot be determined

The IIT Madras BS AI: Search Methods for Problem Solving (AI Search Methods) Quiz 2 paper sat on 23 Nov 2025, in the September 2025 term: 25 questions for 25 marks in 120 minutes. Every question is below with its answer. Take it as a timed mock test to be marked, or read it through first.
Based on the above data, answer the given subquestions.
Does the Depth First Search algorithm find the path to the goal?
Yes
No
Cannot be determined
Correct answer
No
Based on the above data, answer the given subquestions.
Does the Best-First Search algorithm find the path to the goal?
Yes
No
Cannot be determined
Correct answer
No
Based on the above data, answer the given subquestions.
Does the Branch and Bound algorithm find the path to the goal?
Yes
No
Cannot be determined
Correct answer
Yes
Based on the above data, answer the given subquestions.
Yes
No
Cannot be determined
Correct answer
No
Based on the above data, answer the given subquestions.
Yes
No
Cannot be determined
Correct answer
No
Based on the above data, answer the given subquestions.
Is the heuristic admissible in the given state space?
Yes
No
Cannot be determined
Correct answer
No
SEARCH METHODS
Based on the above topic, answer the given subquestions.
Which of the following algorithms can be used to find the most expensive path to goal in a state space where every move is reversible and the edge costs are greater than 1?
Correct answer
SEARCH METHODS
Based on the above topic, answer the given subquestions.
If h(x) and k(x) are admissible then which of the following is/are admissible?
h(x)/2 + k(x)/2
h(x) + k(x)
max( h(x), k(x) )
min( h(x), k(x) )
Correct answers
h(x)/2 + k(x)/2
max( h(x), k(x) )
min( h(x), k(x) )
TSP
The distance matrix for 5 cities (A to E) and the sorted edge list is provided below.
For each city the distances to other cities are listed in ascending order.
For example, in row one, the distance from A to D is 50, A to E is 76 and so on.
| A | D:50 | E:76 | B:88 | C:92 |
|---|---|---|---|---|
| B | D:40 | C:80 | A:88 | E:140 |
| C | B:80 | A:92 | D:96 | E:100 |
| D | B:40 | A:50 | C:96 | E:120 |
| E | A:76 | C:100 | D:120 | B:140 |
| BD | AD | AE | BC | AB |
|---|---|---|---|---|
| 40 | 50 | 76 | 80 | 88 |
| AC | CD | CE | DE | BE |
|---|---|---|---|---|
| 92 | 96 | 100 | 120 | 140 |
A segment is a two-way edge between two cities. After adding/dropping a permanent segment, infer as many new permanent segments as possible to compute the lower bound.
Run TSP BnB to find the optimal tour.
Determine the first three segments xy, uv and pq processed by TSP BnB.
Based on the above data, answer the given subquestions.
What is the lower bound on the cost of the tour as per the TSP BnB algorithm discussed in class? Enter a natural number.
NO SPACES, TABS, DOTS, BRACKETS OR EXTRANEOUS CHARACTERS.
Answer format: 17
Correct answer: 342
TSP
The distance matrix for 5 cities (A to E) and the sorted edge list is provided below.
For each city the distances to other cities are listed in ascending order.
For example, in row one, the distance from A to D is 50, A to E is 76 and so on.
| A | D:50 | E:76 | B:88 | C:92 |
|---|---|---|---|---|
| B | D:40 | C:80 | A:88 | E:140 |
| C | B:80 | A:92 | D:96 | E:100 |
| D | B:40 | A:50 | C:96 | E:120 |
| E | A:76 | C:100 | D:120 | B:140 |
| BD | AD | AE | BC | AB |
|---|---|---|---|---|
| 40 | 50 | 76 | 80 | 88 |
| AC | CD | CE | DE | BE |
|---|---|---|---|---|
| 92 | 96 | 100 | 120 | 140 |
A segment is a two-way edge between two cities. After adding/dropping a permanent segment, infer as many new permanent segments as possible to compute the lower bound.
Run TSP BnB to find the optimal tour.
Determine the first three segments xy, uv and pq processed by TSP BnB.
Based on the above data, answer the given subquestions.
What is the first segment (xy) selected for refining S0?
Enter edge label xy
NO SPACES, TABS, DOTS, BRACKETS OR EXTRANEOUS CHARACTERS.
Answer format: XY
Correct answer: BD or DB
TSP
The distance matrix for 5 cities (A to E) and the sorted edge list is provided below.
For each city the distances to other cities are listed in ascending order.
For example, in row one, the distance from A to D is 50, A to E is 76 and so on.
| A | D:50 | E:76 | B:88 | C:92 |
|---|---|---|---|---|
| B | D:40 | C:80 | A:88 | E:140 |
| C | B:80 | A:92 | D:96 | E:100 |
| D | B:40 | A:50 | C:96 | E:120 |
| E | A:76 | C:100 | D:120 | B:140 |
| BD | AD | AE | BC | AB |
|---|---|---|---|---|
| 40 | 50 | 76 | 80 | 88 |
| AC | CD | CE | DE | BE |
|---|---|---|---|---|
| 92 | 96 | 100 | 120 | 140 |
A segment is a two-way edge between two cities. After adding/dropping a permanent segment, infer as many new permanent segments as possible to compute the lower bound.
Run TSP BnB to find the optimal tour.
Determine the first three segments xy, uv and pq processed by TSP BnB.
Based on the above data, answer the given subquestions.
What is the cost of the node ~xy (that permanently excludes segment xy)?
Enter a natural number.
NO SPACES, TABS, DOTS, BRACKETS OR EXTRANEOUS CHARACTERS.
Answer format: 42
Correct answer: 394
TSP
The distance matrix for 5 cities (A to E) and the sorted edge list is provided below.
For each city the distances to other cities are listed in ascending order.
For example, in row one, the distance from A to D is 50, A to E is 76 and so on.
| A | D:50 | E:76 | B:88 | C:92 |
|---|---|---|---|---|
| B | D:40 | C:80 | A:88 | E:140 |
| C | B:80 | A:92 | D:96 | E:100 |
| D | B:40 | A:50 | C:96 | E:120 |
| E | A:76 | C:100 | D:120 | B:140 |
| BD | AD | AE | BC | AB |
|---|---|---|---|---|
| 40 | 50 | 76 | 80 | 88 |
| AC | CD | CE | DE | BE |
|---|---|---|---|---|
| 92 | 96 | 100 | 120 | 140 |
A segment is a two-way edge between two cities. After adding/dropping a permanent segment, infer as many new permanent segments as possible to compute the lower bound.
Run TSP BnB to find the optimal tour.
Determine the first three segments xy, uv and pq processed by TSP BnB.
Based on the above data, answer the given subquestions.
How many tours are represented by the node (S0,xy,uv)?
Enter a natural number.
NO SPACES, TABS, DOTS, BRACKETS OR EXTRANEOUS CHARACTERS.
Answer format: 42
Correct answer: 2
TSP
The distance matrix for 5 cities (A to E) and the sorted edge list is provided below.
For each city the distances to other cities are listed in ascending order.
For example, in row one, the distance from A to D is 50, A to E is 76 and so on.
| A | D:50 | E:76 | B:88 | C:92 |
|---|---|---|---|---|
| B | D:40 | C:80 | A:88 | E:140 |
| C | B:80 | A:92 | D:96 | E:100 |
| D | B:40 | A:50 | C:96 | E:120 |
| E | A:76 | C:100 | D:120 | B:140 |
| BD | AD | AE | BC | AB |
|---|---|---|---|---|
| 40 | 50 | 76 | 80 | 88 |
| AC | CD | CE | DE | BE |
|---|---|---|---|---|
| 92 | 96 | 100 | 120 | 140 |
A segment is a two-way edge between two cities. After adding/dropping a permanent segment, infer as many new permanent segments as possible to compute the lower bound.
Run TSP BnB to find the optimal tour.
Determine the first three segments xy, uv and pq processed by TSP BnB.
Based on the above data, answer the given subquestions.
What is the cost of the node (S0,xy,uv,pq)?
Enter a natural number.
NO SPACES, TABS, DOTS, BRACKETS OR EXTRANEOUS CHARACTERS.
Answer format: 17
Correct answer: 346
Based on the above data, answer the given subquestions.
List the horizon nodes in the best strategy for the MAX player.
Enter node labels as comma separated list in ASCENDING order.
NO SPACES, TABS, DOTS, BRACKETS OR EXTRANEOUS CHARACTERS.
Answer format: X,Y,Z
Correct answer: E,H
Based on the above data, answer the given subquestions.
Enter the total number of strategies available for the MAX player.
Enter an integer
NO SPACES, TABS, DOTS, BRACKETS OR EXTRANEOUS CHARACTERS.
Answer format: 42
Correct answer: 8
Based on the above data, answer the given subquestions.
Of all the strategies available for the MAX player, identify the MAX strategy that is most favorable for the MIN player. Enter the horizon nodes of that MAX strategy in the textbox.
Enter node labels as comma separated list in ASCENDING order.
NO SPACES, TABS, DOTS, BRACKETS OR EXTRANEOUS CHARACTERS.
Answer format: X,Y,Z
Correct answer: B,C or B,D
Based on the above data, answer the given subquestions.
List the horizon nodes pruned by Alpha-Beta algorithm.
Enter node labels as comma separated list in ASCENDING order.
NO SPACES, TABS, DOTS, BRACKETS OR EXTRANEOUS CHARACTERS.
Answer format: X,Y,Z
Correct answer: D
Based on the above data, answer the given subquestions.
List the horizon nodes in the initial cluster formed by SSS* algorithm.
Enter node labels as comma separated list in ASCENDING order.
NO SPACES, TABS, DOTS, BRACKETS OR EXTRANEOUS CHARACTERS.
Answer format: X,Y,Z
Correct answer: A,B,E,F
Based on the above data, answer the given subquestions.
Solve the game tree using SSS* algorithm. List the horizon nodes (not in the initial cluster) that are assigned SOLVED status.
Enter node labels as comma separated list in ASCENDING order.
NO SPACES, TABS, DOTS, BRACKETS OR EXTRANEOUS CHARACTERS.
Answer format: X,Y,Z
Correct answer: G,H
Based on the above data, answer the given subquestions.
As soon as a MIN node is solved and added to the priority queue, immediately its MAX parent is also marked as solved and added to the priority queue.
As soon as a last MAX child is solved and added to the priority queue, immediately its MIN parent is also marked as solved and added to the priority queue.
Only a solved node at the top of the priority queue will determine when its parent will be marked as solved.
A live terminal node that is at the top of the priority queue will be immediately marked as solved.
Correct answers
Only a solved node at the top of the priority queue will determine when its parent will be marked as solved.
A live terminal node that is at the top of the priority queue will be immediately marked as solved.
AUTOMATED PLANNING
The domain description of a Blocks World with a single one-armed robot is given below.
Note: this is the same domain description used in the weekly assignments.
PREDICATES
armEmpty The arm is not holding any block, it is empty.holding(X) The arm is holding X.onTable(X) X is on the table.clear(X) X has nothing above it, it is clear.on(X,Y) X is directly placed on Y.
OPERATORS
Pickup(X): pick up X from the table. Preconditions: { armEmpty, clear(X), onTable(X) } Add Effects : { holding(X) } Del Effects : { armEmpty, onTable(X) }
Putdown(X): place X on the table. Preconditions: { holding(X) } Add Effects : { armEmpty, onTable(X) } Del Effects : { holding(X) }
Unstack(X,Y): pick up X that is directly sitting on Y. Preconditions: { armEmpty, clear(X), on(X,Y) } Add Effects : { clear(Y), holding(X) } Del Effects : { armempty, on(X,Y) }
Stack(X,Y): place X directly on top of Y. Preconditions: { holding(X), clear(Y) } Add Effects : { armEmpty, on(X,Y) } Del Effects : { holding(X), clear(Y) }Tie-breaker: When actions are chosen non-deterministically, choose actions that lead to a plan. Throw away the actions that lead to dead-ends or cycles.
Tie-breaker: Treat the goal description, preconditions and effects as lists that are accessed from left to right. When the elements in a list are pushed one by one to a stack, the last element in the list will be at the top of the stack. It has the effect of reversing the list.
A planning problem is given below, find a plan using the operators and predicates defined in the blocks-world domain.
Start: { clear(A), clear(B), holding(A), on(B,C), onTable(C) }
Goal Description: { onTable(B), on(A,B), onTable(C) }
Based on the above data, answer the given subquestions.
What is the length of the optimal plan? Enter the number of actions in the optimal plan. NO SPACES, TABS, DOTS, BRACKETS OR EXTRANEOUS CHARACTERS.
Answer format: 42
Correct answer: 5
AUTOMATED PLANNING
The domain description of a Blocks World with a single one-armed robot is given below.
Note: this is the same domain description used in the weekly assignments.
PREDICATES
armEmpty The arm is not holding any block, it is empty.holding(X) The arm is holding X.onTable(X) X is on the table.clear(X) X has nothing above it, it is clear.on(X,Y) X is directly placed on Y.
OPERATORS
Pickup(X): pick up X from the table. Preconditions: { armEmpty, clear(X), onTable(X) } Add Effects : { holding(X) } Del Effects : { armEmpty, onTable(X) }
Putdown(X): place X on the table. Preconditions: { holding(X) } Add Effects : { armEmpty, onTable(X) } Del Effects : { holding(X) }
Unstack(X,Y): pick up X that is directly sitting on Y. Preconditions: { armEmpty, clear(X), on(X,Y) } Add Effects : { clear(Y), holding(X) } Del Effects : { armempty, on(X,Y) }
Stack(X,Y): place X directly on top of Y. Preconditions: { holding(X), clear(Y) } Add Effects : { armEmpty, on(X,Y) } Del Effects : { holding(X), clear(Y) }Tie-breaker: When actions are chosen non-deterministically, choose actions that lead to a plan. Throw away the actions that lead to dead-ends or cycles.
Tie-breaker: Treat the goal description, preconditions and effects as lists that are accessed from left to right. When the elements in a list are pushed one by one to a stack, the last element in the list will be at the top of the stack. It has the effect of reversing the list.
A planning problem is given below, find a plan using the operators and predicates defined in the blocks-world domain.
Start: { clear(A), clear(B), holding(A), on(B,C), onTable(C) }
Goal Description: { onTable(B), on(A,B), onTable(C) }
Based on the above data, answer the given subquestions.
Which of the following are applicable actions for the given planning problem?
Pickup(A)
Putdown(A)
Putdown(B)
Putdown(C)
Stack(A,B)
Correct answers
Putdown(A)
Stack(A,B)
AUTOMATED PLANNING
The domain description of a Blocks World with a single one-armed robot is given below.
Note: this is the same domain description used in the weekly assignments.
PREDICATES
armEmpty The arm is not holding any block, it is empty.holding(X) The arm is holding X.onTable(X) X is on the table.clear(X) X has nothing above it, it is clear.on(X,Y) X is directly placed on Y.
OPERATORS
Pickup(X): pick up X from the table. Preconditions: { armEmpty, clear(X), onTable(X) } Add Effects : { holding(X) } Del Effects : { armEmpty, onTable(X) }
Putdown(X): place X on the table. Preconditions: { holding(X) } Add Effects : { armEmpty, onTable(X) } Del Effects : { holding(X) }
Unstack(X,Y): pick up X that is directly sitting on Y. Preconditions: { armEmpty, clear(X), on(X,Y) } Add Effects : { clear(Y), holding(X) } Del Effects : { armempty, on(X,Y) }
Stack(X,Y): place X directly on top of Y. Preconditions: { holding(X), clear(Y) } Add Effects : { armEmpty, on(X,Y) } Del Effects : { holding(X), clear(Y) }Tie-breaker: When actions are chosen non-deterministically, choose actions that lead to a plan. Throw away the actions that lead to dead-ends or cycles.
Tie-breaker: Treat the goal description, preconditions and effects as lists that are accessed from left to right. When the elements in a list are pushed one by one to a stack, the last element in the list will be at the top of the stack. It has the effect of reversing the list.
A planning problem is given below, find a plan using the operators and predicates defined in the blocks-world domain.
Start: { clear(A), clear(B), holding(A), on(B,C), onTable(C) }
Goal Description: { onTable(B), on(A,B), onTable(C) }
Based on the above data, answer the given subquestions.
Which of the following are relevant actions for the given planning problem?
Pickup(A)
Putdown(A)
Putdown(B)
Putdown(C)
Stack(A,B)
Correct answers
Putdown(B)
Putdown(C)
Stack(A,B)
AUTOMATED PLANNING
The domain description of a Blocks World with a single one-armed robot is given below.
Note: this is the same domain description used in the weekly assignments.
PREDICATES
armEmpty The arm is not holding any block, it is empty.holding(X) The arm is holding X.onTable(X) X is on the table.clear(X) X has nothing above it, it is clear.on(X,Y) X is directly placed on Y.
OPERATORS
Pickup(X): pick up X from the table. Preconditions: { armEmpty, clear(X), onTable(X) } Add Effects : { holding(X) } Del Effects : { armEmpty, onTable(X) }
Putdown(X): place X on the table. Preconditions: { holding(X) } Add Effects : { armEmpty, onTable(X) } Del Effects : { holding(X) }
Unstack(X,Y): pick up X that is directly sitting on Y. Preconditions: { armEmpty, clear(X), on(X,Y) } Add Effects : { clear(Y), holding(X) } Del Effects : { armempty, on(X,Y) }
Stack(X,Y): place X directly on top of Y. Preconditions: { holding(X), clear(Y) } Add Effects : { armEmpty, on(X,Y) } Del Effects : { holding(X), clear(Y) }Tie-breaker: When actions are chosen non-deterministically, choose actions that lead to a plan. Throw away the actions that lead to dead-ends or cycles.
Tie-breaker: Treat the goal description, preconditions and effects as lists that are accessed from left to right. When the elements in a list are pushed one by one to a stack, the last element in the list will be at the top of the stack. It has the effect of reversing the list.
A planning problem is given below, find a plan using the operators and predicates defined in the blocks-world domain.
Start: { clear(A), clear(B), holding(A), on(B,C), onTable(C) }
Goal Description: { onTable(B), on(A,B), onTable(C) }
Based on the above data, answer the given subquestions.
Which of the following can be pushed as the first three elements onto the stack by the Goal Stack Planning algorithm? In the stack representation, the bottom is on the right side marked by the entry BOTTOM. Use appropriate tie-breakers listed in the main data.
{ onTable(B), on(A,B), onTable(C) }; onTable(B); on(A,B); onTable(C); BOTTOM
{ onTable(B), on(A,B), onTable(C) }; onTable(C); on(A,B); onTable(B); BOTTOM
onTable(B); on(A,B); onTable(C); { onTable(B), on(A,B), onTable(C) }; BOTTOM
onTable(C); on(A,B); onTable(B); { onTable(B), on(A,B), onTable(C) }; BOTTOM
Correct answer
onTable(C); on(A,B); onTable(B); { onTable(B), on(A,B), onTable(C) }; BOTTOM
AUTOMATED PLANNING
The domain description of a Blocks World with a single one-armed robot is given below.
Note: this is the same domain description used in the weekly assignments.
PREDICATES
armEmpty The arm is not holding any block, it is empty.holding(X) The arm is holding X.onTable(X) X is on the table.clear(X) X has nothing above it, it is clear.on(X,Y) X is directly placed on Y.
OPERATORS
Pickup(X): pick up X from the table. Preconditions: { armEmpty, clear(X), onTable(X) } Add Effects : { holding(X) } Del Effects : { armEmpty, onTable(X) }
Putdown(X): place X on the table. Preconditions: { holding(X) } Add Effects : { armEmpty, onTable(X) } Del Effects : { holding(X) }
Unstack(X,Y): pick up X that is directly sitting on Y. Preconditions: { armEmpty, clear(X), on(X,Y) } Add Effects : { clear(Y), holding(X) } Del Effects : { armempty, on(X,Y) }
Stack(X,Y): place X directly on top of Y. Preconditions: { holding(X), clear(Y) } Add Effects : { armEmpty, on(X,Y) } Del Effects : { holding(X), clear(Y) }Tie-breaker: When actions are chosen non-deterministically, choose actions that lead to a plan. Throw away the actions that lead to dead-ends or cycles.
Tie-breaker: Treat the goal description, preconditions and effects as lists that are accessed from left to right. When the elements in a list are pushed one by one to a stack, the last element in the list will be at the top of the stack. It has the effect of reversing the list.
A planning problem is given below, find a plan using the operators and predicates defined in the blocks-world domain.
Start: { clear(A), clear(B), holding(A), on(B,C), onTable(C) }
Goal Description: { onTable(B), on(A,B), onTable(C) }
Based on the above data, answer the given subquestions.
For the subgoal ordering given in the goal description (and using the given tie breaking rules), which of the following is the first action popped out of the stack in Goal Stack Planning?
Pickup(A)
Putdown(A)
Putdown(B)
Putdown(C)
Stack(A,B)
Correct answer
Stack(A,B)