A distributed system consists of many autonomously working agents like computers, processes, vehicles, and so on. For making the system flexible and extendible, it does not adopt a mechanism to control the whole agents in the master-slave fashion, and hence the agents decide their behaviours in an asynchronous manner depending only on their initial information and local information they obtained by communication with their neighbor agents. In this project, we have results in many fields from autonomous mobile robots to parallelized compilers, some of which results are listed and explained in the following :(A)Theory of Distributed Algorithms : A difficulty of designing a distributed algorithm comes from a common requirement : it is required to decide a globally consistent behavior, given local information. On the other hand, a goodness measure of distributed algorithms is the amount of information necessary to exchange to solve a problem under consideration. Hence, we investigated the
… Moreamount of information necessary to exchange to solve a particular problem, and an optimal way of information allocation to reduce the amount of necessary information exchange.(B) Design of Distributed Algorithms : For some problems, we design distributed algorithms. First of all, for the mutual exclusion problem, which is a basic synchronization problem, we design a fault tolerant algorithm that tolerates any number of transient faults called a self-stabilisation algorithm. Next, we investigate the generalized allocation problem. It is a problem that has many practical applications in real-world. However, it is known as a NP complete problem, so we design a cluster processing algorithm which is obtained by parallelize a sequencial heuristic algorithm based on the local search paradigm, the aim of which is to get a sufficiently good solution in a practical time contraint. We then evaluate its performance.(C) Autonomous Mobile Robot System : We investigated a distributed control problem for autonomous mobile robot systems. In particular, we investigated the problem of carrying an object by a group of robots, designed a distributed control algorithm, and then evaluated it performance. Less