
1 Generalized Assignment for Multi-Robot Systems via Distributed Branch-And-Price Andrea Testa, Giuseppe Notarstefano Abstract In this paper, we consider a network of agents that has to self-assign a set of tasks while respecting resource constraints. One possible formulation is the Generalized Assignment Problem, where the goal is to find a maximum payoff while satisfying capability constraints. We propose a purely distributed branch-and-price algorithm to solve this problem in a cooperative fashion. Inspired by classical (centralized) branch-and-price schemes, in the proposed algorithm each agent locally solves small linear programs, generates columns by solving simple knapsack problems, and communicates to its neighbors a fixed number of basic columns. Also, we propose a cloud-assisted version of the algorithm that accelerates the branching process and requires less memory and computation from agents. We prove finite-time convergence of both the algorithms to an optimal solution of the problem. Then, we apply the proposed schemes to a dynamic task assignment scenario in which a team of robots has to visit tasks appearing over time. We implement the proposed algorithms in a ROS testbed and provide experiments for a team of heterogeneous robots solving the dynamic assignment problem. I. INTRODUCTION The Generalized Assignment Problem (GAP) is a well known combinatorial optimization problem with several applications as vehicle routing, facility location, resource scheduling and supply chain, to name a few [1], [2]. Even though GAP is a NP-hard problem, several approaches have been developed for solving this problem both for exact and approximate solutions. We refer the reader to [3] for a survey. Branch-and-price algorithms [2], [4] are among the most investigated algorithms allowing for both optimal and suboptimal solutions. Task assignment naturally arises in cooperative robotics, where heterogeneous agents collaborate to ful- fill a complex task, see, e.g., [5] for an early reference. Specific applications include persistent monitoring of locations [6], path planning of mobile robots, e.g., UAVs [7], task scheduling for robots working in the same space [8], vehicle routing [9] and task assignment in urban environments [10]. All the previous problems are solved by means of centralized approaches. In order to deal with the computational complexity of the problem, a branch of literature analyzes parallel and decentralized approaches to the problem1. A well known parallel approach is the auction based one, originally proposed in [11]. A market-based approach is considered in [12] for the coordination of human-robot teams. Authors in [13] propose an algorithm, based on a sequential shortest augmenting arXiv:2004.11857v2 [math.OC] 25 May 2020 path scheme, to solve a dynamic multi-task allocation problem. Agents propose assignments that are validated by a coordinating unit. As for decentralized schemes, authors in [14] solve a dynamic task allocation problem for robots that can perform local sensing operations and do not communicate among each other. In [15], a task assignment problem is solved, in a decentralized scheme, through the so called petal algorithm. In [16], a dynamic task assignment problem in which the cost vector changes in a bounded region is considered. A central unit is initially required but robots are able to exploit local communications to perform a reallocation if needed. An area partitioning problem for multi-robot systems This result is part of a project that has received funding from the European Research Council (ERC) under the European Union’s Horizon 2020 research and innovation programme (grant agreement No 638992 - OPT4SMART). A. Testa and G. Notarstefano are with the Department of Electrical, Electronic and Information Engineering, University of Bologna, Bologna, Italy, [email protected], [email protected]. 1We denote parallel the approaches based on master-slave architectures, while we call decentralized the schemes with independent agents that do not communicate among each others. 2 is proposed in [17] and solved by a genetic algorithm. An area coverage problem in marine environments is solved in [18] with heuristics based on the traveling salesman problem. The exact resolution of GAP in a purely distributed way, i.e., in a peer-to-peer network where pro- cessors communicate and perform local computations without a central coordinator, is an open problem. State-of-the-art solutions are usually based, as we discuss in the next, on proper linear programming relaxations or suboptimal approaches. In the context of multi-robot applications, a distributed version of the Hungarian method is proposed in [19]. A distributed simplex scheme for degenerate linear programs (LP) is proposed in [20] in the context of multi-agent assignment problems. In [21], authors apply a distributed dual subgradient method to the task assignment problem. Authors in [22] propose a distributed column generation algorithm for general LPs and time-varying communication graphs that can be applied to linear programming relaxations of task assignment problems. In these approaches, authors neglect integrality constraints on the decision variables, relying on the unimodular structure of the problems. As for distributed, suboptimal approaches for task assignment problems, in [23] a large-scale distributed task/target assignment problem across a fleet of autonomous UAVs is considered. A distributed column generation scheme under the assumption of complete communication graph is proposed, endowed with a round up procedure to retrieve a suboptimal integer solution. In the context of wireless sensor net- works, [24] proposes a distributed task allocation in order to maximize the network life-time. A distributed task assignment algorithm is used in conjunction with a deterministic annealing in [25], in the context of limited-range sensor coverage. In [26], a dynamic vehicle routing problem is approached with a distributed protocol in which agents iteratively solve graph partitioning problems and communicate with neighboring agents. Distributed implementations of the auction-based algorithm are often used to solve task assigment problems, see, e.g., [27] for an early reference, and in particular GAPs [28], [29]. The auction-based approach allows for a suboptimal solution with performance guarantees. In [30] this approach is applied to a task allocation problem expressed as a combinatorial optimization problem with matroid constraints. In the recent works [31], [32], a dynamic task allocation scenario, allowing agents for a partial replanning is considered. The contributions of this paper are as follows. We propose a purely distributed version of the branch- and-price algorithm to solve the Generalized Assignment Problem by means of a network of agents. Specifically, each agent locally solves a linear programming relaxation of the GAP, generates columns by solving a (simple) knapsack problem, and exchanges estimates of the solution with neighboring agents. Due to the relaxation of the integrality constraints, the solution of this problem may not be feasible. Thus, new problems, based on the original one with suitable additional constraints, have to be solved. The set of these problems can be represented by a so called branching tree. By leveraging on their communication capabilities, agents explore their local trees until an optimal solution of the optimization problem has been found. To the best of the authors’ knowledge, this is the first attempt to solve GAP to optimality in a purely distributed fashion. As a variant, we provide a cloud-assisted version of the algorithm, which is useful in scenarios, as, e.g., cooperative robotics in smart factories, where an additional infrastructure with computation capability and storage may be available. In the proposed distributed algorithm, an aiding computing unit supports agents in the tree exploration, thus reducing their computation burden and memory requirements, and speeding up the algorithm convergence. Finally, we apply the proposed algorithm to a dynamic task assignment problem where tasks arrive during time. An experimental platform, based on ROS (Robot Operating System), is proposed to run experiments in which a team of aerial and ground robots cooperatively solve the dynamic task assignment problem relying on the proposed distributed branch-and-price scheme. The paper unfolds as follows. In Section II we introduce the distributed setup considered throughout the paper. Then, we introduce the Generalized Assignment Problem and a centralized scheme, called branch-and-price, to solve it. In Section III we propose a purely distributed branch-and-price algorithm and a cloud-assisted version. In Section IV we provide numerical simulations for randomly generated GAPs and in Section V we show the results of experiments on a swarm of heterogeneous robots solving a dynamic task assignment problem. 3 > Notation: We denote by e` the `-th vector of the canonical basis (e.g., e1 = [1 0 ::: 0] ) of proper d dimension. Given a vector v` R , we denote by v`m the m-th component of v`. Also, we denote by 1r r 2 (0r) the vector in R with all its entries equal to 1 (0). II. DISTRIBUTED SETUP AND PRELIMINARIES In this section, we introduce the distributed setup for the Generalized Assignment Problem addressed in the paper. Also, the (centralized) branch-and-price scheme is illustrated. A. Distributed Problem Setup In the Generalized Assignment Problem, the objective is to find a maximal profit assignment
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages18 Page
-
File Size-