Do the following exercises, saving your answers, both text and code, in a Python 3 Juypter notebook.

  1. The earliest psychologists studied the human mind using introspection. Would this be a good way for researchers to gain insight into human cognitive processes for the purpose of modelling those processes? (Please give a one-to-two-paragraph answer.)

  2. Implement a local search formulation of a TSP problem and use the AIMA hill-climbing and simulated annealing implementations to solve it. As part of your solution, do the following:

    This is a famously hard problem, so there is no clear way to determine the optimal answer; program your system to do its best and see how well it can do on some large, random city configurations.

  3. Formulate a course-scheduling domain and implement it using the AIMA constraint satisfaction framework. Note the following:

    There are a number of ways to formulate this; choose one, document why you chose it, and demonstrate that it works.

Checking in

Submit your Jupyter notebook solution to cs344/homework1.ipynb (see the sample notebook file in the course repo). We will grade your work according to the following criteria:

See the policies page for homework due-dates and times.