Introduction

As the world is rapidly developing, the number of buildings is rising every day [31]. These buildings require routine cleaning that demands intensive human effort. However, human resources are scarce for cleaning due to complexities in socio-economic behaviors. Cleaning robots can be introduced as a solution to these issues. Many developments of robots intended for cleaning different parts of buildings such as walls [36], floors [24], furniture [12], ducts [13], swimming pools [2], and staircases [37] can be found in the literature. Among these applications, floor cleaning is one of the most demanding areas for cleaning robots.

The area coverage for a given environment is the most vital factor for a floor cleaning robot [28, 38]. A method to segment rooms based on an occupancy grid map has been proposed to improve the area coverage of a floor cleaning robot [16]. The ability of the proposed method in improving area coverage has been validated using an off-the-shelf floor cleaning robot. An adaptive path planning method based on deep reinforcement learning, which can enhance area coverage, has been proposed [5]. The ability of the method to improve the area coverage in different environment settings has been validated through simulations. Efficient coverage path planning has been investigated using different path planning approaches [4]. Different environment settings were used for testing the footprint coverage of the proposed robot. An efficient method for online complete coverage path planning of mobile robots in an unknown environment has been developed [14]. The cited work uses an online boustrophedon motion and an optimized backtracking mechanism to improve total coverage time. The use of boustrophedon motion to cope with arbitrary shape obstacles for covering an unknown environment has also been studied [8]. A cost-based target selection method for ascertaining complete exploration of a given workspace has been proposed aiming for search and rescue applications [32]. Wang et al. [35] proposed an improvement for the ant colony optimization technique for efficient path planning of mobile robots in 3D environments. The proposed improved ant colony optimization technique can generate smoother and shorter distance paths than the standard ant colony optimization technique while effectively avoiding obstacles. A comparison between cognitive and reactive search strategies for an olfactory robot has been conducted in [21]. According to the comparison outcomes, the strategies can search for a source based on intermittent cues. The work [27] reviewed path smoothing techniques used in robot navigation to discuss challenges and future trends. The outcomes of the review concluded that the execution of a smooth path on a robot depends on many factors, including the robot model and sensors attached to the robot. However, the area coverage of the path planing methods cited above is limited since the methods are proposed for robots with a fixed shape.

Self-reconfigurable or modular reconfigurable robots are often used in application domains that require higher coverage such as exploration, space, and rescue operations [10, 11, 15] since their ability to access cluttered areas through shapeshifting. A multi-agent reinforcement learning method inspired by game theory has been proposed for the proper arrangement of a robot’s modules for performing navigational tasks [11]. A modular-reconfigurable legged robot that is capable of changing its shapes has been introduced in [15]. The robot changes its shapes by changing its number of legs per the requirement of the locomotion and environmental interactions. These reconfigurable robots designed for outdoor explorations are mainly proposed to improve accessibility under challenging terrains through reconfigurations to different locomotion patterns and leg configurations according to the environment. Even though the area coverage is a target from these exploration robots, the sensory coverage (e.g., the area coverage by the vision system) is the expectation instead of the physical coverage from a robot itself in most of the outdoor exploration applications. On the other hand, the physical coverage from a robot itself is required for floor cleaning. Furthermore, the robots designed for outdoor explorations do not have provisions for integrating the cleaning payloads and proper utilization during the navigation. Therefore, the reconfigurable robot intended for outdoor explorations could not be adopted for floor cleaning.

