5–6:20pm Tuesdays and Thursdays in Hill 120
Professor: Chung-chieh Shan (Ken)
Office: CoRE 306, 732-445-2003
Office hours: Thursdays 10–11am, or hang around after class, or by appointment
Email: ccshan at cs
Teaching assistant: Pai-Hsi Huang
Office: Hill 402, 732-445-4869
Office hours: Mondays 3–4pm, or by appointment
Email: paihuang at paul
We both prefer email over phone.
The definition of HISP in homework 3 is wrong! It should be "some number greater than 1 (Spanish/Hispanic/Latino) or 1 (not)" rather than "1 (Spanish/Hispanic/Latino) or 0 (not)". Sorry. Just fixed.
To repeat the in-class announcement about the midterm on 11/3: It will be closed-book (but I hope it won't matter). It will cover material up to and including the class on 10/27, but not the class on 11/1. For review, I suggest that you go over the textbook sections assigned for reading, and make sure you know about hidden Markov models (either from the assigned paper or from the textbook) and logic (for example, proof search). Please bring a photo ID.
Oops on homework 1: In part 2, I forgot that Stone's algorithm considers the same state over and over again each time a transition enters it! This means that the problem is intractable without dynamic programming. So, please solve part 2 using dynamic programming rather than Stone's algorithm. It'd help you solve the later parts anyway. Thanks to Adrian.
More on homework 1: Please feel free to use any of the equivalent formal definitions of a Markov decision process. For example, you can separate decision nodes from chance nodes or merge them together. You can also attach a reward to an action from a state rather than a state. Finally, note that you can sell pancakes while making them; you just can't make two batches of pancakes at the same time.
In homework 1, if you only have 1 pancake, then it sells in the next 10 minutes with probability 80%. In general, if you have fewer pancakes to sell than the demand, then you sell all the pancakes you have. Also, you can make a new batch of pancakes even as you sell an old batch, but if you want to make a new batch when another batch is already and still being made, then you need to throw out the other batch.
A copy of the textbook is now available on reserve at the math library. The first edition of our textbook is also on reserve at the math library, in case someone else is using the second edition. We're trying to get more copies of the second edition on reserve as well, but in the meantime, a chapter map between the two editions is available online.
Please refer to the department's academic integrity policy.
This course is about
under uncertainty. We will learn some representations and algorithms that have been successfully applied in practice, the principles that motivate their design, and how to evaluate the performance of a system.
You should be able to write non-trivial programs that others can run and read. You should know basic ways to represent the state of the world and search a space of states. These two prerequisites together entail that you should be able to write a (principled, if possibly slow) program to solve the Rubik's cube. You should also be familiar with basic calculus and probability theory, though not necessarily from a formal course.
Stuart Russell and Peter Norvig. 2003. Artificial Intelligence: A Modern Approach, 2nd ed. Prentice Hall. ISBN: 0-13-790395-2. We will also distribute some articles for you to read.
There will be 6 homework assignments. Homeworks will generally be due two weeks after being handed out. Some homework problems will ask you to respond in prose or equations. Other problems will ask you to write a program, submit it, and describe how it works and how well it works. (If you are not a CS graduate student and need an account to do the programming assignments, please let us know.)
There will be a midterm in early November. There will not be a final exam. Instead, there will be a final project, in which you choose a problem domain, apply the methods we learn, and evaluate your implementations. You must hand in a written proposal for the final project by November 23, and schedule a meeting to discuss it in early December. The final project paper is due on December 16. We will give more detailed instructions about the final project later.
The first homework is for us to gauge your background, so it will not count for grading. Each subsequent homework and the midterm will count for 10% of the final grade, for a total of 60%. The final project proposal and the final project paper will each count for 20% of the final grade.
Because the first homework is for us to gauge your background, please don't discuss it with other people. Except for the first homework, we encourage you to discuss the assignments with others, but you must write the solutions (including programs) yourself, and acknowledge your collaborators in your solutions.
All assignments should be submitted electronically by 5pm on the due date. Each day (or partial day) late discounts the grade for that assignment by 25%, so a submission more than 72 hours late is worthless.
It's tentative! Especially in December.
| Decisions | |
|---|---|
| 9/1 | Welcome; making a rational decision under uncertainty
|
| 9/6 | Making a sequence of decisions (Markov decision processes)
|
| 9/8 | (cont'd: value iteration, policy iteration)
|
| 9/13 | Uncertain perception: partially observable Markov decision processes
|
| 9/15 | Uncertain model: reinforcement learning
|
| Graphical models | |
| 9/20 | Inference from a sequence of observations (hidden Markov models); model estimation (maximum likelihood, maximum a posterior, Bayesian)
|
| 9/22 | (cont'd: variable elimination)
|
| 9/27 | Guest lecture by Prof Michael Littman begins at 4:40pm |
| 9/29 | Guest lecture by Prof Vladimir Pavlovic |
| 10/4 | Graphical models for probability distributions (Bayes nets)
|
| 10/6 | Inference using graphical models; causality
|
| 10/11 | The complexity of exact inference; approximate Bayesian inference: sampling
|
| 10/13 | Approximate Bayesian inference (factoring); modeling exercise |
| 10/18 | First-order probabilistic models |
| 10/20 | (cont'd)
|
| Learning from data | |
| 10/25 | Learning decision trees |
| 10/27 | Learning to generalize: overfitting and pruning
|
| 11/1 | Learning probability distributions (ML, Bayesian, MAP)
|
| 11/3 | Midterm
|
| 11/8 | Learning probability distributions (cont'd)
|
| 11/10 | Learning probability distributions (cont'd)
|
| 11/15 | Inductive logic programming |
| Neural networks | |
| 11/17 | Perceptrons
|
| 11/22 | (no class)
|
| 11/24 | (no class) |
| 11/29 | Multi-layer neural networks; discuss final project proposals
|
| 12/1 | Structuring neural networks and Bayes nets |
| More ways to learn | |
| 12/6 | Non-parametric/instance-based methods (histograms, kernels, nearest neighbors) |
| 12/8 | Natural language |
| 12/13 | Boosting
|
| 12/16 | (no final exam)
|