@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/methods/README.md
CHANGED
|
@@ -117,6 +117,57 @@ A practical chooser for first experiments:
|
|
|
117
117
|
- use `registerCustomActivation()` when the built-ins are close but not quite
|
|
118
118
|
the transfer curve your experiment needs.
|
|
119
119
|
|
|
120
|
+
### crossover
|
|
121
|
+
|
|
122
|
+
Crossover methods for genetic algorithms.
|
|
123
|
+
|
|
124
|
+
These methods implement the crossover strategies described in the Instinct algorithm,
|
|
125
|
+
enabling the creation of offspring with unique combinations of parent traits.
|
|
126
|
+
|
|
127
|
+
Read this file as an inheritance-policy shelf: each method answers a
|
|
128
|
+
different question about how aggressively two parents should be mixed.
|
|
129
|
+
|
|
130
|
+
- `SINGLE_POINT` preserves one contiguous prefix from one parent and the
|
|
131
|
+
remaining suffix from the other,
|
|
132
|
+
- `TWO_POINT` preserves a middle segment boundary instead of only one split,
|
|
133
|
+
- `UNIFORM` treats each gene as an independent coin flip,
|
|
134
|
+
- `AVERAGE` blends compatible numeric genes instead of copying segments.
|
|
135
|
+
|
|
136
|
+
A practical chooser for first experiments:
|
|
137
|
+
|
|
138
|
+
- start with `UNIFORM` when you want broad mixing and do not need contiguous
|
|
139
|
+
blocks of structure to stay together,
|
|
140
|
+
- use `SINGLE_POINT` or `TWO_POINT` when adjacency matters and you want to
|
|
141
|
+
preserve larger parent segments,
|
|
142
|
+
- choose `AVERAGE` when the genome is meaningfully numeric and interpolation
|
|
143
|
+
is more useful than hard parent switching.
|
|
144
|
+
|
|
145
|
+
Minimal workflow:
|
|
146
|
+
|
|
147
|
+
```ts
|
|
148
|
+
const broadMixing = crossover.UNIFORM;
|
|
149
|
+
|
|
150
|
+
const oneCut = crossover.SINGLE_POINT;
|
|
151
|
+
|
|
152
|
+
const twoCut = {
|
|
153
|
+
...crossover.TWO_POINT,
|
|
154
|
+
config: [0.25, 0.75],
|
|
155
|
+
};
|
|
156
|
+
|
|
157
|
+
const blendedOffspring = crossover.AVERAGE;
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
```mermaid
|
|
161
|
+
flowchart LR
|
|
162
|
+
Parents[Two parent genomes] --> Segment[Segment-preserving crossover]
|
|
163
|
+
Parents --> GeneWise[Gene-wise crossover]
|
|
164
|
+
Parents --> Blend[Numeric blending]
|
|
165
|
+
Segment --> Single[SINGLE_POINT]
|
|
166
|
+
Segment --> Double[TWO_POINT]
|
|
167
|
+
GeneWise --> Uniform[UNIFORM]
|
|
168
|
+
Blend --> Average[AVERAGE]
|
|
169
|
+
```
|
|
170
|
+
|
|
120
171
|
### gating
|
|
121
172
|
|
|
122
173
|
Defines the small routing shelf that decides where a gater applies control.
|
|
@@ -168,6 +219,54 @@ const routingShelf = {
|
|
|
168
219
|
};
|
|
169
220
|
```
|
|
170
221
|
|
|
222
|
+
### groupConnection
|
|
223
|
+
|
|
224
|
+
Defines the small wiring-policy shelf for connecting one node group to another.
|
|
225
|
+
|
|
226
|
+
Read this file as a topology chooser rather than a bag of connection names.
|
|
227
|
+
These policies do not decide weights, learning, or mutation pressure; they
|
|
228
|
+
answer a narrower structural question first: what edge pattern should exist
|
|
229
|
+
between the source group and the target group before later optimization
|
|
230
|
+
details matter?
|
|
231
|
+
|
|
232
|
+
The three built-ins answer three different wiring intents:
|
|
233
|
+
|
|
234
|
+
- `ALL_TO_ALL` asks for the densest possible bridge between the groups,
|
|
235
|
+
- `ALL_TO_ELSE` keeps that dense bridge but avoids trivial self-links when
|
|
236
|
+
the source and target are the same group,
|
|
237
|
+
- `ONE_TO_ONE` preserves positional pairing instead of creating a dense mesh.
|
|
238
|
+
|
|
239
|
+
Those choices matter because they create very different starting biases. A
|
|
240
|
+
dense bridge maximizes routing freedom, a dense-without-self-links bridge is
|
|
241
|
+
often the cleanest way to describe intra-group recurrence, and one-to-one
|
|
242
|
+
wiring preserves explicit alignment instead of encouraging cross-talk.
|
|
243
|
+
|
|
244
|
+
A practical chooser for first experiments:
|
|
245
|
+
|
|
246
|
+
- start with `ALL_TO_ALL` when every source feature should be allowed to
|
|
247
|
+
influence every target unit,
|
|
248
|
+
- use `ALL_TO_ELSE` when you want dense recurrent-style reuse inside one
|
|
249
|
+
group without creating direct self-connections,
|
|
250
|
+
- choose `ONE_TO_ONE` when index alignment matters and each source unit
|
|
251
|
+
should feed exactly one partner.
|
|
252
|
+
|
|
253
|
+
```mermaid
|
|
254
|
+
flowchart LR
|
|
255
|
+
Dense[Dense mesh] --> AllToAll[ALL_TO_ALL]
|
|
256
|
+
Dense --> AllToElse[ALL_TO_ELSE]
|
|
257
|
+
Paired[Positional pairing] --> OneToOne[ONE_TO_ONE]
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
Minimal workflow:
|
|
261
|
+
|
|
262
|
+
```ts
|
|
263
|
+
const wiringShelf = {
|
|
264
|
+
denseBridge: groupConnection.ALL_TO_ALL,
|
|
265
|
+
denseWithoutSelfLoops: groupConnection.ALL_TO_ELSE,
|
|
266
|
+
alignedBridge: groupConnection.ONE_TO_ONE,
|
|
267
|
+
};
|
|
268
|
+
```
|
|
269
|
+
|
|
171
270
|
### mutation
|
|
172
271
|
|
|
173
272
|
Defines various mutation methods used in neuroevolution algorithms.
|
|
@@ -338,105 +437,6 @@ flowchart LR
|
|
|
338
437
|
Population --> Tournament[TOURNAMENT<br/>small local bracket decides]
|
|
339
438
|
```
|
|
340
439
|
|
|
341
|
-
### crossover
|
|
342
|
-
|
|
343
|
-
Crossover methods for genetic algorithms.
|
|
344
|
-
|
|
345
|
-
These methods implement the crossover strategies described in the Instinct algorithm,
|
|
346
|
-
enabling the creation of offspring with unique combinations of parent traits.
|
|
347
|
-
|
|
348
|
-
Read this file as an inheritance-policy shelf: each method answers a
|
|
349
|
-
different question about how aggressively two parents should be mixed.
|
|
350
|
-
|
|
351
|
-
- `SINGLE_POINT` preserves one contiguous prefix from one parent and the
|
|
352
|
-
remaining suffix from the other,
|
|
353
|
-
- `TWO_POINT` preserves a middle segment boundary instead of only one split,
|
|
354
|
-
- `UNIFORM` treats each gene as an independent coin flip,
|
|
355
|
-
- `AVERAGE` blends compatible numeric genes instead of copying segments.
|
|
356
|
-
|
|
357
|
-
A practical chooser for first experiments:
|
|
358
|
-
|
|
359
|
-
- start with `UNIFORM` when you want broad mixing and do not need contiguous
|
|
360
|
-
blocks of structure to stay together,
|
|
361
|
-
- use `SINGLE_POINT` or `TWO_POINT` when adjacency matters and you want to
|
|
362
|
-
preserve larger parent segments,
|
|
363
|
-
- choose `AVERAGE` when the genome is meaningfully numeric and interpolation
|
|
364
|
-
is more useful than hard parent switching.
|
|
365
|
-
|
|
366
|
-
Minimal workflow:
|
|
367
|
-
|
|
368
|
-
```ts
|
|
369
|
-
const broadMixing = crossover.UNIFORM;
|
|
370
|
-
|
|
371
|
-
const oneCut = crossover.SINGLE_POINT;
|
|
372
|
-
|
|
373
|
-
const twoCut = {
|
|
374
|
-
...crossover.TWO_POINT,
|
|
375
|
-
config: [0.25, 0.75],
|
|
376
|
-
};
|
|
377
|
-
|
|
378
|
-
const blendedOffspring = crossover.AVERAGE;
|
|
379
|
-
```
|
|
380
|
-
|
|
381
|
-
```mermaid
|
|
382
|
-
flowchart LR
|
|
383
|
-
Parents[Two parent genomes] --> Segment[Segment-preserving crossover]
|
|
384
|
-
Parents --> GeneWise[Gene-wise crossover]
|
|
385
|
-
Parents --> Blend[Numeric blending]
|
|
386
|
-
Segment --> Single[SINGLE_POINT]
|
|
387
|
-
Segment --> Double[TWO_POINT]
|
|
388
|
-
GeneWise --> Uniform[UNIFORM]
|
|
389
|
-
Blend --> Average[AVERAGE]
|
|
390
|
-
```
|
|
391
|
-
|
|
392
|
-
### groupConnection
|
|
393
|
-
|
|
394
|
-
Defines the small wiring-policy shelf for connecting one node group to another.
|
|
395
|
-
|
|
396
|
-
Read this file as a topology chooser rather than a bag of connection names.
|
|
397
|
-
These policies do not decide weights, learning, or mutation pressure; they
|
|
398
|
-
answer a narrower structural question first: what edge pattern should exist
|
|
399
|
-
between the source group and the target group before later optimization
|
|
400
|
-
details matter?
|
|
401
|
-
|
|
402
|
-
The three built-ins answer three different wiring intents:
|
|
403
|
-
|
|
404
|
-
- `ALL_TO_ALL` asks for the densest possible bridge between the groups,
|
|
405
|
-
- `ALL_TO_ELSE` keeps that dense bridge but avoids trivial self-links when
|
|
406
|
-
the source and target are the same group,
|
|
407
|
-
- `ONE_TO_ONE` preserves positional pairing instead of creating a dense mesh.
|
|
408
|
-
|
|
409
|
-
Those choices matter because they create very different starting biases. A
|
|
410
|
-
dense bridge maximizes routing freedom, a dense-without-self-links bridge is
|
|
411
|
-
often the cleanest way to describe intra-group recurrence, and one-to-one
|
|
412
|
-
wiring preserves explicit alignment instead of encouraging cross-talk.
|
|
413
|
-
|
|
414
|
-
A practical chooser for first experiments:
|
|
415
|
-
|
|
416
|
-
- start with `ALL_TO_ALL` when every source feature should be allowed to
|
|
417
|
-
influence every target unit,
|
|
418
|
-
- use `ALL_TO_ELSE` when you want dense recurrent-style reuse inside one
|
|
419
|
-
group without creating direct self-connections,
|
|
420
|
-
- choose `ONE_TO_ONE` when index alignment matters and each source unit
|
|
421
|
-
should feed exactly one partner.
|
|
422
|
-
|
|
423
|
-
```mermaid
|
|
424
|
-
flowchart LR
|
|
425
|
-
Dense[Dense mesh] --> AllToAll[ALL_TO_ALL]
|
|
426
|
-
Dense --> AllToElse[ALL_TO_ELSE]
|
|
427
|
-
Paired[Positional pairing] --> OneToOne[ONE_TO_ONE]
|
|
428
|
-
```
|
|
429
|
-
|
|
430
|
-
Minimal workflow:
|
|
431
|
-
|
|
432
|
-
```ts
|
|
433
|
-
const wiringShelf = {
|
|
434
|
-
denseBridge: groupConnection.ALL_TO_ALL,
|
|
435
|
-
denseWithoutSelfLoops: groupConnection.ALL_TO_ELSE,
|
|
436
|
-
alignedBridge: groupConnection.ONE_TO_ONE,
|
|
437
|
-
};
|
|
438
|
-
```
|
|
439
|
-
|
|
440
440
|
### default
|
|
441
441
|
|
|
442
442
|
#### binary
|