The utilization of reconfigurability for floor cleaning robot would be useful in improving the area coverage. Thereby, many reconfigurable floor cleaning robots inspired by tiling theory have been introduced [30]. hTetro [33], hTromo [34], hHoneycomb [25] and hTetrakis [19] can be considered as examples. Even though there have been many developments of path planning algorithms for robots with fixed shapes, as discussed earlier, the path planning algorithms proposed for robots with fixed shapes are not capable of handling the reconfiguration to gain the advantage of the reconfigurability. In other words, reconfigurable robots require specialized path planning algorithms that can handle reconfiguration [6, 18], and the methods proposed for fixed robots are not suited for reconfigurable robots. Hence, the area coverage problem of these reconfigurable robots is addressed by using the tiling theory. Therefore, these robots are known as tiling robots. Various perspectives of coverage path planning of reconfigurable tiling robots, such as area coverage, energy usage, and coverage time, have been extensively studied [6, 18,19,20, 22]. It has been proven that the tiling robots outperform robots with fixed morphologies in the problem of area coverage [26]. Nevertheless, the existing coverage methods of tiling robots consider only a fixed number of reconfigurable shapes (e.g., hTromo [34]: 2 shapes, hTetro [6, 18, 33]: 7 shapes, hHoneycomb [25]: 7 shapes, hTetrakis [19] : 3 shapes, and hTrihex [20]: 3 shapes) that limit their ability in area coverage. Furthermore, a given floor area is divided into a grid, where the size and shape of a cell is equal to one block of a robot, for applying the tiling theory to cope with the area coverage. The grid cells occupied by objects are ignored when utilizing the tiling theory. However, the partially occupied grid cells are also assumed as fully occupied to facilitate the application of the tiling theory. In addition to that, a given floor area should satisfy a set of geometrical constraints for complete coverage. Thereby, there would be uncovered areas in scenarios where objects with various shapes present in an environment. This performance limitation is the main shortcoming of the state of the art methods of tiling robots. The coverage could be improved when a tiling robot can reconfigure following the shape of an obstacle.

This paper proposes a novel method to reconfigure a tiling robot following the shape of an obstacle for improving the area coverage. A Genetic Algorithm (GA) is used to determine the hinge angles required for the reconfiguration per the shape of an obstacle. The proposed method does not restrict the possible reconfigurable shapes to a set of a limited number of predefined shapes. Thereby, the proposed method enables a reconfigurable tiling robot to reconfigure per the shape of an obstacle for improving the coverage. This improvement is the major contribution of the proposed method over the state of the art methods. A comprehensive explanation of the rationale behind the proposed method is given in the section “Rationale behind the proposed method”. The method proposed for reconfiguring a tiling robot per the shape of an obstacle is proposed in the section “Improving area coverage by Reconfiguring per the shape of an obstacle”. The details of the experiments and corresponding outcomes are given in the section “Results and discussion”. Finally, a conclusion is given in the section “Conclusions”.

Rationale behind the proposed method

The existing reconfigurable tiling robots such as hTetro [33], hTromino [34], and hTetrakis [19] utilize the tiling theory [3, 9] to cope with the area coverage problem. When utilizing the tiling theory, only a limited set of predefined shapes are considered for the reconfiguration of a robot. In addition to that, the exact shapes of obstacles are not considered for facilitating the application of tiling theory. Furthermore, a given environment needs to satisfy geometric constraints for perfect area coverage solely through tiling. Thereby, the area coverage is limited to a considerable extent in a typical environment where obstacles with heterogenous shapes are present. This limitation is further explained based on the case of hTetro.

hTetro

hTetro [33] is a tetromino based tiling robot inspired by the game, Tetris. It has four squared shapes block connected in series with three hinges as shown in Fig. 1. The width, length, and height of a block are 25 cm, 25 cm, and 13 cm, respectively. The LiDAR is fixed to the robot to map the cleaning environment. This map is used for navigation and avoiding dynamic/static obstacles. The differential drive mechanism in each block is responsible for controlling the locomotion of hTetro. Arduino mega manages the low-level control of the robot such as motor controlling by communicating with motor drivers and the compute stick. The compute stick is used to perform the high-level functions of the robot such as mapping, localization, and path planning. The motor drives are responsible for controlling two 12 V DC motors in each block of the robot. The hardware designs of hTetro have two variants based on the sequence of hinge joints’ positioning  [33]. The case of hinges 1, 2, and 3 are placed on the left side, right side, and right side, respectively, is known as Left–Right–Right (L-R-R) configuration. The other configuration is known as Left–Left–Left (L-L-L) configuration, where all the hinges are placed on the same side. Here, a robot with an L-R-R hinge configuration is considered. These hinges facilitate the reconfiguration of the robot to different shapes. This robot utilizes polyomino tiling theory to cope with the area coverage. When utilizing the tiling theory, it is considered that hTetro can mimic only the one-sided tetrominoes as shown in Fig. 2. Moreover, the area coverage is coped by the conventional methods merely considering only those seven shapes.

