Abstract
In systems involving multiple intelligent agents, e.g. multi-robot systems, the satisfaction of environmental, inter-agent, and task constraints is essential to ensure safe and successful task execution. This requires a constraint enforcing control scheme, which is able to allocate and distribute the required evasive control actions adequately among the agents, ideally according to the role of the agents or the importance of the executed tasks. In this work, we propose a shared invariance control scheme in combination with a suitable agent prioritization to control multiple agents safely and reliably. Based on the projection of the constraints into the input spaces of the individual agents using input–output linearization, shared invariance control determines constraint enforcing control inputs and facilitates implementation in a distributed manner. In order to allow for shared evasive actions, the control approach introduces weighting factors derived from a two-stage prioritization scheme, which allots the weights according to a variety of factors such as a fixed task priority, the number of constraints affecting each agent or a manipulability measure. The proposed control scheme is proven to guarantee constraint satisfaction. The approach is illustrated in simulations and an experimental evaluation on a dual-arm robotic platform.
Keywords
1. Introduction
The simultaneous employment of multiple robotic systems to relieve and aid humans proves challenging as each robot need to execute its assigned task while limiting their affect on the actions of others and ensuring the safe interaction with other robots, humans, and the environment (Lasota et al., 2017). Exemplary applications are found in manufacturing and logistics, where cooperating manipulators take over strenuous tasks. Other application domains include search and rescue, where mobile robotic systems are deployed to keep humans safe from dangerous environments, elderly assistance, where robotic systems are introduced to household environments, and autonomously driving cars (Saleh et al., 2013). In order to ensure successful task execution, the satisfaction of environmental constraints and of constraints between multiple agents is essential. Furthermore, careful role allocation as introduced by Mörtl et al. (2012) and an assessment of the risk related to certain actions as investigated by Medina Hernández et al. (2013) is required to allocate suitable actions to agents. Naturally, the tasks carried out by the agents may be of different importance. Rescuing an injured person, for example, should be rated more important than scouting the environment, and getting to the docking station if the energy is running low should be prior to a cleaning task. Hence, to allow the execution of the more important task, other agents should clear the path and take over the main role in avoiding constraint violations.
This creates the necessity for a prioritization scheme for multiple agents, which are constrained by the environment and mutually disturb each other’s task execution. In addition, a priority-based constraint satisfaction algorithm is required to maintain the prioritization of the agents. It should enable agents with high priorities to carry on undisturbed from other agents. At the same time, agents with low priority should never be in a situation where they are trapped by other agents and unable to avoid constraint violations. In this article, we propose a novel invariance control approach for shared constraint satisfaction in multi-robot systems. The proposed scheme guarantees the satisfaction of environmental and inter-agent constraints while distributing the control effort between the agents according to their priorities and avoiding trap situations.
1.1. Related work
Constraint satisfaction is achieved by various control schemes. Methods from collision-free navigation such as virtual wall rendering by Gillespie and Cutkosky (1996), potential fields by Rimon and Koditschek (1992), dynamic windows by Fox et al. (1997), and virtual fixtures by Rosenberg (1993) are widely used in robotic applications, but are unable to provide constraint satisfaction guarantees for high inertias. Approaches from constrained control such as reference governors by Gilbert and Kolmanovsky (2002), model predictive control (MPC) by Mayne et al. (2000), methods based on invariant and reachable sets by Blanchini (1999) and Akametalu et al. (2014), control barrier functions (CBFs) by Ames et al. (2014), Rauscher et al. (2016), and Xu (2018), and invariance control by Wolff and Buss (2004) and Kimmel and Hirche (2016) generally guarantee constraint satisfaction. These approaches do, however, not consider the option of sharing evasive actions between agents in multi-agent systems according to given priorities. This means that implementing them on each of the agents to enforce the constraints may lead to overly conservative behavior, which is disadvantageous especially for high numbers of constraints leading to narrow regions of admissible states as it may lead to infeasibility.
Rossmann (1996), Freund et al. (2001), and Freund and Rossman (2003) introduced Collision Avoidance in Real-time Environments (CARE) as a method for multi-agent collision avoidance, which, especially for complex shapes or structures, only achieves an approximate reaction in real-time and is thus not able to provide guarantees for constraint satisfaction. Cai et al. (2007) suggested another approach for multi-robot collision avoidance, which deals with multi-agent collision avoidance by stopping the lower-priority agents. As a consequence, the lower-priority agents may block the path. Hence, an approach in which these agents actively retreat is preferable. Alternatively, evasive actions may be distributed using task allocation models as discussed by Lianghong et al. (2015) and Maoudj et al. (2015). These models allow the scheduling of task on the basis of existing priorities. These approaches, however, do not allow the re-scheduling of tasks if priorities change over time.
Priority-based constraint satisfaction relies on a suitable prioritization scheme. Barthès et al. (2016) introduced a heuristic approach, which changes the priorities according to the circumstances and aims at mimicking human behavior. Static effects on the priority are distinguished from time-dependent ones and dependencies between tasks are considered. In traffic management for autonomous vehicles the order in which the vehicles cross an intersection is also determined via prioritization as discussed by Alonso et al. (2011). Hong et al. (2009), on the other hand, employ priorities in a message scheduling scheme for multi-agent systems. The priorities are derived from their importance and the message throughput. If the goal is to grant the agents access to a shared goal, the possibilities range from deterministic weighted round-robin scheduling as proposed by Katevenis et al. (1991) to probabilistic approaches such as the lottery approach presented by Tiwari et al. (2016). However, these methods do not ensure a prioritization that guarantees constraint satisfaction and avoids trapping agents with low priorities.
1.2. Contribution
In this work, we propose shared invariance control as a method to guarantee the satisfaction of environmental and inter-agent constraints while using weightings in the control derivation to divide the control effort between the agents. Shared invariance control allows for a distributed implementation on the agents by generating independent constrained optimization problems, which are derived using input/output (I/O) linearization with respect to the constraint functions. It is further formally proven to guarantee satisfaction of non-contradicting constraints. In order to allow for shared evasive actions, the control approach introduces weighting factors based on agent priorities, which are determined by a two-stage prioritization scheme. This scheme allots the priorities such that trap situations are resolved and a variety of factors such as a fixed task priority, the number of constraints affecting each agent or a manipulability measure may be included in the prioritization. The approach is illustrated in simulations and an experimental evaluation on two robotic manipulators.
1.3. Notation
By convention, vectors are denoted by bold small and matrices by bold capital characters. The Euclidean vector norm (2-norm) of a vector
Lie derivatives of higher order
2. Problem setting
We consider
Each system
with the generalized coordinates
Based on the constraint parameters
encodes a single constraint
All constraints are gathered in the set of constraints
where
As the control derivation introduced in the following section relies on I/O linearization, we make the following smoothness assumptions on the output functions and the parameters.
for any continuous input,
each
The assumption, if not already fulfilled by appropriate constraint design, may be achieved by a sufficiently smooth approximation of the constraints and the parameter variation. In robotic systems, for example, the assumptions on the constraint functions are fulfilled if the constraints are non-contradicting and the robotic system has full manipulability within the admissible set, which may, for example, be achieved by introducing constraints that enforce limits on the manipulability measure.
Finally, in order to fully describe the constraints and their derivatives, it is necessary to know the parameter dynamics. Hence, we introduce the vector
which concatenates the dynamic parameters
Note that, applying I/O-linearization to any vector of dynamic parameters
3. Invariance control
Invariance control for single agents, i.e.,
As discussed in Remark 1, in general, the dynamics of robotic systems may be transformed into the given form. Figure 1 illustrates how invariance control is added to existing control loops with system and nominal control. The nominal control law is designed to fulfill task specifications such as tracking a desired trajectory, stability, and performance without taking any constraints into account. Note that nominal control design is not within the scope of this work. Constraints are enforced by the invariance control law by switching from nominal

