Task-Allocation Problems
The paper addresses task allocation to coordinate a fleet of autonomous vehicles by presenting two decentralized algorithms: the consensus-based auction algorithm(CBAA) and its generalization to the multi-assignment problem, the consensus-base bundle algorithm(CBBA)
subject to
- Score function: (c_{ij}(mathbf{x}_i,mathbf{p}_i))
- binary decision variable: (x_{ij})
- An ordered sequence of tasks for agent (i): (mathbf{p}_i)
- (mathcal{I} riangleq {1,...,N_u}) represents agents and (mathcal{J} riangleq {1,...,N_t}) represents tasks.
Consensus-Based Acution Algorithm
PHASE 1: AUCTION PROCESS
There are two vectors in Phase 1:
- (mathbf{x}_i) is the agent (i)'s task list
- (mathbf{y}_i) is the winning bids
A list of valid tasks (h_i) can be represented using:
where (mathbb{I}(cdot)) is the indicator function, the function means if agent (i) has ability to bid the task (j)
Process of auction algorithm:
An unassigned agent (i)(equivalently, an agent with (sum_{j}x_{ij}(t)=0)) first computes its valid task list (h_i). If there are valid tasks, it then selects a task (J_i) giving it the maximum score based on the current list of winning bids (y_i) accordingly. Also, in the case that the agent has already assigned a task((sum_{j}x_{ij} eq 0)), this selection process is skipped and the agent moves to the phase 2.
The Pseudo code of CBAA in Ph1:
PHASE 2: CONSENSUS PROCESS
The second phase of CBAA is the consensus section of the algorithm.
(mathbb{G}( au)) be the undirected communication network at time ( au) with symmetric adjacency matrix (G( au)).
Agent (i) receives the list of winning bits (mathbf{y}_i) from its neighbors.
Process of consensus:
Agent (i) replaces (y_{ij}) values with the largest value between itself and its neighbors. Also, an agent loses its assignment if it finds that it is outbid by others for the task it had selected.