Fig. 1
figure 1

Hardware components of hTetro

Fig. 2
figure 2

The set of reconfigurable shapes considered by the existing methods of hTetro

Limitations of the conventional hTetro and the proposed approach

The floor area depicted in Fig. 3a is considered as an example where hTetro is deployed for the cleaning. To apply and generate the tiling set to tackle the area coverage problem, the metric map of the environment created with the aid of LiDAR is divided into a grid where the size and shape of a cell are equivalent to those of a block of the robot (in this case squared shape as depicted Fig. 3a). Then, the occupancy grid map of the floor area is generated. When generating the occupancy grid map, grid cells that are partially occupied by obstacles are assumed as fully occupied. The resultant grid map for the example is illustrated in Fig. 3b. All the non-occupied grid cells in the map are covered by the robot by utilizing the tiling theory. Nevertheless, a considerable amount of uncovered area is left since the partially occupied cells are considered fully occupied (see Fig. 3c). This limitation in area coverage could be seen in all the state of the art coverage methods proposed for the class of reconfigurable tiling robots. The methods proposed in [6, 18,19,20, 33] could be considered as examples in this regard, where the area coverage performance is compromised due to the consideration of only a limited set of predefined shapes for the reconfiguration.

Fig. 3
figure 3

a The metric map created from the LiDAR information is divided into a grid. b The occupancy grid map used for applying the tiling theory. The occupied cells are in black. c The area covered by the existing methods of hTetro. The shaded area represents the covered area, and the unshaded area represents the uncovered area. d Potential of improving the coverage by reconfiguring following the shape of the obstacle

This limitation could be overcome if hTetro considered a higher number of shapes for the reconfiguration instead of sticking with only seven shapes. The hardware arrangement of the robot facilitates many shapes for the reconfiguration if the hinged angles are set to any \(\theta _i \in [0,\pi ]\) instead of \(\pi /2\) steps. The reconfiguration into many shapes other than the seven shapes can be facilitated with minor hardware and low-level control alteration of the robot. In such, if hTetro can reconfigure into a shape that matches the shape of an obstacle (as depicted in Fig. 3d), then the robot can cover the previously uncovered area. Therefore, the ability of hTetro in reconfiguration into any shape following the shape of an obstacle, when the robot reaches near to occupied areas, improves the area coverage. This aspect is the main motivation of the method proposed in this paper.

Improving area coverage by reconfiguring per the shape of an obstacle

Reconfigure in accordance with the shape of an obstacle

A reconfigurable tiling robot with n number of blocks connected with \((n-1)\) number of hinges is considered for the explanation of the proposed approach for determining a reconfiguration shape to match with an obstacle. A situation where the robot is near an arbitrary obstacle is depicted in Fig. 4. The distance from the center of \(i{\mathrm{th}}\) block to the obstacle along \(X_1\) axis is denoted as \(a_i\), where \(i = 1, 2,\ldots , n\). \(a_i\) is obtained from the LiDAR and map information.

Fig. 4
figure 4

A scenario of a reconfigurable robot consists of n number of blocks connected with hinges attempt to mimic a obstacle shape. The center of \(i{\mathrm{th}}\) block is denoted as \(P_i\) for \(i = 1, 2, 3,\ldots , n \). The distance between \(i{\mathrm{th}}\) center and the obstacle is symbolized as \(a_i\) for \(i = 1, 2, 3, \ldots , n\). The axes of each block are considered as \(X_i\) and \(Y_i\) for \(i = 1, 2, 3, \ldots , n\). The hinge angle between \(i{\mathrm{th}}\) and \((i+1){\mathrm{th}}\) block is considered as \(\theta _i\) for \(i = 1, 2, 3,\ldots , n-1\). The offsets to be maintained to reconfigure per the obstacle are annotated as \(\delta _i\) for \(i = 1, 2, 3,\ldots , n\)

