Multi-Agent Teamwise Cooperative Path Finding and Traffic Intersection Coordination
Multi-Agent Teamwise Cooperative Path Finding and Traffic Intersection Coordination
This paper is published at 2024 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), 2024. Full paper at
Abstract
Abstract — When coordinating the motion of connected autonomous vehicles at a signal-free intersection, the vehicles from each direction naturally forms a team and each team seeks to minimize their own traversal time through the intersection, without concerning the traversal times of other teams. Since the intersection is shared by all teams and agent-agent collision must be avoided, the coordination has to trade the traversal time of one team for the other. This paper thus investigates a problem called Multi-Agent Teamwise Cooperative Path Finding (TCPF), which seeks a set of collision-free paths for the agents from their respective start to goal locations, and agents are grouped into multiple teams with each team having its own objective function to optimize. In general, there are more than one teams and hence multiple objectives. TCPF thus seeks the Pareto-optimal front that represents possible tradeoffs among the teams. We develop a centralized planner for TCPF by leveraging the Multi-Agent Path Finding techniques to resolve agent-agent collision, and Multi-Objective Optimization to find Pareto-optimal solutions. We analyze the completeness and optimality of the planner, which is then tested in various settings with up to 40 agents to verify the runtime efficiency and showcase the usage in intersection coordination.
Key Points in This Paper
Problem Statement
1. Workspace and Agents
There is a set of agents, each indexed by a set .
The environment is represented as a finite graph , where:
- is the set of vertices (representing possible locations or states for agents).
- is the set of edges (representing the actions or moves an agent can take between two vertices).
2. Agent Paths and Costs
Each agent has:
- A start location .
- A goal location .
The goal is to find a collision-free path for each agent, from its start to goal, which consists of a sequence of vertices .
The cost of a path , denoted as , is the sum of the costs of the edges along the path:
The agents must avoid two types of conflicts:
- Vertex conflict: Two agents occupying the same vertex at the same time.
- Edge conflict: Two agents moving through the same edge in opposite directions at the same time.
3. Teams and Objectives
The agents are grouped into teams, denoted as , where each team consists of a subset of agents. Teams are not necessarily disjoint, meaning an agent can belong to multiple teams.
Each team has an objective function to minimize. The objective function depends on the paths of all agents in the team and is non-decreasing with respect to the individual path costs. That is, if an individual agent’s path cost increases, the team’s objective function will either stay the same or increase.
- Common Objectives Include:
- Min-sum: Minimize the sum of individual path costs of all agents in the team.
- Min-max: Minimize the maximum individual path cost within the team.
4. Pareto-Optimality
Since the TCPF problem involves multiple teams with different objectives, a single optimal solution is not always possible. Instead, the goal is to find Pareto-optimal solutions.
A solution is Pareto-optimal if no team’s objective can be improved without making another team’s objective worse. In other words, it's impossible to improve one team's traversal time without increasing that of another team.
The set of all non-dominated, feasible solutions forms the Pareto-optimal front. A solution dominates another if it has a lower (or equal) cost for all teams and strictly lower cost for at least one team.
5. General and Fully Cooperative TCPF
General TCPF: The standard TCPF problem, where each team has its own objective and the goal is to find a set of Pareto-optimal solutions.
Fully Cooperative TCPF: A special case where all agents belong to the same team (i.e., for all ), meaning the entire system works together to minimize a common objective. In this case, the problem reduces to a single-objective Multi-Agent Path Finding (MAPF) problem.
Dominance and Pareto-Optimality
In the TCPF problem, multiple teams of agents are navigating the environment, and each team has its own objective function to optimize. These objectives often conflict because the shared environment (such as an intersection) has limited resources (space and time), and improving one team's objective may worsen another's.
For example:
Team 1 may aim to minimize the total traversal time for all its agents (min-sum objective).
Team 2 may aim to minimize the maximum traversal time among its agents (min-max objective).
There is no single solution that can optimize both objectives simultaneously for different teams. As a result, we need a way to compare and evaluate trade-offs between different solutions where one team may benefit at the expense of another.
1 Pareto-Optimality and Trade-Offs
To address these conflicting objectives, the paper seeks Pareto-optimal solutions—solutions where it's impossible to improve one team's objective without making another team’s worse. This leads to the introduction of dominance, which helps figure out which solutions deserve to be called Pareto-optimal.
2 Definition of Dominance
Given two solutions and , each represented by an objective vector (a set of objective values for all teams):
where each and represents the objective value for team .
Solution dominates solution if:
- for all teams (i.e., the objective values of are no worse than those of for all teams).
- There exists at least one team where (i.e., is strictly better for at least one team).
If solution dominates solution , then can hit the road 🛣 because it's worse and can be discarded from the search for optimal solutions.
3 Why Dominance is Necessary
Pruning Inferior Solutions: Dominance is your friend! It helps get rid of solutions that are just straight-up inferior and don't offer anything better. If one solution dominates another, you can toss the dominated one, making your search for optimal paths much more efficient .
Handling Multiple Objectives: Each team has its own objective, and trade-offs are the name of the game . The dominance relation helps identify which solutions are on the Pareto-optimal front—aka the set of solutions representing the best possible trade-offs. If a solution is dominated, there's another one that's better in at least one objective without being worse in any other.
Comparing Non-Dominated Solutions: Not all solutions are comparable. Two solutions and might be non-dominated with respect to each other—this means is better for some teams, while is better for others. Both solutions should be kept because they’re valid trade-offs .
4 How to Choose the Final or Best Solution When Finding the Pareto-Optimal Front
There is no one solution that can be called the best. The solution finally chose is up to the preferences, trade-offs balance or other rules.
Example:
Suppose TC-CBS has found the following three Pareto-optimal solutions for a system with two teams:
- Solution A:
(20,40) → Team 1 has a cost of 20, Team 2 has a cost of 40.
- Solution B:
(25,35) → Team 1 has a cost of 25, Team 2 has a cost of 35.
- Solution C:
(30,30) → Team 1 has a cost of 30, Team 2 has a cost of 30.
Preference-Based: If Team 1 has higher priority, the system might choose Solution A because it gives Team 1 the lowest cost, even though it increases Team 2’s cost.
Trade-Off Analysis: If the decision-maker values fairness, they might choose Solution C, as it balances the costs for both teams equally.
or Using a weighted sum with weights
Conflict-Based Search (CBS)
Step 1:Initializing
Construct a Search tree with root node , which is a tuple of .
where: is a joint path that connects starts and goals of
agents respectively; is the scalar cost value of
is a set of constraints, and each constraint is of form or , which indicates agent is forbidden to enter node (or edge ) at time .
Employ A* (Low level search) to generate of every agent without and thus obtain .
Step 2:Expanding
Choose the node with the minimum g-value for expansion. (High level search)
Step 3:Check for Conflicts
Check the conflicts of the selected node, namely .
If there exists conflicts, the algorithm splits the search into two branches in the postion of the selected node, each of which has new constraint sets and are generated.
Step 4: Replanning
A* is rerun for the affected agent, considering the newly added constraints(regarded as an obstacle)
A new joint path is then formed by first copying and then updating agent ’s individual path with .
Finally, for each of the two split constraints, a corresponding node is generated and added to the tree for future expansion.
Run Step 2-4 iteratively until there exits one which contain no conflicts.
Teamwise Cooperative CBS (TC-CBS)
TC-CBS follows a similar workflow as CBS.
Key differences:
Instead of a single objective (like sum or max), each solution is associated with an objective vector .
TC-CBS aims to find Pareto-optimal solutions, where no team’s objective can be improved without worsening another team’s objective.
TC-CBS uses lexicographic ordering to compare objective vectors instead of using a scalar cost to prioritize nodes.
TC-CBS terminates when the high-level search has explored all possible paths and found all non-dominated solutions.
Lexicographic Ordering for Comparing Objective Vectors
Lexicographic ordering is used in TC-CBS to compare objective vectors and prioritize solutions during the search process. Here's how it works:
- Definition of Lexicographic Ordering: Suppose we have two objective vectors,
where each component represents the objective value for a different team.
Lexicographic ordering compares the objective vectors element by element:
- is lexicographically smaller than (denoted as ) if there exists an index such that:
(all previous elements are equal), and
(the first non-equal element is smaller in than in ).
- Example: Let's say we have two objective vectors for a 3-team system:
To compare them lexicographically:
- Compare the first elements: (they are equal).
- Compare the second elements: and . Since , we conclude that .
Thus, is lexicographically smaller than , even though ’s third element is smaller than ’s third element. Lexicographic ordering only cares about the first non-equal element.
- Why Lexicographic Ordering? Lexicographic ordering helps in prioritizing solutions during the search:
- It allows TC-CBS to expand the solution that is lexicographically smallest (considering the first team, then the second team, and so on), ensuring a structured exploration of the solution space.
- It provides a way to break ties between solutions where multiple objectives (teams) are involved.
TC-CBS-t Algorithm
TC-CBS-t is a modified version of TC-CBS that addresses the incompleteness of the original TC-CBS. In some cases, TC-CBS may fail to terminate in finite time because it can generate an infinite number of non-dominated solutions. TC-CBS-t uses a transformation on the objective vector to ensure the algorithm always terminates while still finding a subset of the Pareto-optimal solutions.
The transformation involves adding a small weight , to the objectives of other teams. This essentially converts the problem into a fully cooperative problem, where every team’s objective is slightly influenced by the others.
The transformed problem is easier to solve because it guarantees that the algorithm will find a finite set of Pareto-optimal solutions. However, TC-CBS-t may not find all Pareto-optimal solutions.
EXPERIMENTAL RESULTS and Conclusion
See at full paper.