Control structure with nominal control system and the addition of invariance control based on the constraint definition and the related dynamics.
The determination of corrective control relies on I/O linearization. It determines the effect of the control input
where
where
Setting
where
which, in turn, yields the invariant set
with
The constraints, which are in danger of being violated are indicated by a non-negative value of the invariance function and are collected in the set of active constraints
Combining (8) and
Corrective control
with
This theorem rephrases the content of Theorem 1 in Kimmel and Hirche (2017) to fit the problem setting at hand.
As the new system input renders the state controlled positively invariant by Kimmel and Hirche (2017) with respect to the invariant set (11), which is a subset of the admissible set, any constraint violation is avoided and the optimization ensures that
4. Shared invariance control
Naturally, invariance control as introduced in the previous section may be implemented on multiple agents simultaneously to enforce environmental and inter-agent constraints by using a dynamic model of the other agents in the constraint parameterization. The approach leads, however, to a rather restrictive behavior of the agents as each one tries to avoid collisions at any cost which is especially disadvantageous for robots in narrow environments. Alternatively, the constraint may be enforced via invariance control only by a subset of the involved agents, which may lead to the optimization being infeasible if the evading agent is unable to act, e.g., due to being trapped between constraints.
These drawbacks are resolved in this section by introducing an invariance control approach for multi-agent systems based on the following assumption.
This assumption is imposed for convenience of notation and poses no additional restrictions on the systems, because the relative degree may be increased, if necessary, by augmented invariance control as introduced for general systems by Kimmel et al. (2016) and for robotic systems by Jähne and Hirche (2017). Note that for robotic systems with position constraints, for example, the assumption is naturally fulfilled as the relative degree equals two for all agents.
Building on the naturally shared actions achieved by a centralized implementation, shared invariance control allows for a distributed implementation based on given priorities.
4.1. Centralized implementation
Concatenating states and inputs of the
Thus, the centralized system may be considered as a single agent, allowing invariance control to be derived analog to the previous section. This requires the involved agents to be controlled by a single, centralized controller, which has access to the agent states, dynamic information and constraint parameters. The structure for two agents is illustrated in Figure 2.

