| Lectures: | Tu, Th 12:30 - 1:50 pm in CAS 216 |
| Instructor: | Prof. Margrit Betke |
| Teaching Fellow: | Zheng Wu |
| Class web page: |
http://www.cs.bu.edu/faculty/betke/cs440 |
| Class mailing list: |
cascs440a1-l@bu.edu grscs640a1-l@bu.edu |
| Contact Information: |
| Staff | Phone | Office Hours | Office | |
| Margrit Betke | betke@cs.bu.edu | 353-8919 | Tue 9-11, right after class: Tue 1:50-2:30, Thu 1:50-2:30, and by appointment | MCS 286 |
| Zheng Wu | wuzheng@cs.bu.edu | 353-3326 outside office hours, 358-3246 during office hours on Wed | Tue 5-6, Wed 4-6 and by appointment | Ugrad Lab on Tue, PSY 228A on Wed |
Seeing Me in My Office:
Please
feel free to stop by my office anytime. My office is in MCS 286 (111
Cummington St). I am generally around every day. I may be in
meetings, so the best time to reach me is during office hours. You
can also make an appointment by email. I'm happy to talk with you
about the course, research in computer vision, machine learning, and
pattern recognition, your plans for the future, or anything else.
Check out my
personal web page to get to know me a little.
Responsibilities of Teaching Fellow:
The Teaching Fellow is responsible for helping you out during his
office hours, grading the written homeworks, and designing and grading
the programming projects. Please contact him if you have questions
about your homework grades.
Our goal is to learn about computer systems that exhibit intelligent behavior, in particular, perceptual and robotic systems. Topics include human computer interfaces, computer vision, robotics, game playing, pattern recognition, knowledge representation, planning, and machine learning.
Prerequisites of CS440: Linear Algebra (CAS MA 242) or Geometric Algorithms (CAS CS 232), 1 Year Programming Experience (C, C++, or Java at CS112 level) or consent of instructor. Prerequisites of CS640: Same as above and BA background in Computer Science (e.g., Algorithms, Theory, Programming Languages).
Handouts: The updated course syllabus and most handouts are made available online. Check our course web page at least once a week for homework assignments and other information.
Textbook: I do not require you to buy a textbook. I will hand out course materials in class and direct you to additional materials on the web (e.g., wikipedia). For background reading, you may go to the Science Library on Cummington St. I requested that two books are placed on reserve for you there: Artificial Intelligence by Patrick H. Winston (barnesandnoble and amazon) and Artificial Intelligence A Modern Approach by Russell and Nordig (amazon and barnesandnoble) I will follow the chapters about Expert Systems and Neural Nets in the Winston book. A new 3rd edition of the Russell and Nordig book will appear in November 2009, so I am expecting the price of the current 2nd edition to drop soon.
Computing Environment: You will use the Computer Science Department's main server csa2.bu.edu to submit programming solutions. To get an account on csa2, go to the Computer Science Department's Undergraduate Lab located at 730 Commonwealth Ave. You can work on various platforms in the lab there (and have immediate access to the computing staff and TF help). You can also access csa2 remotely using scp and ssh (e.g., using putty).
For the CS640 course project, you can also use the Human-Computer Interface Lab in PSY 228A. If you want to use the lab for your project, talk to me first, since access to the lab is restricted.
Class Participation: Come to class and participate regularly. Reading the assigned texts and listening in class will only give you a "passive understanding" of the material. I encourage discussions in class to help you acquire an "active understanding" of the material so that you can evaluate existing computer systems critically and learn to develop your own creative solutions.
Reading: To prepare for each class, you will be asked to read wikipedia pages and journal papers, and explore web sites. You can achieve a good understanding and appreciation of the state-of-the-art in artificial intelligence if you read the assigned texts thoroughly.
Homework: The homework includes four programming assignments and several written problem sets. The due dates are listed below. Programs and reports must be submitted electronically. Guidelines for submission are provided with each assignment. Written homework must be handed in at the beginning of class. Late solutions will be levied a late penalty of 20% per day (up to three days). After three days, no credit will be given.
Project: A project is required for students enrolled in CS640. We will announce the project topics after the first programming assignment is due. The project will built on your programming and written assignments. I will discuss your project's scope, design, and presentation with you in my office hours and provide guidance while you work on it in the later part of the semester. Read the project guidelines and project instructions carefully. You may work by yourself or in a group. You will present the project in class at the end of the term. In the presentation, you should introduce the topic of the work, give a problem definition, explain the long-term and short-term goals, and discuss the motivation. Explain the algorithms and report on the experiments and results. How do they relate to previous work? Are they satisfactory? What are your conclusions? Give a critical evaluation. Is this promising work? Has it been successful? What are the limitations? See me in my office hours to discuss your project well in advance of your presentation.
With some additional work, you may be able to use your project to fulfill the project requirement in the BA/MA and MA programs. You may use the Human-Computer Interface Laboratory in PSY 228A to develop your project.
Colloquia: Students enrolled in CS440 and CS 640 are encouraged
to attend the CS Department Colloquia.
In addition to the CS Department Colloquium Series, you may also
check out talks in other departments and at other universities. A
partial list includes:
BU College of Engineering Seminar Calendar ,
CSAIL lab at MIT ,
MIT Department of Electrical Engineering and Computer Science ,
Northeastern College of Computer and Information Science ,
Tufts Department of Computer Science Colloquium,
UMass Boston Department of Computer Science.
Students enrolled in CS 640 must attend three talks on subjects
related to Artificial Intelligence and write a summary on each talk.
The one-page review should give a problem definition, summarize the
algorithms and results, and briefly explain how the work relates to
material discussed in class. Reviews must be submitted at the
beginning of class on the dates listed in the syllabus. Reviews
should be checked for typographical and grammatical errors. Reviews
that are late or contain errors will not receive the grade "A."
Exams: There will be two exams on the material discussed in the class and practiced with homeworks. The exams will be quite easy for students who come to class, participate in our discussions, and keep up with homework assignments and programming projects. The date of the midterm exam is Thursday, October 15, 2009. The final exam will focus on material discussed in the second part of the course, but may also test earlier material. You are allowed to use one double-sided page of notes in each exam.
Grading Policy: Your final grade will be determined roughly as follows:
| CS 440 | CS 640 | |
| Midterm exam | 20% | 20% |
| Final exam | 30% | 30% |
| Programming Assignments | 20% | 10% |
| Written Problem Sets | 20% | 10% |
| Class participation | 10% | 10% |
| Project and presentation | 0% | 15% |
| Talk reviews | 0% | 5% |
You are encouraged to collaborate on the solution of the homework. If you do, you must code up your solutions on your own and acknowledge your collaborators. Each student must submit his or her own electronic version of the solutions. CS640 students may request an exception to this rule for their final project. If you use algorithms or code that are not your own original work and that were not provided in class or discussed in the textbook, you must give a detailed acknowledgment of your source.
Cheating and plagiarism are not worthy of Boston University students. We expect you to abide by the rule stated above and the standards of academic honesty and computer ethics policy described in http://www.bu.edu/computing/ethics/ .
Artificial Intelligence is an elective course that will introduce you to an exciting topic in computer science. It should be fun and not too much of a struggle for you. Make sure that you have had the prerequisites. Depending on your level of programming experience and/or mathematics background, the course may be challenging for you. If you do not understand the material, ask for help immediately. Ask questions in class. If one student is confused about something, then maybe others are also confused and grateful that someone asked. Please come and see me or Vitaly for help or send us email. Our task is to help you learn a very interesting topic.
Course Schedule
| Dates | Topics | Readings | Homework | Programming Projects |
| Th 9/3, Tu 9/8 | Introduction - What is AI? Smart Rooms, The Kids Room | Bobick | . | . |
| Th 9/10, Tu 9/15 | Computer Vision
Last day to ADD class: W 9/16 |
Freeman, Fawcett | H1 out (9/10) | P1 out (9/10, 2 weeks) |
| Th 9/17 | Human-Computer Interfaces | Betke, Kim, Gorman, Lombardi, Crampton. | H1 due (9/17) | . |
| Tu 9/22, Th 9/24 | Neural Nets: Backpropagation | Wikipedia 1, 2, 33> | H2 out (9/24) | P1 due (9/24) P2 out (9/24, 2 weeks) |
| Tu 9/29, Th 10/1 | Applications of Neural Nets, Face Recognition | Sirovich, Turk, Collard Pomerleau, LeCun, Sejnowski |
H2 due (10/1) | . |
| Tu 10/6, Th 10/8 |
Markov Models, Hidden Markov Models with Discrete Observations Last Day to DROP Classes (without a 'W' grade) or change from Credit to Audit: Wed 10/7 |
Rabiner |
CS640 Review-1 due 10/6 No HW3, see handout in class instead . |
P2 due (10/8) |
| Tu 10/13 | No class. Monday schedule. | . | . | . |
| Th 10/15 | Midterm Exam | . | . | . |
| Tu 10/20, Th 10/22 | HMMs with Continuous Output Densities, Applications of HMMs: American Sign Language Recognition, Hand Tracking, Speech Recognition | Graded exams & solutions (10/20)
Oliver, Vogler, Wu Handout on Speech Recognition (10/22) |
. | P3 out (10/22, 2 weeks) |
| Tu 10/27, Th 10/29 | Natural Language Processing, A* Search, Robot Path Planning | Wikipedia: 1, 2, 3 | H4 out (10/29) | . |
| Tu 11/3, Th 11/5, Tu 11/10 |
Game Playing: Minimax, Alpha-Beta, Iterative Deepening | Wikipedia: 1, 2, 3 | CS640 Review-2 due (11/3) | P3 due (11/5)
P4
out (11/10, 2 weeks) |
| Th 11/12, Tu 11/17 | Expert Systems Last Day to DROP Classes (with a 'W' grade): Th 11/12 |
Handout, Wikipedia: 1, 2 |
H4 due (11/17) | CS640 project proposals due (11/17) |
| Th 11/19, Tu 11/24 | Logic, Planning
No class on Th 11/26, Thanksgiving Holiday |
Handout, Wikipedia: 1, 2, 3, 4 |
. | P4 due (11/24) |
| Tu 12/1, Th 12/3 | Planning | Handout, Wikipedia: 1 |
H5 out (12/1) | . |
| Tu 12/8, Th 12/12 | Robotics | Handouts | CS 640 Review 3 due (12/8) | . |
| Tu 12/15 | CS 640 Course Project Presentations | . | H5 due | CS 640 project writeups due |
| 12/19, 9-11 am | Final Exam | CAS 216 | . | . |
The lecture schedule may change depending on the time spent on each topic and whether alternative subjects are discussed. Suggestions for additional topics are welcome! Due dates for homework, CS 640 talk writeups and presentations, and the date of the midterm exam will not change.
Graded homeworks and solutions will be handed out in class. If you miss a class, you can find them on the shelf marked "CS 440/640" located across MCS 135.
Programming Assignment results will be published here.
Check out http://www.cs.bu.edu/faculty/betke/links.html if you need ideas for your class project, if you are looking for a job, or if you are interested in research related to AI and computer vision. You will find a list of links to conferences, journals, research groups, and companies.
|
|