Course Materials
Announcements
12/9/2000: The final is on Thursday, Dec 14,
12:00-2:30, in Ives 305.
12/8/2000: Homework 5 solutions have been
posted.
12/7/2000: 473 projects: Final projects are
due Monday, December 11. You can give the report to
Claire or to any of the TA's or to Cindy Robinson (4146
Upson). Code should be e-mailed to Claire. If the
report is not finished until after 5:00p.m., send it
electronically to cardie@cs.cornell.edu and turn in the
hardcopy the morning of the 12th. Project demos are
entirely optional. They will be held on Monday, December
11th. Those interested in demoing their system should
sign up for a (20-minute) slot on the sign-up sheet on
Claire's door or via e-mail to cardie@cs.cornell.edu.
We'll keep the current schedule available on-line here.
12/7/2000: A brief exam info sheet and last
year's final exam (no solutions) are available in the
handouts section of this web site. The exam is
closed-book, closed-notes.
12/5/2000: For office hours during study week
and the week of exams, please check the personnel portion
of this web site.
11/20/2000: Office hours (Eric Strong) on Tuesday 11/21
postponed to Sunday 11/26 8:00 - 9:00pm instead
11/16/2000: The CTF follow-up tournament has been run.
View the rankings. Now that
the tournament is over, you can view the
secret map jpg, or access
secret.txt directly.
11/14/2000: Homework 4 Solutions have been posted.
11/12/2000: The CTF tournament of teams
that submitted working agent code has been run. View the rankings. A
follow-up tournament will be run later this week for teams
that submitted non-working agent code the first time around.
Congradulations
go out to jrh26Agent, which won the tournament with
a nice (though slow!) search for optimal paths.
11/10/2000: The CS473 code review due on Monday,
November 13, is now OPTIONAL in the sense that your grade
for the first code review can count as the grade for the
second code review if you wish.
11/7/2000: Jason Rohrer will be holding
a last-minute CTF question and answer session on
Wednesday, November 8 from 4:30-5:30pm in Upson 328. You
should attend if you're *still* having trouble getting CTF
running or if you have any remaining questions.
10/30/2000: There has been an extension on
(just) the programming portion for Homework 4. It is now
due Friday, November 10.
10/19/2000: Jason Rohrer will be holding
extra office hours today from 3:00-4:00pm in Upson 328.
10/04/2000: Homework 3 has been posted. The
solutions to the midterm have also been posted (in the
handouts section).
10/01/2000: Some students have been having trouble
understanding resolution proofs and how to get sentences into
normal form. So, I've written up a ROUGH resolution proof
of the sentence that appears on the sample midterm.[.ps .pdf] Reading
pages 277-283 in the book should also help you to understand
this somewhat difficult concept. -Jason Rohrer
9/29/2000: Late assignments can be given to any
of the TA's or to Claire or to her administrative
assistant, Cindy Robinson (4146 Upson). You can also slide
the assignment under Claire's office door (5161
Upson). Note that public access to the 4th and 5th floors
of Upson is not available after 5:00 p.m. weekdays and on
weekends.
9/27/2000: A sample midterm is in the handouts
section below.
9/26/2000: The alpha-beta pruning example from
class is available from the "lecture notes" section below.
9/18/2000: CS472 Homework 1 has been graded. Max, min, and
mean scores are posted below along with the solutions. The cs472
re-grade policy is also described in the homework section below.
9/14/2000: CS472 Homework 2 is now available.
9/2/2000: The in-class midterm will be on Monday, October
2.
Note: All materials are presented as both PostScript (".ps"
and ".eps") and Adobe Acrobat files (".pdf").
No browser we know of can display them directly, so you either have
to specify a helper application (like GhostView and Acrobat Reader
respectively) to display them for you, or you can download the file
and do something with it locally (for example, in unix you could
"lpr" PostScript files to a laser printers which understand PostScript).
Netscape Navigator in the PC lab, at least on some machines, is
already configured to use GhostView. If this is not the case, you
can download free versions of GhostView
and Adobe
Acrobat. Newer versions of GhostView are capable to operate
both PostScript and PDF Files.
Handouts
- Final exam info sheet [.ps
.pdf]
- CS472 final exam from 1999 [.ps .pdf]. Note that the "Q
exam" questions were NOT for undergraduates or MEng
students in CS472 --- they were for the Ph.D. students
who were taking the final in lieu of their qualifying
exam in AI. Also, unlike last year, this year's exam
is closed-book, closed-notes.
- Midterm Solution [.ps
.pdf] Min: 35;
Max: 80/80; Mean: 60.9
- Sample midterm [.ps
.pdf]
- Partial solutions to the sample midterm [.ps
.pdf]
- Rough resolution proof
of the sentence that appears on the sample midterm [.ps .pdf]
- General course information [.ps
.pdf]
Homeworks
Homework 5 solution [.ps .pdf]
- Updated 12/8 1:00p.m.: We just modified the
neural net question with the appropriate grading codes.
Homework 5: due Monday, November 27. [.ps
.pdf]
- Update 11/21: Given the data set provided by us for
the perceptron programming problem (#5), you will find that
the net converges in only a couple of epochs (possibly
regardless of the learning rate). If this is the case,
then, for part iii of the problem, just show the weights
after each epoch...we know that there may be fewer than
the requested THREE intermediate epochs.
- Update 11/24: Here are some hints for getting started on
problem 2a.
A decision list is an ordered series
of tests, each which may contain up to k attributes in a conjunction.
Given some example that you want to classify, you see if it satisfies the
first test. If it does, then you stop, and that example is classified as
"Yes" or "No" (see example in text). Otherwise, you go on to the next
test. You can think of it sort of like a "switch" or "case" statement in a
programming language -- as soon as your example matches a test, you
immediately get an answer, otherwise you keep going. If your example
doesn't satisfy any of the tests, you have some default answer at the
bottom.
Using a k-cnf formula to represent a decision function is sort of the same.
Except now you just have one big test, a cnf
formula with exactly k literals in each clause. You just apply the whole
formula to the example, and if it returns "true", the answer is "yes",
otherwise the answer is "no".
You can view k-cnf as a decision list with only one big test -- a k-cnf
formula -- or as a series of tests. As a series of tests, you apply each
clause in the k-cnf formula to your example, and as soon as a test/clause
returns "false", you immediately answer "no". If all the tests/clauses are
satisfied, you return "yes". Clearly the ordering of the "tests" no longer
matters, because you have to satisfy all of them to get a "yes" answer.
From here, the analysis of PAC learnability is analagous to showing PAC
learnability for decision lists, only it's easier because: a) you have
exactly k literals for each clause/test, and b) you don't have to worry
about ordering of tests.
Homework 4: due Monday, November 6. [.ps
.pdf]
Programming Part: Extension...***now due Friday,
November 10***. [here]
Homework 4 Solution [.ps .pdf]
Problem set portion...Max: 101; Min: 62; Mean: 89.5.
Programming portion...Max: 98; Min: 60; Mean: 83.3.
Homework 3: due Monday, October 23. [.ps
.pdf]
- ****Note: There is a mistake in the Unify pseudocode on
p. 303. The last line should say 'add{var/x}' rather than
'add{x/var}'. To see a walk-through of the (fixed) Unify
algorithm from Russell and Norvig on a fairly complex
example, check here.
Homework 3 Solution. [.ps
.pdf]
Max: 112; Min: 61; Mean: 97.
Homework 2: due Wednesday, September 27. [.ps
.pdf]
Last updated Thursday, 21 September, 15:40pm. Chages made from
original version:
- Only the minor change from least-constraining-variable
to least-constraining-value. Thank you Kevin.
Updated Monday, 18 September, 19:30pm. Chages made from
original version:
- Caption of Figure 1 changed (for the sake of clarity) to: "A
board configuration from a typical game of checkers. Here none
of the pieces are crowned (i.e. there are no kings), white started
from the top, while black started from the bottom and it's black's
turn now."
Homework 2 Solution. [.ps
.pdf] Max:
82; Min: 52; Mean: 72.6.
Homework 1: due Monday, September 11. [.ps
.pdf]
Last updated Sunday, 3 September, 4:45pm. Changes made from original
version:
- Description of arc-consistency algorithm was made more detailed;
- The CSP question explicitly allows (but doesn't require) the
use of unary constraints;
- The CSP question explicitly allows (but doesn't require) the
use of unary constraints;
- Specification of heuristic search problem now allows the use
of cycle-checking to reduce the number of nodes expanded.
Homework 1 Solution. [.ps
.pdf]
Max: 80; Min: 39; Mean: 67.6.
(Very) tentative shedule for future homeworks
- Homework 3: due Monday, October 23
- Homework 4: due Monday, November 6
- Homework 5: due Wednesday, November 22
Regrades
If you believe that an error was made in grading your assignment,
you should submit the assignment for a re-grade. Before doing this,
please check the on-line solution. To submit a re-grade, attach
a sheet to your assignment that clearly explains the problem. Submit
the entire assignment, not just the pages for the parts in question.
Regrades should be submitted within one week from when the assignment
was handed back. You can give your regrade request to Professor
Cardie or to any of the TA's for the course during any of the posted
office hours (or at class). Please submit regrade requests with
care --- your new grade could easily be lower after the regrade
since we reserve the right to look at the entire assignment, not
just the parts in question.
Electronic submission instructions
All homework assignments must be turned in on paper and electronically
by the due date to receive credit. No later than 24 hours after
the due date, you will receive email confirmation of your electronic
submission if we've received it. If you do not receive email confirmation,
it is your responsibility to contact us. If your assignment is not
submitted correctly via the electronic submission process, you have
no guarentees regarding the results of a lost assignment (electronic
submission proves that you handed in your work in the event that
the hardcopy is misplaced).
You should follow these steps when submitting electronically:
- ZIP or TAR.GZ all of the files that you want to hand in together
into one file. Name this file "email@address_X.zip" where email@address
is your complete email address and X is the homework number you
are turning in. So, if Jason Rohrer were turning in homework 35,
he would name his file jcr13@cornell.edu_35.zip;
- Direct your FTP client to playpen.cs.cornell.edu (in windows,
you can do this easily by typing "ftp playpen.cs.cornell.edu"
at the DOS command prompt);
- Log in with username "cs472" and password "deepblue";
- Switch your FTP client into BINARY mode (if using a command-line
client, simply type "bin");
- Put (upload) your archive.
Notes:
- Note that you will not be able to see your file once you upload
it. Some FTP clients, especially graphical clients, try to list
the file directory automatically after an upload. This will cause
the FTP client to display an error message (because you're not
allowed to see the directory contents) but this error message
is no cause for alarm;
- If you make a mistake during your first upload, you won't be
able to upload the file again because you have write-only, no-overwrite
access. So, if you want to upload your archive again, you'll need
to give it a different name. Please add an additional _N to your
file name, where N is the version number of the file. Thus, if
Jason Rohrer flubbed his first upload of jcr13@cornell.edu_35.zip,
he would upload a second file called jcr13@cornell.edu_35_1.zip;
- We will grade the last file you upload before the deadline and
ignore the other older files.
Lecture Notes
- Defining Artificial Intelligence (Lectures 1-2; August 25, 28;
Chapter 1) [.ps .pdf]
- Uninformed search (Lectures 2-4; August 28, 30, September 1;
Chapters 2-3) [.ps
.pdf]
- Heuristic search (Lectures 5-6; September 4, 6; Chapter 4.1-4.2)
[.ps .pdf]
- Local search (Lectures 7-8-9; September 8, 11, 13; Chapter 4.4-4.5,
Chapter 20.8 + material from Mitchell) [.ps
.pdf]
- Game playing (Lectures 9-10-11; September 13, 15, 18; Chapter
5) [.ps .pdf]
Alpha-beta pruning example from class. [.bmp]
- Knowledge-based systems (Lectures 12-19; September
20, 22, 25, 27, 29, Oct 4, 11, 13; Chapters 6-7, 9, 10.1-10.6) [.ps .pdf]
- Planning (Lectures 19-22; Oct 13, 16, 18, 23; Chapter 11) [.ps .pdf]
- Learning I, Introduction, IBL, Decision Trees
(Lectures 22-27; Oct 23, 25, 30; Nov 1, 3, 6; Chapter
18.1-18.4, 18.6)
[.ps .pdf]
- Learning II, Neural Networks (Lectures 28-31,33-34; Nov 8,
10, 13, 15, 20, 27;
Chapters 19, 20.1-20.3)
[.ps .pdf]
Walk-through of perceptron learning example.
- Natural Language Processing...a brief introduction
(Lectures 32, 35) 28-31,33-34; Nov 17, 29.
[.ps .pdf]
Professor Lee's NLP intro slides are slides 1-20 of
her CS150 lecture.
CS473 Related Issues
Tentative Project Due Dates
- Final projects are due Monday, December
11. You can give the report to Claire or to any of the
TA's or to Cindy Robinson (4146 Upson). Code should be
e-mailed to Claire. If the report is not finished until
after 5:00p.m., send it electronically to
cardie@cs.cornell.edu and turn in the hardcopy the morning
of the 12th. Project demos are entirely optional. They
will be held on Monday, December 11th. Those interested
in demoing their system should sign up for a (20-minute)
slot on the sign-up sheet on Claire's door or via e-mail
to cardie@cs.cornell.edu. We'll keep the current schedule
available on-line here.
- Preliminary proposal: due Friday, September 15
- Full proposal: due Friday, September 29
- Status report 1: due Wednesday, October 25
- Status report 2: due Monday, November 13
***NOTE***: The CS473 code review due on Monday,
November 13, is now OPTIONAL in the sense that your grade
for the first code review can count as the grade for the
second code review if you wish.
- Final project (Code + Write-up): due Friday, December 1
Status report format [.ps
.pdf]
Final project submission information [.ps
.pdf]
Final project report format is here.
Project proposal format [.ps
.pdf]
Some project ideas
Interesting web links
- Decision
tree that guesses which evil dictator or TV sitcom
character you're thinking of. (Link submitted by Val
Ebert and John Woschinko.)
- The Temple
of Alife - several nice Java applets that demonstrate some
of the more "colorful" sides of artificial life. (Link submitted
by Jason Rohrer)
- "Self-taught"
checkers - a New York Times article about Fogel's evolutionary
neural network system that learned to play checkers by playing
against itself (note that you will need to sign up for the NY
Times library service to access this article, but it's free).
(Link submitted by Jason Rohrer)
- Deep
Blue's Celebrity Appeal - IBM's supercomputer Deep Blue is
fast becoming a cultural icon. A new survey finds the machine
is as recognizable as "Baywatch" star Carmen Electra. (Link submitted
by Krista Bendig)
- Is
your new AIM pal an artificial intelligence program - What
do you get when you mix AOL, AppleScript, and artificial intelligence
(AI)? Psychoanalysis, Internet style. (Link submitted by Stewart
Munoz)
- Tools
for learning Computational Intelligence - Here are some applets
that are designed as tools for learning and exploring some concepts
in artificial intelligence. They are part of the online resources
for Computational
Intelligence. Feedback is welcome. (Link submitted by Kevin
O'Neill)
|