Central control architecture for inter-agent constraints of two agents.
Using Theorem 1 and the centralized system description, a constraint enforcing control input is determined. The control action is automatically shared between the agents as the left side of the optimization condition (13)
with
includes the input
In this rather straightforward approach, the agents have to be controlled by a common central controller even if no inter-agent constraints are active. For more independence of the agents, a distributed implementation may, however, be preferred. Furthermore, any prioritization of the agents is lost, because the priorities have no effect on the allocation of the evasive effort.
4.2. Distributed implementation
Introducing shared invariance control, we aim at a distributed implementation as depicted for two agents in Figure 3, where each agent has its own control loop of system dynamics and control law. Each agent is assumed to have knowledge of the constraint parameters

Distributed control architecture of shared invariance control for inter-agent constraints of two agents.
with a maximum priority value
A framework for how to assign such priorities is introduced in the following section. For now, the priorities are assumed to be given.
The goal of shared invariance control is to share the evasive control action for constraint satisfaction between the agents according to their priorities, i.e., high effort for low-priority agents and low or no effort for high-priority agents. This is achieved by partitioning the agents into different groups based on their priority.
Note that the agent priority communities have to be chosen such that each agent belongs to exactly one community. As only the agents with the lowest priority should actively enforce the constraints and share the effort, it is necessary to find these agents and the related priority community.
Using the minimal agent priority community, it is possible to find those agents, which should actively pursue constraint enforcement, i.e., those agents with the lowest priorities, which are affected by a constraint.
The remaining agents, which are not in the set of active agents, are either not affected by the constraint at all, independent from their priority, or have high priorities and should therefore not carry out any evasive action. These agents are collected in the set of inactive agents.
Using these considerations, it is possible to introduce shared invariance control for multi-agent systems.
with
is non-empty for each agent
yields control inputs
Proof. See the appendix. □
A solution exists if the constraints on each agent are non-contradicting, i.e., if admissible control values in
As the control actions of the agents just suffice to fulfill the invariance condition, overly restrictive reactions to the constraints, which would occur if the constraints are fully enforced by all agents, are avoided. This means that the approach lends itself to the implementation on robotic systems acting in narrow environments, where each robot has to satisfy the constraints imposed by the environment as well as by other agents.
Proof. See the appendix. □
Theorem 2 does not give any indication as to how the weighting factors
By inverting the priorities the agents with the lowest priority in the set of active agents are allocated the highest weighting factor, which means that they are affected most by the constraint. Normalizing the inverted priority ensures that condition (20) is fulfilled. Naturally, other weighting functions, possibly with a saturation may be used as well. Note that shared invariance control exhibits some useful properties.
Proof. See the appendix. □
Proof. See the appendix. □
As the optimization may be solved in a distributed fashion, this allows for the desired control structure illustrated in Figure 3, where each agent determines its own control input based on its priority. Hence, the cost of solving the optimization solely depends on the number of constraints and not on the number of agents and due to the convexity of the optimization problem by Corollary 2, efficient solvers may be used thus allowing the application on real-time systems with fast sampling times.
5. Agent prioritization
Note that Theorem 2 does not give information on when the optimization (21) is feasible for all agents. Instead, the prioritization scheme is designed to account for the feasibility, because there might occur situations in which the agents trap each other thus leading to infeasibility. Figure 4 shows an exemplary situation with four spherical agents, which may represent mobile robotic systems, with fixed priorities in two-dimensional space. The innermost agent holds a static position, while the outer agents move in the direction indicated by the solid arrows. In order to avoid collisions, each pair of agents defines one inter-agent constraint. As they are in different agent priority communities, the lower-prioritized agent takes the entire evasive action as indicated by the dashed arrows. The inner agent is in the lowest-priority community and has to avoid the collision with all agents. Eventually, the outer agents crash into the inner one as they leave no space to escape this trap situation.

