AIMA Artificial Intelligence a modern approch

AIMA-exercises is an open-source community of students, instructors and developers. Anyone can add an exercise, suggest answers to existing questions, or simply help us improve the platform. We accept contributions on this github repository.

Exercise 3.34

Consider the problem of moving $k$ knights from $k$ starting squares $s_1,\ldots,s_k$ to $k$ goal squares $g_1,\ldots,g_k$, on an unbounded chessboard, subject to the rule that no two knights can land on the same square at the same time. Each action consists of moving up to $k$ knights simultaneously. We would like to complete the maneuver in the smallest number of actions.

  1. What is the maximum branching factor in this state space, expressed as a function of $k$?

  2. Suppose $h_i$ is an admissible heuristic for the problem of moving knight $i$ to goal $g_i$ by itself. Which of the following heuristics are admissible for the $k$-knight problem? Of those, which is the best?

    1. $\min{h_1,\ldots,h_k}$.

    2. $\max{h_1,\ldots,h_k}$.

    3. $\sum_{i= 1}^{k} h_i$.

  3. Repeat (b) for the case where you are allowed to move only one knight at a time.

View Answer