self‑adaptive optimization