However, increasingly specific control rules may increase the match cost for rules so much that a brute-force search of the problem space would be less costly in some instances. This is known as the utility problem. PRODIGY addresses the utility problem in its ability to selectively forget rules whose cost exceed their utility.
Static Analysis of Control Rules for Learning
Before building a problem-solving trace to attempt EBL of control rules,
the STATIC module may be invoked. STATIC is based on a predictive model
of EBL and acts as a compiler for control rules in domains that support
such analysis before any training examples are run. STATIC is faster and
better than EBL but not appropriate for all domains.
(See Issues for additional information.)
Learning
Abstraction
Hierarchies
The ALPINE module abstracts domain knowledge based on a detailed analysis
of the domain knowledge
PDL
sentences. When problem solving, PRODIGY can
find solutions in the abstraction space and then refine the solution to the
entire problem space. Both EBL and ANALOGY can call on ALPINE to effect
abstractions for their particular learning strategies. (Note: see
Planning in PRODIGY for more information
on the ALPINE module.)
Learning by
Analogy
The ANALOGY module uses reasoning strategies and justifications
saved from previous
problem-solving traces to build strategies for a new problem. These
strategies are evoked when the problem solver comes to a place where the
new problem's justifications are similar to a previously-solved problem.
ANALOGY then directs the problem-solving strategy in the direction that
led to the previous solution.
Knowledge Acquisition by Experts (
Instructability)
The APPRENTICE module is a user-interface that allows a user to guide
PRODIGY's problem-solving strategies and learning. Thus, both
domain
knowledge and control rules may be added to the system through
APPRENTICE.
Deriving New Knowledge from Experimentation
The EXPERIMENT module is invoked when the system discovers a difference
between internal expectations of plan execution and external observation.
The module then tries to refine its domain knowledge in an effort to
determine the cause for this difference. It is unclear if this module has
actually been integrated into PRODIGY or how this affects the underlying
assumption of complete domain knowledge. (See
Issues for more discussion of this assumption.)