## 3 Networked Mobile Robot System Design Issues
### Fault Tolerance  
Any system that is not affected by a single point of failure (either in communication or in robot coordination by failure of some units) is called a fault tolerant system, which is a crucial property especially for decentralized systems such as networked mobile robots undertaking strategic andcomplicated tasks. Homogenous centralized systems composed of robots with the same capabilities, both hardware- and software-wise, are more fault tolerant then heterogeneous ones since the failure of a robot member can be easily compensated by other network members that are identical to the failed one. However, homogenous systems cannot adapt themselves easily to complex and high level tasks where cooperation of different skills is required. This is the primary need for the emergence of heterogeneous robot networks.  
[PERSON] [76] introduced a pioneering work on the fault tolerant multi-robot coordination control method in heterogeneous robot networks. Each robot has overlapping capabilities with other team members and adapts its actions using sensory feedback from the execution tasks related with each robot's internal state and environmental conditions. Motivational behaviors are used to monitor task progress level and new tasks are dynamically distributed according to the state of the task accomplishment. ALLIANCE has been implemented on different multi-robot applications like box pushing and target tracking [77] and the validity of the method proven.  
Another fault tolerant architecture (MURDOCH) was developed by [PERSON] _et al._[78] and the success of the proposed method is presented via box pushing experiments. An auction based task allocation system is proposed to intelligently coordinate networked robot team in noisy and dynamic environments. A publish-and-subscribe communication model is used for allocating tasks hierarchically to the robots. Some assumptions make their solution realistic in real world problem solutions: for example, any robot can fail at any time, communication between robots can crash or can be noisy, and a robot may not be aware of its own failure. Tasks are assigned to the most capable robot at every time step by a greedy task scheduler (MURDOCH) that guarantees the efficiency of that assignment through an auction process, which is performed with the following five distinct steps: task announcement, metric evaluation, bid submission, auction closing and progress monitoring or contract renewal.  
[PERSON] _et al._[79] presented the Traderbots approach; a market based and robust multi-robot coordination methodology for in dynamic environments. Although an explicit communication strategy is used for task allocation, the proposed approach ensures the robustness of the team task execution by using failure recovery ability in the case of communication failures, robot deaths and partial robot failures.  
Swarm approaches inspired from social insects such as bees, birds and bacteria, show robust coordination mechanisms to achieve a given global goal. Behaviors emerge from the local interactions among robots and the operation environment. Robustness is achieved as a graceful degradation of one robot member breaking down while another robot takes over the failed robot's task [80, 81, 82]. Although there is research into the fault tolerance of robot networks, there is no standard accepted metrics for evaluating this fault tolerance and this issue remains as an open research area.