|
Pandemonium Abstraction Patterns
Pandemonium may be used to implement abstraction - to turn input
information into a (usually) smaller amount of higher-value output
information.
On this page:
Simple Abstraction Patterns
An individual demon might implement one or more of the patterns
described below.
Accumulation
Output is an accumulation of the input.
Organization
Output is the input organized in a different way.
Discrimination
Output is a subset of input.
Composition
Output describes objects composed of components in the input.
Deduction
Output describes specifics are deduced from input that describes
a specific instance of a more general class. (ex. "That dog sees
me. Dogs that see me may attack. Therefore that dog may attack.")
Induction
Output describes generalizations observed in the input. (ex. None
of the dogs that have seen me have attacked. Therefore, being
attacked by a dog (around here, doing what I am doing) is not a
big risk.)
Evaluation
Output is a goodness resulting from an evaluation of (some aspect
of) the input.
Derivation
Output describes objects derived from what is described in the input.
This is a general class - all types of abstraction are special cases
of derivation.
Partial Abstraction
Output is a subset of the input plus information that is an
abstraction of the remainder of the input.
Special Abstraction Patterns
Decision
A decision is a special case of conception where the output concept
is a decision to take some action - usually, a choice made from a
set of options. Using pandemonium for decision-making and
problem-solving is described here.
Emotion
An emotion is a special case of evaluation, in which the resulting
goodness variable persists over time and is affected over time by
factors particular to the type of emotion. (ex. If something
potentially bad is observed fear goes up, but if nothing bad
develops for a while, the fear slowly goes down.) Using emotions
in pandemonium is explored here.
Complex Abstraction Patterns
Input data may be complex - it may be from multiple sources or the
data from a single source may have multiple parallel components,
such as an array of pixels. Pits or layers of demons may be used
to abstract more useful information from complex input.
Sensation
Raw input data (ex. from an eye or camera) is accumulated and organized
into a useful form, the results being sensations. If only one demon is
used, the process might be called buffering. If the output is to be an
array of pixels, there could be one demon for each pixel or one demon
that returns an array of pixels.
Perception
Sensations (ex. a set of dark pixels in a row) are recognized as being
components of a composite object (ex. a line). This process might be
referred to as 'pattern-matching'. An individual demon might watch for
one or more patterns. An individual demon might watch a subset of the
input (ex. a particular range of pixels).
Conception
A combination of perceptions (ex. 3 lines) may be recognized, on the basis
of having certain characteristics and relationships (ex. each line
sharing an endpoint with only one other), as being an instance of a more
general thing - a concept (ex. a triangle). A concept (ex. that animal
over there) may also be recognized as an instance of a general concept
(ex. an animal that might eat me). Concepts may be created from
perceptions or from other concepts.
|