You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This component also occurs before the learning episode. Whenever an operator
@@ -347,7 +347,7 @@ literal constants, which variables are the same variables, what constraints must
347
347
be met on the values of each variable and any relationships between variables.
348
348
349
349
EBC uses this underlying logic to determine the identities of objects used
350
-
during the problem-solving. Identities are not simply IDs. Each identity is a
350
+
during the problem-solving. Identities are not simply IDs. Each identity is a
351
351
declarative object that describes a set of variables across multiple rule
352
352
firings and the various properties they hold.
353
353
@@ -551,7 +551,7 @@ Soar’s operationality analysis. In previous versions of chunking, chunking wou
551
551
never add two conditions to a chunk that matched the same superstate working
552
552
memory element. This made sense because chunking was based on a generalization
553
553
of the working memory trace. More than one condition that tested the same WME
554
-
would be redundant. Explanation-based chunk- ing, though, learns based on the
554
+
would be redundant. Explanation-based chunking, though, learns based on the
555
555
reasoning within the original hand-written rules. Since the reasoning behind
556
556
each of the two conditions may be different even if they matched the same WME,
557
557
EBC must always add both conditions. (Note that there are some exceptions. See
@@ -697,11 +697,11 @@ two conditions without losing generality.
697
697
698
698
EBC polishes the conditions of the learned rule by pruning unnecessary
699
699
constraints on literalized elements and replacing multiple disjunction
700
-
constraints with a single simplified dis- junction.
700
+
constraints with a single simplified disjunction.
701
701
702
702
1. Merging disjunctions: If an element in a condition has two disjunction
703
703
tests, the constraints will be merged into a single disjunction that
704
-
contains only the shared val- ues. `{ << a b c >> << b c d >> <x>}` becomes `{
704
+
contains only the shared values. `{ << a b c >> << b c d >> <x>}` becomes `{
705
705
<<bc >> <x> }`, because it is impossible fo `<x>` to be either a or b. This
706
706
will also eliminate any duplicate disjunctions.
707
707
2. Throwing out unnecessary constraints: If an element in a condition has been
@@ -740,7 +740,7 @@ to the fewest number of partial instantiations when the chunk is matched. A
740
740
condition that matches an object with a multi-valued attribute will lead to
741
741
multiple partial instantiations, so it is generally more efficient to place
742
742
these conditions later in the ordering. This is the same process that internally
743
-
reorders the conditions in user-defined productions, as mentioned briefly in
743
+
reorders the conditions in user-defined productions, as mentioned briefly in
744
744
Section 2.3.1.
745
745
746
746
## Subtleties of EBC
@@ -809,7 +809,7 @@ When a problem has been decomposed into more than one substate, a single result
809
809
can produce multiple chunks. This process is called bottom-up chunking. The
810
810
first chunk is produced in the substate where the problem-solving that produced
811
811
the result occurred. The next chunk is based on the implicit match of the first
812
-
chunk in one of the higher level problem-spaces. If that match is lower than
812
+
chunk in one of the higher level problem-spaces. If that match is lower than
813
813
the state that the result is being returned to, Soar will backtrace through the
814
814
chunk match and learn a second chunk (relative to the substate that the chunk
815
815
matched in). This process continues until it learns a chunk that only creates
@@ -839,7 +839,7 @@ Chunking is intended to produce the most general rule that is also correct.
839
839
840
840
Generality is a measure of the space of similar situations that a rule can apply
841
841
to. A more general rule can be applied to a larger space of similar situations.
842
-
A rule is considered over-general if it can apply to situations in which the
842
+
A rule is considered over-general if it can apply to situations in which the
843
843
original problem-solving would have never occurred.
844
844
845
845
Correctness is a requirement that the learned rule produces the exact same
@@ -855,13 +855,13 @@ rules are over-general.
855
855
### Over-specialization and Over-generalization
856
856
857
857
Explanation-based chunking was pursued to address the main limitation of
858
-
traditional chunk- ing:over-specialized rules that were very specific and could
858
+
traditional chunking: over-specialized rules that were very specific and could
859
859
not be applied to many other situations. Specifically, EBC’s identity-based
860
860
variablization and constraint tracking/enforcement has eliminated the core
861
861
source of this issue.
862
862
863
863
The nature of EBC’s algorithm does add two new situations in which rules may
864
-
become over-specialized. Section 4.6.16 discusses how variables used in certain
864
+
become over-specialized. Section 4.6.16 discusses how variables used in certain
865
865
RHS functions need to be literalized to maintain correctness, which can cause
866
866
overspecialization. Section 4.6.7 discusses how testing or augmenting a previous
867
867
result creates non-operational rules that require repair, a process which may
@@ -988,7 +988,7 @@ may consist of exhaustively applying all the operators in the problem space. If
988
988
so, then a convenient way to recognize that all operators have applied and
989
989
processing is complete is to wait for a state no-change impasse to occur. When
990
990
the impasse occurs, a production can test for the resulting substate and create
991
-
a result for the original subgoal. This form of state test builds over-general
991
+
a result for the original subgoal. This form of state test builds over-general
992
992
chunks because no pre-existing structure is relevant to the result that
993
993
terminates the subgoal. The result is dependent only on the existence of the
994
994
substate within a substate.
@@ -1026,7 +1026,7 @@ create its own distinct result in the superstate. Since this is different
1026
1026
behavior than the original substate, this rule would be considered incorrect.
1027
1027
1028
1028
If it were possible, EBC should learn a disjunctive conjunctive condition, with
1029
-
each dis- junction being the superstate conditions tested by each substate rule
1029
+
each disjunction being the superstate conditions tested by each substate rule
1030
1030
that had previously created the substate WME that was repeatedly asserted. This
1031
1031
is why this potential source of incorrect rules is called disjunctive context
1032
1032
conflation.
@@ -1230,7 +1230,7 @@ conditions is true:
1230
1230
from being formed if the problem-solving that led to the result was
1231
1231
dependent on a condition that tested whether a subgoal WME doesn’t exist.
1232
1232
Since there is no practical way to determine why a piece of knowledge
1233
-
doesn’t exist, testing a local negation can result in an over-general and
1233
+
doesn’t exist, testing a local negation can result in an over-general and
1234
1234
incorrect chunk, cf. [prohibiting known sources for correctness issues](04_ProceduralKnowledgeLearning.md#prohibiting-known-sources-of-correctness-issues)
1235
1235
for more information. Note that correctness filters have not yet been
1236
1236
implemented for all the identified potential sources of correctness issues.
@@ -1737,7 +1737,7 @@ transitive constraints were added to a particular chunk.
1737
1737
### explain identity
1738
1738
1739
1739
explain identity will show the mappings from variable identities to identity
1740
-
sets. If avail- able, the variable in a chunk that an identity set maps to will
1740
+
sets. If available, the variable in a chunk that an identity set maps to will
1741
1741
also be displayed.
1742
1742
1743
1743
By default, only identity sets that appear in the chunk will be displayed in the
@@ -1828,7 +1828,7 @@ The `visualize` command can generate two graphical representations of the
1828
1828
analysis that chunking performed to learn a rule. While the explainer provides
1829
1829
more date, these images are the easiest and most effective ways to quickly
1830
1830
understand how a chunk was formed, especially for particularly complex chunks.
1831
-
The visualizer can create two types of chunking-related images:
1831
+
The visualizer can create two types of chunking-related images:
1832
1832
1833
1833
1. An image that shows the entire instantiation graph at once and how it
1834
1834
contributed to the learned rule. Use the command visualize ebc analysis to
0 commit comments