Course Meeting Times
Lectures: 2 sessions / week, 1.5 hours / session
Recitations: 1 session / week, 1 hour / session
Description
This course introduces representations, techniques, and architectures used to build applied systems and to account for intelligence from a computational point of view. This course also explores applications of rule chaining, heuristic search, logic, constraint propagation, constrained search, and other problem-solving paradigms. In addition, it covers applications of decision trees, neural nets, SVMs and other learning paradigms.
Prerequisites
6.001: We will have regular assignments that expect you to be able to read and write Scheme. This is the only formal pre-requisite.
18.02: We will assume that you know what the chain rule is and partial derivatives and dot products. If you have not taken 18.02 (or are not taking it concurrently), you should really wait to take 6.034 until you have.
Topics
The course covers three major areas:
- Search (3 weeks)
- Graph Search
- Constraint Satisfaction
- Games
- Machine Learning (5 weeks)
- Nearest Neighbors
- Decision Trees
- Neural Networks
- SVM
- Knowledge Representation and Inference (5 weeks)
- Propositional and First Order Logic
- Rule-based Systems
- Natural Language
Grading
ACTIVITIES | PERCENTAGES |
---|---|
Final | 30% |
Quizzes | 30% |
On-line Assignments + Recitation Participation | 25% |
Design Problems | 15% |
The on-line assignments are an essential component of the subject and are required. A 90% score on any on-line assignment gets full credit. There is no difference between 90% and 100%. An average score below 75% on the on-line assignments will result in a grade of incomplete in the subject.
Problems submitted late will receive half credit unless you have a valid reason and make an arrangement with your TA.
Collaboration
- Everything you do for credit in this subject is supposed to be your own work; this includes on-line work.
- You can talk to other students (and TAs) about approaches to problems, but then you should sit down and do the problem yourself. This is not only the ethical way but also the only effective way of learning the material.
Subject Objectives
A student completing 6.034 will be able to:
- Explain the basic knowledge representation, problem solving, and learning methods of Artificial Intelligence.
- Assess the applicability, strengths, and weaknesses of the basic knowledge representation, problem solving, and learning methods in solving particular engineering problems.
- Develop intelligent systems by assembling solutions to concrete computational problems.
- Understand the role of knowledge representation, problem solving, and learning in intelligent-system engineering.
And many 6.034 students will, as measured by exit survey:
- Develop an interest in the field sufficient to take more advanced subjects.
Desired Student Outcomes
Key
H - Homework
Q - Quizzes, Final
A student completing 6.034 will be able to:
OUTCOMES | HOW MEASURED | RELATED OBJECTIVES |
---|---|---|
1. Predict the behavior of backward-chaining rule-based systems. | H, Q | 1, 2 |
2. Predict the behavior and estimate the cost in time and space of various heuristic and optimal search methods (i.e. depth-first, breadth-first, best-first, uniform-cost, and A*), and choose the appropriate method for particular problems. | H, Q | 1, 2 |
3. Predict the behavior of various constraint-satisfaction methods (backtracking, forward-checking, constraint propagation), and choose the appropriate method for particular problems. | H, Q | 1, 2 |
4. Develop small logic-based, rule-based and search-based systems, predict performance characteristics, and describe the role of rule-chaining and search in intelligent-system engineering. | H | 3, 4 |
5. Use rules and logic to represent behavioral, classification, and causal knowledge. | H, Q | 1, 2 |
6. Apply basic machine learning methods such as nearest neighbors, identification trees, and neural nets. | H, Q | 1, 2 |
7. Predict the behavior of the basic machine-learning methods, and choose the appropriate method for particular problems. | H, Q | 1, 2 |
8. Modify and extend simple implementations of the subject's representations and methods. | H, Q | 3, 4 |
9. Develop small learning systems, predict performance characteristics, and describe the role of learning in intelligent-system engineering. | H | 3, 4 |
10. Discuss key issues in knowledge representation, problem solving, and learning. | H | 1, 2, 3, 4, 5 |