CS561-FoundationsofArtificialIntelligence-SvenKoenig

webmaster: Sven Koenig

Syllabus

The following rules differ from the ones used in previous semesters. Make sure that you read the syllabus after August 24, 2009.

Overview

"Foundations of Artificial Intelligence" teaches artificial intelligence from an intelligent systems perspective. You will learn about algorithms that allow you to build systems that can interact intelligently with their environment, including those that plan, learn, and reason about the world.

If you want to learn more about artificial intelligence, you can start with: "Artificial Intelligence on the Web" (http://aima.cs.berkeley.edu/ai.html).

Sections

There are often two sections of the class. The sections typically will not coordinate tightly. Thus, the syllabi, some of the advanced material, exams and grading policies (and so on) can differ. If you are in a non-DEN section and believe that it would be fair to have access to the videos taped in the DEN section, you will need to discuss this directly with DEN. We are not involved in the decision which students should have access to the videos.

Prerequisites

CSCI 561 is a graduate introduction to artificial intelligence. It assumes no knowledge of artificial intelligence. It does not make sense to take CSCI 460 (the undergraduate introduction to artificial intelligence) before CSCI 561. In fact, if you have already taken a decent (undergraduate or graduate) introduction to artificial intelligence at any university and do not need a refresher of that material, you likely should not take CSCI 561. You could, for example, use CSCI 573 (Advanced Artificial Intelligence) as a substitute but should discuss this decision with your advisor.

The prerequisites of CSCI 561 include a solid understanding of data structures, algorithms, programming and theoretical computer science (comparable to undergraduate classes at USC) since you will have to be able to understand algorithms and read pseudocode. You should also know the basics of probability theory although we will give a short refresher lesson in class. Finally, you should know how to program in C or C++ since the projects will likely use them (although we expect graduate students to be able to pick up any computer language in a couple of days and thus sometimes use other programming languages in CSCI 561, such as Matlab). Do not take this class if you cannot program well. The most important prerequisite of all, however, is your interest in the class, motivation, and commitment to learning. If you are not sure whether this class is for you, talk to us.

Textbook

The textbook for the class is "Artificial Intelligence - A Modern Approach" by Russell and Norvig (Prentice Hall). It is important that you read the second edition rather than the first one. We will not cover all of the chapters and, from time to time, cover topics not contained in the book.

Class Webpage

The class webpage will be at http://idm-lab.org/wiki/561.

Lectures and Sessions

We will make the lecture slides available on the class webpage before the lectures. The lectures are meant to summarize the readings and stress the important points. Thus, we expect you to read the corresponding part of the textbook before the lectures. If you miss a class, it is your responsibility to find out what we discussed in class, including which announcements we made in class. If there is something that you don't understand, feel free to interrupt the lecture or session with questions. Your active participation in class is crucial in making the class successful. Use your colleagues as a resource (they are working towards the same goal as you are), for example, by forming study groups or posting questions on the discussion forum. If you need additional help, please feel free to go by the TAs during their office hours. If lots of students are confused, the TAs will give help sessions with additional examples. So, let us know if you get confused!

Exams

There will be two midterm and one final. The midterms will be in class, and the final will be during the officially scheduled date. This date is part of the final examinations schedule that USC posts as part of the current schedule of classes on www.usc.edu (click on "Schedule of Classes", then on the current semester, and finally on "Final Examinations Schedule"). No makeups will be given. The exams will be open textbook ("Artificial Intelligence - A Modern Approach" only) but closed notes, and the textbook cannot contain any annotations (highlighting is fine). All exams will be comprehensive. There will not be any extra credit problems on the exams. Bring a calculator and your USC ID to the exams. You will not be allowed to write the exam without presenting your USC ID. Laptops, cellphones and any other devices that can potentially be used to communicate with others inside and outside of the classroom are not allowed. Exams written in pencil receive a zero score.

Projects

There will be three graded projects. All or at least most of the projects will involve programming. All of them have to be done individually. There will not be any extra credit problems on the projects. Submissions of up to 48 hours past the deadline do not incur any penalty. Submissions after 48 hours, even by a minute, receive zero credit. The 48 hour grace period is meant only for extreme circumstances, and we thus expect that almost all students will hand in their projects by the deadline. So, please start to work on your projects early and hand them in early. Note that some grace periods end on Saturdays, and the TAs are thus likely not to respond to email then.

Do not copy from others or let others copy your work. In particular, you have to cite all of the resources you relied on for coming up with your answers. This includes people, web pages, publications and other write ups. You are not allowed to use code or code snippets of others, that is, that you did not write yourself. You are not allowed to discuss with others how to solve the projects..

All students are responsible for reading and following the Student Conduct Code as given in the current SCAMPUS. Note that the Student Conduct Code prohibits plagiarism. Some examples of what is not allowed by the conduct code: copying all or part of someone else's work (by hand or by looking at others' files, either secretly or if shown) and submitting it as your own, giving another student in the class a copy of your assignment solution, and consulting with another student during an exam. If you have questions about what is allowed, please discuss it with the instructor.

