Managing Conflicting Tasks in Heterogeneous Multi-Robot Systems Through Hierarchical Optimization

Manolo Garabini 1
Lucia Pallottino 1
IEEE Robotics and Automation Letters, 2025
1Centro di Ricerca “E. Piaggio”, Università di Pisa, Pisa, Italy
*Corresponding author: davide.debenedittis@phd.unipi.it

Abstract

The robotics research community has explored several model-based techniques for multi-robot and multi-task control. Through constrained optimization, robot-specific characteristics can be taken into account when controlling robots and accomplishing tasks. However, in scenarios with multiple conflicting tasks, existing methods struggle to enforce strict prioritization among them, allowing less important tasks to interfere with more important ones. In this paper, we propose a novel control framework that enables robots to execute multiple prioritized tasks concurrently while maintaining a strict task priority order. The framework exploits hierarchical optimization within a model predictive control structure. It formulates a convex minimization problem in which all the tasks are encoded as linear equality and inequality constraints. The proposed approach is validated through simulations using a team of heterogeneous robots performing multiple tasks.

Approach

Every requirement placed on the fleet — the robots’ own dynamics included — is written as a task, a set of linear equality and inequality constraints on the stacked states and inputs of all nrn_\mathrm{r} robots:

Tp:{Apxbp=0,Cpxdpμp,\mathcal{T}_p: \left\{ \begin{aligned} A_p x - b_p &= 0, \\ C_p x - d_p &\leq \mu_p, \end{aligned} \right.

where the slack variable μp\mu_p keeps the problem feasible when a task cannot be satisfied. The tasks are then solved in a strict priority order: the robots’ dynamics take the highest priority, the input limits follow, and the remaining tasks are ordered according to the requirements of the application. The priority ordering is the only thing the designer sets — no weight tuning is required.

A stack of task layers, from robot dynamics at the top through safety and primary tasks down to secondary tasks, solved by hierarchical quadratic programming for a heterogeneous fleet of mobile robots.
Tasks are arranged in a strict priority order and solved one level at a time, so that a lower-priority task can never compromise a higher-priority one.

Hierarchical optimization

Each task Tp\mathcal{T}_p is solved as a quadratic program that also carries the inequality constraints of all higher-priority tasks, giving a partial solution xpx_p^*. The global solution, which also satisfies the equality constraints of the higher-priority tasks, is obtained by projecting the partial solution into their null space:

xˉp=xˉp1+Np1xp,xˉ0=0,\bar{x}_p^* = \bar{x}_{p-1}^* + N_{p-1} x_p^*, \qquad \bar{x}_0^* = 0,

with the null-space projector computed recursively from the singular value decomposition of ApNp1A_p N_{p-1}:

Np=Np1Null(ApNp1),N0=I.N_p = N_{p-1} \operatorname{Null}(A_p N_{p-1}), \qquad N_0 = I.

Since NpN_p loses columns as each task constrains the solution space, lower-priority tasks optimize over a progressively smaller space and cannot undo what a more important task has achieved. The solution of the whole set of tasks is xˉm\bar{x}_m^*, obtained after solving mm subproblems.

Hierarchical constraint-based model predictive control

The hierarchy is embedded in a model predictive controller covering a horizon of ncΔtn_\mathrm{c} \Delta t. The optimization uses direct multiple shooting, which jointly optimizes the states and the inputs of the fleet and offers better convergence than single shooting at the cost of more variables. Each robot’s dynamics are discretized and linearized around a nominal trajectory rather than a single point, which significantly reduces linearization errors. Heterogeneity is handled naturally, because every robot contributes its own dynamics and its own input and input-rate limits to the same problem.

Tasks

The paper formalizes a set of multi-robot tasks within the framework. Since several tasks may share the same priority level and be traded off by relative weights, the approach is a superset of weighted optimization.

TaskEncoding
Robot dynamicsequality, linearized and discretized per robot
Input and input-rate limitsinequality, ui,minui,kui,maxu_{i,\min} \leq u_{i,k} \leq u_{i,\max}
Collision avoidanceinequality, minimum safety distance dsd_\mathrm{s} to obstacles and to other robots
Go-to-goalequality, ri,k=rgoalr_{i,k} = r_\mathrm{goal}
Coverageequality, ri,k=cVi,kr_{i,k} = c_{\mathcal{V}_{i,k}}, the centroid of the robot’s Voronoi cell
Formation controlequality on the desired inter-robot distances dijd_{ij}
Input minimizationequality, ui,k=0u_{i,k} = 0, at the lowest priority

Results

Prioritized versus weighted optimization

Two single-robot scenarios separate the proposed approach from the weighted one, where relative importance is expressed by a scalar κ\kappa that must be tuned.

In the first, a unicycle is given three conflicting go-to-goal tasks, with Ta\mathcal{T}_\mathrm{a} more important than Tb\mathcal{T}_\mathrm{b} and Tc\mathcal{T}_\mathrm{c}. The prioritized controller satisfies Ta\mathcal{T}_\mathrm{a} without compromise while moving smoothly and within the robot’s dynamics. The weighted controller only matches it once κ\kappa is raised to 1000.

Trajectory of a unicycle that leaves the origin and settles on the goal of the highest-priority task, ignoring the two conflicting lower-priority goals.
Conflicting go-to-goal tasks solved with the proposed approach. Ta\mathcal{T}_\mathrm{a} has the highest priority, followed by Tb\mathcal{T}_\mathrm{b} and Tc\mathcal{T}_\mathrm{c}.
MethodWeight κ\kappaTime-to-goalPosition error
Prioritized4.05 s0.00 m
Weighted104.09 s0.62 m
Weighted1004.05 s0.01 m
Weighted10004.05 s0.00 m

In the second scenario the same robot is given five partially conflicting tasks of decreasing importance — T1:x=5\mathcal{T}_1: x = 5, T2:x=12\mathcal{T}_2: x = -12, T3:y=10\mathcal{T}_3: y = 10, T4:y=4\mathcal{T}_4: y = -4, and T5:θ=π/4\mathcal{T}_5: \theta = \pi/4 — whose optimal final configuration is x=5x = 5, y=10y = 10, θ=π/4\theta = \pi/4. The prioritized controller reaches it without tuning: it first moves horizontally to satisfy T1\mathcal{T}_1 with minimal delay, only then moves vertically to complete T3\mathcal{T}_3, and finally rotates to accomplish T5\mathcal{T}_5. No weight value reproduces that behaviour. With κ=100\kappa = 100 the robot completes a single task even though the others are non-conflicting, with κ=5\kappa = 5 it accomplishes none, and the best intermediate value leaves feasible tasks uncompleted.

Paths followed by the robot: the prioritized controller reaches the optimal configuration in three stages, while the weighted controller ends elsewhere for every value of the weight.
Path executed by the robot with the prioritized and the weighted approach.
Prioritized approach: the tasks are completed in priority order.
Weighted approach, κ=100\kappa = 100: only one task is completed.

Coverage and battery charging

A fleet of six mobile robots must cover a square area while each robot keeps a sufficient battery charge, recharged by reaching a charging station. Coverage is prioritized while the battery is full; below a threshold, recharging is assigned a higher priority for that robot. The remaining robots keep covering the area and adapt to the movement of the one that leaves. The scenario is run with six unicycles and repeated with a heterogeneous fleet of four unicycles and two omnidirectional robots, which the framework manages by carrying each robot’s dynamics and constraints in the same optimization problem.

Six unicycle robots covering the area, two of which leave to recharge.
The same scenario with four unicycles and two omnidirectional robots.

Collision avoidance, formation control, and centroid velocity

Five omnidirectional robots must hold a formation and follow a centroid velocity reference while avoiding an obstacle and each other, keeping at least 50 cm between robots. Collision avoidance always has the highest priority; swapping the order of the other two tasks decides which one is sacrificed. With formation control above the velocity reference, the formation is preserved through the evasive manoeuvre and the centroid velocity error peaks at 0.7 m/s. With the order reversed, the velocity error stays at 0 m/s at all times and the formation is temporarily broken instead.

Formation control above the centroid velocity reference.
Centroid velocity reference above formation control.
Inter-robot distances over time, all of them above the safety threshold, when formation control is prioritized.
Inter-robot distances with formation control prioritized.
Inter-robot distances over time, all of them above the safety threshold, when the centroid velocity reference is prioritized.
Inter-robot distances with the velocity reference prioritized.

In both cases the safety distance is never violated: the highest-priority task is achieved without compromise, and prioritization is enforced by null-space projection rather than by weights that would have to be tuned against safety.

Computation time

The framework is implemented in Python 3.10, with the tasks defined and linearized through CasADi and solved with quadprog, on a 12th Gen Intel Core i7-12700H. The weighted approach solves one large problem, the hierarchical one solves mm smaller subproblems, so which is faster depends on how the inequality constraints are distributed. The weighted approach is roughly four times faster in the two single-robot scenarios and 50% faster on coverage, whereas the hierarchical approach is 40% faster on the collision-avoidance-heavy scenario, where its subproblems are considerably smaller.

ScenarioSetup timeSolve time, hierarchicalSolve time, weighted
Conflicting go-to-goal0.106 s0.121 s0.031 s
Multiple prioritized tasks0.102 s0.174 s0.056 s
Coverage1.6 s4.19 s2.72 s
Collision avoidance, centroid velocity, and formation0.45 s0.74 s1.05 s

The computational cost scales linearly with the prediction horizon ncn_\mathrm{c} and quadratically with the number of robots nrn_\mathrm{r}. At a control frequency of 20 Hz, the approach remains real-time capable with fleets of more than 40 robots for short prediction horizons.

Real-time factor against the number of robots for prediction horizons of one to four steps, crossing the real-time threshold beyond forty robots for the shortest horizon.
Real-time factor when varying the number of robots nrn_\mathrm{r} and the prediction horizon ncn_\mathrm{c}.

Conclusion

By leveraging hierarchical optimization within a model predictive control structure, the proposed method handles task prioritization efficiently, ensuring strict task ordering and execution while simultaneously accounting for the robots’ dynamics and constraints. The framework maintains task priority without the extensive parameter tuning that weighted approaches require, suits heterogeneous robot systems and complex environments, and manages concurrent tasks such as collision avoidance, coverage, formation control, and battery charging. Future work will explore decentralized optimization and validation under more dynamic conditions.

BibTeX citation

@article{debenedittis2025managing,
author = {De Benedittis, Davide and Garabini, Manolo and Pallottino, Lucia},
journal = {IEEE Robotics and Automation Letters},
title = {Managing Conflicting Tasks in Heterogeneous Multi-Robot Systems Through Hierarchical Optimization},
year = {2025},
volume = {10},
number = {6},
pages = {5305--5312},
doi = {10.1109/LRA.2025.3559843}
}