Due Monday, April 12 at 11:59 PM via e-mail to BOTH vrastogi at u.northwestern.edu and ddowney at eecs.northwestern.edu. Use EECS 348 Homework 1 as the e-mail subject line. PDF format required. LATE ASSIGNMENTS WILL NOT BE GRADED.

  1. The Turing Test and the Loebner Prize. In the below, you're asked to take a position on a fundamental AI controversy: how should the goals of AI be defined, and how should progress be tracked? You'll be graded in roughly equal measure on a) whether it looks like you've read the relevant material, b) clarity of your text, and c) insight.
    Start by reading the following three links, then answer the questions below.
    The Loebner Prize
    Lessons from a Restricted Turing Test
    Loebner's Response
    1. 1 point. Provide a transcript of a short (5-6 statement) interaction with Elbot, winner of the 2008 Loebner prize.
    2. 1 point. At what point, if any, were you sure the bot was not human?
    3. 1 point. In a paragraph: do you think the Turing Test is a valid measure of intelligent behavior? Why or why not?
    4. 4 points. In roughly half a page of text, state whether you believe the Loebner prize is helpful for AI. Be sure to address multiple arguments from Shieber and Loebner in your answer.
    5. 2 points. If you had to invent a new annual AI competition, what would it be? Your competition should be designed to measure progress in AI, spur innovation, and generate excitement. In about one paragraph, clearly define the objectives, scoring criteria, and rules of the contest. In a second paragraph, argue why your contest would be preferable to the Loebner prize.

  2. Uninformed Search. In a fictional registrar's office, classrooms are assigned to courses based on multiple factors. Say we have a set of rooms R, and a set of classes C where each class is characterized by a meeting time interval and a set of acceptable classrooms (e.g. those that are large enough for the class enrollment, have required projection facilities, etc.). An assignment of classrooms to classes is valid if each class is assigned to an acceptable classroom, and no two classes meet at the same place at the same time.

    Because of the many factors involved, it's sometimes tough for the registrar's office to arrive at a valid assignment. You've taken an AI course for a week, so the university turns to you for guidance. Your task is to design an uninformed search algorithm that finds a valid room assignment. Answer the following questions:

    1. 2 points. Define the classroom assignment problem in terms of uninformed search. Specifically, in about one sentence each, precisely define the states, operators, start state, and goal test you will use.
    2. 1/2 point. Does this problem require an optimal search procedure? In a sentence, why or why not?
    3. 1/2 point. What is the maximum branching factor of your search tree?
    4. 1 point. Using iterative deepening with depth-limited search, what is the approximate time complexity of your algorithm in the worst case? (You can, but don't necessarily have to, use big-O notation here).
    5. 1 point. Will your search have problems with dupliicate states? If no, why not? If yes, give a brief example.
    6. 1 point. Assume that you've tested your solution and it finds valid assignments accurately and relatively quickly in practice. Now say the university is going to deploy your solution, expecting it to solve all of the school's room-assignment needs. In ~two sentences, describe one problem regarding room assignment that your code won't solve.
    7. 1 point (bonus). A friend of yours sees your answer from part (d) and scoffs at how your algorithm takes a long time to find an acceptable assignment. He claims to have an algorithm that can run in linear time for arbitrary universities. Do you believe him? Give a compelling reason why or why not.