area
sect 1
CSCD 580 - Intelligent Systems
Syllabus
Class Times
| T, Th | 5:30 - 7:30 | CE 209 |
Text
| Artificial Intelligence : A Modern Approach | Russell and Norvig |
You should try to read the text completely (once through) as quickly
as possible. I encourage you to read (not study ) the text
three times during the course of the term.
Software
I use Debian and Ubuntu (both Linux) primarily and any programs you
might write should run on these systems, so you should test them there.
Otherwise, there are no limits on what software you might use - though if
you do use something strange, you should ensure that I can install anything
needed on my system. Thus, any programming you might do can be done in
any language that runs on Linux systems - that includes C, C++, Java,
Python, Erlang, C# (Mono), Haskell, O'Caml ...
Class Goals
You should leave this class with a basic understanding of some (small, by necessity) parts of AI. You should also know enough about AI to know where to look for answers and enough to know when you're out of your depth (which is not difficult in this area).
I assume that you have a basic understanding of programming and of how to solve
problems in the general area of computing. More specifically, I assume you have
a good working knowledge of Java.
Academic Integrity
Unless otherwise noted, you should work on each of these assignments on your own. Copying
other people's work is considered a Bad Thing and may result in failing the assignment,
failing the class or in you being reported to the department or the University. This
includes copying the work of other people in the class as well as copying work directly from
the web.
If an assignment specifically allows you to work in groups, you should consider that
a strong recommendation to do so. This does not relieve you from the constraints
of the Academic Integrity rules - you should not copy work from other groups, nor
should you copy work from elsewhere (the web, for instance).
You should (if you have not already done so) read the University web page on academic
integrity.
Violations of the Academic Integrity policy or of the ACM Ethics Guidelines are subject to punitive action. This
may (at the discretion of the instructor) range from a Good Stern Talking To to failing an assignment or the course
up to formal university or even (when appropriate and necessary) legal
actions.
Class Structure
I intend to lecture on some aspects of AI (particularly those that interest me) for the first four weeks.
After that, I expect you to prepare writeups (papers) and talks on AI topics that interest you. See the section
on grading for details. I also expect you to participate in class discussions on these topics, so read the
writeups, look the topics up in the text or on the web and be ready.
You are expected to read (at least superficially)
the text completely by the end of the third week
of class. I have also listed chapters that may be of particular interest for the first few weeks
when I'm lecturing.
Schedule
Dates in the calendar are for the Monday of the week, except for assignments
which are for the day the assignments are due.
Dates and topics are approximate and will almost certainly be moved around.
Calendar
Changes Are Probably Inevitable
| 1 | 18 Sept | Introduction | Ch 1,26,27 | |||
| 2 | 25 Sept | Overview of The Field | Ch 1,26,27 | |||
| 3 | 2 Oct | AI Languages | ||||
| 4 | 9 Oct | AI Mathematics | Ch 3, 5, 8, 9, 13, 14,20 | |||
| 5 | 16 Oct | |||||
| 6 | 23 Oct | |||||
| 7 | 30 Oct | n | ||||
| 8 | 6 Nov | |||||
| 9 | 13 Nov | |||||
| 10 | 20 Nov | Thanksgiving | ||||
| 11 | 27 Nov | Hearts Play Off | |
Outcomes and Assessments
The successful student will demonstrate a basic overview of the field of AI as well as a deeper mastery
of one or two subfields.
This mastery will be demonstrated by active class participation, by writing a paper, by presenting a
talk on some theoretical subfield of AI, and by successfully participating (if I get things working well enough) in a Hearts AI playoff.
Assignment General Information
Assignments are due Friday at 8PM of the week indicated. Assignments are not late until
I start grading, however I reserve the right to start grading any time after Friday 8PM.
Assignments received after I start grading but within a week of the due date will be penalized
by one half (that is, the grades will be multiplied by 0.5 when they are included in the final
grade calculations).
Assignments more than one week late will not be graded and will receive a grade of zero.
For more information on assignments see http://foo.ewu.edu/teaching/assignments.html
For information on how to submit the assignments, see http://foo.ewu.edu/teaching/homework-submit.html .
Assignments submitted in other formats or in other ways will not be accepted.
All assignments should be submitted with all of the files in text format
unless otherwise specified. Code should be submitted as source files and
not as object, executable, java class files or other binary files. If I
can't determine a file type or open it with the tools to hand,
I will not grade the assignment and it will
receive a zero.
Documents should be submitted in text format.
That is, no ".doc" files, no Open
Office binary files and so on. HTML is text. So is TeX and
LaTeX. Docbook and XML are
also text but if you submit either of these be sure to provide me
with XSL files as appropriate.
I would like to strongly encourage you to use TeX or (better) LaTeX to
do your write up. LaTeX is a very common format in scientific and
technical publishing and is available as Free and Open Source software
for pretty much every system around.
If you are unfamiliar with LaTeX, you
might try Lyx, a more or less
WYSIWYG document system that can be set to produce LaTeX. Lyx
is available for all major systems.
Do not send back to me as part of your submission
copies of binary files that I make available to you. Do not submit
other binary data files to me - instead give me the programs needed
to generate them.
There are a couple of exceptions to these guidelines. You may submit
writeups in PDF format. You may also submit image files (as needed)
in PNG or JPG format.
Each assignment must be submitted with your name and a brief description
in a file in text format named "ReadMe" and with a Makefile (or Ant build file) if appropriate.
If multiple people work on an assignment I only need one copy, but be sure to put everyone's name
in the "ReadMe" file.
Grading
There are (more or less) three assignments in this course. There is
no final exam.
Two of these assignments involve preparing for a talk to the
class. These should each involve preparing a write-up (in the
form of a research paper, complete with citations), I would like
for one of these to be based in researching a topic of interest
to you in the field of AI and the other to be based specifically
on AI software - either something you write yourself, or giving
information on some available language, software package or
library. You should expect your write ups to be about 8 to 10 pages
when formatted (for example with the LaTeX article format). You
should expect your talk to last about an hour (if un-interrupted - you should consider that questions and challenges are encouraged). I'll give examples of topics and possible software
projects in class. Note that before you commit to a topic or project, you must ok
it with me.
The Hearts assignment is not yet solidified. When it is, I'll make it available here.
You may use web references (use the citation format as recommended by MLA (Modern Language Association) which gives the date accessed),
but I also expect to see references from refereed journals or conferences.
In particular, if you use only online sources, expect me to
wonder how deeply you looked. Do not use vendor web sites,
white papers from vendors or vendor advertising (there are a few exceptions to this, if you are unsure, ask). Do not cite Wikipedia, though it is often useful as a starting point. The ACM is a good place to start
with the "Communications of the ACM", "Computing
Surveys" and more available from web browsers on campus. Also, try the IEEE and
the
IEEE Computer Society with IEEE Software and more.
Another good source is citeseer.
Search (someday)
Notes
References
Oh foo