CS360-Fall2017-ArielFelnerandSvenKoenig

webmaster: Sven Koenig

Syllabus

Syllabus

Arti cial Intelligence (AI) seeks to understand the mechanisms underlying thought and intelligent behavior, with a particular focus on their embodiment in machines. Core topics include the integrating perspective of intelligent agents and how such systems can engage in: search and problem solving; symbolic and probabilistic knowledge representation and reasoning; planning; and machine learning. The course introduces both basic concepts and algorithms, and explores how to apply these in the construction of systems that can interact intelligently with complex environments.

Target Audience

The course is intended for undergraduate students in computer science or closely related disciplines, usually in their junior year. Graduate students should take CS561 rather than CS360.

Prerequisites

The courses CSCI 104L ("Data Structures and Object-Oriented Design") and CSCI 170 ("Discrete Methods in Computer Science") are necessary prerequisites, which will not be waived. Overall, the prerequisites of CS360 include a solid understanding of data structures, algorithms and programming since you will have to be able to understand algorithms and read pseudo code. You should also know the basics of probability theory, calculus (especially derivatives) and other high-school mathematics. Finally, you should know how to program in C/C++ since the projects will use these programming languages. Do not take this class if you cannot program. 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, come and talk to us.

Readings

Most readings will be chosen from the (required) textbook, which is readily available from many standard online retailers:

Stuart Russell and Peter Norvig
Artificial Intelligence: A Modern Approach
(most recent edition - currently: 3rd edition),
Pearson/Prentice Hall
(ISBN 978-0-13-604259-4)

The authors made extensive revisions from one edition to the next one. We therefore suggest that you buy the latest edition. Definitely do not use the first edition. We will not cover all of the chapters and, from time to time, cover topics not contained in the book.

Additional material will be provided as necessary.

Class Tools

The class web pages are maintained at http://idm-lab.org/wiki/360-Fall17/. The discussion forum is maintained on Piazza and the scores on blackboard.usc.edu.

Questionnaires

We will ask you to fill out several questionnaires for different reasons: for example, because we want to learn a bit more about you so that we can tailor the class toward your skills and expectations; because we want to evaluate certain features of the class, and because we want to 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. We might use information from the questionnaires in our publications.

Lectures and Exercise Sessions

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. We highly encourage you to take notes during the lectures and exercise sessions. 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 do not understand, feel free to interrupt the lecture or exercise session with questions. Your active participation in class is crucial in making the class successful. Use your colleagues as a resource (they are working toward the same goal as you are), for example, by forming study groups or posting questions on the discussion forum on Piazza that the TAs monitor on a daily basis. (We encourage you to participate actively on the discussion forum, by both asking and answering questions. If you are were consistently very active in helping other students on Piazza and - this way - demonstrate your knowledge of the class material, we will consider giving you up to 1.5 percent extra credit overall, which might help you in case you end up close to a grade boundary. The TAs might not respond right away to give the students in class a chance to respond first.) If you need additional help, please feel free to go by the TAs during their office hours. The TAs are experienced and will be able to answer all of your questions, including about the textbook, lectures, projects and assignments. (If you need clarifications from an instructor about a lecture, please ask the instructor who taught the lecture.)

Assignments

To help you prepare for the exams, we will post "text-book style" homework assignments and their solutions. We will not collect or grade your solutions. However, solving these assignments before looking at the solutions is important as it will ensure your understanding of the material in preparation for the exams. Assignments are made available on Wednesday nights (covering the material taught in the current), sample solutions will be made available on Monday nights (five days later), and the sample solutions will be discussed during the exercise session(s) on those Mondays and afterward. You can discuss the assignments freely with your co-students. In fact, we encourage you to form study groups to discuss the assignments and come up with solutions.

Projects

There will be three graded two-week projects, all of which are mandatory. Most or all of the projects will involve some programming problems in C/C++ in addition to more theoretical questions. All of them have to be done individually. You are required to cite all 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), unless we provided them with the projects. You are not allowed to discuss with others how to solve the projects.