Four-agent scenario with different fixed priorities.
5.1. Two-stage prioritization scheme
In order to resolve such trap situations, we propose a prioritization scheme composed of two stages as depicted in Figure 5. The first stage assigns a priority community according to Definition 3. The priority community decides which agents actively enforce constraints. This stage ensures that the optimization problems remain feasible. Note that as the situation may change over time, the priority assignment needs to be monitored constantly. The second stage takes care of the priority fine-tuning. Taking individual factors into account the priorities of agents within one priority community are assigned to share the effort accordingly.

Two-stage prioritization scheme.
5.2. Priority community assignment
The goal of assigning agents to a priority community is to ensure the feasibility of the optimization in Theorem 2. This requires a detection of trap situations leading to infeasibility and a trap handling scheme to adjust the priorities.
5.2.1. Trap detection
Before introducing trap detection, we define when an agent is considered trapped.
More formally, if the set
which considers all relevant constraints for agent
The conditions introduced in Farkas’ lemma may be evaluated by the minimization
This minimization has a solution as
Naturally, trap situations may only be resolved if reducing the number of constraints is possible, i.e., if they are caused by inter-agent constraints. Therefore, we assume that the uncontrollable environmental constraints are such that an agent is at no time trapped solely by the environment.
5.2.2. Trap handling
Once all trapped agents are determined, the agents taking part in or being close to a trap situation are determined. For robotic systems with position constraints, this corresponds to finding all robots that are physically close or moving fast towards the trapped robot. More generally speaking, evaluating the invariance functions shows which agents may be considered close.
with a constant negative threshold
Using the nearly active constraints, an agent graph is established. The agents are nodes and those affected by the same nearly active constraints are connected via edges.
Emergency communities are determined via graph search starting from trapped agents. Within an emergency community, priorities are reassigned to reinstate feasibility of the optimization (21).
Naturally, there is not a single solution to reassigning priorities to resolve trap situations. We suggest a priority community
the severity of the trapping situation depending on the involved constraints;
the proximity to free agents.
The severity criterion is determined by the number of involved environmental constraints. In Figure 6, the severity increases from left (solely agents) to right (multiple environmentally constrained dimensions). The more severely an agent is trapped, the higher should be its priority community.

