@reicek/neataptic-ts 0.1.25 → 0.1.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/copilot-instructions.md +11 -0
- package/.github/skills/trace-analyzer-extension/SKILL.md +3 -3
- package/.github/skills/trace-analyzer-extension/assets/extension-checklist.md +1 -1
- package/.github/skills/trace-analyzer-extension/references/analyzer-extension-workflow.md +1 -1
- package/.github/skills/trace-audit-reporting/SKILL.md +3 -3
- package/.github/skills/trace-audit-reporting/references/trace-analysis-workflow.md +1 -1
- package/package.json +19 -13
- package/plans/Flappy_Bird_Folder_Documentation_Pass.md +4 -4
- package/plans/README.md +24 -0
- package/plans/Roadmap.md +62 -40
- package/plans/analyze-trace-solid-split.plans.md +66 -0
- package/plans/architecture-solid-split.plans.md +9 -15
- package/plans/asciiMaze-typescript-repair.plans.md +1 -1
- package/plans/generate-docs-solid-split.plans.md +87 -0
- package/plans/methods-docs.plans.md +25 -1
- package/plans/methods-solid-split.plans.md +14 -14
- package/plans/neat-docs.plans.md +9 -1
- package/plans/neat-test-surface-repair.plans.md +1 -1
- package/plans/render-docs-html-solid-split.plans.md +68 -0
- package/plans/src-no-explicit-any-cleanup.plans.md +1 -1
- package/plans/utils-docs.plans.md +6 -1
- package/scripts/analyze-trace/analyze-trace.analysis.ts +479 -0
- package/scripts/analyze-trace/analyze-trace.constants.ts +35 -0
- package/scripts/analyze-trace/analyze-trace.io.ts +69 -0
- package/scripts/analyze-trace/analyze-trace.report.ts +100 -0
- package/scripts/analyze-trace/analyze-trace.shared.ts +116 -0
- package/scripts/analyze-trace/analyze-trace.ts +45 -0
- package/scripts/analyze-trace/analyze-trace.types.ts +72 -0
- package/scripts/assets/theme.css +80 -23
- package/scripts/copy-examples.ts +239 -0
- package/scripts/export-onnx.ts +223 -0
- package/scripts/generate-bench-tables.ts +378 -37
- package/scripts/generate-docs/generate-docs.constants.ts +107 -0
- package/scripts/generate-docs/generate-docs.order.ts +355 -0
- package/scripts/generate-docs/generate-docs.state.ts +31 -0
- package/scripts/generate-docs/generate-docs.targets.ts +165 -0
- package/scripts/generate-docs/generate-docs.ts +63 -0
- package/scripts/generate-docs/generate-docs.types.ts +112 -0
- package/scripts/generate-docs/output/generate-docs.output.folder-index.utils.ts +167 -0
- package/scripts/generate-docs/output/generate-docs.output.ordering.utils.ts +353 -0
- package/scripts/generate-docs/output/generate-docs.output.readme.utils.ts +420 -0
- package/scripts/generate-docs/output/generate-docs.output.ts +123 -0
- package/scripts/generate-docs/output/generate-docs.output.warnings.utils.ts +219 -0
- package/scripts/generate-docs/symbols/generate-docs.symbols.collection.utils.ts +365 -0
- package/scripts/generate-docs/symbols/generate-docs.symbols.jsdoc.utils.ts +373 -0
- package/scripts/generate-docs/symbols/generate-docs.symbols.normalize.utils.ts +155 -0
- package/scripts/generate-docs/symbols/generate-docs.symbols.render.utils.ts +149 -0
- package/scripts/generate-docs/symbols/generate-docs.symbols.signature.utils.ts +289 -0
- package/scripts/generate-docs/symbols/generate-docs.symbols.ts +11 -0
- package/scripts/mermaid-cli.mjs +102 -22
- package/scripts/mermaid-cli.ts +736 -0
- package/scripts/render-docs-html/render-docs-html.assets.ts +54 -0
- package/scripts/render-docs-html/render-docs-html.mermaid.ts +245 -0
- package/scripts/{render-docs-html.sidebar.ts → render-docs-html/render-docs-html.navigation.ts} +141 -144
- package/scripts/render-docs-html/render-docs-html.pages.ts +333 -0
- package/scripts/render-docs-html/render-docs-html.shared.ts +333 -0
- package/scripts/render-docs-html/render-docs-html.types.ts +42 -0
- package/scripts/render-docs-html.ts +23 -587
- package/scripts/run-docs.ts +238 -0
- package/scripts/write-dist-docs-pkg.ts +40 -0
- package/src/README.md +75 -75
- package/src/architecture/connection/README.md +5 -5
- package/src/architecture/layer/README.md +508 -508
- package/src/architecture/network/README.md +1458 -1458
- package/src/architecture/network/activate/README.md +694 -694
- package/src/architecture/network/bootstrap/README.md +77 -77
- package/src/architecture/network/connect/README.md +74 -74
- package/src/architecture/network/deterministic/README.md +135 -135
- package/src/architecture/network/evolve/README.md +364 -364
- package/src/architecture/network/gating/README.md +130 -130
- package/src/architecture/network/genetic/README.md +399 -399
- package/src/architecture/network/mutate/README.md +897 -897
- package/src/architecture/network/onnx/README.md +720 -720
- package/src/architecture/network/onnx/export/README.md +728 -728
- package/src/architecture/network/onnx/export/layers/README.md +450 -450
- package/src/architecture/network/onnx/import/README.md +618 -618
- package/src/architecture/network/onnx/schema/README.md +32 -32
- package/src/architecture/network/prune/README.md +245 -245
- package/src/architecture/network/remove/README.md +135 -135
- package/src/architecture/network/runtime/README.md +106 -106
- package/src/architecture/network/serialize/README.md +542 -542
- package/src/architecture/network/slab/README.md +608 -608
- package/src/architecture/network/standalone/README.md +212 -212
- package/src/architecture/network/stats/README.md +84 -84
- package/src/architecture/network/topology/README.md +465 -465
- package/src/architecture/network/training/README.md +200 -200
- package/src/architecture/node/README.md +5 -5
- package/src/architecture/nodePool/README.md +14 -14
- package/src/methods/README.md +99 -99
- package/src/methods/activation/README.md +189 -189
- package/src/methods/cost/README.md +131 -131
- package/src/methods/rate/README.md +86 -86
- package/src/multithreading/README.md +77 -77
- package/src/multithreading/workers/browser/README.md +8 -8
- package/src/multithreading/workers/node/README.md +8 -8
- package/src/neat/README.md +148 -148
- package/src/neat/adaptive/README.md +120 -120
- package/src/neat/adaptive/acceptance/README.md +40 -40
- package/src/neat/adaptive/complexity/README.md +137 -137
- package/src/neat/adaptive/core/README.md +197 -197
- package/src/neat/adaptive/lineage/README.md +90 -90
- package/src/neat/adaptive/mutation/README.md +284 -284
- package/src/neat/compat/README.md +43 -43
- package/src/neat/compat/core/README.md +90 -90
- package/src/neat/diversity/README.md +35 -35
- package/src/neat/diversity/core/README.md +88 -88
- package/src/neat/evaluate/README.md +85 -85
- package/src/neat/evaluate/auto-distance/README.md +75 -75
- package/src/neat/evaluate/entropy-compat/README.md +37 -37
- package/src/neat/evaluate/entropy-sharing/README.md +43 -43
- package/src/neat/evaluate/fitness/README.md +23 -23
- package/src/neat/evaluate/novelty/README.md +120 -120
- package/src/neat/evaluate/objectives/README.md +17 -17
- package/src/neat/evaluate/shared/README.md +94 -94
- package/src/neat/evolve/README.md +96 -96
- package/src/neat/evolve/adaptive/README.md +60 -60
- package/src/neat/evolve/objectives/README.md +63 -63
- package/src/neat/evolve/offspring/README.md +56 -56
- package/src/neat/evolve/population/README.md +171 -171
- package/src/neat/evolve/runtime/README.md +79 -79
- package/src/neat/evolve/speciation/README.md +74 -74
- package/src/neat/evolve/warnings/README.md +10 -10
- package/src/neat/export/README.md +114 -114
- package/src/neat/helpers/README.md +50 -50
- package/src/neat/init/README.md +9 -9
- package/src/neat/lineage/core/README.md +101 -101
- package/src/neat/multiobjective/category/README.md +74 -74
- package/src/neat/multiobjective/crowding/README.md +272 -272
- package/src/neat/multiobjective/dominance/README.md +171 -171
- package/src/neat/multiobjective/fronts/README.md +68 -68
- package/src/neat/multiobjective/metrics/README.md +43 -43
- package/src/neat/multiobjective/objectives/README.md +31 -31
- package/src/neat/multiobjective/shared/README.md +27 -27
- package/src/neat/mutation/README.md +97 -97
- package/src/neat/mutation/add-conn/README.md +115 -115
- package/src/neat/mutation/add-node/README.md +126 -126
- package/src/neat/mutation/flow/README.md +149 -149
- package/src/neat/mutation/repair/README.md +185 -185
- package/src/neat/mutation/select/README.md +117 -117
- package/src/neat/mutation/shared/README.md +32 -32
- package/src/neat/objectives/README.md +25 -25
- package/src/neat/objectives/core/README.md +67 -67
- package/src/neat/pruning/README.md +40 -40
- package/src/neat/pruning/core/README.md +171 -171
- package/src/neat/pruning/facade/README.md +32 -32
- package/src/neat/rng/README.md +104 -104
- package/src/neat/rng/core/README.md +137 -137
- package/src/neat/rng/facade/README.md +50 -50
- package/src/neat/selection/README.md +111 -111
- package/src/neat/selection/core/README.md +227 -227
- package/src/neat/selection/facade/README.md +61 -61
- package/src/neat/shared/README.md +163 -163
- package/src/neat/speciation/README.md +31 -31
- package/src/neat/speciation/threshold/README.md +35 -35
- package/src/neat/species/README.md +25 -25
- package/src/neat/species/core/README.md +20 -20
- package/src/neat/species/core/shared/README.md +18 -18
- package/src/neat/species/history/context/README.md +22 -22
- package/src/neat/telemetry/accessors/README.md +58 -58
- package/src/neat/telemetry/exports/README.md +233 -233
- package/src/neat/telemetry/facade/README.md +252 -252
- package/src/neat/telemetry/facade/archive/README.md +57 -57
- package/src/neat/telemetry/facade/buffer/README.md +43 -43
- package/src/neat/telemetry/facade/lineage/README.md +12 -12
- package/src/neat/telemetry/facade/objectives/README.md +44 -44
- package/src/neat/telemetry/facade/runtime/README.md +26 -26
- package/src/neat/telemetry/facade/species/README.md +27 -27
- package/src/neat/telemetry/metrics/README.md +696 -696
- package/src/neat/telemetry/recorder/README.md +57 -57
- package/src/neat/telemetry/types/README.md +32 -32
- package/src/neat/topology-intent/README.md +75 -75
- package/src/utils/README.md +193 -193
- package/test/examples/asciiMaze/browser-entry/README.md +92 -92
- package/test/examples/asciiMaze/dashboardManager/README.md +109 -109
- package/test/examples/asciiMaze/dashboardManager/telemetry/README.md +28 -28
- package/test/examples/asciiMaze/evolutionEngine/README.md +1527 -1527
- package/test/examples/asciiMaze/mazeMovement/README.md +105 -105
- package/test/examples/asciiMaze/mazeMovement/finalization/README.md +16 -16
- package/test/examples/asciiMaze/mazeMovement/policy/README.md +57 -57
- package/test/examples/asciiMaze/mazeMovement/runtime/README.md +52 -52
- package/test/examples/asciiMaze/mazeMovement/shaping/README.md +46 -46
- package/test/examples/flappy_bird/browser-entry/README.md +508 -508
- package/test/examples/flappy_bird/browser-entry/host/README.md +101 -101
- package/test/examples/flappy_bird/browser-entry/host/resize/README.md +144 -144
- package/test/examples/flappy_bird/browser-entry/network-view/README.md +194 -194
- package/test/examples/flappy_bird/browser-entry/playback/README.md +278 -278
- package/test/examples/flappy_bird/browser-entry/playback/background/README.md +129 -129
- package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/README.md +502 -502
- package/test/examples/flappy_bird/browser-entry/playback/frame-render/README.md +139 -139
- package/test/examples/flappy_bird/browser-entry/playback/snapshot/README.md +10 -10
- package/test/examples/flappy_bird/browser-entry/playback/trail/README.md +43 -43
- package/test/examples/flappy_bird/browser-entry/playback/worker-channel/README.md +30 -30
- package/test/examples/flappy_bird/browser-entry/runtime/README.md +59 -59
- package/test/examples/flappy_bird/browser-entry/visualization/README.md +276 -276
- package/test/examples/flappy_bird/browser-entry/worker-channel/README.md +16 -16
- package/test/examples/flappy_bird/constants/README.md +1070 -1070
- package/test/examples/flappy_bird/environment/README.md +22 -22
- package/test/examples/flappy_bird/evaluation/README.md +32 -32
- package/test/examples/flappy_bird/evaluation/rollout/README.md +141 -141
- package/test/examples/flappy_bird/flappy-evolution-worker/README.md +425 -425
- package/test/examples/flappy_bird/simulation-shared/README.md +170 -170
- package/test/examples/flappy_bird/simulation-shared/observation/README.md +109 -109
- package/test/examples/flappy_bird/trainer/README.md +325 -325
- package/test/examples/flappy_bird/trainer/evaluation/README.md +74 -74
- package/scripts/analyze-trace.ts +0 -590
- package/scripts/copy-examples.mjs +0 -114
- package/scripts/export-onnx.mjs +0 -86
- package/scripts/generate-bench-tables.mjs +0 -182
- package/scripts/generate-docs.ts +0 -2900
- package/scripts/write-dist-docs-pkg.mjs +0 -16
|
@@ -19,46 +19,25 @@ define the world state that policy, shaping, and finalization build on top of.
|
|
|
19
19
|
|
|
20
20
|
## mazeMovement/runtime/mazeMovement.runtime.ts
|
|
21
21
|
|
|
22
|
-
###
|
|
23
|
-
|
|
24
|
-
```ts
|
|
25
|
-
isMazeMovementCellOpen(
|
|
26
|
-
encodedMaze: readonly (readonly number[])[],
|
|
27
|
-
x: number,
|
|
28
|
-
y: number,
|
|
29
|
-
coordinateScratch: Int32Array<ArrayBufferLike>,
|
|
30
|
-
): boolean
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
Determine whether a maze cell is inside bounds and not a wall.
|
|
34
|
-
|
|
35
|
-
Parameters:
|
|
36
|
-
- `encodedMaze` - - Maze grid to inspect.
|
|
37
|
-
- `x` - - Zero-based maze column.
|
|
38
|
-
- `y` - - Zero-based maze row.
|
|
39
|
-
- `coordinateScratch` - - Reused integer scratch buffer for coordinate coercion.
|
|
40
|
-
|
|
41
|
-
Returns: True when the target cell is within bounds and open.
|
|
42
|
-
|
|
43
|
-
### getMazeMovementDistance
|
|
22
|
+
### buildMazeMovementVisionAndDistance
|
|
44
23
|
|
|
45
24
|
```ts
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
25
|
+
buildMazeMovementVisionAndDistance(
|
|
26
|
+
state: SimulationState,
|
|
27
|
+
encodedMaze: number[][],
|
|
28
|
+
exitPos: readonly [number, number],
|
|
49
29
|
distanceMap: number[][] | undefined,
|
|
50
|
-
):
|
|
30
|
+
): void
|
|
51
31
|
```
|
|
52
32
|
|
|
53
|
-
|
|
33
|
+
Build the current perception vector and update distance-tracking state.
|
|
54
34
|
|
|
55
35
|
Parameters:
|
|
56
|
-
- `
|
|
57
|
-
- `
|
|
36
|
+
- `state` - - Mutable simulation state for the active run.
|
|
37
|
+
- `encodedMaze` - - Maze grid used for perception and distance lookup.
|
|
38
|
+
- `exitPos` - - Goal coordinate for the current run.
|
|
58
39
|
- `distanceMap` - - Optional precomputed distance map.
|
|
59
40
|
|
|
60
|
-
Returns: Finite distance when present, otherwise `Infinity`.
|
|
61
|
-
|
|
62
41
|
### createMazeMovementRunState
|
|
63
42
|
|
|
64
43
|
```ts
|
|
@@ -80,20 +59,24 @@ Parameters:
|
|
|
80
59
|
|
|
81
60
|
Returns: Fresh simulation state backed by the shared buffer pools.
|
|
82
61
|
|
|
83
|
-
###
|
|
62
|
+
### getMazeMovementDistance
|
|
84
63
|
|
|
85
64
|
```ts
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
65
|
+
getMazeMovementDistance(
|
|
66
|
+
encodedMaze: readonly (readonly number[])[],
|
|
67
|
+
__1: readonly [number, number],
|
|
68
|
+
distanceMap: number[][] | undefined,
|
|
69
|
+
): number
|
|
90
70
|
```
|
|
91
71
|
|
|
92
|
-
|
|
72
|
+
Resolve the current distance value for a maze coordinate.
|
|
93
73
|
|
|
94
74
|
Parameters:
|
|
95
|
-
- `
|
|
96
|
-
- `
|
|
75
|
+
- `encodedMaze` - - Maze grid aligned with the optional distance map.
|
|
76
|
+
- `coordinates` - - Zero-based `[x, y]` coordinate tuple.
|
|
77
|
+
- `distanceMap` - - Optional precomputed distance map.
|
|
78
|
+
|
|
79
|
+
Returns: Finite distance when present, otherwise `Infinity`.
|
|
97
80
|
|
|
98
81
|
### getMazeMovementHistoryFromEnd
|
|
99
82
|
|
|
@@ -112,34 +95,51 @@ Parameters:
|
|
|
112
95
|
|
|
113
96
|
Returns: The requested cell index or `undefined` when out of range.
|
|
114
97
|
|
|
115
|
-
###
|
|
98
|
+
### isMazeMovementCellOpen
|
|
116
99
|
|
|
117
100
|
```ts
|
|
118
|
-
|
|
101
|
+
isMazeMovementCellOpen(
|
|
102
|
+
encodedMaze: readonly (readonly number[])[],
|
|
103
|
+
x: number,
|
|
104
|
+
y: number,
|
|
105
|
+
coordinateScratch: Int32Array<ArrayBufferLike>,
|
|
106
|
+
): boolean
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
Determine whether a maze cell is inside bounds and not a wall.
|
|
110
|
+
|
|
111
|
+
Parameters:
|
|
112
|
+
- `encodedMaze` - - Maze grid to inspect.
|
|
113
|
+
- `x` - - Zero-based maze column.
|
|
114
|
+
- `y` - - Zero-based maze row.
|
|
115
|
+
- `coordinateScratch` - - Reused integer scratch buffer for coordinate coercion.
|
|
116
|
+
|
|
117
|
+
Returns: True when the target cell is within bounds and open.
|
|
118
|
+
|
|
119
|
+
### pushMazeMovementHistory
|
|
120
|
+
|
|
121
|
+
```ts
|
|
122
|
+
pushMazeMovementHistory(
|
|
119
123
|
state: SimulationState,
|
|
124
|
+
cellIndex: number,
|
|
120
125
|
): void
|
|
121
126
|
```
|
|
122
127
|
|
|
123
|
-
|
|
128
|
+
Push a cell index into the circular visit-history ring.
|
|
124
129
|
|
|
125
130
|
Parameters:
|
|
126
|
-
- `state` - - Mutable simulation state
|
|
131
|
+
- `state` - - Mutable simulation state containing the ring buffer.
|
|
132
|
+
- `cellIndex` - - Linearized cell index to append.
|
|
127
133
|
|
|
128
|
-
###
|
|
134
|
+
### recordMazeMovementVisitAndPenalties
|
|
129
135
|
|
|
130
136
|
```ts
|
|
131
|
-
|
|
137
|
+
recordMazeMovementVisitAndPenalties(
|
|
132
138
|
state: SimulationState,
|
|
133
|
-
encodedMaze: number[][],
|
|
134
|
-
exitPos: readonly [number, number],
|
|
135
|
-
distanceMap: number[][] | undefined,
|
|
136
139
|
): void
|
|
137
140
|
```
|
|
138
141
|
|
|
139
|
-
|
|
142
|
+
Record the current cell visit and update visit-driven penalties.
|
|
140
143
|
|
|
141
144
|
Parameters:
|
|
142
145
|
- `state` - - Mutable simulation state for the active run.
|
|
143
|
-
- `encodedMaze` - - Maze grid used for perception and distance lookup.
|
|
144
|
-
- `exitPos` - - Goal coordinate for the current run.
|
|
145
|
-
- `distanceMap` - - Optional precomputed distance map.
|
|
@@ -18,113 +18,111 @@ this boundary turns the aftermath into training signal.
|
|
|
18
18
|
|
|
19
19
|
## mazeMovement/shaping/mazeMovement.shaping.ts
|
|
20
20
|
|
|
21
|
-
###
|
|
21
|
+
### applyMazeMovementEntropyGuidanceShaping
|
|
22
22
|
|
|
23
23
|
```ts
|
|
24
|
-
|
|
24
|
+
applyMazeMovementEntropyGuidanceShaping(
|
|
25
25
|
state: SimulationState,
|
|
26
|
-
|
|
27
|
-
distanceMap: number[][] | undefined,
|
|
26
|
+
rewardScale: number,
|
|
28
27
|
coordinateScratch: Int32Array<ArrayBufferLike>,
|
|
29
28
|
): void
|
|
30
29
|
```
|
|
31
30
|
|
|
32
|
-
|
|
31
|
+
Apply entropy-guided shaping based on confidence and perceptual guidance.
|
|
33
32
|
|
|
34
33
|
Parameters:
|
|
35
34
|
- `state` - - Mutable simulation state for the active run.
|
|
36
|
-
- `
|
|
37
|
-
- `distanceMap` - - Optional precomputed distance map.
|
|
35
|
+
- `rewardScale` - - Global reward scale used by the penalties and bonuses.
|
|
38
36
|
- `coordinateScratch` - - Reused coordinate scratch buffer.
|
|
39
37
|
|
|
40
|
-
###
|
|
38
|
+
### applyMazeMovementExplorationVisitAdjustment
|
|
41
39
|
|
|
42
40
|
```ts
|
|
43
|
-
|
|
41
|
+
applyMazeMovementExplorationVisitAdjustment(
|
|
44
42
|
state: SimulationState,
|
|
43
|
+
rewardScale: number,
|
|
45
44
|
coordinateScratch: Int32Array<ArrayBufferLike>,
|
|
46
45
|
): void
|
|
47
46
|
```
|
|
48
47
|
|
|
49
|
-
Apply the
|
|
48
|
+
Apply the per-cell exploration bonus or revisit penalty.
|
|
50
49
|
|
|
51
50
|
Parameters:
|
|
52
51
|
- `state` - - Mutable simulation state for the active run.
|
|
52
|
+
- `rewardScale` - - Global reward scale used by the adjustment.
|
|
53
53
|
- `coordinateScratch` - - Reused coordinate scratch buffer.
|
|
54
54
|
|
|
55
|
-
###
|
|
55
|
+
### applyMazeMovementGlobalDistanceImprovementBonus
|
|
56
56
|
|
|
57
57
|
```ts
|
|
58
|
-
|
|
58
|
+
applyMazeMovementGlobalDistanceImprovementBonus(
|
|
59
59
|
state: SimulationState,
|
|
60
|
+
encodedMaze: number[][],
|
|
60
61
|
rewardScale: number,
|
|
61
62
|
coordinateScratch: Int32Array<ArrayBufferLike>,
|
|
62
63
|
): void
|
|
63
64
|
```
|
|
64
65
|
|
|
65
|
-
Apply
|
|
66
|
+
Apply the long-horizon global-distance improvement bonus.
|
|
66
67
|
|
|
67
68
|
Parameters:
|
|
68
69
|
- `state` - - Mutable simulation state for the active run.
|
|
69
|
-
- `
|
|
70
|
+
- `encodedMaze` - - Maze grid used for distance lookup.
|
|
71
|
+
- `rewardScale` - - Global reward scale used by the bonus magnitude.
|
|
70
72
|
- `coordinateScratch` - - Reused coordinate scratch buffer.
|
|
71
73
|
|
|
72
|
-
###
|
|
74
|
+
### applyMazeMovementLocalAreaPenalty
|
|
73
75
|
|
|
74
76
|
```ts
|
|
75
|
-
|
|
77
|
+
applyMazeMovementLocalAreaPenalty(
|
|
76
78
|
state: SimulationState,
|
|
77
|
-
distanceDelta: number,
|
|
78
|
-
improved: boolean,
|
|
79
|
-
worsened: boolean,
|
|
80
79
|
rewardScale: number,
|
|
80
|
+
coordinateScratch: Int32Array<ArrayBufferLike>,
|
|
81
81
|
): void
|
|
82
82
|
```
|
|
83
83
|
|
|
84
|
-
Apply
|
|
84
|
+
Apply a local-area stagnation penalty when the run oscillates in a tight window.
|
|
85
85
|
|
|
86
86
|
Parameters:
|
|
87
87
|
- `state` - - Mutable simulation state for the active run.
|
|
88
|
-
- `
|
|
89
|
-
- `
|
|
90
|
-
- `worsened` - - True when the move increased distance to the goal.
|
|
91
|
-
- `rewardScale` - - Global reward scale used by the shaping terms.
|
|
88
|
+
- `rewardScale` - - Global reward scale used for the penalty magnitude.
|
|
89
|
+
- `coordinateScratch` - - Reused coordinate scratch buffer.
|
|
92
90
|
|
|
93
|
-
###
|
|
91
|
+
### applyMazeMovementPostActionPenalties
|
|
94
92
|
|
|
95
93
|
```ts
|
|
96
|
-
|
|
94
|
+
applyMazeMovementPostActionPenalties(
|
|
97
95
|
state: SimulationState,
|
|
98
|
-
rewardScale: number,
|
|
99
96
|
coordinateScratch: Int32Array<ArrayBufferLike>,
|
|
100
97
|
): void
|
|
101
98
|
```
|
|
102
99
|
|
|
103
|
-
Apply the
|
|
100
|
+
Apply the post-action shaping and penalty aggregation phase.
|
|
104
101
|
|
|
105
102
|
Parameters:
|
|
106
103
|
- `state` - - Mutable simulation state for the active run.
|
|
107
|
-
- `rewardScale` - - Global reward scale used by the adjustment.
|
|
108
104
|
- `coordinateScratch` - - Reused coordinate scratch buffer.
|
|
109
105
|
|
|
110
|
-
###
|
|
106
|
+
### applyMazeMovementProgressShaping
|
|
111
107
|
|
|
112
108
|
```ts
|
|
113
|
-
|
|
109
|
+
applyMazeMovementProgressShaping(
|
|
114
110
|
state: SimulationState,
|
|
115
|
-
|
|
111
|
+
distanceDelta: number,
|
|
112
|
+
improved: boolean,
|
|
113
|
+
worsened: boolean,
|
|
116
114
|
rewardScale: number,
|
|
117
|
-
coordinateScratch: Int32Array<ArrayBufferLike>,
|
|
118
115
|
): void
|
|
119
116
|
```
|
|
120
117
|
|
|
121
|
-
Apply
|
|
118
|
+
Apply progress and away-from-goal shaping after a move.
|
|
122
119
|
|
|
123
120
|
Parameters:
|
|
124
121
|
- `state` - - Mutable simulation state for the active run.
|
|
125
|
-
- `
|
|
126
|
-
- `
|
|
127
|
-
- `
|
|
122
|
+
- `distanceDelta` - - Positive when the agent moved closer to the goal.
|
|
123
|
+
- `improved` - - True when the move improved distance to the goal.
|
|
124
|
+
- `worsened` - - True when the move increased distance to the goal.
|
|
125
|
+
- `rewardScale` - - Global reward scale used by the shaping terms.
|
|
128
126
|
|
|
129
127
|
### applyMazeMovementRepetitionAndBacktrackPenalties
|
|
130
128
|
|
|
@@ -143,38 +141,40 @@ Parameters:
|
|
|
143
141
|
- `rewardScale` - - Global reward scale used by the penalties.
|
|
144
142
|
- `coordinateScratch` - - Reused coordinate scratch buffer.
|
|
145
143
|
|
|
146
|
-
###
|
|
144
|
+
### applyMazeMovementSaturationPenaltyCycle
|
|
147
145
|
|
|
148
146
|
```ts
|
|
149
|
-
|
|
147
|
+
applyMazeMovementSaturationPenaltyCycle(
|
|
150
148
|
state: SimulationState,
|
|
151
149
|
rewardScale: number,
|
|
152
150
|
coordinateScratch: Int32Array<ArrayBufferLike>,
|
|
153
151
|
): void
|
|
154
152
|
```
|
|
155
153
|
|
|
156
|
-
Apply
|
|
154
|
+
Apply the periodic saturation penalty cycle.
|
|
157
155
|
|
|
158
156
|
Parameters:
|
|
159
157
|
- `state` - - Mutable simulation state for the active run.
|
|
160
|
-
- `rewardScale` - - Global reward scale used by the penalties
|
|
158
|
+
- `rewardScale` - - Global reward scale used by the penalties.
|
|
161
159
|
- `coordinateScratch` - - Reused coordinate scratch buffer.
|
|
162
160
|
|
|
163
|
-
###
|
|
161
|
+
### executeMazeMovementAndRewards
|
|
164
162
|
|
|
165
163
|
```ts
|
|
166
|
-
|
|
164
|
+
executeMazeMovementAndRewards(
|
|
167
165
|
state: SimulationState,
|
|
168
|
-
|
|
166
|
+
encodedMaze: number[][],
|
|
167
|
+
distanceMap: number[][] | undefined,
|
|
169
168
|
coordinateScratch: Int32Array<ArrayBufferLike>,
|
|
170
169
|
): void
|
|
171
170
|
```
|
|
172
171
|
|
|
173
|
-
|
|
172
|
+
Execute the chosen move and apply the shaping terms tied to that move.
|
|
174
173
|
|
|
175
174
|
Parameters:
|
|
176
175
|
- `state` - - Mutable simulation state for the active run.
|
|
177
|
-
- `
|
|
176
|
+
- `encodedMaze` - - Maze grid used for move validity and distance lookup.
|
|
177
|
+
- `distanceMap` - - Optional precomputed distance map.
|
|
178
178
|
- `coordinateScratch` - - Reused coordinate scratch buffer.
|
|
179
179
|
|
|
180
180
|
### maybeTerminateMazeMovementDeepStagnation
|