# RQM Optimize Disturbance Rejection

> RQM Optimize Disturbance Rejection is a paid API for AI agents from jobs.rqmtechnologies.com, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-14).

Tunes PD controller gains (Kp, Kd) over a bounded grid search to minimize peak and RMS tracking error under a supplied disturbance signal for a mass-damper system.

## Facts

- Endpoint: POST https://jobs.rqmtechnologies.com/x402/buyer-jobs/robotics.optimize-disturbance-rejection.v1
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/rqm-optimize-disturbance-rejection-627f26d8
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_IdD2lNDKsWLmptYcbyGem

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability rqm-optimize-disturbance-rejection-627f26d8 -d '<json body>'
```

Example prompt: I have a mass-damper system with mass 5.0 kg and damping 1.2, and I want to tune the PD gains to reject a disturbance — can you grid-search 10 points per axis over Kp in [0.5, 20.0] and Kd in [0.1, 5.0], starting from baseline Kp=5.0 and Kd=1.0, with a time step of 0.01 s, and find the gains that keep peak error below 0.5 and RMS error below 0.1?

## When to prefer this

Use this endpoint when you have a parameterized mass-damper plant model with a known bounded disturbance signal and explicit numerical objectives (peak and RMS error limits), and you want to find optimal PD gains via grid search without deploying to hardware. Prefer this over manual tuning or generic optimization libraries when you need a reproducible, cloud-executed sweep with explicit constraint checking at $0.01 per call.

## Known failure modes

- Disturbance array below minimum length (< 2 samples) or above 4096 samples
- mass must be strictly positive; zero or negative mass returns validation error
- grid_points_per_axis outside [2, 32] range causes schema rejection
- No gain combination in the search grid satisfies the peak or RMS constraints — returns failure with best achieved metrics
- time_step_seconds must be strictly positive and ≤ 10
- Kp or Kd min/max bounds are inverted (min > max) causing invalid search space
- max_total_price too low — payment authorization fails before computation

## How this service works

Problem: Tune supported control parameters against this bounded disturbance model and supplied response objectives. Input: JSON with mass, damping, disturbance, time step seconds, baseline kp, baseline.... Result: candidate parameters, comparative metrics and constraint results. Limits: Software/model evidence only; 65536 request bytes; 5 s execution.

## Output

Returns the optimized Kp and Kd gain values found by the grid search, along with the achieved peak tracking error and RMS error under the supplied disturbance signal, and whether the result satisfies the caller's error constraints.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "request": {
   "type": "object",
   "title": "DisturbanceOptimizationRequest",
   "required": [
    "mass",
    "damping",
    "disturbance",
    "time_step_seconds",
    "baseline_kp",
    "baseline_kd",
    "minimum_kp",
    "maximum_kp",
    "minimum_kd",
    "maximum_kd",
    "grid_points_per_axis",
    "maximum_peak_error",
    "maximum_rms_error"
   ],
   "properties": {
    "mass": {
     "type": "number",
     "title": "Mass",
     "maximum": 1000000000,
     "exclusiveMinimum": 0
    },
    "damping": {
     "type": "number",
     "title": "Damping",
     "maximum": 1000000000,
     "minimum": 0
    },
    "maximum_kd": {
     "type": "number",
     "title": "Maximum Kd",
     "maximum": 1000000000,
     "minimum": 0
    },
    "maximum_kp": {
     "type": "number",
     "title": "Maximum Kp",
     "maximum": 1000000000,
     "minimum": 0
    },
    "minimum_kd": {
     "type": "number",
     "title": "Minimum Kd",
     "maximum": 1000000000,
     "minimum": 0
    },
    "minimum_kp": {
     "type": "number",
     "title": "Minimum Kp",
     "maximum": 1000000000,
     "minimum": 0
    },
    "baseline_kd": {
     "type": "number",
     "title": "Baseline Kd",
     "maximum": 1000000000,
     "minimum": 0
    },
    "baseline_kp": {
     "type": "number",
     "title": "Baseline Kp",
     "maximum": 1000000000,
     "minimum": 0
    },
    "disturbance": {
     "type": "array",
     "items": {
      "type": "number"
     },
     "title": "Disturbance",
     "maxItems": 4096,
     "minItems": 2
    },
    "maximum_rms_error": {
     "type": "number",
     "title": "Maximum Rms Error",
     "maximum": 1000000000,
     "minimum": 0
    },
    "time_step_seconds": {
     "type": "number",
     "title": "Time Step Seconds",
     "maximum": 10,
     "exclusiveMinimum": 0
    },
    "maximum_peak_error": {
     "type": "number",
     "title": "Maximum Peak Error",
     "maximum": 1000000000,
     "minimum": 0
    },
    "holdout_disturbance": {
     "type": "array",
     "items": {
      "type": "number"
     },
     "title": "Holdout Disturbance",
     "maxItems": 4096
    },
    "grid_points_per_axis": {
     "type": "integer",
     "title": "Grid Points Per Axis",
     "maximum": 32,
     "minimum": 2
    }
   },
   "additionalProperties": false
  },
  "schema_version": {
   "const": "rqm.jobs.bazaar-buyer-job-request.v1"
  },
  "idempotency_key": {
   "type": "string",
   "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/rqm-optimize-disturbance-rejection-627f26d8/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from jobs.rqmtechnologies.com](https://www.zero.xyz/host/jobs.rqmtechnologies.com/llms.txt)
