Final project: an engine-based modeling study
Weight: 30%. Format: bounded study, reproducible experiment, and short demonstration.
Choose a question involving a real modeling decision: a closed chain, contact compliance, inertia estimation, sensor delay, actuator dynamics, or backend agreement. The goal is to understand and justify a simulation model, not to implement an entire production physics engine.
Required milestones
- Model proposal: physical system, intended question, assumptions, and a tractable limiting case.
- Verification checkpoint: units, frame tests, inertia checks, and one independent numerical or analytical comparison.
- Parameter study: a physical-model sweep and a separate numerical-resolution sweep.
- Final handoff: a clean-run command, locked environment, YAML config, data, figures, and explanation of a failure case.
Backend comparisons
Compare equivalent quantities and supported features. Record hardware, precision, timestep, horizon, batch size, compilation, and synchronization. Pinocchio dynamics queries, CPU MuJoCo steps, and batched MJX throughput are distinct workloads. A fair report may conclude that a comparison is not meaningful for the chosen feature set.
Rubric
- 25%: model assumptions and correctness.
- 25%: verification and controlled experiments.
- 20%: explanation of physical and numerical effects.
- 20%: reusable implementation and reproducible outputs.
- 10%: clear demonstration, limitations, and attribution.
Explain which evidence validates code against equations and which would be needed to validate the model against a physical robot. Do not infer real-world accuracy from animation or cross-engine agreement alone.