Trap situations of different severity with the most trapped agent
restricted by (a) solely free agents
, (b) free agents and a single wall
, and (c) two walls and other trapped agents
, which are in turn trapped by free agents and a single wall.
The proximity criterion is determined by the distance to free agents. Using the agent graph of the emergency community and starting at the free agents, which are sorted into the lowest-priority community, the priority increases for each step along an edge until all agents are assigned.
The trap situation is then resolved by Algorithm 1. By assigning free agents to low-priority communities, it removes constraints from the other agents, thus freeing more agents. These are in turn assigned to the higher-priority communities, which is repeated until all agents are free.
is non-empty for each agent
is empty for all agents
Proof. See the appendix. □
In other words, the algorithm converges, if there is no set of constraints that mutually traps two or more agents, i.e., that would require removing one or more constraints to free the agents, and if an agent is never trapped solely by environmental constraints. Note that the algorithm will never need more steps than there are agents in the emergency community, but usually it will need considerably less.
The process is illustrated in the following example.

Trap situation with
free and
trapped agents with respective priority communities in different stages of Algorithm 1. All depicted agents belong to the same emergency community as their constraint outlines touch, meaning they share (nearly) active constraints.
All agents that are not part of an emergency community may be assigned either to arbitrary priority communities or preferably based on their priority shares.
5.3. Priority share assignment
In situations, which are not critical for the feasibility of the optimization problem, the priorities may be freely assigned. In this case, each agent
with the number of criteria
The proposed priority share calculation framework offers several advantages. It is flexible, scalable, and allows the calculation of the agent priorities in a distributed manner. Furthermore, adding new criteria for priority calculation is trivial.
In the following, we illustrate the capabilities of the proposed prioritization framework in numerical examples and experiments.
6. Evaluation
The proposed trap handling and prioritization scheme using shared invariance control is tested in different scenarios in simulation as well as in experiments on robotic manipulators. For both the numerical examples and the experiments, control is implemented in Matlab/Simulink.
6.1. Agents in different priority communities
Starting with a rather straightforward example, we examine the case of two spherical agents in different priority communities with radius

Setup and trajectories for two shared invariance controlled agents in different priority communities.
Both agents are nominally controlled by a proportional-derivative (PD) control law with respect to a desired position and the inter-agent constraint is given by
where
Parameters for evaluation of shared invariance control.
Without the constraint, both agents would follow a straight line towards their desired position. With the constraint and shared invariance control derived using Theorem 2, the agents adjust their actions to avoid constraint violations. Figure 8(b) and (c) depict the trajectories of the agents if the second agent is in a higher priority community. As expected, the second agent follows a straight trajectory towards its desired position whereas the first agent carries out an evasive motion. If the priority communities are reversed, the first agent goes straight towards the goal while the second agent makes the evasive movement as shown in Figure 8(d) and (e).
The successful assignment of evasive actions to agents in lower-priority communities is the basis for resolving trap situations.
6.2. Evaluation of trap handling
For the evaluation of the proposed approach for trap detection and handling, we consider the two setups illustrated in Figure 9.

Initialization of different test scenarios with free
and trapped
agents as well as static environmental constraints
. The arrows indicate the movement directions of the agents.
Each setup contains multiple spherical agents with radius
Simulation parameters for evaluation of trap handling
Figure 10(a) shows what happens in the first setup without trap handling. With the inner agent being stationary and the outer agents moving towards it, at one point, the inner agent is trapped. As it is in the lowest-priority community, it has to take over all evasive actions, which is not possible. Being in higher-priority communities, the outer agents do not respect the constraint and therefore, the constraints are violated.