To reconfigure the shape of the robot per the shape of the obstacle, the center of each block needs to maintain an equivalent distance from the obstacle. Moreover, the center of \(i{\mathrm{th}}\) block needs to maintain an offset of \(\delta _i\) along \(X_1\) axis from its original position. The corresponding offset of \(i{\mathrm{th}}\) block \(\delta _i\) required for reconfiguring per the shape of an obstacle can be obtained as in (1).

$$\begin{aligned} \delta _i = a_i - a_1 ~~~~ \forall i \end{aligned}$$
(1)

Suppose \(i{\mathrm{th}}\) hinge connects \(i{\mathrm{th}}\) and \((i+1){\mathrm{th}}\) blocks. The corresponding angle of \(i{\mathrm{th}}\) hinge is taken as \(\theta _i\) such that \(\theta _i\in [0, (\theta _i)_U]\), where \((\theta _i)_U\) is the upper bound of \(i{\mathrm{th}}\) hinge. \((\theta _i)_U\) depends on the hardware constraint of the robot. The position of the center of \(i{\mathrm{th}}\) block with respect to the frame of block 1, \({}^1P_i\) can be obtained from (2), where \({}^i_{i+1}T\) represents the homogeneous transformation matrix from \(i{\mathrm{th}}\) frame to \((i+1){\mathrm{th}}\) frame. The homogenous transformation matrix, \({}^i_{i+1}T\) is given in (3), where \(t_{X_i}\) and \(t_{Y_i}\) are the translations of the origin of \((i+1){\mathrm{th}}\) frame from the origin of \(i{\mathrm{th}}\) frame along \(X_i\) and \(Y_i\) axes.

$$\begin{aligned}&{^{1} P_{i}} = \prod \limits _{{k = 1}}^{{i - 1}} {{}_{{k + 1}}^{{k\,\,\,\,\,\,}} {T}{^{i}P_{i}}\quad {\text {for}}\;\;i = 2,3, \ldots ,n} \end{aligned}$$
(2)
$$\begin{aligned}&{}^i_{i+1}T = \begin{bmatrix} \cos \theta _i &{} -\sin \theta _i &{} t_{X_i} \\ \sin \theta _i &{} \cos \theta _i &{} t_{Y_i} \\ 0 &{} 0 &{} 1 \end{bmatrix} \end{aligned}$$
(3)

