## 1 Introduction and Related Works
Another interesting approach to the foraging problem was solved in a robotic swarm using continually updated policies while drawing directions using simulated ant pheromones in [22]. These approaches used cellular automata as a platform and pheromone marks for coordination. [PERSON] et al. focused on the problem of complete coverage of an unstructured environment by a mobile robot solved with a deterministic algorithm in [23]. The optimization criterion in single-robot exploration is the overall exploration time minimization. In the case of using multiple robots for exploration, the main problem is setting the appropriate target points for the individual robots. [PERSON] et al. [24] improved the path planning in 3D cellular space by a D* algorithm. A review of various methods for solving the optimal coverage path for a defined swarm of robots and the efficiency of the methods is discussed in [25]. It is necessary to re-plan the individual paths in the case of a single robot malfunction. Several authors [2; 3; 26] combined optimization methods with virtual bird flocking. The multi-robot coverage problem in an unknown 2D space can also be solved using frontier-based techniques, such as [PERSON] et al. described in [27]; however, the authors did not investigate the expansion of their methods to 3D. [PERSON] et al., in [28], performed one of the first attempts to use an ant colony strategy using artificial pheromones to solve coverage problems and showed that the algorithm was adaptive and self-stabilizing. Another algorithm based on pheromone marks is the the evaporation of a pheromone dropped by reactive agents (EVAP) algorithm, applied to the patrolling problem, that was introduced in [29]. The EVAP model can be considered to be an extension of the algorithm described in [30]. A variation of the ant colony optimization (ACO) algorithm called the chaotic ant colony optimization to coverage (CACOC) was explored in [31]. This approach integrates ACO with the chaotic dynamical system and can be employed in military surveillance. However, the UAV swarm still shares a virtual map to guide the motions of the vehicles. The approaches described above were inspired by the behavior of social insects. The agents in the swarm, however, cannot adjust the size of the population themselves according to the size of their mission's environment. Typically in swarm robotics, the authors use homogeneous groups of robots, i.e., the robots are of the same type. Modern trends combine robots of different types, for example, in outdoor environments [32]. The basic control functions of the robots are executed by the on-board computers. Many works address the problems of local control of mobile robots. The solutions are task- and robot-specific as, for example, in [33]. In this article, we focus on the self-adaptation of a population of a heterogeneous swarm (combined agents of different types and abilities) of mobile agents operating in a heterogeneous environment. The agents can be different types of robots like unmanned airplanes, copter drones, submarines, autonomous land vehicles, humanoid robots, or even software agents. The agents can have different sensor capabilities and are suitable for different environments. The proposed approach aims to be general enough to allow transportation of one agent type with another (e.g., a vehicle can transport a copter drone or vice versa). The novelty of the algorithm should also lie in the formalization of this concept. Therefore individual mobile agents do not need to know the attributes of the environments. They adapt themselves to the environment. Examples of hardware implementations of agents and overview of different approaches to their construction and capabilities can be found in [34]. The approach is fault-tolerant to the agent robot failure. It means that there is no need for any centralizer authority to manage/control other robots in case of a failure, which increases the robustness.