What are Robotic Constraints and Optimizations?

Dan Dockter
Sep 16, 2019 9:35:56 AM

Properly applied constraints and optimizations are critical for modern robot control. In this post, I’ll explain what robotic constraints and optimizations are, how they're applied in Actin, and why they're such an effective improvement over traditional robot control.

In robotics, the term “constraint” typically refers to specified vectors of and rotations about a frame on a rigid body (or robotic manipulator link) relative to another rigid body or the system origin. Actin control allows a user to concentrate on tasking a manipulator frame’s beginning and end goal locations rather than on documenting joint angles, so understanding how to provide the maximum flexibility to the system results in much more efficient motion. The Natural Tasking video embedded below is an excellent example of the fluid and efficient motion that underconstrained kinematic control can provide.


What is a robotic constraint?

A robotic constraint is a restriction placed on a robotic system that narrows its achievable motion possibilities. Constraints can include both the mechanical constraints of the system, such as a joint that is at its limit, and the constraints that are applied by the user, such as the desired position of the tool. While the term “constraint” often has a negative connotation, robotic constraints are necessary and allow the user to determine the motion of the system. For instance, when following a toolpath, respecting the surface normal vector and any desired execution offsets relative to that vector is usually critical to the robot task, so it’s necessary to constrain the robot link that is following the toolpath to match those “normal” vectors.


Fig. 1: Surface Normal Vector (Blue)

However, in many applications, the rotation about the surface normal vector is inconsequential. Fully constraining the end effector (EE) to match the rotation of the surface normal vector can drastically decrease the workspace envelope and overall manipulability of the system. A frame on a link where all vectors and rotations match those of the frames being interpolated is referred to as being “fully constrained”.

At times fully constraining a frame is OK, but in many circumstances fully constraining a kinematic system can cause unnatural or unachievable motion. In the video: “Frame vs Free Spin in Z” (below), notice that the frame motion constraint is a fully constrained 6DOF motion constraint and the Free-Spin-In-Z motion constraint is underconstrained with 5 degrees of constraint on 6 degrees of freedom.


Underconstraining the EE frame is important since it allows Actin to utilize additional optimizations to increase the manipulability of the system expanding the usable workspace envelope.

In Actin software, these constraints can change at any timestep.

If the EE frame of a ≤ 6 DOF system is fully constrained, its corresponding kinematic chain cannot be optimized during interpolation. Underconstraining a motion constraint does not mean that the motion of the associated frame will be random, but rather that the user is relinquishing control of that motion to allow Actin algorithms to utilize it in their solutions.

This is important, since it allows Actin to utilize additional optimizations to increase the manipulability of the system to expand the usable workspace envelope.

Robot Workspace Envelope

Fig. 2: Visualized Extent of Workspace Envelope (Image credit: Stäubli International AG)

In Fig. 2 above, the reach of a 6 DOF robot at full extension is visualized to show the maximum workspace boundary or reach. It’s not apparent, but there are many poses within a 6 DOF robot’s workspace envelope that are unachievable due to singularities.

However, if the EE frame is underconstrained, the robot can achieve many more poses within its workspace envelope.

What is a robotic optimization?

A robotic optimization is the way an underconstrained (kinematically redundant) robotic system determines how to execute its commanded motion. This is accomplished by trying to find the minimum value of a mathematical combination of the joint motions and other factors that have been selected to be included in the optimization. These other factors might include the distance to joint actuator limits, the distance to collision, or the energy required to actuate the system.

If the Degrees of Constraint (DOC) of a system are less than the Degrees of Freedom (DOF) of that system, it is considered kinematically redundant and can be optimized during interpolation.

The suitability of a constraint's configuration can vary as a system is operated and/or the system state changes. Actin provides methods to task the system in ways to variably achieve the ideal mix of constraints and optimizations at runtime.

Underconstrained motion can drastically increase the number of possible kinematic solutions and overall efficiency of motion between robot goal locations. Utilizing various degrees of constraint on the link from which the system is being controlled together with robotic optimizations such as joint limit avoidance, singularity avoidance, and others available in Actin software is very helpful for collision avoidance in confined or dynamic environments.

The most important thing to remember about Actin’s capability to allow the user to specify the degrees of robotic constraint and various optimization parameters in a kinematic chain is that this can extract extensive and previously unavailable value out of any robotic system. Even a legacy fleet of hardware.

Contact an Energid Sales Rep to learn more about extracting the maximum efficiency out of your robotic systems through the application of Actin's real-time constraints and optimizations.

Free Whitepaper: Leveraging High-Fidelity Simulation to Evaluate Autonomy Algorithm Safety

Leveraging Hi-Fidelity Simulation to Evaluate Autonomy Algorithm Safety-079396-edited

The last barrier is to prove to decision-makers (and the general public!) that these autonomous systems are safe.

This paper describes a rigorous safety testing environment for large autonomous vehicles. Our approach to this borrows elements from game theory, where multiple competing players each attempt to maximize their payout. With this construct, we can model an environment that has an agent that seeks poor performance in an effort to find the rare corner cases that can lead to automation failure.

Get the Whitepaper

Subscribe by Email

No Comments Yet

Let us know what you think