CSCI 460 : Introduction to Artificial Intelligence
|
|
Home Syllabus Schedule Assignments Blackboard Reading Materials Academic Integrity Policy |
CSCI 460: Introduction to Artificial IntelligenceOverview "Introduction to Artificial Intelligence" teaches artificial intelligence from
an intelligent systems perspective. That is, you will learn about methods
(tools) that allow you to build systems that can interact intelligently with
their environment, including those that plan, learn, and reason about the
world. You will also learn to read scientific texts about topics from
artificial intelligence, use methods and systems from artificial intelligence
to solve problems, and program them. PrerequisitesThe official prerequisite is a course in either data structures or programming systems design. You should know a bit about algorithms and data structures since you will have to be able to read pseudo code and understand algorithms from artificial intelligence. It will also help you if you already know something about probabilities, although we will go over the basics of probability theory in class. Finally, you should know how to program in C or C++, since the projects will use them. The most important prerequisite of all, however, is your interest in the course, motivation, and commitment to learning. If you are not sure whether this class is for you, please talk to us. TextbookThe textbook for the course 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 follow the textbook reasonably closely but will not cover all of the chapters and, from time to time, cover topics not contained in the book. Lectures and Sessions Lectures are meant to summarize the readings and stress the important
points. Thus, it will be extremely helpful to you if you do the readings,
ideally before class. If you miss a class, it is your responsibility to find
out what we talked about, including the announcements we made in class. ExamsThere will be two midterms and one final. The midterms will be in class, and the final will be on the officially scheduled date. No makeups will be given. Everyone will be able to vote on whether the exams will be open or closed book. Please bring a calculator to the exams. Projects There will be three graded projects, most or all of which will involve
programming, probably in C or C++. We will not accept late projects and you
will get zero credit for them. All solutions have to be the work of only the
people listed on it. 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 web pages, publications, people, and so on,
other than the textbook, instructor, and teaching assistant. HomeworksTo help you prepare for the exams, we will post "text-book style" homeworks with short questions. We will not collect or grade your solutions. However, solving these homeworks is important because they ensure that you have understood the material and help you to prepare for the exams. We will post solutions to the homeworks approximately one week after we posted the homeworks. 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. QuestionnairesWe 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 course 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. 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 first post the
question to the newsgroup and see whether someone can help you. William will
try to monitor the newsgroup as well and provide help. If this approach does
not generate the desired result, then we are happy to help you in person. We
do answer email but, unfortunately, often will not manage to answer it on the
same day. (Sometimes we will be out of town and it will take even longer.) |
|
Contact the Webmaster (wyeoh @ usc.edu) |