Skip to content

Commit c002300

Browse files
committed
Remove duplicate documentation
Some parts of the usage section in the procedural knowledge learning chapter of the Soar manual were not included in the cli reference, thus they were moved. Discussion see #41
1 parent 6a3a7af commit c002300

File tree

4 files changed

+76
-603
lines changed

4 files changed

+76
-603
lines changed

docs/reference/cli/cmd_chunk.md

+12
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,18 @@ This feature is not yet implemented.
118118

119119
## Preventing Possible Correctness Issues
120120

121+
It is theoretically possible to detect nearly all of the sources of correctness
122+
issues and prevent rules from forming when those situations are detected. In
123+
Soar 9.6.0, though, only one filter is available, `allow-local-negations`. Future
124+
versions of Soar will include more correctness filters.
125+
126+
Note that it is still possible to detect that your agent may have encountered a
127+
known source of a correctness issue by looking at the output of the chunk
128+
stats command. It has specific statistics for some of the sources, while others
129+
can be gleaned indirectly. For example, if the stats show that some rules
130+
required repair, you know that your agent testing or augmenting a previous
131+
result in a substate.
132+
121133
### chunk allow-local-negations
122134

123135
The option `allow-local-negations` control whether or not chunks can be created

docs/reference/cli/cmd_explain.md

+43
Original file line numberDiff line numberDiff line change
@@ -329,6 +329,49 @@ explainer will write out a file with the statistics when either Soar exits or a
329329
`soar init` is executed. This option is still considered experimental and in
330330
beta.
331331
332+
## Explaining Learned Procedural Knowledge
333+
334+
While explanation-based chunking makes it easier for people to now incorporate
335+
learning into their agents, the complexity of the analysis it performs makes it
336+
far more difficult to understand how the learned rules were formed. The
337+
explainer is a new module that has been developed to help ameliorate this
338+
problem. The explainer allows you to interactively explore how rules were
339+
learned.
340+
341+
When requested, the explainer will make a very detailed record of everything
342+
that happened during a learning episode. Once a user specifies a recorded chunk
343+
to "discuss", they can browse all of the rule firings that contributed to the
344+
learned rule, one at a time. The explainer will present each of these rules with
345+
detailed information about the identity of the variables, whether it tested
346+
knowledge relevant to the the superstate, and how it is connected to other rule
347+
firings in the substate. Rule firings are assigned IDs so that user can quickly
348+
choose a new rule to examine.
349+
350+
The explainer can also present several different screens that show more verbose
351+
analyses of how the chunk was created. Specifically, the user can ask for a
352+
description of (1) the chunk’s initial formation, (2) the identities of
353+
variables and how they map to identity sets, (3) the constraints that the
354+
problem-solving placed on values that a particular identity can have, and (4)
355+
specific statistics about that chunk, such as whether correctness issues were
356+
detected or whether it required repair to make it fully operational.
357+
358+
Finally, the explainer will also create the data necessary to visualize all of
359+
the processing described in an image using the new ’visualize’ command. These
360+
visualization are the easiest way to quickly understand how a rule was formed.
361+
362+
Note that, despite recording so much information, a lot of effort has been put
363+
into minimizing the cost of the explainer. When debugging, we often let it
364+
record all chunks and justifications formed because it is efficient enough to do
365+
so.
366+
367+
Use the explain command without any arguments to display a summary of which rule
368+
firings the explainer is watching. It also shows which chunk or justification
369+
the user has specified is the current focus of its output, i.e. the chunk being
370+
discussed.
371+
372+
Tip: This is a good way to get a chunk id so that you don’t have to type or
373+
paste in a chunk name.
374+
332375
## Visualizing an Explanation
333376
334377
Soar's `visualize` command allows you to create images that represent processing

docs/reference/cli/cmd_visualize.md

+8-2
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ applies to visualizing memory systems.
104104
## File Handling Settings
105105

106106
`file-name` specifies the base file name that Soar will use when creating both
107-
graphviz data files and images. You can specify a path as well, for example
107+
Graphviz data files and images. You can specify a path as well, for example
108108
"visualization/soar_viz", but make sure the directory exists first!
109109

110110
`use-same-file` tells the visualizer to always overwrite the same files for each
@@ -114,7 +114,7 @@ command does not yet handle file creation as robustly as it could. If the file
114114
already exists, it will simply overwrite it rather than looking for a new file
115115
name.
116116

117-
`generate-image` specifies whether the visualizer should render the graphviz
117+
`generate-image` specifies whether the visualizer should render the Graphviz
118118
file into an image. This setting is overridden if the viewer-launch setting is
119119
enabled.
120120

@@ -144,6 +144,12 @@ Note that your operating system chooses which program to launch based on the
144144
file type. This feature has not been tested extensively on other platforms.
145145
Certain systems may not allow Soar to launch an external program.
146146

147+
???+ note
148+
For the visualizer to work, you must have Graphviz and DOT installed, which are
149+
free third-party tools, and both must be available on your path. To date, the
150+
visualizer has only been tested on Mac and Linux. It is possible that certain
151+
systems may not allow Soar to launch an external program.
152+
147153
## See Also
148154

149155
- [explain](./cmd_explain.md)

0 commit comments

Comments
 (0)