- 8-agent OpenClaw cluster (Manager, Tech-Lead, Secretary, Auditor, Optimizer, Study-Builder, NX-Expert, Webster) - Orchestration engine: orchestrate.py (sync delegation + handoffs) - Workflow engine: YAML-defined multi-step pipelines - Agent workspaces: SOUL.md, AGENTS.md, MEMORY.md per agent - Shared skills: delegate, orchestrate, atomizer-protocols - Capability registry (AGENTS_REGISTRY.json) - Cluster management: cluster.sh, systemd template - All secrets replaced with env var references
2.2 KiB
2.2 KiB
LAC Critical Lessons — NEVER FORGET
These are hard-won insights from past optimization sessions. Violating any of these will cause failures.
NX Safety (CRITICAL)
- NEVER kill ugraf.exe directly → use
NXSessionManager.close_nx_if_allowed() - PowerShell for NX journals → NEVER use
cmd /c - Always load
*_i.prtbeforeUpdateFemodel()→ mesh won't update without the idealized part - File chain must be intact:
.sim → .fem → *_i.prt → .prt(ALL must be present)
Optimization (CRITICAL)
- CMA-ES doesn't evaluate x0 first → always call
enqueue_trial(x0)to evaluate baseline - Surrogate + L-BFGS = DANGEROUS → gradient descent finds fake optima on surrogate surface
- NEVER rewrite
run_optimization.pyfrom scratch → ALWAYS copy a working template (V15 NSGA-II is gold standard) - Relative WFE math: use
extract_relative()(node-by-node subtraction) → NOTabs(RMS_a - RMS_b)(wrong math!)
File Management (IMPORTANT)
- Trial folders:
trial_NNNN/— zero-padded, never reused, never overwritten - Always copy working studies — never modify originals
- Output paths must be relative — no absolute Windows/Linux paths (Syncthing-compatible)
- Never delete trial data mid-run — archive after study is complete
Algorithm Selection (REFERENCE)
| Variables | Landscape | Recommended | Notes |
|---|---|---|---|
| < 5 | Smooth | Nelder-Mead or COBYLA | Simple, fast convergence |
| 5-20 | Noisy | CMA-ES | Robust, population-based |
| > 20 | Any | Bayesian (Optuna TPE) | Efficient with many variables |
| Multi-obj | Any | NSGA-II or MOEA/D | Pareto front generation |
| With surrogate | Expensive eval | GNN surrogate + CMA-ES | Reduce simulation count |
Common Failures
| Symptom | Cause | Fix |
|---|---|---|
| Mesh not updating | Missing *_i.prt load |
Load idealized part first |
| NX crashes on journal | Using cmd /c |
Switch to PowerShell |
| Baseline trial missing | CMA-ES skips x0 | Explicitly enqueue baseline |
| Optimization finds unphysical optimum | Surrogate + gradient | Switch to CMA-ES or add validation |
| Study can't resume | Absolute paths in script | Use relative paths |