... boosting your innovation with engineering and manufacturing solutions in the cloud...



ProSeqqo is a generic, open-source solver for process planning and sequencing in industrial robotics.

App related to Robotics and Automation in the context of Manufacturing

Provided by SZTAKI - Institute for Computer Science and Control 2 years, 1 month ago (last modified 2 years, 1 month ago); viewed 937 times


ProSeqqo is a generic, open-source solver for process planning and sequencing in industrial robotics. It captures planning problems from diverse applications where task sequencing can be coupled with different types of discrete choices on how the tasks are performed: the selection of the inverse kinematic (IK) solution for a task originally defined in task space; choosing the direction of the motion in cutting or arc welding; or selecting the entry and exit points when following a closed contour. The planning problem can be declared in arbitrary dimensions, e.g., in the 3D task space or in the 6D robot joint configuration space. Moreover, the optimization criterion can be selected from a large set of predefined cost functions, such as minimizing the Euclidean travel distance, minimizing the travel time assuming limited robot joint velocities and accelerations, or a custom cost matrix can be defined. Additional side constraints, such as precedences or resource changeovers can also be captured.

Our approach is based on a problem description language, easily editable by domain experts, even without a deep background in combinatorial optimization. Namely, the problem can be encoded in the custom text format called SEQ, in JSON, in XML, or submitted to the solver via an API, which enables using ProSeqqo in complex planning workflows or in online planning scenarios. The problem descriptions are transformed into a generalized travelling salesman model (GTSP), and solved using a combination of local search techniques from the Google OR-tools VRP library and some custom algorithms.

Use Case:

ProSeqqo computes a plan that minimizes the cost function specified by the user. This can be selected from the various built-in cost functions, such as the Euclidean or the Manhattan travel distance, or the travel time assuming limited joint velocities and accelerations. Resource changeover costs or penalties for idling between effective tasks can also be captured. If needed, custom travel costs can be defined in matrix format.

The demo video is available at

Source codes and examples can be downloaded from

Additional Information