Behavior of controlled agents (a) without trap detection and (b) with trap detection in the scenario of Figure 9(a).
If, on the other hand, trap detection is used, the agents form an emergency community and redistribute their priorities. As a result, the outer agents have to respect the constraints and constraint violation is avoided as depicted in Figure 10(b).
The results of trap handling are further illustrated by the second setup introduced in Figure 9(b). In this case, the agents move such that two emergency communities form around the agents in the opposing corners. Figure 11 depicts the final configuration of the agents, when all agents become stationary as movement in the desired directions is no longer possible. It may be observed that no constraint violations occur. Furthermore, the agent, which starts in the middle and moves towards the upper right corner pushes its way in between the two agents trapping the agent in the corner. This is owed to the fact that this agent is in a higher-priority community, leading to evasive movements of the other two.

Two emergency communities are formed for the two agents trapped in different corners in the scenario shown in Figure 9(b).
With reliable trap detection and handling, we now turn to the experimental evaluation of shared invariance control.
6.3. Experimental evaluation
The experimental evaluation is executed on two redundant position-controlled manipulators
6.3.1. Nominal control
The trajectory for the position-controlled manipulators is generated by an admittance-type control law derived from a model of the robotic manipulators and an impedance control law. The gravity and Coriolis effects are assumed to be compensated leading to the general joint-dynamics model of the manipulators
with the joint positions
with the external torques
with the desired joint trajectory
with the generalized inverse
6.3.2. Constraints
An inter-agent constraint is chosen to model both end effectors being enclosed by spheres with constant radii, which should never overlap. The constraint function is given by
with a constant radius
6.3.3. Corrective control
Differentiation of (28)
and substitution of
Corrective control is derived according to Theorem 2 with the optimization conditions corresponding to the static box constraints discussed by Kimmel et al. (2012) included in the optimization of each agent according to Corollary 1.
6.3.4. Priority assignment
In the experiment, the agent priorities are assigned according to multiple criteria.
Each agent has a static task priority
The number of nearly active constraints criterion uses Definition 8 with
to assign a higher priority to agents with a more constrained environment.
The external force criterion assigns higher priorities to agents with high external forces:
The joint limit criterion
assigns higher priorities if agents are close to a joint limit.
The manipulability measure as introduced by Yoshikawa (1985) is based on the Jacobian
A weighted sum with positive weights over the desired criteria derives the final agent priorities.
6.3.5. Setup
The derived invariance control law including admittance control and the constraints is implemented in the Real-Time Workshop of Matlab/Simulink. The used solver is a discrete time Euler solver with the sampling frequency of
The parameters for the experiments are provided in Table 3. If not denoted differently, the parameters are the same for both manipulators.
Experimental parameters.
Shared invariance control is validated in two experiments. First, solely static priorities are used to illustrate the capabilities of shared invariance control in the presence of external forces and environmental box constraints. Then the static priorities
with the weights
6.3.6. Results
In the first experiment, the end effectors follow the desired trajectories while enforcing the inter-agent and box constraints. In addition, external forces as depicted in Figure 12 are applied and generate a compliant reaction due to the used admittance control.

External forces
,
, and
in the experiment with static priorities for the left and right manipulator.
Despite the forces, the box constraints are enforced, as Figure 13 shows no violations of the bounds. In addition, the inter-agent constraint holds as depicted by Figure 14(a), which shows that the distance between the end-effector positions is at least

The Cartesian position
for the left
and the right manipulator
with the respective the reference
,
without invariance control.

