What exactly is articifial intelligence (AI) about? Giving a generally acceptable definition of the concept of AI is difficult--if not impossible; if we were to ask 100 AI researchers we would likely get as many answers. If we nevertheless attempt at a definition, we could say that "AI is to make a machine do things that would require intelligence if performed by a human". Another functional definition of AI could be that AI is a part of Computer Science where we build and study computerized systems that possess some type of intelligence:
* systems that learn new concepts and tasks
* systems that can reason and come to conclusions about the world
* systems that understand natural language and percieve and understand in a visual sense, and
* systems that perform other tasks that require human intelligence
A final, popular "definition" of AI is that AI problems are those problems that we cannot solve. Once we have found a solution to a problem, it is no longer an AI problem. It is rather witty formulated, but it's still quite true; AI of yesterday is not the same as AI of today, which in turn will differ from AI of tomorrow.
As AI is such a huge area, spanning several subareas--from more general as knowledge representation, search, reasoning, learning, problem solving and planning to more specialized such as expert systems, visual pattern recognition, language understanding and theorem proving--it should be clear that we cannot cover all of these ares in a single course. Therefore, on the AI1 course we will limit ourselves to touch at some of the more general subareas:
Knowledge representation obviously refers to different ways of representing knowledge. We will look closer at logic-based representations, semantic nets, frames, scripts, and rule-based representations.
Search is the basis for just about everything in AI. We will look at a number of classes of search methods and at what type of problems thay are suitable for: blind search for when we have no knowledge about the problem, heuristic search for when we can use problem-specific knowledge, and game search for when we have search problems (chess, for instance) involving an opponent.
Logic is used not only to represent knowledge but also to draw conclusions and reason about it. Propositional calculus, predicate calculus, unification and resolution will be discussed.
Planning and problem solving involves being able to develop and follow a sequence of steps in order to reach a wanted situation. We will look at a number of well-known programs to get a better understanding what this is about.
Learning involves the processes with which a program can increase its knowledge or improve its skills. We will define some different types of learning and look at how they can be applied to a program.