CRISP details contact simulation for tight-tolerance robot assembly
Seoul National University’s CRISP paper examines contact geometry and solver behavior in robot assembly. The public package provides examples and binaries under a restricted research license.

Somang Lee and colleagues in Seoul National University's Department of Mechanical Engineering describe CRISP, the Contact-Rich Simulation Platform, in a September 18, 2026 preprint. The physics engine combines several collision-geometry representations with contact solvers designed for tightly coupled interactions, including peg insertion and threaded assembly. Its public package makes the work inspectable through examples, but access is restricted to academic and noncommercial research. Paper record and official project.
The paper is the new research event covered here. It should not be confused with a first software launch: the inspected GitHub releases list version 1.1.0 on September 17, following earlier packages. This article distinguishes the paper's evaluation from the versioned software readers can obtain.
Key takeaways
- CRISP supports meshes and function-based geometry, allowing collision representation and solver choice to be examined together rather than treating contact as one fixed approximation.
- The reported comparisons use MuJoCo 3.4.0 and Isaac Sim 4.5.0 under specified geometry, friction and timestep conditions; they do not establish universal simulator superiority.
- The public repository supplies example code and integration for a prebuilt library. Its restrictive license means public availability should not be described as a full open-source engine release. Paper, repository and license.
Why geometry and solver choice belong together
A simulator must first locate contacts and then resolve the resulting motion, forces and constraints. Improving one stage does not automatically fix errors in the other. CRISP supports primitives, convex shapes, triangle meshes, signed distance fields and differentiable support functions. A signed distance field describes distance to a surface; a support function describes a convex shape in terms of directional support. These representations expose different information to collision detection. Geometry and architecture.
For contact resolution, CRISP provides Cascaded Newton-based Augmented Lagrangian, or CANAL, and Subsystem-based Alternating Direction Method of Multipliers, or SubADMM. The former combines outer multiplier updates with inner Newton iterations; the latter separates dynamics and constraint updates. Official documentation says SubADMM's algorithm is parallelizable but CRISP does not currently exploit that parallelism. A related GPU paper is not evidence that this package supplies the same GPU implementation. Solver documentation.
What did the assembly comparisons show?
The paper evaluates several contact scenarios on an AMD Ryzen 7 9800X3D CPU, using MuJoCo 3.4.0 and Isaac Sim 4.5.0 as comparison platforms. Geometry, physical parameters and timesteps are matched as closely as possible, but their representations and numerical methods remain different. Evaluation.
For peg insertion, a 2.5 cm-radius, 10 cm-high peg enters a hole with 50–200 micrometers of tolerance. Friction is set to 0.01, initial tilt to 0.5 degrees and timestep to 2 ms. At 50 micrometers, the CANAL configuration using a differentiable support-function peg and torus-specialized hole reports average penetration of approximately 37.8 micrometers; the Isaac Sim configuration fails to assemble at that tolerance. None of the compared engines is strictly intersection-free. Table II and Appendix D.
That metric is the time average of each step's maximum penetration in a reduced two-dimensional representation. In the threaded bolt-nut test, the measurement instead averages maximum detected contact penetration during the middle of engagement, uses a 10 ms timestep, and sets friction to zero. Those are different measurement procedures, not interchangeable evidence of real manufacturing tolerances.
The paper also reports cases where CRISP's mesh discretization prevents assembly, and where SubADMM's limited convergence produces larger penetration. Its appendix acknowledges that tuning MuJoCo parameters can mitigate some observed artifacts. The robot demonstrations follow predefined joint keyframes with proportional-derivative control; they are not demonstrations of a learned policy transferring to a physical robot.
What is actually available to download?
RoboSkin inspected repository revision `fc0684bdb3f325ab1586fc6df987c15839f08733` on September 21. The README identifies two assembly examples and CMake integration for a prebuilt package. The repository's engine directory is a download location, rather than the complete solver implementation source.
Version 1.1.0 release assets list Windows x86-64, Linux x86-64/AArch64 and macOS packages with checksum files. Setup requires CMake 3.20 or later, a C++20 compiler and an OpenGL-capable desktop. Default configuration fetches the latest engine package and Eigen 3.4.0. The examples use a Franka arm, Robotiq 2F-85 gripper and prescribed joint targets. Installation guide.
The license permits academic and noncommercial research but prohibits redistribution, modification and reverse engineering without written authorization. Those conditions are material for integration. RoboSkin verified the listed files and documentation, but did not install or run the engine.
What should a reproduction record?
RoboSkin analysis: pinning the example repository alone is insufficient when CMake downloads the latest binary. Record the engine archive version, checksum, example revision, collision representation, timestep and solver settings together. Version 1.1.0 changes default budgets and replaces a shared iteration-limit option with separate CANAL and SubADMM options; old settings should not silently be assumed equivalent. Release notes.
For tactile research, better contact mechanics could improve the inputs to a sensor simulator, but CRISP's contact solver is not itself a calibrated tactile-image or pressure-array generator. Soft-body dynamics is listed as future work. Compare the tactile benchmark directory and sensor guide before equating collision accuracy with sensor fidelity. The platform paper remains a preprint; its earlier method publications do not independently validate every result in this release.
Stable motion does not identify a unique pressure distribution
CRISP's stacking example makes an important tactile-data distinction: when contact forces are underdetermined, CANAL and SubADMM can produce different force distributions while both maintain stable motion. The appendix describes concentrated versus more distributed support forces. A visually plausible stack is therefore insufficient evidence that a predicted local pressure pattern matches a physical skin. Appendix D.
| Layer to validate | Proposed receiving-team record |
|---|---|
| Geometry | Collision representation, supported shape pair, discretization and any convex approximation |
| Mechanical assumptions | Friction, compliance assumptions, timestep and imposed motion |
| Numerical solution | Solver, iteration budget, residuals, convergence failures and warm-start state |
| Reported metric | Contact-point penetration, geometric overlap or motion outcome, with its exact sampling rule |
| Sensor interpretation | Mapping from simulated contacts to sensing locations, measured calibration target and unresolved ambiguity |
For a pressure-array or optical-skin simulator, the last row requires an additional sensor model and physical reference measurements. Solver contact forces are not automatically equivalent to a measured taxel output. Likewise, a low geometric penetration value is not a force-calibration result or a guarantee that a learned policy will transfer.
The November 4 repository revision continues to describe example integration with a prebuilt package. Current solver documentation warns that reaching an iteration limit does not establish convergence, and a stagnation threshold is not a relative-accuracy certificate. The 1.1.1 release notes now describe corrected contact-stiffness handling in N/m and updated examples. That software change is separate from the paper's evaluation and makes version matching material to a reproduction.
The earlier versioned observations above remain historical; reproduce with a matched binary, headers, examples and license record rather than an unpinned latest download. No package was installed or executed for this review. See the tactile AI evidence chain before treating synthetic mechanics as measured training data.
Sources
- CRISP arXiv v1
- Official project and documentation
- Public repository and versioned packages
- Reviewed license
*Source review updated November 4, 2026. Original publication dates are retained. Research results are author-reported; RoboSkin has not run these systems or reproduced their experiments.*