Please start to work on your projects early and hand them in early. There is a grace period of 24 hours and then a linearly increasing penalty for late submissions so that submissions that are late by 72 hours (or more) after the original deadline will receive no credit. So, for example, if a project is due on Monday at midnight, and a) you hand it in on Tuesday at midnight, you maximum score is 100 percent; b) you hand it in on Wednesday at midnight, your maximum score is 50 percent; and c) you hand it in on Thursday at midnight, you will receive no credit for it.

Exams

There will be one midterm and one final, all of which are mandatory. The exams have to be solved individually in class. You need to write the exams with the section that you are registered for. No makeups will be given. The exams will be open textbook ("Artificial Intelligence - A Modern Approach" only) and open printed or hand-written (but not electronic) notes (including, but not limited to, all material posted on this wiki). All exams will be comprehensive but with a focus on material not yet tested in a previous exam. Bring a calculator and your USC ID to all exams. Using computers, cell phones or similar equipment is not allowed, not even to access electronic versions of the textbook. Exams written in pencil receive a zero score.

Schedule

The exercises occupy 1 hour of the 4 hours of class time each week (except for the first week of classes). During the exercises, the TAs will answer any questions that you might have and review solutions to selected exercises from the previous week. On midterm days, the whole 110 minutes are devoted to the exam, and thus there will be neither a lecture nor an exercise. The dates and times of the exams are listed in the schedule.

Grades

We will not grade on a curve. Projects and exams have the following weights:

  • Project 1: 10%
  • Project 2: 10%
  • Project 3: 10%
  • Midterm: 35%
  • Final: 35%

The intended grading scale is as follows.

  • 95% - 100%: A+ (only in spirit; USC allows only for an A)
  • 90% - 95%: A+ (only in spirit; USC allows only for an A)
  • 85% - 90%: A
  • 80% - 85%: A-
  • 75% - 80%: B+
  • 70% - 75%: B
  • 65% - 70%: B-
  • 60% - 65%: C+
  • 55% - 60%: C
  • 50% - 55%: C-
  • 45% - 50%: D+
  • 40% - 45%: D
  • 35% - 40%: D-
  • 00% - 35%: F

The instructors reserve the right to adjust the grading scale.

The instructors might give students a bonus of up to 1.5 percent for frequently helping other students on the discussion forum.

The instructors 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 that we will do about that. Grades are based on performance, not need or personal circumstances, and the instructors do not negotiate grades. Thus, do not take CS360 (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.

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

Excuses

We will not accept excuses unless you provide 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). For example, you will need to let us know about an illness when it develops, not a couple of days before an exam when you suddenly notice that you lost so much time that you can no longer catch up with the rest of the 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.

Academic Integrity

USC seeks to maintain an optimal learning environment. General principles of academic honesty include the concept of respect for the intellectual property of others, the expectation that individual work will be submitted unless otherwise allowed by an instructor, and the obligations both to protect one's own academic work from misuse by others as well as to avoid using another's work as one's own. All students are expected to understand and abide by these principles. We will strictly enforce the student conduct code and refer students to the Office of Student Judicial Affairs and Community Standards for further review, should there be any suspicion of academic dishonesty, and suggest that they follow the recommended sanctions in case they should find that there was academic dishonesty. We typically suggest an F as overall class grade as penalty, if asked. Scampus, the Student Guidebook, contains the student conduct code and the academic review process: https://policy.usc.edu/scampus-part-b/.

Recommendation Letters

If you think you might need a recommendation letter at some point in time, please read Sven's FAQ. Sven currently does not write recommendation letters for students in his current or previous classes due to the insufficient administrative support provided by the department and the large class sizes of his current classes. Ariel is a visiting researcher and thus likely will no longer be at USC when you need a recommendation letter. It is therefore advisable that you look elsewhere for recommendation letters.

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 on the discussion forum and see whether someone can help you. If this approach does not generate the desired result, then the TAs will be 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. Also, they are typically overloaded with questions on exam days or directly before.)

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 instructors 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 please do not hesitate to provide them.

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

Ariel and Sven (yes, please feel free to call the instructors by their first names) and the TAs

P.S.: As you might guess from the lengthy rules above, one of the instructors is of German origin. (The other one is from Israel.)


Powered by PmWiki