Main Page Contents Schedule Overview Requirements Syllabus Links
Course People
Course Materials
Assignments
Project
Reports
|
Schedule
Class MW8 (7:40-9) ARC 204
Artificial Intelligence is the branch of Computer Science dealing with the construction of computational artifacts to carry out tasks in the real world, beyond the hermetic universe of numbers, instructions and machine data that flourishes inside computers. Nowadays, the real world involves not just ourselves and our physical surroundings, but the resources of text, pictures and other media that we create for one another and store and access electronically. The real-world artifacts of Artificial Intelligence researchers sometimes tackle extravagant tasks, like flying spacecraft, beating the world chess champion, or performing some key human-like interactions with the world (as a specially-built full-scale humanoid robot). It's easy to see why such spectacular behavior might qualify something as intelligent. But plenty of real-world tasks seem mundane, even mindless. Think of getting a wheeled platform to roll across a room without hitting anything, looking at a book and telling who the author is, or printing somebody's latest research paper from the web. What elevates all real-world tasks, including these, to the attention of the loftily-named discipline of Artificial Intelligence? This, more than anything else, is the question I hope you understand the answer to by the end of this class. The real world is fantastically complicated and unpredictable. It is fantastically difficult to carve small and interesting tasks out of the world and solve them in a constrained way, the way you would carve up the problems induced in most computer programs and write separate modules to handle them. A huge range of knowledge plays a role in every real-world task. (Some AI researchers have suggested that real-world problems are so complex and interdependent that any sufficiently interesting problem will effectively involve a solution to all of them. This leads to the gag concept of an AI-complete problem.) There's no way around it: to act in the real world, you have to be pretty smart. This is something you already know intuitively, from living here and muddling through (or better). The lectures, assignments and project in this course are designed to bring this knowledge to the surface. If nothing else, this should give you a renewed appreciation for yourselves and your environment. Technically, much of this course will be focused around logic. Logic is an ideal mathematical tool for thinking about computational artifacts in the real world, because logic relates semantics and inference. Semantics formalizes the relationship between sentences, including computer representations, and the real world (or non-real worlds like the real world), where those sentences are true or false. Semantics is a tool you can use for designing and understanding the representations an AI program uses. Inference (or proof theory) formalizes the logical relationships between sentences (including computer representations) and one another. The starting result about inference is that you can construct syntactic transformations that allow you to derive true sentences from other true sentences.
I expect to give three substantial homework assignments, to be worked out mostly on paper, and two midterm exams, but the major work for the class will be a semester-long project in which you explore representation and reasoning in a real-world domain that you are familiar with (or are willing to become familiar with). Only a systematic study of this kind can allow you to sink your teeth into the meaty problems of AI, and to appreciate the wealth of knowledge, the flexible and varied use of information, and the sophisticated search that underlie successful AI systems. Part of this means running across problems that you didn't anticipate and that you may not be able to solve. The project will be completed in four installments over the semester, to tie the steps involved to the material presented in class and to give the flavor of the methodology for building knowledge bases in programs such as expert systems. You are welcome to work in small groups on the project (up to three people); it can be helpful to brainstorm and check one another's work. Note that since projects are unique and open-ended, working in a group is likely to make you work harder, not less! For the purposes of grading, the homework will count 12%, the midterms will count 24% each, and the project will count 40%.
|