@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
package/src/neat/README.md
CHANGED
|
@@ -17,27 +17,20 @@ Read the file in three passes:
|
|
|
17
17
|
|
|
18
18
|
## neat/neat.types.ts
|
|
19
19
|
|
|
20
|
-
###
|
|
21
|
-
|
|
22
|
-
Public configuration bag accepted by the root `Neat` constructor.
|
|
23
|
-
|
|
24
|
-
This alias stays intentionally permissive because the public boundary still
|
|
25
|
-
absorbs legacy experiment bags, partially migrated option families, and a
|
|
26
|
-
few chapter-local knobs that do not yet deserve a tighter shared contract.
|
|
27
|
-
|
|
28
|
-
That looseness is a boundary choice rather than a shared-type ideal. The
|
|
29
|
-
root facade accepts the broad option surface so the deeper helper chapters
|
|
30
|
-
can keep narrowing their own local slices instead of reintroducing one wide
|
|
31
|
-
compatibility bag in multiple places.
|
|
20
|
+
### NeatExportFitnessFunction
|
|
32
21
|
|
|
33
|
-
|
|
22
|
+
```ts
|
|
23
|
+
NeatExportFitnessFunction(
|
|
24
|
+
network: GenomeWithSerialization,
|
|
25
|
+
): number | Promise<number>
|
|
26
|
+
```
|
|
34
27
|
|
|
35
|
-
|
|
28
|
+
Fitness callback shape expected by the export/import restore helpers.
|
|
36
29
|
|
|
37
|
-
The
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
30
|
+
The persistence chapter reconstructs a controller from serialized state and
|
|
31
|
+
then reattaches a scoring delegate. The root surface derives that callback
|
|
32
|
+
type from the export chapter so the static restore helpers stay in lockstep
|
|
33
|
+
with the real persistence contract.
|
|
41
34
|
|
|
42
35
|
### NeatFitnessFunction
|
|
43
36
|
|
|
@@ -54,6 +47,15 @@ every legal scoring protocol. The constructor only promises that a scoring
|
|
|
54
47
|
delegate can be stored and forwarded safely; the stronger semantics live in
|
|
55
48
|
the evaluation and evolve chapters that actually consume the callback.
|
|
56
49
|
|
|
50
|
+
### NeatFitnessResult
|
|
51
|
+
|
|
52
|
+
Opaque result shape returned by root-level fitness callbacks.
|
|
53
|
+
|
|
54
|
+
The top-level `Neat` entrypoint has to tolerate both single-genome and
|
|
55
|
+
population-wide fitness styles, including delegates that perform async work
|
|
56
|
+
or side effects before downstream evaluation helpers interpret the result.
|
|
57
|
+
The root contract therefore stays wide on purpose.
|
|
58
|
+
|
|
57
59
|
### NeatMutationSelectionResult
|
|
58
60
|
|
|
59
61
|
Awaited return shape for the public mutation-method selection wrapper.
|
|
@@ -62,6 +64,19 @@ The mutation chapter already owns the concrete union. This alias keeps the
|
|
|
62
64
|
root class synchronized with that source of truth without repeating a legacy
|
|
63
65
|
compatibility union inline.
|
|
64
66
|
|
|
67
|
+
### NeatOptions
|
|
68
|
+
|
|
69
|
+
Public configuration bag accepted by the root `Neat` constructor.
|
|
70
|
+
|
|
71
|
+
This alias stays intentionally permissive because the public boundary still
|
|
72
|
+
absorbs legacy experiment bags, partially migrated option families, and a
|
|
73
|
+
few chapter-local knobs that do not yet deserve a tighter shared contract.
|
|
74
|
+
|
|
75
|
+
That looseness is a boundary choice rather than a shared-type ideal. The
|
|
76
|
+
root facade accepts the broad option surface so the deeper helper chapters
|
|
77
|
+
can keep narrowing their own local slices instead of reintroducing one wide
|
|
78
|
+
compatibility bag in multiple places.
|
|
79
|
+
|
|
65
80
|
### NeatRngStateSnapshot
|
|
66
81
|
|
|
67
82
|
Replay token accepted by the public RNG restore and import methods.
|
|
@@ -70,21 +85,6 @@ Deriving the token from the RNG facade keeps the root entrypoint aligned with
|
|
|
70
85
|
the replay chapter instead of maintaining a second hand-written copy of the
|
|
71
86
|
same restore contract.
|
|
72
87
|
|
|
73
|
-
### NeatExportFitnessFunction
|
|
74
|
-
|
|
75
|
-
```ts
|
|
76
|
-
NeatExportFitnessFunction(
|
|
77
|
-
network: GenomeWithSerialization,
|
|
78
|
-
): number | Promise<number>
|
|
79
|
-
```
|
|
80
|
-
|
|
81
|
-
Fitness callback shape expected by the export/import restore helpers.
|
|
82
|
-
|
|
83
|
-
The persistence chapter reconstructs a controller from serialized state and
|
|
84
|
-
then reattaches a scoring delegate. The root surface derives that callback
|
|
85
|
-
type from the export chapter so the static restore helpers stay in lockstep
|
|
86
|
-
with the real persistence contract.
|
|
87
|
-
|
|
88
88
|
## neat/neat.lineage.ts
|
|
89
89
|
|
|
90
90
|
### buildAnc
|
|
@@ -262,22 +262,22 @@ Read it as the controller's everyday guard rail: small enough to stay out of
|
|
|
262
262
|
the way of ordinary calculations, but present anywhere a divide-by-zero or a
|
|
263
263
|
log-of-zero edge could quietly poison downstream training or telemetry.
|
|
264
264
|
|
|
265
|
-
###
|
|
265
|
+
### EXTRA_CONNECTION_PROBABILITY
|
|
266
266
|
|
|
267
|
-
|
|
267
|
+
Default heuristic for one opportunistic extra add-connection attempt.
|
|
268
268
|
|
|
269
|
-
This is
|
|
270
|
-
|
|
271
|
-
|
|
269
|
+
This is a heuristic rather than a numerical safety constant. It slightly
|
|
270
|
+
increases the chance that a genome gains new connectivity during mutation
|
|
271
|
+
without making extra-connection attempts mandatory on every pass.
|
|
272
272
|
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
to the original scale.
|
|
273
|
+
Treat this as a small statement about controller personality: the default
|
|
274
|
+
search policy is willing to occasionally spend extra effort on connectivity
|
|
275
|
+
growth, but it does not force that gamble on every mutation cycle.
|
|
277
276
|
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
277
|
+
That makes this constant the policy counterpart to the epsilon family. The
|
|
278
|
+
epsilons say how carefully the controller protects its math; this value says
|
|
279
|
+
how adventurous the default mutation policy is willing to be when a little
|
|
280
|
+
extra connectivity might unlock better search.
|
|
281
281
|
|
|
282
282
|
### NORM_EPSILON
|
|
283
283
|
|
|
@@ -296,22 +296,22 @@ spread, and normalization math often benefit from a visibly larger floor than
|
|
|
296
296
|
probability math, because the goal is smooth controller behavior rather than
|
|
297
297
|
near-exact preservation of microscopic values.
|
|
298
298
|
|
|
299
|
-
###
|
|
299
|
+
### PROB_EPSILON
|
|
300
300
|
|
|
301
|
-
|
|
301
|
+
Probability-scale safety constant for very small ratios and logarithms.
|
|
302
302
|
|
|
303
|
-
This is
|
|
304
|
-
|
|
305
|
-
|
|
303
|
+
This is intentionally smaller than {@link EPSILON} because probability terms
|
|
304
|
+
often need protection without materially changing the magnitude of already
|
|
305
|
+
tiny values.
|
|
306
306
|
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
307
|
+
Reach for this when the math is closer to "protect a probability-like term"
|
|
308
|
+
than to "stabilize a general denominator". The smaller offset helps keep
|
|
309
|
+
loss-style or entropy-style quantities numerically safe while staying closer
|
|
310
|
+
to the original scale.
|
|
310
311
|
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
extra connectivity might unlock better search.
|
|
312
|
+
In practice this constant teaches a useful distinction: not every safety fix
|
|
313
|
+
should be equally large. Probability-like quantities often need a gentler
|
|
314
|
+
nudge than general controller arithmetic.
|
|
315
315
|
|
|
316
316
|
## neat/neat.diversity.ts
|
|
317
317
|
|
|
@@ -376,6 +376,23 @@ if (diversity) {
|
|
|
376
376
|
}
|
|
377
377
|
```
|
|
378
378
|
|
|
379
|
+
### DiversityStats
|
|
380
|
+
|
|
381
|
+
Diversity statistics returned by sampled population analysis.
|
|
382
|
+
|
|
383
|
+
Treat this as a compact population-health report rather than as a single
|
|
384
|
+
scalar "diversity score." The fields are grouped deliberately:
|
|
385
|
+
|
|
386
|
+
- lineage fields show whether ancestry depth is spreading or collapsing,
|
|
387
|
+
- node and connection fields show average structural size and unevenness,
|
|
388
|
+
- compatibility sampling estimates how genetically separated sampled peers
|
|
389
|
+
remain,
|
|
390
|
+
- entropy adds a shape signal that raw size counts cannot capture.
|
|
391
|
+
|
|
392
|
+
In practice, telemetry consumers compare this object across generations to
|
|
393
|
+
see whether mutation, speciation, and pruning are still producing meaningful
|
|
394
|
+
variation without paying for exhaustive all-pairs analysis.
|
|
395
|
+
|
|
379
396
|
### MAX_COMPATIBILITY_SAMPLE
|
|
380
397
|
|
|
381
398
|
Maximum population sample size for compatibility comparisons.
|
|
@@ -418,23 +435,6 @@ Parameters:
|
|
|
418
435
|
|
|
419
436
|
Returns: Shannon-style entropy of the out-degree distribution.
|
|
420
437
|
|
|
421
|
-
### DiversityStats
|
|
422
|
-
|
|
423
|
-
Diversity statistics returned by sampled population analysis.
|
|
424
|
-
|
|
425
|
-
Treat this as a compact population-health report rather than as a single
|
|
426
|
-
scalar "diversity score." The fields are grouped deliberately:
|
|
427
|
-
|
|
428
|
-
- lineage fields show whether ancestry depth is spreading or collapsing,
|
|
429
|
-
- node and connection fields show average structural size and unevenness,
|
|
430
|
-
- compatibility sampling estimates how genetically separated sampled peers
|
|
431
|
-
remain,
|
|
432
|
-
- entropy adds a shape signal that raw size counts cannot capture.
|
|
433
|
-
|
|
434
|
-
In practice, telemetry consumers compare this object across generations to
|
|
435
|
-
see whether mutation, speciation, and pruning are still producing meaningful
|
|
436
|
-
variation without paying for exhaustive all-pairs analysis.
|
|
437
|
-
|
|
438
438
|
## neat/neat.defaults.constants.ts
|
|
439
439
|
|
|
440
440
|
Public default knobs for the root `Neat` controller.
|
|
@@ -455,64 +455,54 @@ Read them as the public defaults shelf, not as hidden implementation trivia.
|
|
|
455
455
|
These values are the baseline promises the root controller makes when a user
|
|
456
456
|
says, "give me an ordinary NEAT run," without specifying every knob.
|
|
457
457
|
|
|
458
|
-
###
|
|
459
|
-
|
|
460
|
-
Default population size when caller does not specify `popsize`.
|
|
461
|
-
|
|
462
|
-
This opens the root defaults shelf's search-volume family. It controls how
|
|
463
|
-
many genomes compete in each generation before elitism, provenance, or
|
|
464
|
-
mutation pressure begin to reshape the population.
|
|
465
|
-
|
|
466
|
-
### DEFAULT_ELITISM
|
|
458
|
+
### DEFAULT_COMPATIBILITY_THRESHOLD
|
|
467
459
|
|
|
468
|
-
Default
|
|
460
|
+
Default compatibility threshold controlling speciation distance.
|
|
469
461
|
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
remains for ordinary offspring.
|
|
462
|
+
This starts the speciation-pressure family of defaults. It is the neutral
|
|
463
|
+
boundary the controller uses before adaptive tuning or custom settings make
|
|
464
|
+
species splits stricter or more permissive.
|
|
474
465
|
|
|
475
|
-
###
|
|
466
|
+
### DEFAULT_DISJOINT_COEFF
|
|
476
467
|
|
|
477
|
-
Default
|
|
468
|
+
Default disjoint coefficient for NEAT compatibility distance.
|
|
478
469
|
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
470
|
+
Matching the excess coefficient by default gives the root controller a
|
|
471
|
+
balanced structural view: excess and disjoint innovation gaps both count as
|
|
472
|
+
first-class evidence during compatibility comparisons.
|
|
482
473
|
|
|
483
|
-
###
|
|
474
|
+
### DEFAULT_DIVERSITY_GRAPHLET_SAMPLE
|
|
484
475
|
|
|
485
|
-
Default
|
|
476
|
+
Default graphlet sample size used by diversity metrics in fast mode.
|
|
486
477
|
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
active.
|
|
478
|
+
Read this beside {@link DEFAULT_DIVERSITY_PAIR_SAMPLE}: pair samples give the
|
|
479
|
+
controller quick distance evidence, while graphlet samples provide a small
|
|
480
|
+
structural texture read without forcing whole-population analysis.
|
|
491
481
|
|
|
492
|
-
###
|
|
482
|
+
### DEFAULT_DIVERSITY_PAIR_SAMPLE
|
|
493
483
|
|
|
494
|
-
Default
|
|
484
|
+
Default pair-sample size used by diversity metrics in fast mode.
|
|
495
485
|
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
486
|
+
This starts the observability-sampling family. The root controller uses a
|
|
487
|
+
bounded sample instead of exhaustive pair checks so diversity reads stay
|
|
488
|
+
cheap enough for ordinary runs.
|
|
499
489
|
|
|
500
|
-
###
|
|
490
|
+
### DEFAULT_ELITISM
|
|
501
491
|
|
|
502
|
-
Default
|
|
492
|
+
Default elitism count applied when unspecified.
|
|
503
493
|
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
494
|
+
Read this beside {@link DEFAULT_POPULATION_SIZE} and
|
|
495
|
+
{@link DEFAULT_PROVENANCE}: the trio defines how much of each generation is
|
|
496
|
+
reserved for carry-over, how much is freshly injected, and how much capacity
|
|
497
|
+
remains for ordinary offspring.
|
|
507
498
|
|
|
508
|
-
###
|
|
499
|
+
### DEFAULT_EXCESS_COEFF
|
|
509
500
|
|
|
510
|
-
Default
|
|
501
|
+
Default excess coefficient for NEAT compatibility distance.
|
|
511
502
|
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
cap.
|
|
503
|
+
This begins the root compatibility-weight family. These coefficients explain
|
|
504
|
+
which kinds of genome disagreement matter most when the controller decides
|
|
505
|
+
whether two genomes still belong in the same species neighborhood.
|
|
516
506
|
|
|
517
507
|
### DEFAULT_MAX_CONNS
|
|
518
508
|
|
|
@@ -529,45 +519,39 @@ Default maximum allowed gates where `Infinity` means unbounded growth.
|
|
|
529
519
|
Gate limits stay in the same family as node and connection limits so the
|
|
530
520
|
whole structural-cap story remains consistent at the root surface.
|
|
531
521
|
|
|
532
|
-
###
|
|
533
|
-
|
|
534
|
-
Default excess coefficient for NEAT compatibility distance.
|
|
535
|
-
|
|
536
|
-
This begins the root compatibility-weight family. These coefficients explain
|
|
537
|
-
which kinds of genome disagreement matter most when the controller decides
|
|
538
|
-
whether two genomes still belong in the same species neighborhood.
|
|
539
|
-
|
|
540
|
-
### DEFAULT_DISJOINT_COEFF
|
|
522
|
+
### DEFAULT_MAX_NODES
|
|
541
523
|
|
|
542
|
-
Default
|
|
524
|
+
Default maximum allowed nodes where `Infinity` means unbounded growth.
|
|
543
525
|
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
526
|
+
Read the three `DEFAULT_MAX_*` exports as one structural-ceiling family.
|
|
527
|
+
Leaving them unbounded by default tells the root controller to rely on
|
|
528
|
+
mutation policy, pruning, and adaptive limits instead of an immediate hard
|
|
529
|
+
cap.
|
|
547
530
|
|
|
548
|
-
###
|
|
531
|
+
### DEFAULT_MUTATION_AMOUNT
|
|
549
532
|
|
|
550
|
-
Default
|
|
533
|
+
Default number of mutation operations applied per genome.
|
|
551
534
|
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
535
|
+
The default keeps the baseline search policy conservative: most runs mutate
|
|
536
|
+
often enough to keep topology moving, but each genome usually pays for only
|
|
537
|
+
one structural or parametric change per mutation pass.
|
|
555
538
|
|
|
556
|
-
###
|
|
539
|
+
### DEFAULT_MUTATION_RATE
|
|
557
540
|
|
|
558
|
-
Default
|
|
541
|
+
Default mutation rate used by the root controller when no explicit rate is supplied.
|
|
559
542
|
|
|
560
|
-
This
|
|
561
|
-
|
|
562
|
-
|
|
543
|
+
This belongs to the same search-tempo family as
|
|
544
|
+
{@link DEFAULT_MUTATION_AMOUNT}. Together they define how often mutation is
|
|
545
|
+
attempted and how many mutation steps a genome can receive once mutation is
|
|
546
|
+
active.
|
|
563
547
|
|
|
564
|
-
###
|
|
548
|
+
### DEFAULT_NEAT_CONSTRUCTOR_DEFAULTS
|
|
565
549
|
|
|
566
|
-
|
|
550
|
+
Shared defaults packet consumed by the constructor bootstrap chapter.
|
|
567
551
|
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
552
|
+
The root public surface still exports the individual constants for callers
|
|
553
|
+
and docs, but the constructor now hands one named packet to `init/` instead
|
|
554
|
+
of rebuilding the same object inline inside `src/neat.ts`.
|
|
571
555
|
|
|
572
556
|
### DEFAULT_NOVELTY_K
|
|
573
557
|
|
|
@@ -577,10 +561,26 @@ This closes the root observability-and-exploration shelf. It controls how
|
|
|
577
561
|
many nearby behaviors contribute to novelty before the caller tunes novelty
|
|
578
562
|
search more explicitly.
|
|
579
563
|
|
|
580
|
-
###
|
|
564
|
+
### DEFAULT_POPULATION_SIZE
|
|
581
565
|
|
|
582
|
-
|
|
566
|
+
Default population size when caller does not specify `popsize`.
|
|
583
567
|
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
568
|
+
This opens the root defaults shelf's search-volume family. It controls how
|
|
569
|
+
many genomes compete in each generation before elitism, provenance, or
|
|
570
|
+
mutation pressure begin to reshape the population.
|
|
571
|
+
|
|
572
|
+
### DEFAULT_PROVENANCE
|
|
573
|
+
|
|
574
|
+
Default provenance count applied when unspecified.
|
|
575
|
+
|
|
576
|
+
Provenance is the root controller's small "fresh seed" policy. A value of
|
|
577
|
+
`0` means the default run does not spend population budget on extra
|
|
578
|
+
generation-zero style injections unless the caller asks for them.
|
|
579
|
+
|
|
580
|
+
### DEFAULT_WEIGHT_DIFF_COEFF
|
|
581
|
+
|
|
582
|
+
Default average weight difference coefficient for compatibility distance.
|
|
583
|
+
|
|
584
|
+
This keeps parameter drift relevant without letting weight deltas dominate
|
|
585
|
+
the whole speciation read. In the default family, topology disagreement still
|
|
586
|
+
carries more weight than modest edge-weight differences.
|