{"categories":[{"label":"Scientific/Engineering","url":"https://skillfed.io/packages/category/scientific-engineering/5"}],"enrichment":{"capability":"Pink solves differential inverse kinematics for articulated robots by formulating task-based objectives as a quadratic program, computing joint velocities that drive the robot toward multiple weighted targets while respecting configuration and velocity limits.","skillfed_tags":["robotics","kinematics","optimization"],"use_cases":["Control a multi-limb robot (humanoid, dual-arm, or quadruped) to simultaneously achieve multiple frame and posture objectives.","Solve inverse kinematics for a manipulator arm with end-effector position and orientation targets plus joint regularization.","Track moving targets in real-time by continuously updating task targets and integrating the solver's velocity output.","Enforce floating-base velocity limits on legged robots to clamp commanded linear and angular velocities.","Resolve conflicting task objectives (e.g., foot contact vs. base orientation) by weighting normalized costs."],"what_it_does":"Pink is a Python inverse kinematics solver built on top of Pinocchio for controlling articulated robots. It formulates robot motion as a set of weighted tasks\u2014such as positioning a foot, orienting a base, or maintaining a preferred posture\u2014and solves a quadratic program to compute joint velocities that satisfy all tasks simultaneously while respecting joint limits. The solver handles task conflicts by normalizing objectives and weighting them relative to each other, making it suitable for complex multi-objective control problems on robots ranging from simple arms to humanoids and quadrupeds.\n\nThe package provides a task-based API where you define residual functions (e.g., desired frame position minus current position) and costs, then call solve_ik to get a velocity command. It integrates with Pinocchio's robot models and supports floating-base velocity limits for robots with free-flyer or planar bases. The solver outputs differential velocities that can be integrated over time to reach target configurations, or continuously tracked if targets change.","worth_installing":"Yes. Pink is actively maintained, has no known vulnerabilities, installs with low friction, and is licensed permissively. It is production-stable and well-suited for anyone building task-based inverse kinematics solvers for articulated robots. Install it if you need to control multi-objective robot motion; skip it if you only need forward kinematics or single-task IK."},"id":"pin-pink","links":{"html":"https://skillfed.io/packages/pin-pink","md":"https://skillfed.io/packages/pin-pink.md","pypi":"https://pypi.org/project/pin-pink/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-07-15","license_spdx":null,"license_treatment":"permissive","name":"pin-pink","python_support":"supports_current","summary":"Inverse kinematics for articulated robot models, based on Pinocchio."},"popularity":{"monthly_downloads":264025,"position":8345,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"4.3.0"}