Students who violate university standards of academic integrity are subject to disciplinary sanctions, including failure of the class and suspension from the university. We will strictly enforce the Student Conduct Code and follow the suggested penalties since dishonesty in any form harms the individual, other students, and the university. This includes filing all suspected violations with the Office of Student Judicial Affairs and Community Standards.

Homework

To help you prepare for the exams, we will post "text-book style" homework with short questions. We will not collect or grade your solutions. However, solving this homework is important because it ensures that you have understood the material and helps you to prepare for the exams. We will post solutions to the homework approximately one week after we posted the homework.

Grades

We will NOT grade on a curve. If everyone does well, everyone will get a good grade. If everyone does poorly, everyone will get a bad grade. Projects and exams have the following weights:

Project 1: 10%
Project 2: 10%
Project 3: 10%
Midterm 1: 20%
Midterm 2: 20%
Final: 30%

There will be no possibilities for receiving extra credit.

The intended grading scale is as follows. The instructor reserves the right to adjust the grading scale.

85% and larger: A
80% - 85%: A-
75% - 80%: B+
70% - 75%: B
65% - 70%: B-
60% - 65%: C+
55% - 60%: C
50% - 55%: C-

Scores below 35% result in an F. The instructor will assign grades from A to F, if warranted. There will always be some students who are very close to grade boundaries. There is nothing we will do about that. Grades are based on performance, not need or personal circumstances, and the instructor does not negotiate grades. Thus, do not take CSCI 561 (or take it completely at your own risk) if you need a certain grade, for example, because you are graduating or because you have been conditionally admitted.

CSCI 561 is very exam-heavy. To receive a good grade, you will therefore need to perform well in exams. The TAs will announce how we maintain the scores, so that you can check them for correctness. You will need to let us know about any grading issue with an exam, project or similar within 10 days of us posting the score for that exam or project. After that time, we will no longer entertain your requests for changes in your score. If you have a grading issue, you will need to discuss the issue first with the TA in charge of grading. If you cannot reach consensus, you can then appeal the grading issue to the instructor. Both the TA and the instructor might check the exam or project completely for grading issues and adjust your score up or down as appropriate.

During the semester, if you feel that you might get a bad grade and worry about how it might affect your minimum GPA requirement or other requirements, please talk to your advisor immediately and then consider dropping the class. Foreign students might have to take a certain number of classes to satisfy their visa requirements, so it is especially important that you talk to your advisor before you drop the class. If you do not drop the class by the drop date, then you are stuck with it.

Questionnaires

We will ask you to fill out two questionnaires: one at the beginning of class because we would like to learn a bit more about you so that we can tailor the class towards your skills and expectations; and one before the final so that we can improve future classes. Filling out the questionnaires is voluntary and anonymous. We hope that you will make use of this opportunity and choose to provide us with feedback.

Additional Information

If you think you might need a recommendation letter at some point in time or Sven does not respond to your email respectfully addressed to "Respected Sir", please read Sven's FAQ.

D-Clearances

This is a large class and, unfortunately, we have insufficient TA resources available for it. Thus, we will not grant any D-clearances for this class.

Problems and Concerns

At some point, you will have questions. For example, you might not be able to get code to run that we provided, there is something in the textbook that you do not understand, and so on. In this case, we encourage you to post the question to the discussion forum and see whether someone can help you. If this approach does not generate the desired result, then the TAs are happy to help you in person. They do answer email but, unfortunately, often will not manage to answer it on the same day. (Sometimes, they will be out of town and it will take them even longer.) This semester, the instructor teaches two classes. Thus, the TAs will likely be able to respond to your emails much more quickly than the instructor.

It is very important to us that you voice your concerns about any aspect of the class as soon as they arise. Please send an e-mail to the instructor, call us, or talk to us in person. We will accept anonymous notes (either on paper or via email from any free "on-the-fly" email account) and treat them seriously, as long as they are sincere and constructive. Your comments will have an effect on the class, so do not be hesitate to provide them.

There are only a few situations that you will need to avoid because we will not be able to help you. We will not be able to deviate from the grading criteria for you, we will not be able to avoid involving the Office of Student Judicial Affairs and Community Standards in case there is evidence that you violated the standard of academic integrity, and we will not be able to accept excuses unless you provided us with a note from a doctor (or similar professional) that verifies the problem and you told us about the issue IMMEDIATELY WHEN IT AROSE (not: after it has already affected your performance in class). We accept only true emergencies as excuses, such as your sickness or a death in your immediate family. We are sorry that we cannot make exceptions to these rules. So, please do not ask for them. In particular, CSSI 561 is a "strictly no exceptions" class due to the large class size, meaning that we will not make any individual exceptions to our rules, not even in hardship cases, unless clearly mandated by USC and its rules. It is therefore important that you abide by all rules precisely!

Artificial Intelligence is a fun topic, and we hope that all of us will have lots of fun!

Sven (yes, please feel free to call the instructor by his first name, which is of Scandinavian origin and means "young") and the TAs


Powered by PmWiki