Skip to content

Follow-on study: optimize ff+PID controller gains (plumbing already exists) #54

Description

@salhus

Motivation

The three-regime co-design study (PR #52/#53) established that ff+PID (exc_ff_pid, the passive_guarded arm) carries the long-tail regime and edges opt_passive at resonance on high-angle flaps. Those results use the current empirical tuning (α=11 universal, Ki=5 fixed, per-flap Kp/Kd from the PR #31 sweep) — not a formally optimized gain set. There is clear headroom: a dedicated gain-optimization study is a natural second paper.

Critically, the plumbing already exists — this is an optimization/analysis effort, not new infrastructure:

  • scripts/sweep_kpkd_vgoswec.sh — sweeps Kp∈{2–6} × Kd∈{0,0.5,1,2,3} per flap over each flap's physical band, with passive-safe / clamp-free / pitch<0.8 rad / non-injecting-edge constraint checks (PR exc_ff_pid: passive-safety guard, per-flap Kp×Kd tuning, surface plots, and 5-flap configs #31).
  • scripts/plot_kpkd_surface.py — 3-D Kp×Kd capture-surface plots with infeasible-region overlay.
  • ExcFFPIDConfig exposes alpha, ki, kp, kd, clip_torque, passive_safe, u_min/u_max — the full tunable surface.
  • Capture-efficiency sweep + committed-CSV --plot-only pipeline for evaluating any tuned config against P_opt.

Scope (proposed second paper)

  • Formalize the objective: band-integrated capture efficiency (or captured energy over a representative sea-state distribution) subject to the existing physical constraints (pitch limit, passive-safety, no band-edge injection, torque clip).
  • Move beyond the coarse grid sweep to a proper optimizer (e.g. Bayesian optimization / Nelder-Mead / CMA-ES) over (α, Ki, Kp, Kd) per flap, and investigate whether a single universal (α, Ki) with per-flap (Kp, Kd) is truly near-optimal or leaves significant capture on the table.
  • Quantify the gain from optimization vs the current empirical tuning, per flap, across the T=0.5–7 s band.
  • Re-evaluate the three-regime operating envelope (power + efficiency hulls) with optimized ff+PID gains — does better ff+PID tuning expand the envelope or shift the opt_passive/ff+PID crossovers?
  • Robustness/sensitivity: how sharply does capture fall off around the optimum (tuning tolerance), which matters for real deployment.

Explicitly out of scope for the current (first) paper

The current paper reports the three-regime relay + co-design operating map with the existing ff+PID tuning, and frames ff+PID honestly as "ties opt_passive at resonance" — it does not claim ff+PID is optimally tuned. This issue tracks the dedicated optimization as future work / a follow-on paper.

Deliverables

  • Gain-optimization driver built on the existing sweep plumbing.
  • Per-flap optimized gain tables + capture improvement vs current tuning.
  • Updated operating-envelope comparison (current vs optimized ff+PID).
  • Draft methods/results suitable for a second paper.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions