|
Overview
Algorithms and representations used in artificial intelligence. Introduction and implementation of algorithms for search,
planning, perception, knowledge representation, logic,
probabilistic representation and reasoning, robotics,
and machine learning.
Some portions of the course will be based on material from Ron Parr's
Spring 2014 Intro to AI course.
Instructor
George Konidaris
Office: North 133
Office Hours: Mondays 5-6pm, Tuesdays 12-1pm
Email: gdk at cs dot duke dot edu
TA
Cameron Allen
Office: N141 North
Office Hours: Wednesdays 11:30am-12:30pm, Thursdays 11am-12pm, at LSRC D309
Email: cam at cs dot duke dot edu
UTAs
Diego Farias Canepa
Office Hours: Mondays 6-9pm at The Link (Perkins Library)
Email: diego dot farias dot canepa at duke dot edu
Kaighn Kevlin
Office Hours: Tuesdays 12:55-2:55pm at The Link (Perkins Library)
Email: kaighn dot kevlin at duke dot edu
Yixin Lin
Office Hours: Thursdays 4:30pm-7:30pm at The Link (Perkins Library)
Email: yixin dot lin at duke dot edu
Ying Qi
Office Hours: Tuesdays 7-9pm, Fridays 12-1pm, at The Link (Perkins Library)
Email: ying dot qi at duke dot edu
Yilun Zhou
Office Hours: Mondays 9am-12pm, at North 206.
Email: yilun at cs dot duke dot edu
[Back to top]
Syllabus
- Agents and Agenthood
- Search
- Uninformed
- Informed
- Mini-Max for Game Playing
- Knowledge Representation and Reasoning
- Propositional Logic
- First-Order Logic
- Reasoning and Logical Inference
- Uncertain Knowledge
- Bayes' Rule
- Probabilistic Reasoning
- Bayes Nets
- Planning
- Task Planning
- Robot Motion Planning
- Learning
- Supervised Learning
- Unsupervised Learning
- Reinforcement Learning
- Philosophy of AI
[Back to top]
Prerequisites
You should be
comfortable independently writing and debugging programs in C, C++, or Java.
(The actual assignments with be in Python, but there will be a Python tutorial
early in the semester.)
You should be able to do short proofs.
You should be comfortable with the core computer science concepts
of computational complexity and the analysis of algorithms.
You should know some calculus.
Basic probability and statistics are helpful but not required.
[Back to top]
Schedule
The first class is on Wednesday January 13th. The class meets on a
Monday-Wednesday schedule, from 3:05pm to 4:20pm in LSRC B101.
Note that the schedule below is tentative, and may be revised
as we go along.
Date | Topic | Homework | Slides |
January 13th |
Introduction |
Read chapters 1 and 2
install
python (point 3) (with thanks to Susan Rodger)
Download search.zip
Run pacman.py (complete ASAP)
Familiarize yourself with Python
(Nothing to turn in)
Eclipse users, try python
console in eclipse |
PDF |
January 18th |
No class - Martin Luther King day |
|
|
January 20th |
Uninformed search. |
Read chapter 3 (up to but not including 3.5) |
PDF |
January 25th |
Python Tutorial |
(Cam Allen)
Homework 1 available |
PDF |
January 27th |
Informed Search |
Read the remainder of Chapter 3. |
PDF
A* proof |
February 1st |
Game Playing and Minimax Search |
Read chapter 5, up to and including 5.4.
|
PDF |
February 3rd |
Knowledge Representation and Reasoning: Propositional Logic |
Chapter 7 |
PDF |
February 8th |
KRR: First-Order Logic |
Chapters 8 and 9. |
PDF |
February 10th |
Uncertainty |
Chapter 13.
Optional: The Cancer Cluster Myth,
and The Hot Hand in Basketball: On the Misperception of Random Sequences.
|
PDF |
February 15th |
Cancelled due to weather |
|
|
February 17th |
Game Theory (guest lecturer Vincent Conitzer) |
|
PDF |
February 22nd |
Game Theory (guest lecturer Catherine Moon) |
|
PDF |
February 24th |
Bayesian Networks |
Chapters 13 and 14 (up to 14.4). |
PDF |
February 29th |
Class cancelled |
|
|
March 2nd |
Bayesian Networks II |
|
PDF |
March 7th |
Midterm review |
Midterm review |
|
March 9th |
Midterm |
Midterm |
|
March 14th |
Spring break |
|
|
March 16th |
Spring break |
|
|
March 21st |
Hidden Markov Models |
Chapter 15 (up to and including 15.3) |
PDF |
March 23rd |
Planning |
Chapter 10 |
PDF |
March 28th |
Probabilistic Planning |
Chapter 17 (up to and including 17.3) |
PDF |
March 30th |
Robot Motion Planning |
Sections 25.4 - 25.6 (inclusive) |
PDF |
April 4th |
Machine Learning Intro |
Chapter 18 |
PDF |
April 6th |
Machine Learning II |
|
PDF |
April 11th |
Unsupervised learning. |
Wikipedia entries on
Principal Component
Analysis and ISOMAP.
|
PDF |
April 13th |
Reinforcement Learning |
Chapter 21.
|
PDF |
April 18th |
Philosophy of AI |
Chapter 26
|
PDF |
April 20th |
Final Review |
(last day of class) |
|
Final exam: Monday May 2nd, 9am-noon.
[Back to top]
Assignments
Assignment | Available | Due |
HW1 | January 25th | February 10th (before midnight) |
HW2 | February 15th | February 28th (before midnight) |
HW3 | March 1st | March 11th (before midnight) |
HW4 | March 23rd | April 5th (before midnight) |
HW5 | April 13th | April 24th (before midnight) |
What to turn in:
- For written answers, please turn in a PDF. Do not turn in
Microsoft Word or other formats.
- For programming questions, please include your code and any supporting
files needed, along with some examples of how your code runs. If any
special instructions are needed for compiling or executing your code,
please include this in a readme.txt file. If it is not obvious how to
make your code work, you may not receive full credit!
- It is not necessary to embed an extra copy of your code within your
written solutions. The files you submit are sufficient for this
purpose. However, if you want to reference something in one your
files, please do so in a clear manner by mentioning specific file
names and functions.
- Include your name in all files that you submit. Put it at the
top of the first page of your written solutions and in the comments
to each file you submit for your code.
- Please avoid turning in scanned, handwritten assignments. This
is permitted but discouraged because slows down the grading
process and because it leads to very large files. If there is some emergency that necessitates submitting scanned material, pick a DPI and compression
level that will lead to reasonable file sizes.
- Include figures directly in your PDF rather than
as separate attachments.
How to turn it in:
- Unless otherwise stated, solutions are due immediately before class on the due date.
- Homework assignments should be turned in electronically through
Sakai.
- Include your name as part of the file name of the file you upload
to sakai. (It is confusing for the TAs if they need to wade
through 60 files all named hw.pdf.) If your assignment involves
multiple files, please put them in a single folder/directory and zip
them. Do not use other compression methods such as zoo, rar, etc.
Academic Honesty
- We take academic honesty very seriously. This matrix should leave no ambiguity about what is permitted and what is not permitted.
You should check if you have any confusion about what is permitted.
Lateness policy
- You may request an extension before the due date of the
assignment. Valid reasons for extensions include (but are not
necessarily limited to) interviews, travel
for research or academic purposes, and illness.
- Late assignments (without a previously granted extension) will be
penalized 10% per day. Assignments will not be accepted more than 5
days after the due date.
[Back to top]
Grading
Graded components will be the homeworks (40%), the midterm (30%),
and the final exam (30%).
I expect all Duke students to
conduct themselves with the highest integrity, according to the
Duke Community Standard. If you are unsure what this means,
please refer to this link.
For a more concrete description, this matrix outlines what
forms of collaboration with others are and are not allowed during this
course.
[Back to top]
Resources
Required Text
Artificial Intelligence: A Modern Approach, Stuart Russell and Peter Norvig.
Be sure to check for errata! (scroll down for a list of current errata)
[Back to top]
|