Skip to content

Commit 5f5f3ef

Browse files
committed
Change heading level of cli docs and cleanup
The heading shift results in chapters for each command in the Soar manual PDF. Thus, the CLI documentation is generated in a separate step as TeX and included afterwards. This also changes some links possibly wrong due to an alias.
1 parent 053b5f1 commit 5f5f3ef

37 files changed

+2667
-1578
lines changed

docs/reference/cli/cmd_alias.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,7 @@ post-pended to the given definition and then that entire string is executed as a
1818
command. The definition must be a single command, multiple commands are not
1919
allowed. The alias procedure checks to see if the name already exists, and does
2020
not destroy existing procedures or aliases by the same name. Existing aliases
21-
can be removed by using the [unalias](./cmd_alias.md#default-alias)
22-
command.
21+
can be removed by using the [unalias](#default-alias) command.
2322

2423
## Removing an existing alias
2524

@@ -64,7 +63,7 @@ To check what a specific alias is defined as, you would type
6463
alias wmes
6564
```
6665

67-
### Default Alias
66+
## Default Alias
6867

6968
```bash
7069
a alias

docs/reference/cli/cmd_chunk.md

Lines changed: 176 additions & 72 deletions
Large diffs are not rendered by default.

docs/reference/cli/cmd_command_to_file.md

Whitespace-only changes.

docs/reference/cli/cmd_debug.md

Lines changed: 31 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
## debug
1+
# debug
22

3-
Contains commands that provide access to Soar's internals. Most users will not need to access these commands.
3+
Contains commands that provide access to Soar's internals. Most users will not need to access these commands.
44

5-
#### Synopsis
6-
```
5+
## Synopsis
6+
7+
```bash
78
======================================================================
89
Debug Commands and Settings
910
======================================================================
@@ -13,38 +14,52 @@ port Prints listening port
1314
time <command> [args] Executes command and prints time spent
1415
```
1516

16-
#### debug allocate
17+
## debug allocate
1718

18-
```
19+
```bash
1920
debug allocate [pool blocks]
2021
```
2122

22-
This `allocate` command allocates additional blocks of memory for a specified memory pool. Each block is 32 kilobyte.
23+
This `allocate` command allocates additional blocks of memory for a specified
24+
memory pool. Each block is 32 kilobyte.
2325

24-
Soar allocates blocks of memory for its memory pools as it is needed during a run (or during other actions like loading productions). Unfortunately, this behavior translates to an increased run time for the first run of a memory-intensive agent. To mitigate this, blocks can be allocated before a run by using this command.
26+
Soar allocates blocks of memory for its memory pools as it is needed during a
27+
run (or during other actions like loading productions). Unfortunately, this
28+
behavior translates to an increased run time for the first run of a
29+
memory-intensive agent. To mitigate this, blocks can be allocated before a run
30+
by using this command.
2531

26-
Issuing the command with no parameters lists current pool usage, exactly like [stats](./cmd_stats.md) command's memory flag.
32+
Issuing the command with no parameters lists current pool usage, exactly like
33+
[stats](./cmd_stats.md) command's memory flag.
2734

28-
Issuing the command with part of a pool's name and a positive integer will allocate that many additional blocks for the specified pool. Only the first few letters of the pool's name are necessary. If more than one pool starts with the given letters, which pool will be chosen is unspecified.
35+
Issuing the command with part of a pool's name and a positive integer will
36+
allocate that many additional blocks for the specified pool. Only the first few
37+
letters of the pool's name are necessary. If more than one pool starts with the
38+
given letters, which pool will be chosen is unspecified.
2939

30-
Memory pool block size in this context is approximately 32 kilobytes, the exact size determined during agent initialization.
40+
Memory pool block size in this context is approximately 32 kilobytes, the exact
41+
size determined during agent initialization.
3142

3243
### debug internal-symbols
3344

34-
The `internal-symbols` command prints information about the Soar symbol table. Such information is typically only useful for users attempting to debug Soar by locating memory leaks or examining I/O structure.
45+
The `internal-symbols` command prints information about the Soar symbol table.
46+
Such information is typically only useful for users attempting to debug Soar by
47+
locating memory leaks or examining I/O structure.
3548

36-
### debug port
49+
### debug port
3750

3851
The `port` command prints the port the kernel instance is listening on.
3952

4053
### debug time
4154

42-
```
55+
```bash
4356
debug time command [arguments]
4457
```
4558

46-
The `time` command uses a system clock timer to record the time spent while executing a command. The most common use for this is to time how long an agent takes to run.
59+
The `time` command uses a system clock timer to record the time spent while
60+
executing a command. The most common use for this is to time how long an agent
61+
takes to run.
4762

4863
### See Also
4964

50-
[stats](./cmd_stats.md)
65+
- [stats](./cmd_stats.md)

docs/reference/cli/cmd_decide.md

Lines changed: 94 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
## decide
1+
# decide
22

33
Commands and settings related to the selection of operators during the Soar decision process
44

5-
#### Synopsis
6-
```
5+
## Synopsis
6+
7+
```bash
78
=============================================================================
89
- Decide Sub-Commands and Options -
910
=============================================================================
@@ -25,15 +26,18 @@ decide indifferent-selection [--stats]
2526
decide predict
2627
decide select <operator ID>
2728
-----------------------------------------------------------------------------
28-
decide set-random-seed [<seed>]
29+
decide set-random-seed [<seed>]
2930
-----------------------------------------------------------------------------
3031
For a detailed explanation of sub-commands: help decide
3132

3233
```
33-
### Summary Screen
3434
35-
Using the `decide` command without any arguments will display key elements of Soar's current decision settings:
36-
```
35+
## Summary Screen
36+
37+
Using the `decide` command without any arguments will display key elements of
38+
Soar's current decision settings:
39+
40+
```bash
3741
=======================================================
3842
Decide Summary
3943
=======================================================
@@ -52,88 +56,121 @@ Use 'decide ?' for a command overview or 'help decide' for the manual page.
5256
5357
### decide numeric-indifferent-mode
5458
55-
The `numeric-indifferent-mode` command sets how multiple numeric indifferent preference values given to an operator are combined into a single value for use in random selection.
59+
The `numeric-indifferent-mode` command sets how multiple numeric indifferent
60+
preference values given to an operator are combined into a single value for use
61+
in random selection.
5662
57-
The default procedure is `--sum` which sums all numeric indifferent preference values given to the operator, defaulting to 0 if none exist. The alternative `--avg` mode will average the values, also defaulting to 0 if none exist.
63+
The default procedure is `--sum` which sums all numeric indifferent preference
64+
values given to the operator, defaulting to 0 if none exist. The alternative
65+
`--avg` mode will average the values, also defaulting to 0 if none exist.
5866
5967
### decide indifferent-selection
6068
61-
The `indifferent-selection` command allows the user to set options relating to selection between operator proposals that are mutually indifferent in preference memory.
62-
63-
The primary option is the exploration policy (each is covered below). When Soar starts, _softmax_ is the default policy.
64-
65-
**Note**: As of version 9.3.2, the architecture no longer automatically changes the policy to _epsilon-greedy_ the first time Soar-RL is enabled.
66-
67-
Some policies have parameters to temper behavior. The indifferent-selection command provides basic facilities to automatically reduce these parameters exponentially and linearly each decision cycle by a fixed rate. In addition to setting these policies/rates, the _auto-reduce_ option enables the automatic reduction system (disabled by default), for which the Soar decision cycle incurs a small performance cost.
68-
69-
#### indifferent-selection options:
70-
71-
|**Option**|**Description**|
72-
|:---------|:--------------|
73-
| `-s, --stats` | Summary of settings |
74-
| `policy` | Set exploration policy |
75-
| `parameter [exploration policy parameters]`| Get/Set exploration policy parameters (if value not given, returns the current value) |
76-
| `parameter [reduction_policy](value]`| Get/Set exploration policy parameter reduction policy (if policy not given, returns the current) |
77-
| `parameter reduction_policy [exploration policy parameter]`| Get/Set exploration policy parameter reduction rate for a policy (if rate not give, returns the current)|
78-
| `-a, --auto-reduce [on,off](reduction-rate]`| Get/Set auto-reduction setting (if setting not provided, returns the current) |
79-
80-
#### indifferent-selection exploration policies:
81-
82-
|**Option**|**Description**|
83-
|:---------|:--------------|
84-
| `-b, --boltzmann` | Tempered softmax (uses temperature) |
85-
| `-g, --epsilon-greedy` | Tempered greedy (uses epsilon) |
86-
| `-x, --softmax` | Random, biased by numeric indifferent values (if a non-positive value is encountered, resorts to a uniform random selection) |
87-
| `-f, --first` | Deterministic, first indifferent preference is selected |
88-
| `-l, --last` | Deterministic, last indifferent preference is selected |
89-
90-
#### indifferent-selection exploration policy parameters:
91-
92-
| **Parameter Name** | **Acceptable Values** | **Default Value** |
93-
|:-------------------|:----------------------|:------------------|
94-
| `-e, --epsilon` | `[0, 1]` | `0.1` |
69+
The `indifferent-selection` command allows the user to set options relating to
70+
selection between operator proposals that are mutually indifferent in preference
71+
memory.
72+
73+
The primary option is the exploration policy (each is covered below). When Soar
74+
starts, _softmax_ is the default policy.
75+
76+
**Note**: As of version 9.3.2, the architecture no longer automatically changes
77+
the policy to _epsilon-greedy_ the first time Soar-RL is enabled.
78+
79+
Some policies have parameters to temper behavior. The indifferent-selection
80+
command provides basic facilities to automatically reduce these parameters
81+
exponentially and linearly each decision cycle by a fixed rate. In addition to
82+
setting these policies/rates, the _auto-reduce_ option enables the automatic
83+
reduction system (disabled by default), for which the Soar decision cycle incurs
84+
a small performance cost.
85+
86+
#### indifferent-selection options
87+
88+
| **Option** | **Description** |
89+
| :---------------------------------------------------------- | :------------------------------------------------------------------------------------------------------- |
90+
| `-s, --stats` | Summary of settings |
91+
| `policy` | Set exploration policy |
92+
| `parameter [exploration policy parameters]` | Get/Set exploration policy parameters (if value not given, returns the current value) |
93+
| `parameter [reduction_policy](value]` | Get/Set exploration policy parameter reduction policy (if policy not given, returns the current) |
94+
| `parameter reduction_policy [exploration policy parameter]` | Get/Set exploration policy parameter reduction rate for a policy (if rate not give, returns the current) |
95+
| `-a, --auto-reduce [on,off](reduction-rate]` | Get/Set auto-reduction setting (if setting not provided, returns the current) |
96+
97+
#### indifferent-selection exploration policies
98+
99+
| **Option** | **Description** |
100+
| :--------------------- | :--------------------------------------------------------------------------------------------------------------------------- |
101+
| `-b, --boltzmann` | Tempered softmax (uses temperature) |
102+
| `-g, --epsilon-greedy` | Tempered greedy (uses epsilon) |
103+
| `-x, --softmax` | Random, biased by numeric indifferent values (if a non-positive value is encountered, resorts to a uniform random selection) |
104+
| `-f, --first` | Deterministic, first indifferent preference is selected |
105+
| `-l, --last` | Deterministic, last indifferent preference is selected |
106+
107+
#### indifferent-selection exploration policy parameters
108+
109+
| **Parameter Name** | **Acceptable Values** | **Default Value** |
110+
| :------------------ | :-------------------- | :---------------- |
111+
| `-e, --epsilon` | `[0, 1]` | `0.1` |
95112
| `-t, --temperature` | `(0, inf)` | `25` |
96113
97-
#### indifferent-selection auto-reduction policies:
98-
99-
|**Parameter Name**|**Acceptable Values**|**Default Value**|
100-
|:-----------------|:--------------------|:----------------|
101-
| `exponential default` | `[0, 1]` | `1` |
102-
| `linear` | `[0, inf]` | `0` |
114+
#### indifferent-selection auto-reduction policies
103115
116+
| **Parameter Name** | **Acceptable Values** | **Default Value** |
117+
| :-------------------- | :-------------------- | :---------------- |
118+
| `exponential default` | `[0, 1]` | `1` |
119+
| `linear` | `[0, inf]` | `0` |
104120
105121
### decide predict
106122
107-
The predict command determines, based upon current operator proposals, which operator will be chosen during the next decision phase. If predict determines an operator tie will be encountered, "tie" is returned. If predict determines no operator will be selected (state no-change), "none" is returned. If predict determines a conflict will arise during the decision phase, "conflict" is returned. If predict determines a constraint failure will occur, "constraint" is returned. Otherwise, predict will return the id of the operator to be chosen. If operator selection will require probabilistic selection, and no alterations to the probabilities are made between the call to predict and decision phase, predict will manipulate the random number generator to enforce its prediction.
123+
The predict command determines, based upon current operator proposals, which
124+
operator will be chosen during the next decision phase. If predict determines an
125+
operator tie will be encountered, "tie" is returned. If predict determines no
126+
operator will be selected (state no-change), "none" is returned. If predict
127+
determines a conflict will arise during the decision phase, "conflict" is
128+
returned. If predict determines a constraint failure will occur, "constraint" is
129+
returned. Otherwise, predict will return the id of the operator to be chosen. If
130+
operator selection will require probabilistic selection, and no alterations to
131+
the probabilities are made between the call to predict and decision phase,
132+
predict will manipulate the random number generator to enforce its prediction.
108133
109134
### decide select
110135
111-
The select command will force the selection of an operator, whose id is supplied as an argument, during the next decision phase. If the argument is not a proposed operator in the next decision phase, an error is raised and operator selection proceeds as if the select command had not been called. Otherwise, the supplied operator will be selected as the next operator, regardless of preferences. If select is called with no id argument, the command returns the operator id currently forced for selection (by a previous call to select), if one exists.
136+
The select command will force the selection of an operator, whose id is supplied
137+
as an argument, during the next decision phase. If the argument is not a
138+
proposed operator in the next decision phase, an error is raised and operator
139+
selection proceeds as if the select command had not been called. Otherwise, the
140+
supplied operator will be selected as the next operator, regardless of
141+
preferences. If select is called with no id argument, the command returns the
142+
operator id currently forced for selection (by a previous call to select), if
143+
one exists.
112144
113145
#### Example
114146
115-
Assuming operator "O2" is a valid operator, this would select it as the next operator to be selected:
147+
Assuming operator "O2" is a valid operator, this would select it as the next
148+
operator to be selected:
116149
117-
```
150+
```bash
118151
decide select O2
119152
```
120153
121154
### decide set-random-seed
122155
123-
Seeds the random number generator with the passed seed. Calling `decide set-random-seed` (or equivalently, `decide srand`) without providing a seed will seed the generator based on the contents of /dev/urandom (if available) or else based on time() and clock() values.
156+
Seeds the random number generator with the passed seed. Calling `decide
157+
set-random-seed` (or equivalently, `decide srand`) without providing a seed will
158+
seed the generator based on the contents of /dev/urandom (if available) or else
159+
based on time() and clock() values.
124160
125161
#### Example
126162
127-
```
163+
```bash
128164
decide set-random-seed 23
129165
```
130166
131167
### Default Aliases
132-
```
168+
169+
```bash
133170
inds indifferent-selection
134171
srand set-random-seed
135172
```
136173
137174
### See Also
138175
139-
[rl](./cmd_rl.md)
176+
- [rl](./cmd_rl.md)

docs/reference/cli/cmd_default_wme_depth.md

Whitespace-only changes.

docs/reference/cli/cmd_echo.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,4 +33,4 @@ echo This is the first run with disks = 12
3333

3434
## See Also
3535

36-
[clog](./cmd_output.md#default-aliases)
36+
- [clog](./cmd_output.md#default-aliases)

0 commit comments

Comments
 (0)