The relationship between the offset \(\delta _i'\) of the center of \(i^{\mathrm{th}}\) block corresponding to the hinge angles \(\theta _i\) \(\forall i\) can be calculated as in (4), where \(({}^1P_i)_{X_1}\) is the X coordinate of the center obtained from (2). To reconfigure the shape of the robot according to the shape of an obstacle, a set of hinge angles, \(\{\theta _i\}\), which satisfies (5), should be determined \(\forall i\). Nevertheless, determining \(\theta _i\) \(\forall i\) that satisfy (5) would not always be possible since the required set of offsets (i.e., \(\{\delta _i\}\)) for a situation may not be possible to achieve by the robot. Moreover, a solution for \(\{\theta _i\}\) (\(\forall i\)), which can approximately satisfy the condition, should be found. Optimization techniques such as Genetic Algorithms (GAs) have great potential in solving this sort of problem [7, 17, 23].

$$\begin{aligned}&\delta _i' = ({}^1P_i)_{X_1} -({}^1P_1)_{X_1} ~~~~ \forall i \end{aligned}$$
(4)
$$\begin{aligned}&\{\delta _i'\} = \{\delta _i\} ~~~~ \forall i \end{aligned}$$
(5)

Determining the hinge angles using a Genetic Algorithm (GA)

A Genetic Algorithm (GA) represents a metaheuristic search method inspired by natural evolution [17]. A GA is well effective in solving optimization problems. Thereby, the required hinge angles for reconfiguring the shape per the shape of an obstacle are determined by a GA. The goal of the optimization is to find a set of \(\{\theta _i\}\) such that \(\{\delta _i\} =\{\delta _i'\}\) for all i. Moreover, the error between the required set of offsets (i.e., \(\{\delta _i\}\)), and the offsets corresponding to the set of hinge angles (\(\{\delta _i'\}\)) should be minimized. Therefore, the function given in (6) is defined as the fitness function for the GA. Here, \(\{\lambda _i\}\) is a priority constant that can be tuned for better performance based on the hardware capabilities of a robot. The search space of the GA for the output, \(\theta _i\), is explicitly limited to [0, \((\theta _i)_U\)]. The main steps of the GA are given in Algorithm 1. The input for the algorithm is the set of required offsets (i.e., \(\{\delta _i\}\)), and the output is the set of hinge angles (i.e., \(\{\theta _i\}\)) required for the robot to reconfigure per the obstacle.

$$\begin{aligned} f(\theta _1, \theta _2,\ldots , \theta _n) = \sum _{i=1}^n\lambda _i(\delta _i-\delta _i')^2 \end{aligned}$$
(6)
figure a

Overall operation

The method proposed in this paper for reconfiguring a tiling robot according to the shape of an obstacle is used in tie-up with the existing area coverage method of tiling robots to improve the coverage. Initially, a tiling set for covering a given area is generated using tiling theory similar to the existing coverage methods for tiling robots. Subsequently, area coverage is done by navigating according to the generated tiling set. However, when the robot is near an obstacle, it executes the method proposed in this paper to reconfigure the shape per the shape of the obstacle. Then, the robot approaches the obstacle to cover the nearby area of the obstacle. The overall operation of the proposed method for the area coverage is given in Algorithm 2.

figure b

Results and discussion

Validation procedure

The validation of the proposed method has been conducted in two phases. In the first phase, the convergence of the GA with the number of blocks (i.e., events of different n) was considered. In the second phase, the coverage performance of the proposed method was compared with the state of the art coverage methods proposed for reconfigurable floor cleaning robots.

The population size of the GA has been chosen as 50 for the events of \(n\le 6\), which can be considered as low dimensional problems, and 200 for other events. Stochastic uniform approach was used as the selection method of the GA. The stochastic uniform approach is a commonly used selection method for GA, which has zero bias and minimum spread [1]. In this selection approach, initially, the population members are laid on a line in such a way that the length of a line segment that represents each member is proportional to the corresponding scaled fitness value. The sampling is started from a uniform random number and is continued along the line with evenly spaced intervals. The rank scaling function was used for evaluating the best fits during the selection. The elite fraction and crossover fraction were configured to 0.05 and 0.8, respectively. Reaching of either function tolerance of 1e\(^{-6}\), 50 stall generations, or \(100(n-1)\) generations are considered as stopping criteria of the GA. The set of priority constants \(\{\lambda _i\}\) of the fitness function was taken as \(\{1\}\) to give the same priority for all the hinges. Simulation were conducted using Matlab in this regard. The accuracy of distance measurements was considered as 1 mm based on the specification of the LiDAR of existing hTetro. Furthermore, it was considered that each hinge could be moved with an accuracy of 1\(^\circ \).

Convergence of the GA

The ability of the proposed method in determining the hinge angles required for the reconfiguration per the shape of an obstacle has been evaluated considering robots with different numbers of blocks. Moreover, the proposed GA should be converged to a solution with an acceptable level of fitness when determined the hinge angles for different cases of n. The cases of robots with \(n = 3, 4, 5, \text { and } 7\) encountering a long obstacle, such as a curved wall, have been considered in this regard. The reconfigured shape of the robot in each case, along with the obstacle and the initial shape of the robot, are depicted in Fig. 5. The corresponding convergence results of the GA are given in Fig. 6.

Fig. 5
figure 5

The reconfiguration of robots with different number of blocks per the shape of an obstacle. The reconfigured shape of the robot and the obstacle are depicted in green and black, respectively. a \(n = 3\), b \(n = 4\), c \(n = 5\), and d \(n = 7\)

Fig. 6
figure 6

The variation of function fitness with generations for robots with different number of blocks. a \(n = 3\), b \(n = 4\), c \(n = 5\), and d \(n = 7\)

In the case of \(n=3\), the GA terminated after reaching the maximum number of generations (200 since \(n=3\)). Initially, the mean fitness value was high (more than 600), and a steep decrease in fitness value can be seen in the plot given in Fig. 6a. The best and mean fitness at the termination point were 4.776e\(^{-5}\) and 5.919e\(^{-5}\), respectively, which yielding to a very negligible error between the required set of offsets (i.e., \(\{\delta _i\}\)) and the offsets resulted from the reconfigured shape of the robot (i.e., \(\{\delta '_i\}\)).

Similar sort of behavior can be observed from the plots given in Fig. 6b–d for the cases of \(n=4\), \(n=5\), and \(n=7\), respectively. During the cases of \(n=4\) and \(n=7\), the GA was terminated by reaching the given function tolerance. The highest best and mean fitness values were observed from the case of \(n=5\) (best: 1.585 and mean: 1.586). However, this fitness value represents an average error of 0.31 cm between the required set of offsets (i.e., \(\{\delta _i\}\)) and the offsets resulted from the reconfigured shape of the robot (i.e., \(\{\delta '_i\}\)). Therefore, it can be concluded that the proposed method is capable of determining the set of hinge angles per obstacle for the cases of robots with different numbers of blocks. Moreover, the GA converges to a solution with an adequate level of performance for robots with different numbers of blocks.

Evaluation of area coverage performance

Fig. 7
figure 7

Arrangement of the environments of sample test cases considered for the comparison of the coverage. The areas in black represent the obstacles. The area bounded by the green line indicates the area that is not covered from the existing methods used by hTetro for coverage. The reconfigured shape of hTetro per the shape of the obstacle by the method proposed in this paper is depicted in red

The main motivation of the method proposed in this paper was to improve the area coverage of a reconfigurable tiling robot with respect to the existing coverage methods of a reconfigurable tiling robot. Therefore, the area coverage of hTetro that utilizes the proposed method was compared against hTetro that utilizes the existing methods for the coverage. The existing coverage methods of hTetro utilize only seven predefined shapes for the reconfiguration [6, 18, 33]. hTetro was selected for the validation since it is one of the state of the art tiling robot, and it can be seen in most of the literature of reconfigurable tiling robotics. Furthermore, the hardware configuration of hTetro requires minor alteration to facilitate the proposed concept. hTetro has four blocks. Thereby, n becomes 4. The area coverages of hTetro with the proposed method and the existing methods of hTetro were analyzed considering 15 cases of obstacles with different shapes. The area coverage limitation of the existing coverage methods of hTetro, such as  [6, 18, 33] is the same. Moreover, the same area coverage level could be observed from these methods, with only differences in energy usage and coverage time. Thus, the existing coverage methods were considered as a single case since the area coverage is the factor of interest. The arrangements of the first five test cases are depicted in Fig. 7 as sample cases. The key parameters of the robot corresponding to the sample cases are given in Table 1.

Table 1 Sample results of the coverage comparison

In case ‘a’, the arrangement of the obstacle is depicted in Fig. 7a. The area bounded by the green line was considered as fully occupied by the existing coverage methods of hTetro. Therefore, the unoccupied area within this region was not covered by hTetro with existing coverage methods. The uncovered area of this case from hTetro with existing coverage methods was \(1530~\hbox {cm}^2\). In the event of hTetro with the proposed method, the robot perceives the obstacle as the distances from the centers to the obstacle, \(\{a_i\} = \{54.4~\hbox {cm}, 50.6~\hbox {cm}, 50.6~\hbox {cm}, 54.4~\hbox {cm}\}\) (see Table 1). Subsequently, the set of offsets required to reconfigure per the obstacle, \(\{\delta _i\}\) was calculated. The GA determined the required set of hinge angle, \(\{\theta _i\}\) as \(\{14^\circ , 24^\circ , 0^\circ \}\) corresponding to \(\{\delta _i\}\). Then, the robot reconfigured according to the set of hinge angles \(\{\theta _i\}\) determined by the GA for reconfiguring per the shape of the obstacle as shown in Fig. 7a. After reconfiguration, the robot approached the obstacle. Therefore, hTetro could cover more areas in this event than the event of hTetro with existing methods. The uncovered area in this event was \(411~\hbox {cm}^2\), which was lesser than the existing method.

Similarly, uncovered areas of hTetro with the proposed method and existing methods were compared for all the 15 cases. In all the cases, the proposed method was capable of reducing the uncovered area with respect to the existing methods. Moreover, improvement of coverage could be observed for hTetro with the proposed method. The means of uncovered area for the proposed method and the existing methods are given in Fig. 8a along with error bars. The corresponding box plots are given in Fig. 8b for better visualization of the distribution of the data. The mean uncovered area for the existing methods was \(2261~\hbox {cm}^2\) (\(\hbox {SD} = 1020\)). The mean uncovered area for the proposed method was \(601~\hbox {cm}^2\) (\(\hbox {SD} = 312\)). To evaluate the statistical significance of the results, a t test has been conducted. According to the test statistics, the mean uncovered area of the proposed method is significantly less than that of the existing coverage method of hTetro (\(t_{(14)}= 6.02\), \(P = 0.000\)). Furthermore, the reduction of the uncovered area by the proposed method is notable since Cohen’s \(\hbox {d} = 2.20\), which indicates a very large effect [29]. Therefore, these statistical outcomes validate that the proposed method is capable of very largely improving the coverage of a tiling robot with respect to the existing method.

Fig. 8
figure 8

a Variation of mean uncovered area with error bars. Error bars are drawn to represent standard error. b Box plots for the uncovered area. The box plots have the usual standard notation; box: Interquartile range, horizontal line: Median, whiskers: Minimum and maximum, and plus sign: Outliers

Mean execution time of 12.28 mS (\(\hbox {SD} = 3.35\)) was observed per the computation of the hinge angles through the GA for a scenario. It should be noted that the simulations were conducted on a laptop with an Intel Core i7-9750H processor and 16 GB memory. However, the compute stick expected to be used in the robot has the slightly lower processing power and memory than the simulation platform (Intel Core m5-6Y57 processor and 4 GB memory). Even though the robot’s processing power is low, it would not harm the online operation of the proposed algorithm since the execution time observed during the runtime is on the millisecond range. Moreover, it can be concluded that the proposed algorithm is fast enough to assert the online operation.

Discussion

The convergence of the GA for robots with different numbers of blocks has been examined to prove the applicability of the proposed method. The hardware and software complexity and cost of deployment of a robot increase with a number of blocks and a robot with seven blocks can be considered a complex robot for floor cleaning. Furthermore, most of the existing developments of reconfigurable robots are limited to the cases of \(n = 3, 4, 5\). Therefore, the cases of \(n=3, 4, 5, 7\) have been considered for evaluating the convergence. The proposed method was successfully converged to a solution in all the cases. Based on these observations, it can be concluded that the convergence results validate the applicability of the proposed method for robots with n number of blocks in general usage.

The area coverage performance of the proposed concept has been validated through an experiment by considering hTetro, which is one of the existing tiling robots. hTetro was chosen for this since its versatility (widely appeared in the literature related to tiling robot). Furthermore, hTetro requires minimal hardware modifications to facilitate the proposed method. Even though the proposed method has been validated by considering a \(n=4\) tiling robot, the method was built upon for a tiling robot with n number of blocks. Thereby, the proposed method can be useful for a tiling robot with a different number of blocks. Moreover, it is reasonable to conclude that the proposed method is capable of improving the area coverage of a tiling robot with respect to the state of the art coverage methods of reconfigurable tiling robots.

The existing coverage methods of tiling robot considers only a limited number of shape for the reconfiguration (e.g., hTetro [33]: seven shapes, hTromo [34]: two shapes, hTetrakis [19]: three shapes, hTrihex [20]: three shapes). Moreover, a limited set of predefined shapes are considered for the reconfiguration. To cope with the coverage problem through tiling theory with the limited number of shapes, obstacles in a given floor area are assumed as shapes that could be directly represented from grid cells. Moreover, partially occupied grid cells are considered as fully occupied to facilitate the tiling set generation. As a result of this assumption, a considerable amount of area would be left uncovered from the existing coverage methods of tiling robots. The method proposed in this paper enables a tiling robot to reconfigure following the shape of an obstacle without restricting the possible reconfigurable shapes to a limited set. The ability to reconfigure per the shape of an obstacle is the major novelty of the proposed method over the state of the art area coverage methods of tiling robot such as [6, 19, 20, 33]. The hardware arrangement of most of the existing tiling robots would facilitate the reconfiguration of many shapes without restricting to a limited set of shapes for the reconfiguration. Therefore, the proposed method can straightforwardly be applied to the existing reconfigurable tiling robot.

For the validation of the proposed method, 15 cases of obstacles with heterogenous shapes haven been considered. These sorts of obstacles can often be observed in typical floor areas due to the inclusion of furniture. The amount of uncovered area of the existing coverage methods of tiling robot is noteworthy. The method proposed in this paper is capable of remarkably reducing the uncovered area. Thereby, it can be concluded that the proposed method is effectively useful for improving the area coverage of a tiling robot used in real-world applications.

The performance of the proposed coverage method has been compared against the state of the art coverage methods of tiling robot in terms of area coverage since it is the most vital performance indicator for a tiling robot. Other than the area coverage, factors such as energy usage and time consumption for coverage would also be vital factors for a tiling robot. Therefore, an analysis of the effect on such factors from the proposed method is proposed for future work. Furthermore, the proposed method is designed to work in tie-up with the existing coverage methods that utilize the tiling theory for navigation through obstacles. Nevertheless, there can be a situation where utilization of the proposed method would improve the navigation of the robot over the tiling-based navigation, which uses a limited set of shapes for the reconfiguration. Therefore, it would be interesting for future work to consider the possibility of navigating a tiling robot without restricting the reconfigurable shapes to a limited set.

Conclusions

Reconfigurable tiling robots have been developed to improve the area coverage of floor cleaning applications. The state of the art coverage methods developed for these reconfigurable tiling robots utilize the tiling theory to cope with the coverage problem. The main limitation of the existing coverage methods of reconfigurable robots is that the methods consider only a limited set of predefined shapes for possible reconfiguration. Due to this limitation, the area coverage of these methods drastically drops in real-world applications.

This paper proposed a novel method to reconfigure a tiling robot according to the shape of an obstacle. The proposed method considers that a reconfigurable tiling robot could reconfigure into many shapes instead of restricting the possible reconfigurable shapes to a limited number. The facilitation of reconfiguration of a tiling robot without restricting to a limited set of predefined shapes is the major contribution of the proposed work over the state of the art methods. The hinge angles of a robot that needs to be reconfigured per the shape of an obstacle are determined by a Genetic Algorithm (GA) based on the exact shape of the obstacle perceived from sensory information.

The applicability of the proposed method for robots with different numbers of blocks has been validated by evaluating the convergence of the GA for robots with different numbers of blocks. According to the convergence results, the proposed method can be used with reconfigurable tiling robots with different numbers of blocks. This straightforward deployability of the proposed method to robots with different numbers of blocks is a worthy and salient feature. The area coverage performance of the proposed method has been compared to the existing coverage methods of reconfigurable tiling robots. According to the statistical outcomes of the comparison, the proposed method can significantly improve the coverage compared to that of state of the art methods (\(P < 0.05\)). Furthermore, the improvement of the are coverage is noteworthy according to the observed effect size (Cohen’s \(\hbox {d} = 2.20\)). Therefore, it can be concluded that the work proposed in this paper has made a substantial contribution to the development of reconfigurable tiling robots.