Frames and Objects

The concept of frames was introduced into AI by Marvin Minsky in 1975. They were a attempt to 'tame' the explosive quality of semantic networks. The frame concept lead to the development of objects orientation. Today it is hard to distinguish frames from objects.

Frames are like classes in OOPS. They have 'slots' (fields) which can contain values or methods, or even values with associated methods. For example, a slot could contain a value which, if changed, invoked some methods as well. Slots can also contain constraints on the values they hold. CLOS, the Common Lisp Object System implements many of these frame features.

The slots can also contain links to other frames. This is similar to a semantic network.

Differences from a standard semantic network.

The nodes in a frame based network have much more structure (the slots) than the nodes of a plain semantic net.

The meaning of the allowed links is limited. (See the article What is KR?, the section concerning sanctioned vs recommended inferences.) This limitation improves search efficiency.

The main links are the is-a link (or a kind of -- ako line) and the instance-of link. The is-a link semantic is that of subclass (or subset). The is-a link allows reasoning via inheritance. For example, if one knows that a dog is a mammal, one can infer certain properties of dogs via inheritance since 'dog' is a subclass of mammal.

The other fundamental link is sometimes called instance-of or, in sets, member. This defines a relation between a class and the individuals belonging to the class.

There, may or may not, be other allowed link types in a frame or object system. The point is that, unlike general semantic nets, the number and meaning of the links is restricted.

Classes, Subclasses and Stereotypical reasoning.

In AI, each basic form of knowledge representation, be tit logic, productions, frames or anything else is likely to be associated with some form of human cognitive behaviour. Frames and Objects are no exception to this rule. The inheritance relation, at the core of these KR's is related to the human activity of stereotyping.

Stereotyping is a very efficient way of thinking. Since dogs and horses are both subclasses of mammal, I can save a lot of effort by storing knowledge common to mammals in one mammal class, rather than repeating it both in the horse class and the dog class.

Convenient and efficient though stereotypes may be, they also have a down side. One can jump to incorrect conclusions. For example, among the common characteristics we normally associate with birds is their ability to fly. So if we a told a robin is a bird, we deduce that it can fly, even if nobody tells us specifically that it does so.

But if you are told that a turkey is a bird, you would nevertheless make a mistake if you used inheritance from the bird class to deduce that turkeys can fly.

So with this form of KR and reasoning you must always include the exceptions. If there are too many exceptions, the method breaks down.