Inter-agent constraint, invariance functions, and relative position deviation for the experiment with static priorities with
highlighting the time, during which solely the inter-agent constraint is active. (a) Distance between the end effectors. (b) Invariance functions of the Cartesian box constraints for the left
manipulator, the right
manipulator and the invariance function of the inter-agent constraint
. (c) Relative position deviation for the left
and the right
manipulator with the respective desired values 
.
The invariance functions depicted in Figure 14(b) remain at non-positive values, thus emphasizing the constraint satisfaction. In addition, the relative position deviation from the trajectory without invariance control
with
In the second experiment the priorities for shared invariance control are determined using the dynamic criteria. In this experiment solely the inter-agent constraint is considered.
As the applied external forces, depicted in Figure 15, are used in the force-based priority assignment criterion

External forces
,
, and
in the experiment with dynamic priorities for the left and right manipulator.

Inter-agent constraint, dynamic priorities and weights for shared invariance control in the experiment with dynamic priorities with
highlighting the time, during which the inter-agent constraint is active. (a) Distance between the end effectors. (b) Priorities of the left
; and the right
; manipulator. (c) Relative position deviation to the unconstrained position for the left
; and the right
; manipulator with the respective desired values
,
.
As the force sensors are prone to measurement noise, the priorities of the agents as depicted in Figure 16(b) and the desired partition in Figure 16(c) are subject to noise as well. It may, however, be observed that the relative position deviation of the manipulators follows the trend of the desired weights while the constraint is active and the robotic system acts like a low-pass filter, smoothing the desired signal. Naturally, if the constraint is inactive, the weights differ from the desired weight as no evasive action and therefore no weighting is necessary. Hence, this experiment encourages the use of shared invariance control for multi-agent systems with weighted inter-agent constraints and dynamic priorities.
7. Conclusion
In this work, we have proposed shared invariance control as a method to share and distribute the constraint enforcing control effort in multi-agent systems according to agent priorities. The control law allows for a distributed implementation and has been formally shown to guarantee constraint satisfaction. In addition, a two-stage prioritization scheme has been developed that ensures that no constraint violation occurs due to low-priority trapped agents and that allows the determination of agent priorities according to multiple static and dynamic conditions. The approach has been successfully evaluated in simulation and experiments on robotic manipulators.
Footnotes
Appendix. Proofs
Proof of Theorem 2. For the proof, we consider the agents as a single system described by (7) and (15). The minimization (21) is then re-written as
subject to the same input constraints (19), which yields the same result as the decoupled optimization problems (21). Any solution to the optimization
Using (20) yields
and with
which corresponds to the invariance condition (16) of the centralized system. Hence, by Theorem 1 adherence to the constraints is achieved as the control input fulfills the condition for invariance encoded in the optimization condition and, thus, avoids constraint violation. □
Proof of Corollary 1. Theorem 2 states that the control input derived from the optimization (21) enforces inter-agent constraints
Furthermore, as agent
which corresponds to the optimization condition for invariance control introduced by Kimmel and Hirche (2017). As this condition is independent of the states of the other agents, each agent enforces environmental constraints independently from other agents. □
Proof of Corollary 2. The cost function of the optimization is convex as it is a quadratic function with the Hessian being the identity matrix. Furthermore, the constraints are linear in the optimization variables
Proof of Corollary 3. Both the cost function (21) and the conditions on the input (19) solely depend on one optimization variable
Proof of Theorem 4. Algorithm 1 converges if it is able to free at least one agent at each iteration step until all agents in the emergency community are free. Therefore, it is necessary to investigate whether the priority community
Let there be a single agent in
Now consider the case of the priority community
Hence, by induction, if the number of agents in
Acknowledgements
M. Kimmel, J. Pfort, and J. Wöhlke contributed equally to this work.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work was supported by the EU Seventh Framework Programme FP7/2007-2013 within the ERC Starting Grant Control based on Human Models (con-humo; grant agreement number 337654) and the joint Sino–German project “Control and Optimization for Event-triggered Networked Autonomous Multi-agent Systems” funded by the German Research Foundation (DFG) and the National Science Foundation of China (NSFC).
