Multi-Robot Systems. Why Multiple Robots? Some tasks require a team Robotic soccer Some tasks can be decomposed and divided for efficiency Mapping a large.

Slides:



Advertisements
Similar presentations
Collaboration Mechanisms in SOA based MANETs. Introduction Collaboration implies the cooperation between the nodes to support the proper functioning of.
Advertisements

Problem Solving by Searching Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 3 Spring 2007.
Maximum Battery Life Routing to Support Ubiquitous Mobile Computing in Wireless Ad Hoc Networks By C. K. Toh.
Jaringan Komputer Lanjut Packet Switching Network.
Presented By- Sayandeep Mitra TH SEMESTER Sensor Networks(CS 704D) Assignment.
Mobile Robotics Laboratory Institute of Systems and Robotics ISR – Coimbra Aim –Take advantage from intelligent cooperation between mobile robots, so as.
IAT Heuristics for Dealing with a Shrinking Pie in Agent Coalition Formation Kevin Westwood – Utah State University Vicki Allan – Utah State University.
Generated Waypoint Efficiency: The efficiency considered here is defined as follows: As can be seen from the graph, for the obstruction radius values (200,
Planning under Uncertainty
Game-Theoretic Approaches to Multi-Agent Systems Bernhard Nebel.
Cognitive Colonization The Robotics Institute Carnegie Mellon University Bernardine Dias, Bruce Digney, Martial Hebert, Bart Nabbe, Tony Stentz, Scott.
A Heuristic Bidding Strategy for Multiple Heterogeneous Auctions Patricia Anthony & Nicholas R. Jennings Dept. of Electronics and Computer Science University.
Engineering H193 - Team Project Gateway Engineering Education Coalition P. 1 Spring Quarter 2008 Robot Programming Tips Week 4 Day 2 By Matt Gates and.
Brent Dingle Marco A. Morales Texas A&M University, Spring 2002
Mitigating routing misbehavior in ad hoc networks Mary Baker Departments of Computer Science and.
Intelligent Agents What is the basic framework we use to construct intelligent programs?
1 chapter: >> First Principles Krugman/Wells Economics
A Free Market Architecture for Distributed Control of a Multirobot System The Robotics Institute Carnegie Mellon University M. Bernardine Dias Tony Stentz.
Integrating POMDP and RL for a Two Layer Simulated Robot Architecture Presented by Alp Sardağ.
Distributed Rational Decision Making Sections By Tibor Moldovan.
Online Data Gathering for Maximizing Network Lifetime in Sensor Networks IEEE transactions on Mobile Computing Weifa Liang, YuZhen Liu.
Opportunistic Optimization for Market-Based Multirobot Control M. Bernardine Dias and Anthony Stentz Presented by: Wenjin Zhou.
RoboCup Rescue Simulation Barış Eker April CONTENT  Robocup Rescue  RoboAKUT 2005  Discussion.
Cutting the Electric Bill for Internet-Scale Systems Andreas Andreou Cambridge University, R02
Algorithms for Self-Organization and Adaptive Service Placement in Dynamic Distributed Systems Artur Andrzejak, Sven Graupner,Vadim Kotov, Holger Trinks.
Aeronautics & Astronautics Autonomous Flight Systems Laboratory All slides and material copyright of University of Washington Autonomous Flight Systems.
Switching Techniques Student: Blidaru Catalina Elena.
1 DARPA TMR Program Collaborative Mobile Robots for High-Risk Urban Missions Second Quarterly IPR Meeting January 13, 1999 P. I.s: Leonidas J. Guibas and.
A Randomized Approach to Robot Path Planning Based on Lazy Evaluation Robert Bohlin, Lydia E. Kavraki (2001) Presented by: Robbie Paolini.
Self-Organizing Agents for Grid Load Balancing Junwei Cao Fifth IEEE/ACM International Workshop on Grid Computing (GRID'04)
Collectively Cognitive Agents in Cooperative Teams Jacek Brzeziński, Piotr Dunin-Kęplicz Institute of Computer Science, Polish Academy of Sciences Barbara.
Multi-Robot Systems “The mob has many heads but no brains”. -- English Proverb.
Reliability Andy Jensen Sandy Cabadas.  Understanding Reliability and its issues can help one solve them in relatable areas of computing Thesis.
Chapter 6 Sourcing. Objectives After reading the chapter and reviewing the materials presented the students will be able to: Explain the difference between.
Network Aware Resource Allocation in Distributed Clouds.
Multiple Robot Systems: Task Distribution, Coordination and Localization Sameer Singh 83 ECE 2000 Final Year NSIT.
Simultaneous Localization and Mapping Presented by Lihan He Apr. 21, 2006.
Mutual Exclusion in Wireless Sensor and Actor Networks IEEE SECON 2006 Ramanuja Vedantham, Zhenyun Zhuang and Raghupathy Sivakumar Presented.
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
Multi-Robot Systems.
CS584 - Software Multiagent Systems Lecture 12 Distributed constraint optimization II: Incomplete algorithms and recent theoretical results.
CS 415 – A.I. Slide Set 10. Controlling Multiple Robots Different considerations for multiple robots – Inherently dynamic environment – Complex local.
Load-Balancing Routing in Multichannel Hybrid Wireless Networks With Single Network Interface So, J.; Vaidya, N. H.; Vehicular Technology, IEEE Transactions.
Advanced Decision Architectures Collaborative Technology Alliance An Interactive Decision Support Architecture for Visualizing Robust Solutions in High-Risk.
Multiuser Receiver Aware Multicast in CDMA-based Multihop Wireless Ad-hoc Networks Parmesh Ramanathan Department of ECE University of Wisconsin-Madison.
Algorithmic, Game-theoretic and Logical Foundations
Multi-Agent Exploration in Unknown Environments Changchang Wu Nov 2, 2006.
Behavior-based Multirobot Architectures. Why Behavior Based Control for Multi-Robot Teams? Multi-Robot control naturally grew out of single robot control.
Optimization Problems
Unit III Bandwidth Utilization: Multiplexing and Spectrum Spreading In practical life the bandwidth available of links is limited. The proper utilization.
Learning and Acting with Bayes Nets Chapter 20.. Page 2 === A Network and a Training Data.
1 Energy-Efficient Mobile Robot Exploration Yongguo Mei, Yung-Hsiang Lu Purdue University ICRA06.
Or How to Gain and Sustain a Competitive Advantage for Your Sales Team Key’s to Consistently High Performing Sales Organizations © by David R. Barnes Jr.
Fast SLAM Simultaneous Localization And Mapping using Particle Filter A geometric approach (as opposed to discretization approach)‏ Subhrajit Bhattacharya.
Ad Hoc On-Demand Distance Vector Routing (AODV) ietf
Path Planning Based on Ant Colony Algorithm and Distributed Local Navigation for Multi-Robot Systems International Conference on Mechatronics and Automation.
Learning for Physically Diverse Robot Teams Robot Teams - Chapter 7 CS8803 Autonomous Multi-Robot Systems 10/3/02.
Antidio Viguria Ann Krueger A Nonblocking Quorum Consensus Protocol for Replicated Data Divyakant Agrawal and Arthur J. Bernstein Paper Presentation: Dependable.
SM Sec.1 Dated 13/11/10 STRATEGY & STRUCTURE Group 3.
Distance Vector Routing
Day 13 Intro to MANs and WANs. MANs Cover a larger distance than LANs –Typically multiple buildings, office park Usually in the shape of a ring –Typically.
Wireless sensor and actor networks: research challenges Ian. F. Akyildiz, Ismail H. Kasimoglu
Multi-robot
Switching Techniques In large networks there might be multiple paths linking sender and receiver. Information may be switched as it travels through various.
Net 435: Wireless sensor network (WSN)
Intra-Domain Routing Jacob Strauss September 14, 2006.
Robot Teams Topics: Teamwork and Its Challenges
Market-based Dynamic Task Allocation in Mobile Surveillance Systems
CS 416 Artificial Intelligence
Presentation transcript:

Multi-Robot Systems

Why Multiple Robots? Some tasks require a team Robotic soccer Some tasks can be decomposed and divided for efficiency Mapping a large area Many specialists preferable to one generalist Increase robustness with redundancy Teams of robots allow for more varied and creative solutions

Hot Research Area: Multi-robot systems

A Few Multi-robot Scenarios Automated warehouse management Automatic Guided Vehicle (AGV) Systems Planetary exploration Automatic construction Robotic cleanup of hazardous sites Agriculture Military Applications RoboCup

Multi-Robot Systems : Brains vs. Bodies

Are N robots better than 1?

Most Commonly Studied Tasks for Multi-Robot Systems

Communication: Multi-Robot Communication Taxonomy

A Good Multi-robot System Is: Robust: no single point of failure Optimized, even under dynamic conditions Quick to respond to changes Able to deal with imperfect communication Able to allocate limited resources Heterogeneous and able to make use of different robot skills

Basic Approaches Centralized Attempting optimal plans Distributed Every man for himself Market-based

I.Centralized Approaches Robot team treated as a single “system” with many degrees of freedom A single robot or computer is the “leader” Leader plans optimal actions for group Group members send information to leader and carry out actions

Centralized Methods: Pros Leader can take all relevant information into account In theory, coordination can be perfect: Optimal plans possible!

Centralized Methods: Cons Computationally hard Intractable for more than a few robots Makes unrealistic assumptions: All relevant info can be transmitted to leader This info doesn’t change during plan construction Result: response sluggish or inaccurate Vulnerable to malfunction of leader Heavy communication load

II.Distributed Approaches Planning responsibility spread over team Each robot basically independent Robots use locally observable information to make their plans

Distributed Methods: Pros Fast response to dynamic conditions Little or no communication required Little computation required Smooth response to environmental changes Very robust No single point of failure

Distributed Methods: Cons Not all problems can be decomposed well Plans based only on local information Result: solutions are often highly sub-optimal

Robot Formation: Distributed vs. Central Control Performance Measure : Cumulative Formation Error Four Different Strategies: Strategy I: Local Control Only Strategy II: Local Control Augmented by Global Goal Strategy III: Local Control Augmented with Global Goal and Partial Global Information Strategy IV: Local control augmented by global goal and more complete global information

Simulation of mission involving formation maintenance while moving to goal 4 different strategies with increasing global control Quantitatively measured via deviation from the formation and time taken to reach goal

Strategy I: Local Control Only –Effective for smooth trajectories –Sharp turns cause formation to break up due to local control Robots maintain their position by staying a fixed distance from a certain side of neighbor

Strategy II: Local Control Augmented by Global Goal –Robots given knowledge of global goal: Maintain line formation –Robot D now moves to a more globally appropriate position –May be inappropriate if B is merely avoiding obstacle

Strategy III: Local Control Augmented with Global Goal and Partial Global Information –At time of robot B’s turn, other robots are informed of destination of waypoint X

Strategy IV: Local control augmented by global goal and more complete global information –Robots are given complete knowledge of leaders route –Allows other robots to predict future positions of the leader and resulting positions for themselves

Simulation Results

III.Market-based Approach: The Basic Idea Based on the economic model of a free market Each robot seeks to maximize individual “profit” Robots can negotiate and bid for tasks Individual profit helps the common good Decisions are made locally but effects approach optimality Preserves advantages of distributed approach

Analogy To Real Economy Robots must be self-interested Sometimes robots cooperate, sometimes they compete Individuals gain benefits of their good decisions, suffer consequences of bad ones Just like a real market economy, the result is global efficiency

The Market Mechanism In Detail: Background Consider: A team of robots assembled to perform a particular set of tasks Each robot is a self-interested agent The team of robots is an economy The goal is to complete the tasks while minimizing overall costs

How Do We Determine Profit? Profit = Revenue – Cost Team revenue is sum of individual revenues, and team cost is sum of individual costs Costs and revenues set up per application Maximizing individual profits must move team towards globally optimal solution Robots that produce well at low cost receive a larger share of the overall profit

Examples Cost functions may be complex Based on distance traveled Based on time taken Some function of fuel expended, CPU cycles, etc. Revenue based on completion of tasks Reaching a goal location Moving an object Etc.

Prices and Bidding Robots can receive revenue from other robots in exchange for goods or services Example: haulage robot If robots can produce more profit together than apart, they should deal with each other If one is good at finding objects and another is good at transporting them, they can both gain

No Communication Task is to pick the reward and move back to initial position

Subcontracting a Task

How Are Prices Determined? Bidding Robots negotiate until price is mutually beneficial Note: this moves global solution towards optimum Robots can negotiate several deals at once Deals can potentially be multi-party Prices determined by supply and demand Example: If there are a lot of haulers, they won’t be able to command a high price This helps distribute robots among “occupations”

Competition vs. Coordination Complementary robots will cooperate A grasper and a transporter could offer a combined “pick up and place” service Similar robots will compete This drives prices down This isn’t always true: Subgroups of robots could compete Similar robots could agree to segment the market Several grasping robots might coordinate to move a heavy objects

Leaders A robot can offer its services as a leader A leader investigates plans for other robots If it finds a way for other robots to coordinate to maximize profit: Uses this profit to bid for the services of the robots Keeps some profit for itself Note that this introduces a notion of centralization Difficult for more than a few robots

Why Is This Good? Robust to changing conditions Not hierarchical If a robot breaks, tasks can be re-bid to others Distributed nature allows for quick response Only local communication necessary Efficient resource utilization and role adoption Advantages of distributed system with optimality approaching centralized system

Auction Based Multi-Robot Coordination

Auction Based Task Allocation Protocol 1.Task announcement - An agent acts as ``auctioneer'' by publishing an announcement message for the task. The message contains details about the task, such as its name, length, and a new subject on which to negotiate it. The message is addressed to the set of subjects which represent the resources required to execute the task; thus only those robots currently capable of performing the task will receive the message. 2.Metric evaluation - Since there may be more than one capable robot available for a given task, we need a method for deciding among them. This decision process is the very basis of achieving effective task allocation; the goal is to allocate each task to the most fit robot. Thus the announcement also includes metric(s) with which each candidate robot can determine its fitness. 3.Bid submission - After evaluating the appropriate metric(s), each candidate robot publishes its resulting task-specific fitness "score" as a bid message. 4.Close of auction - After sufficient time has passed, the auctioneer processes the bids, determines the winner, and notifies the bidders with a close message. The winner is awarded a time-limited contract to execute the task and the losers return to listening for new tasks. 5.Progress monitoring / contract renewal - While the winner executes the task, the auctioneer monitors task progress. Assuming sufficient progress is being made, the auctioneer periodically sends a renewal message to the winner, which responds with an acknowledgment message, until the task is completed.

Auction Protocol Announcement (when new task comes in) Name Length of contract

Auction Protocol Metric evaluation Announcement includes fitness metric Robots evaluate themselves

Auction Protocol Bid submission Each robot publishes score

Auction Protocol Close of auction After enough time has passed… Auctioneer determines winner Auctioneer awards contract

Auction Protocol Progress monitoring/contract renewal Renewal/acknowledgement Repeat until task is complete

Experiment: Loose Cooperation Random tasks object-tracking (camera, mobile) sentry-duty (camera, laser, mobile) cleanup (camera, bumpers, mobile) monitor-object (overhead-camera) Results Optimal allocation Low bandwidth usage (mean: 0.66 kb/s) Task allocated whenever resources available

Experiment: Box Pushing Tightly-coupled cooperation Pushers cannot see goal Watcher cannot push box Watcher communicates directions to pushers Results: Efficient paths Consistent execution Fault-tolerance

Where’s the fault-tolerance? Reliable robots are a new phenomenon Assumption: the robots are honest and cooperative Byzantine model incomplete for robots

Fault-Tolerance Communication is by anonymous broadcast Accounts for fluid network Bad link doesn’t hang whole system Isn’t this just fault-indifference? Auctioneer monitors performance, renews contracts Prevents everyone from waiting on one broken robot What if the auctioneer is faulty?

What could go wrong? Rogue robot physically interferes with others Planning/execution problem, not allocation problem Or is it? Robot is dishonest about abilities System assumes this never happens

Another Example: Multi-Robot Exploration Goal: explore and map unknown environment Environment may be hostile and uncertain Communication may be difficult Multiple robots: Cover more territory more quickly Robust if some robots fail Attempt to minimize repeated coverage Key: coordination Maximize information gain, reduce total costs

Architecture of the Market Approach World is represented as a grid Squares are unknown (0), occupied (+), or empty (-) Goals are squares in the grid for a robot to explore Goal points to visit are the main commodity exchanged in market For any goal square in the grid: Cost based on distance traveled to reach goal Revenue based on information gained by reaching goal R = (# of unknown cells near goal) x (weighting factor) Team profit = sum of individual profits When individual robots maximize profit, the whole team gains

Example World

Exploration Algorithm Algorithm for each robot: 1. Generate goals (based on goal selection strategy) 2. If leader is reachable, check with leader to make sure goals are new 3. Rank goals greedily based on expected profit 4. Try to auction off goals to each reachable robot If a bid is worth more than you would profit from reaching the goal yourself (plus a markup), sell it

Exploration Algorithm 5. Once all auctions are closed, explore highest-profit goal 6. Upon reaching goal, generate new goal points Maximum # of goal points is limited 7. Repeat this algorithm until map is complete

Bidding Example R1 auctions goal to R2

Expected vs. Real Robots make decisions based on expected profit Expected cost and revenue based on current map Actual profit may be different Unforeseen obstacles may increase cost Once real costs exceed expected costs by some margin, abandon goal Don’t get stuck trying for unreachable goals

Goal Selection Strategies Possible strategies: Randomly select points, discard if already visited Greedy exploration: Choose goal point in closest unexplored region Space division by quadtree

Benefit of Prices Low-bandwidth mechanisms for communicating aggregate information Map info doesn’t need to be communicated repeatedly for coordination

Information Sharing If an auctioneer tries to auction a goal point already covered by a bidder: Bidder tells auctioneer to update map Removes goal point Robots can sell map information to each other Price negotiated based on information gained Reduces overlapping exploration When needed, Leader sends a map request to all reachable robots Robots respond by sending current maps Leader combines the maps by adding up cell values

An Experimental Setup 4 or 5 robots Equipped with fiber optic gyroscopes 16 ultrasonic sensors

Three test environments Large room cluttered with obstacles Outdoor patio, with open areas as well as walls and tables Large conference room with tables and 100 people wandering around Took between 5 and 10 minutes to map areas

Experimental Results

Performance metric (exploration efficiency): Area covered / distance traveled [m 2 / m] Market architecture improved efficiency over no communication by a factor of 3.4 (1.4/0.41)

Market-based approach for multi-robot coordination is promising Robustness and quickness of distributed system Approaches optimality of centralized system Low communication requirements Probably not perfect Cost heuristics can be inaccurate Much of this approach is still under development Some pieces, such as leaders, may be too hard to do