Intelligent Systems Lecture Notes
7 December 2011 • Frames
Outline
How Would You Behave?
Analogous Reasoning
Teach a machine to learn circumstances, and then generalize to new, but related, circumstances.
And then usefully operate in those circumstances.
Marvin Minsky in 1975 suggested a structured, hierarchical representation called
frames
.
The motivation was psychological: how do people do it?
Model that approach in machines.
Frame
A
frame
is a named set of
slots
.
Slots
A
slot
is a name-value pair.
Frame Types
There are two frame types: individual and generic frames.
Generic Frames
A
generic frame
represents a category for a collection of instances.
The category characterizes the instances in some way.
The
:is
a
slot marks a generic frame.
Individual Frames
An
individual frame
represents a particular instance of category.
The
:instance
of
slot marks an individual frame.
The
:instance
of
filler is the generic-frame name describing the category.
Attached Procedures
A generic-frame slot may have attached procedures.
An
attached procedure
has
a
trigger
to start execution, and
a
code body
to execute when triggered.
Inheritance
Psychologically, people build mental stereotypes and modify them (or not) to fit instances.
Inheritance
provides the corresponding mechanism in frames.
Fillers not resident in an instance are supplied by the corresponding generic frame.
Frame Relations
Reasoning
Reasoning with a frame KB involves modeling the problem and then reading slots.
Given a frame KB,
Model the problem by instantiating generic-frame instances.
As the model is developed, inheritance and attached procedures provide slot fillers.
Query the completed model for answers by reading slots.
Local and Global Reasoning
Local reasoning
fills individual-frame slots.
Using inheritance and attached procedures.
Global reasoning
maintains global constraints and structures.
Using attached procedures mostly.
Frame Extensions
Frames are easily extensible in any number of ways:
Other attached-procedure triggers.
Multiple slot fillers.
Other slot facets.
Metaframes.
Multiple Slot Fillers
A slot becomes a name, bag pair.
The bag (or set, possibly) is usually homogeneous.
A multi-filler
:is
a
slot opens the door for multiple inheritance.
Slot Facets
Think of the slot itself as a set of key-value pairs.
Keys so far: name, value, attached procedure.
Each key-value pair is a
slot facet
.
It may be useful to define other slot facets.
permissible value types, access permissions, cardinality constraints, and so on.
Metaframes
An individual frame is an instance of a generic frame.
What is a generic frame an instance of?
One answer is “nothing.”
A
Metaframe
serves as a model for generic frames.
The metaframe determines the structure and behavior of generic frames.
The
:is
a
slot determines fillers.
Summary
References
A Framework for Representing Knowledge by Marvin Minsky in
Mind Design
, MIT Press, 1981.
Object-Oriented Representations (Chapter 8) in
Knowledge Representation and Reasoning
by Ronald Brachman and Hector Levesque, Morgan Kaufmann, 2004.
Frames and Scripts (Chapter C7) in
The Handbook of Artificial Intelligence
, vol. 1, by Avron Barr and Edward Feigenbaum, William Kaufmann, 1981.
Credits
wedding party
by
hirotomo t
under a Creative Commons
BY SA license
.
Tea Ceremony @ Jikoin Temple
by
Hideyuki Kamon
under a Creative Commons
BY SA license
.
This page last modified on 2011 October 9.