コンテンツにスキップ

Inverse Kinematics Simulator

Inverse Kinematics Simulator hero image

このコンテンツはまだ日本語訳がありません。

Modified:
Published:

Inverse kinematics is the problem every robot must solve: given where the end-effector needs to be, what joint angles achieve that position? Unlike forward kinematics, there is no single formula that works for all cases. This simulator implements five different IK algorithms so you can see how each one converges, where it struggles, and which is best for your application. Click anywhere on the workspace to set a target and watch the arm solve in real time. #InverseKinematics #RobotAlgorithms #ConvergenceAnalysis

Open Simulator

Five IK Algorithms

Geometric (Closed-Form)

Uses the law of cosines to compute both elbow-up and elbow-down solutions instantly. Works only for 2-DOF arms, but it is exact and has zero iteration cost. The gold standard when it applies.

Jacobian Pseudoinverse

Iteratively updates joint angles using the Moore-Penrose pseudoinverse of the Jacobian matrix. Works for any DOF but can diverge near singularities where the Jacobian becomes rank-deficient.

Damped Least Squares

Adds a damping factor (lambda) to the Jacobian inversion, preventing divergence near singularities at the cost of some accuracy. The damping factor controls the tradeoff: more damping means more stability but slower convergence.

CCD (Cyclic Coordinate Descent)

Iterates joint by joint from end-effector to base, rotating each joint to align its chain with the target. Simple, robust, and widely used in game animation. Produces a characteristic “whipping” motion.

FABRIK

Forward And Backward Reaching Inverse Kinematics: alternates between pulling the end-effector to the target and pulling the base back to the origin. Works in position space without matrices. Fast convergence, clean paths.

Preset Configurations



PresetDOFAlgorithmTargetUse Case
Precision Assembly2DLS(200, 100)Tight tolerance, stable convergence
Fast Pick-Place2CCD(250, 50)Speed over precision
Path Following2FABRIKCircular pathContinuous trajectory tracking
Redundant Arm3DLS(200, 80)Extra DOF for null-space motion

Experiments to Try



  1. Algorithm comparison: Set a target, click “Run Full Experiment.” The algorithm comparison chart shows iterations, error, and solve time for all 5 algorithms on the same target.
  2. Singularity behavior: Place the target at the workspace boundary (arm must fully extend). Compare how DLS stays stable while the Jacobian pseudoinverse diverges.
  3. Path following: Select “Circular” path mode and click “Run Full Experiment.” See how each algorithm tracks the path and where tracking errors peak.
  4. Redundancy exploration: Switch to 3-DOF. The arm has infinite solutions for any 2D target. Observe how different algorithms choose different configurations.
  5. Drag interaction: Click and drag anywhere on the canvas to move the target. The arm solves IK in real time, showing convergence as you drag.

Algorithm Comparison



AlgorithmTypeConvergenceSingularity HandlingBest For
GeometricAnalyticalInstant (1 step)N/A (exact)2-DOF arms, real-time control
Jacobian PseudoinverseIterativeMediumPoor (diverges)General purpose, away from singularities
Damped Least SquaresIterativeMediumGood (stable)Near singularities, industrial control
CCDIterativeFastGoodGame animation, simple implementation
FABRIKIterativeVery fastGoodLong chains, real-time applications


© 2021-2026 SiliconWit®. All rights reserved.