> For the complete documentation index, see [llms.txt](https://robodex.gitbook.io/robodex-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://robodex.gitbook.io/robodex-docs/pipeline/simulation-benchmarking.md).

# Simulation And Benchmarking

Simulation helpers live in:

```
packages/pipeline/simulation/
```

Research benchmark code lives in:

```
packages/research/benchmark/
```

## Pipeline validation

Pipeline validators check whether a design is structurally valid and whether it can be compiled or screened.

Useful concepts include:

* `validate_design()`,
* `validate_compiles()`,
* `validate_full()`,
* `screen_design(ir)`.

## MuJoCo screening

`mujoco_screening.py` provides a screening layer for properties such as:

* stability,
* reachability,
* task sanity,
* zero-control behavior where applicable.

The code should gracefully report missing MuJoCo or unavailable screening rather than pretending evidence exists.

## Research benchmark harness

`packages/research/benchmark/harness.py` can:

* evaluate a single `RobotDesignIR`,
* evaluate a population of designs,
* compile MJCF,
* run screening,
* aggregate metrics.

## Metrics

The benchmark layer tracks metrics such as:

* compile success,
* stability,
* actuator coverage,
* diversity,
* structural distance,
* candidate-level screening results.

## Product simulation checks

Workspace simulation checks are lighter. `RobotWorkspaceSDK.run_simulation_checks()` records whether a generated artifact has enough compile/render evidence and whether screening metadata clears a threshold when present.

It does not run full RL training.

## Research roadmap

The current Spec Kit research program under `specs/003-robot-rl-research-program/` plans a graph-general RL stack:

* goal generation,
* state/action spaces,
* dynamics,
* policies,
* rewards,
* critics,
* PPO training.

Treat those specs as implementation planning unless the corresponding code and tests exist.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://robodex.gitbook.io/robodex-docs/pipeline/simulation-benchmarking.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
