680 likes | 806 Views
Bounded Optimal Coordination for Human-Robot Teams. G. Ayorkor Mills-Tettey Thesis Proposal: 12 th December 2008 Committee: Anthony Stentz, M. Bernardine Dias, Michael Trick, Nicola Muscettola. INTRODUCTION. Motivation. [IMAGE CREDITS]. INTRODUCTION. Example Problem. Compute:
E N D
Bounded Optimal Coordination for Human-Robot Teams G. Ayorkor Mills-Tettey Thesis Proposal: 12th December 2008 Committee:Anthony Stentz, M. Bernardine Dias, Michael Trick, Nicola Muscettola
INTRODUCTION Motivation [IMAGE CREDITS]
INTRODUCTION Example Problem • Compute: • Allocation of tasks to agents • Schedule for each agent • Route for each agent Maximizing: (rewards for completed tasks) - (travel costs for agents’ routes) - (Cost for agents’ idle time)
INTRODUCTION Example Problem • Compute: • Allocation of tasks to agents • Schedule for each agent • Route for each agent Maximizing: (rewards for completed tasks) - (travel costs for agents’ routes) - (Cost for agents’ idle time)
INTRODUCTION Problem Features • Tasks • Spatially distributed • Multi-step • Time constraints • Location choice • Precedence constraints • Simultaneity constraints • Proximity constraints • Agents • Heterogeneous • Capacity constraints • Locations • Capacity constraints • Mutual exclusion constraints
INTRODUCTION Thesis • Goal: compute bounded optimal, anytime solution to complex coordination problem • Allocation of tasks to agents • Schedule for each agent • Route for each agent • Characteristics of application domains: • Bounded optimality is important • “Small” teams: 10s of agents, 10s-100s of tasks • Planning time in minutes (or hours) acceptable • Centralized planning acceptable
RELATED WORK Related Work Tasks Agents Locations Optimal algorithms Approximate algorithms
RELATED WORK j k i D l Vehicle Routing Problem • Transportation of passengers / distribution of goods between depots and final users
RELATED WORK j k i D l Vehicle Routing Problem • Mathematical models – mixed integer linear programming • 3-index models (e.g. Cordeau, 2006) • 2-index / set-partitioning models (e.g. Savelsbergh & Sol, 1998) Indicates if an agent a traverses the edge from node i to node j r Indicates if an agent a performs route r
RELATED WORK Vehicle Routing Problem • Exact approaches • Mathematical Programming • Heuristic Approaches • Construction and improvement heuristics • Tabu Search, Genetic Algorithms, Simulated Annealing, etc
RELATED WORK Vehicle Routing Problem • Problem features not addressed: • Precedence & simultaneity constraints with penalization of waiting/idle time • Location choice for tasks • Capacity constraints on locations • Proximity constraints • Mutual exclusion constraints
RELATED WORK Multi-Robot Task Allocation • In a multi-robot system, which robot should execute which task?
RELATED WORK Multi-Robot Task Allocation • Market-Based Approaches A victim needs to be rescued at location (4, 2) I can do it for $80 $101 It will cost me $54 $73
RELATED WORK Multi-Robot Task Allocation • Related problem (Jones, 2007) • Planning, allocating and scheduling agent interactions for team tasks with precedence and simultaneity constraints • Solution approach: Market-based approach with combinatorial bidding and tiered auctions • Limitations for this thesis: • Does not include all problem features • No optimality guarantees
RELATED WORK Multi-Robot Task Allocation • Related problem (Koes, 2005) • Planning and Execution for Multirobot Coordination • Solution approach: Mathematical programming (constraint optimization) • Limitations for this thesis: • Does not include all problem features • Relies on off-the-shelve solvers, solution algorithm not customized to problem domain
PROBLEM STATEMENT Problem Statement • Given • A set of tasks (could be multi-step) • A team of heterogeneous agents • A set of locations • A set of constraints (compatibility, precedence, simultaneity, proximity, mutual exclusion) • Problem is to determine optimal: • Task allocation • Schedule • Routes
TECHNICAL APPROACH Technical Approach • Mathematical programming • To guarantee bounded optimality • Specifics: • Create a set-partitioning formulation of the problem, with side constraints • Design a branch-and-price algorithm to solve it
TECHNICAL APPROACH Technical Approach: Overview • Background • Set-partitioning formulation • Branch-and-bound • Branch-and-price • Application to thesis problem • Set-partitioning formulation with side constraints • Formulation of pricing sub-problem
TECHNICAL APPROACH ExampleSet-Partitioning Formulation B 3D 4P 1P 1D 3P A 2D 2P 4D
TECHNICAL APPROACH Set-Partitioning Formulation Example B 3D r0 4P 1P 1D Possible route 3P A 2D 2P 4D
TECHNICAL APPROACH Set-Partitioning Formulation Example B 3D r1 4P 1P 1D Possible route 3P A 2D 2P 4D
TECHNICAL APPROACH Set-Partitioning Formulation Example B 3D r2 4P 1P 1D Possible route 3P A 2D 2P 4D
TECHNICAL APPROACH Set-Partitioning Formulation Example Set Partitioning Formulation: B Each agent assigned to at most 1 route: r0 3D r4 4P r2 1P r3 1D Each task assigned to exactly 1 route: 3P A 2D r1 2P r1 4D
TECHNICAL APPROACH Set-Partitioning Formulation Example Set Partitioning Formulation: Each agent assigned to at most 1 route: (for each agent, k) Set of all feasible routes for agent k Each task assigned to exactly 1 route: (for each task, i) Set of all agents Indicates if request i is on route r
TECHNICAL APPROACH Branch-and-Bound min: route costs subject to: … 20.67 P 21 22 P1 P2
TECHNICAL APPROACH Solution B r0 3D 4P 1P 1D 3P A 2D 2P r1 4D
TECHNICAL APPROACH Branch-and-Price • But, there might be too many routes to enumerate explicitly. What to do? • Column generation at each node of branch-and-bound tree: 5.4 5.2 4.7 • At each node: • Compute the linear programming (LP) relaxation with a subset of the routes • Solve a pricing sub-problem to find a profitable route to include • Re-compute the LP relaxation • Repeat until no profitable routes P r0 r2. r3. r1 4.8 5.3 5.0 4.9 P1 P2 r0 r2. r3. r4. r0 r2. r3. r1 r1 r5. P11 P12
TECHNICAL APPROACH Background:Branch-and-Price • Pricing sub-problem for this example: Dual variables 1 iff task i is on route rk Cost of route r for agent k Cost modification for entire route Cost modification for each task (node) on the route Shortest route problem in a graph with modified node costs!
TECHNICAL APPROACH Recap Thesis Problem • Problem Features: • Tasks: • Agents: • Locations: • Technical Approach: • Branch-and-price algorithm on set-partitioning formulation with side constraints Spatially distributed, Multi-step, Location choice, Time windows, Precedence, Simultaneity, Mutual exclusion, Proximity constraints Heterogeneous, Capacity constraints Capacity constraints, Mutual exclusion constraints
TECHNICAL APPROACH Example Problem B Silo 1 6 3b 4b 5 Field 1 1 3a Silo 2 3b 6 D 4b 5 Harvest field 1 Harvest field 2 Move field 1 grain to silo Move field 2 grain to silo Monitor field 1 grain unloading Monitor field 2 grain unloading 1 A 2 Field 2 3a 3b C 2 4a 4b 4a 5 6
TECHNICAL APPROACH Example Problem 1 A 2 A 3a B C 3b 4a B C 4b 5 D 6 D
TECHNICAL APPROACH Example Problem Precedence constraints: Harvest field 1 before Load grain from field 1 Harvest field 2 before Load grain from field 2 Simultaneity constraints: Monitor field 1 grain unloading concurrent with Unload field 1 grain Monitor field 2 grain unloading concurrent with Unload field 2 grain Proximity constraints: Monitor field 1 grain unloading collated with Unload field 1 grain Monitor field 2 grain unloading collated with Unload field 2 grain 1 3a 2 3a 5 3b 4b 6 5 3b 4b 6
TECHNICAL APPROACH Example Problem:Feasible Route B Silo 1 6 3.2 4.2 5 Field 1 1 3.1 Silo 2 3.2 6 D 4.2 5 A Field 2 C 2 4.1
TECHNICAL APPROACH Example Problem:Feasible Route B Silo 1 6 3.2 4.2 5 Field 1 1 3.1 Silo 2 3.2 6 D 4.2 5 A Field 2 C 2 4.1
TECHNICAL APPROACH Example Problem:Feasible Route B Silo 1 6 3.2 4.2 5 Field 1 1 3.1 Silo 2 3.2 6 D 4.2 5 A Field 2 C 2 4.1
TECHNICAL APPROACH Example Problem:Feasible Route B Silo 1 6 3.2 4.2 5 Field 1 1 3.1 Silo 2 3.2 6 D 4.2 5 A Field 2 C 2 4.1
TECHNICAL APPROACH Set Partitioning Formulation with Side Constraints Maximize: Objective Function Standard set-partitioning formulation Subject to: 1 route per agent 1 route per task Valid arrival time for agent for task Valid start time for task Valid idle time for agent for task Proximity constraints Precedence constraints Mutual exclusion constraints Side constraints Synchronization constraints Non-overlapping constraints Location capacity constraints
TECHNICAL APPROACH Objective Function Maximize Rewards for completed tasks Travel costs for selected routes Costs for agents’ idle/waiting time
TECHNICAL APPROACH Objective Function Maximize Rewards for completed tasks Route selection variable: 1 if agent k is assigned route r Travel costs for selected routes Costs for agents’ idle/waiting time Idle/waiting time of agent k for subtask i at location l
TECHNICAL APPROACH Set Partitioning Formulation with Side Constraints Maximize: Objective Function Standard set-partitioning formulation Subject to: 1 route per agent 1 route per task Valid arrival time for agent for task Valid start time for task Valid idle time for agent for task Proximity constraints Precedence constraints Mutual exclusion constraints Side constraints Synchronization constraints Non-overlapping constraints Location capacity constraints
TECHNICAL APPROACH Pricing Sub-problem Find route (sequence of subtask/location pairs) that maximizes: - Reward for each completed task Travel cost - - ∆reward for each completed task ∆cost for each subtask - ∆cost for each subtask in a precedence/simultaneity constraint - ∆cost for each subtask in a non-overlapping constraint - ∆cost for each subtask at a location with mutual-exclusion route - ∆cost for each subtask at a capacity-constrained location - ∆cost for each subtask in a proximity constraint - ∆cost for entire route + linear ∆cost for each subtask Each route includes only 1 location per subtask Subject to constraints: All subtasks of a given task are on the same route
WORK TO DATE Work to Date • Implemented branch-and-bound algorithm for simplified version of thesis problem • Includes precedence constraints • Does not include other side constraints • Explicitly enumerates all routes – does not involve column generation
WORK TO DATE Example Problem: 12 single-step tasks, 5 agents, max 3 tasks/agent Tasks Agents
WORK TO DATE time 0 5 10 15 Example Problem: Optimal Solution12 single-step tasks, 5 agents, max 3 tasks/agentNo precedence constraints Timeline:
WORK TO DATE time 0 5 10 15 Example Problem: Optimal Solution12 single-step tasks, 5 agents, max 3 tasks/agent2 precedence constraints: t4<t8, t9<t8 Timeline:
WORK TO DATE time 0 5 10 15 Example Problem: Optimal Solution12 single-step tasks, 5 agents, max 3 tasks/agent4 precedence constraints: t4<t8, t9<t8, t8<t5, t5<t3 Timeline: Waiting/idle time
WORK TO DATE Quantitative Results
30,000 25,000 20,000 15,000 10,000 5,000 0 Legend Best solution found Upper bound 200 0 100 300 400 500 Bounded Optimality:Example with 4 precedence constraints Found optimal solution Proved optimality of solution Solution Value # Iterations
WORK TO DATE Overview of Remaining Work • Develop branch-and-price algorithm • Extend implementation to include all side constraints • Develop algorithms to solve pricing sub-problem • Implement column generation • Develop heuristic algorithms for comparison • Evaluate branch-and-price against heuristic algorithms • Solution quality • Solution time
CONCLUSION Schedule