Next Article in Journal
Deformation-Related Data Mining and Movement Patterns of the Huangtupo Landslide in the Three Gorges Reservoir Area of China
Previous Article in Journal
The Impact of Cloud Versus Local Infrastructure on Automatic IoT-Driven Hydroponic Systems
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Optimization Algorithm for Cutting Masonry with a Robotic Saw

Department of Construction Technology, Faculty of Civil Engineering, Czech Technical University in Prague, Thákurova 7, 166 29 Prague, Czech Republic
*
Author to whom correspondence should be addressed.
Appl. Sci. 2025, 15(7), 4015; https://doi.org/10.3390/app15074015
Submission received: 11 March 2025 / Revised: 1 April 2025 / Accepted: 4 April 2025 / Published: 5 April 2025

Abstract

:

Featured Application

The results of this research can be applied to a robotic bricklaying process to optimize the cutting of ceramic masonry blocks. The optimal cutting scheme serves as an initial input for a robotic saw and its operations.

Abstract

The contribution of this study is in the novel application of the bin packing algorithm that is used to optimize the robotic bricklaying process with the aim of minimizing the wearing of a robotic saw used for splitting brick blocks so as to minimize brick consumption. To optimize the cutting of masonry blocks with a robotic saw, a new bin packing algorithm has been developed to enhance the design of a digital cutting plan. The algorithm is based on the principle of random search for all combinations of cutting execution with respect to the maximum number of objects (cuts) found in one container (masonry block). The new bin packing algorithm (NBPA) minimizes the number of total masonry blocks (containers) and the number of cuts made with a robotic saw, thus reducing the cutting length. The algorithm can converge to a solution rather quickly and reliably to identify optimal variants of a digital plan designed for a robotic saw to be used in different object assemblies. This article describes the optimization algorithm, including step-by-step calculations, and provides a practical example and a comparison of the results with earlier algorithms. The concept of the robotic saw is also presented in detail, including a description of a prototype. The simulation of the performance on 20 different sets of elements showed that NBPA has a similar use of space compared to the First-Fit Decreasing algorithm (FFD). Multicriteria analysis demonstrated that when the weighting criterion for saw wear was 40% of all the criteria, the use of NBPA was approximately 3.5 times more effective than FFD. The application of the new methodology to a robotic bricklaying process has the potential to reduce the wear of robotic saw, to increase the speed of the construction process and to reduce the generation of construction and demolition waste (CDW).

1. Introduction

Global efforts to reduce the consumption of raw materials obtained from non-renewable sources also apply to the materials used in the building industry [1,2]. Generally, the building industry is responsible for around 30–50% of the waste production in developed countries [3,4,5]. It is therefore necessary to advance strategies to reduce the quantity of construction and demolition waste (CDW). Furthermore, the price of building materials has increased by an average of 35–50% over the last decade, so there is also a need to develop operations supporting cost efficiency in construction processes, namely, through improved material handling [6,7,8]. Fired clay bricks (FCBs) are a dominant building material worldwide due to their low cost and ease of production, as shown by Olsson [9].
One of the most promising strategies to address environmental and economic challenges in the building industry is the digitization of building life cycles [10,11,12]. On construction sites, digitization is introduced by the utilization of robots, which is why robotic construction technologies have developed very rapidly in the last decade [13,14,15].
In the current construction industry, ceramic brick walls are laid using standardized brick blocks. The dimension of these blocks is based on the module given by the manufacturer. The most common module is 250 mm, 375 mm or 500 mm [16,17]. Brick manufacturers offer additional types of blocks for each module. This allows the walls to be connected while keeping the module intact. No extra cutting of the blocks is needed on-site. These extra blocks are usually half blocks, end blocks and corner blocks [18]. If the walls of a building are not designed with respect to the module of the brick block, it is necessary to insert custom brick sections made by cutting modular brick blocks into pieces as a supplement to the modular blocks. The production of these offcuts reduces process efficiency and generates pieces that, in many cases, cannot be further used due to their size and end up as CDW. The utilization of robots in the field of bricklaying holds considerable potential for enhancing the efficiency and safety of wall construction. The existing reference studies have primarily focused on the optimization of the bricklaying process itself, with a focus on the optimization time, cost and energy savings [19]. However, the integration of robotic saws into the robotic process is crucial for the construction of walls involving non-standard block cutoffs. To the best of our knowledge, no reference study has hitherto been found that focuses on the optimization of the bricklaying process with the aim of reducing the number of cutoffs and wear of a robotic saw. Also, no reference study has been found that describes the use of bin packing algorithms in the bricklaying process to optimise the use of bricks. The development of a novel methodology to address the optimization of robotic brick cutting, with the objective of reducing the consumption of bricks and reducing the rate of wear of the robotic saw, would enhance the efficiency of robotic bricklaying and facilitate the dissemination of this technology to construction sites.
A promising potential to reduce CDW lies in the optimization algorithms that can be effectively implemented in construction processes focused on on-site material handling.
The research paper presented here describes a mathematical model determining an optimal masonry cutting plan used as an input for the operation of a robotic saw. The newly developed packing algorithm that optimizes masonry cutting and the operations of a robotic saw can determine an enhanced plan of masonry cuts and the number of necessary operations in the entire laying plan [19] of the Building Information Model (BIM). The employment of packing algorithms in the field of robotic bricklaying was previously restricted to the optimization of brick packing in order to completely fill the designed walls. Up to now, a number of research works have described effective packing algorithms [20,21], but these works were generally focused on other applications. The already existing packing algorithms [22,23] cannot work with additional parameters, such as the number of cuts or the minimal size of residual masonry. The main reason for the creation of our model is the effort to reduce, to a minimum, the amount of CDW resulting from the cutting of masonry.
During this research work, namely, owing to the global absence of a suitable mathematical method, it was necessary to develop a new packing algorithm that would take into account not only the minimization of whole masonry elements but also the minimization of the necessary number of cuts made with a robotic saw in order to reduce wear and tear on the saw cutting surface [24] and to speed up the entire construction and technological process of brickwork laying.
The structure of the following text of this paper is organized into four sections and two appendixes. In Section 2, the optimization problem is analysed, and a new bin packing algorithm is suggested. In Section 3, the results are presented, and the performance of the suggested algorithm is evaluated using multicriteria analysis. Finally, Section 4 synthesises the conclusions of this paper and outlines potential future research directions. Appendix A contains a pseudocode of the optimization algorithm for cutting masonry with a robotic saw. Appendix B presents data simulation for comparative analysis, the results of the simulation and comparison and multicriteria analysis of the new bin packing algorithm and the First-Fit Decreasing algorithm.

2. Materials and Methods

Two main objectives were addressed in this study. The first objective is to limit the wear of a cutting saw used for the splitting of brick blocks. The second objective is to minimize the number of brick blocks for the given geometry of the walls to be fully filled. The working principle of the mathematical model for the optimal design of masonry cuts is schematically illustrated by a flow chart, which can be seen in Figure 1. The diagram is divided into segments of inputs and outputs of the mathematical computational model or a digital bricklaying plan [19].
The first input involves a digital bricklaying plan of load-bearing and non-load-bearing wall blocks for different BIM objects. The plan is created with special software for bricklaying robots [19] after converting BIM objects [25] and their following export to a standard IFC format [26].
The second input is a database of masonry elements. The database provides brick specifications, such as the size and physical and mathematical parameters of masonry elements, as provided by manufacturers of building masonry systems. The digital laying plan of a building depends on the choice of specific masonry elements creating load-bearing and non-load-bearing walls. The choice of masonry can be made in the software for robotic bricklaying [19], which contains an extensive database of masonry systems and their relevant technical data and properties. If the building or facility is not modelled in a basic building module [26,27], a certain number of cuts needs to be processed according to the parameters of the third input into the model—the robotic saw module.
The mathematical core of the model is based on an algorithm, which is described in detail in the following section. The output of the model contains the lists of cuts, optimal compositions of cut assemblies, the number of masonry elements, waste pieces and the distribution of elements on a pallet for bricklaying processes (the mask on the pallet). After the cutting steps are implemented according to the output of the algorithm, the masonry elements are stacked in a specific order and at certain positions by the robotic bricklaying assembly needed for further technological bricklaying processes.
One can define a mathematical problem as an optimization problem of finding the best solution from all feasible solutions. To optimize the cutting, an optimization problem was solved with the aim of minimizing the total amount of masonry elements and reducing CDW. The number of cuts should also be minimized to reduce the operation time of the robotic saw and to limit the wear and tear of its cutting plate.
The optimization problem can be converted to the classical problem of packing algorithms (bin packing problem) [27,28]. The class of packing problems in a container is described as an NP-hard (nondeterministic polynomial time/NP-hard) combinatorics task [29]. A number of mathematical algorithms exist that are capable of approximately solving this problem for various application methods, e.g., 2D packing, line packing, packing by weight and packing by value. The whole problem is focused on packing certain objects into containers of the same size in such a way that the total number of containers is minimized. The task is NP-hard (strong NP-completeness) [29], and the use of an exact solution using a search algorithm (brute force solution) is possible only for a small number of objects. The time requirement grows exponentially with the use of limiting conditions (e.g., the maximum number of objects in a container) or even factorially. Usually, approximate heuristic algorithms are applied to solve such tasks, e.g., Next-Fit (NF), First-Fit (FF), Best-Fit (BF), First-Fit Decreasing (FFD), Harmonic-k, etc. [30], and each algorithm has its own estimate of solution accuracy and time requirements.
The specifics of employing a robotic saw to cut masonry elements assume certain simplifications and several special conditions. In modular masonry, a limited set of cut objects is used, each with several repetitions. It was necessary to add other minimization parameters (number of cuts, size of loss residues) into our model. However, none of the exploited mathematical algorithms brought a reliable and optimal solution in a reasonable amount of time [29,30,31]. Therefore, it was decided to develop an algorithm for optimizing the cutting of masonry elements in 1D space, as detailed in the following parts of this article, together with an example of application and comparison with the existing methods.
The size of a masonry element V   [ m m ] is expressed as:
V = L · W · H ,
where L   [ m m ] is the length of the element, W   [ m m ] is the width of the element and H   m m is the height of the element.
The size of a masonry element is predetermined and constant, which the algorithm describes as the size of a container. The cut parts of masonry elements have the same height and width as the whole element in question. They only differ in the length of a 1 , , a n , where n designates the number of objects. The optimization problem can be converted to a 1D space problem, where the size of the container is taken as its length L , for which the following condition applies:
L i S k a i k = 1 , , B ,
where B is the number of containers (the entire masonry element) and S is a subset of objects (cuts). The task is to identify the splitting of a set 1 , , n into a B subset S 1 S B for which condition (2) applies. The minimum number of subsets is the optimal solution of the problem:
min B = O P T ,
Minimizing and constraining conditions for a robotic saw can be formulated as follows:
  • The number of whole masonry elements is minimal: B = i = 1 n y i , where y i = 1 for the containers used.
  • The condition of the minimal number of cuttings T can be formulated as minimizing the number of wasted pieces: W = i = 1 n w i , where w i = 1 for containers with unused space. A fully filled container reduces the number of cuts by 1.
  • Other constraints can be formulated as:
    j = 1 n a i · x i j L · y i ,
    where y i 0 , 1 , x i j 0 , 1 , i 1 , , n , a n d   j 1 , , n .
    i = 1 n x i j = 1 ,
    where x i j 0 , 1 , i 1 , , n , a n d   j 1 , , n .
Object j is placed in container i if y i = 1 for the used containers and x i j = 1 [32].
To optimize the number of cuttings of masonry elements, we must apply certain simplifications to our problem. The minimal possible length of the cuts defines the maximal possible number of objects in container N . This value is limited from above by technological processes of cutting the masonry elements, which significantly reduces the difficulty of finding the optimal solution:
max N = L min a i , i 1 , , n ,
The technological processes of robotic masonry cutting are considered:
min a i 50   m m ,
According to their length, cut objects can be classified into smaller groups. The lower and upper limits of the number of containers can be applied as constraints to our problem:
O P T · L t = 1 s m t · a t n · L ,
where n is the number of objects, m t is the number of elements in group t , a t is the size of elements in group t and s is the maximum number of groups. The number of groups and elements found in each group is not limited by the algorithm. However, larger numbers of groups negatively affect the calculation time [33]. On the other hand, smaller numbers of groups negatively affect the accuracy of the algorithm. For the optimal solution, the developed algorithm must have optimal parameters:
m t > 5 s < 10
In the following section, several steps of the algorithm for optimizing masonry cutting with a robotic saw are described in more detail.
Step 1: Algorithm inputs and calculation of task parameters.
  • t = 1 s m t · a t —array of objects to pack into container ( m is the number of elements in a group t, a is the size of an element).
  • L —container size.
  • max N = L min a i —maximum possible number of objects in container.
Step 2: Preparing the array of objects for first iteration.
  • Listing the array of elements in the form: A = i = 1 s j = 1 m i a i .
  • Random ordering of elements in the array: R = i = 1 n r i .
  • Copying the first e elements to the work area: M = i = 1 e r i .
Note that the parameter e specifies the number of first elements of a variant (each variant is a randomly serialized set). For each iteration, the elements are randomized, and the first e elements at the beginning of each set are selected. The size of parameter e affects the complexity and accuracy of the calculation (see Table 1).
Step 3: List of all admissible container combinations for array M.
  • Each container combination K i must meet the condition:
    i = 1 k a i L ,
    where k is the number of objects in a container assembly.
  • Used space F i and unused space U i are calculated for each container combination.
  • Container combination K i is sorted into an array according to increasing unused space U i .
  • The combination containing a smaller number of elements n i with the same unused space receives negative penalty points and is placed lower in order.
  • The best combination K o p t is determined by the condition for the best variant:
    L U o p t > min ( R M ) ,
  • Step 2 is repeated. To converge the algorithm successfully, the iteration must be performed at most n w times.
Step 4: Filling container j according to optimal variant K o p t .
  • Container j is filled:
    i = 1 n j a i = F j ,
    where F j is the used space of the container.
  • Unused space U j of the container is calculated: U j = L F j .
  • The array of element A is reduced by the elements occupied in the optimal container: A = A a i , i 1 , , n j .
  • Steps 2 to 4 are repeated for A .
Step 5: Listing containers K o p t and calculating the parameters of the packing algorithm.
  • Total used space: F t = i = 1 O P T F i , where O P T is the optimal number of containers (maximization problem).
  • Unused total space (CDW): U t = i = 1 O P T U i , where O P T is the optimal number of containers (minimization problems).
  • The total number of cuts T t for the entire set of elements (minimization problems).
  • The container combination K t (minimization problems).
Step 6: Multi-objective optimization (multiple-criteria decision making).
  • The multi-objective optimization problem can be formulated as:
    min ( F t , U t , T t , K )
  • Multicriteria analysis is performed by assigning a weight to each criterion.
  • List optimal containers K_opt.
Appendix A contains a pseudocode of the optimization algorithm for cutting masonry with a robotic saw. The core of the new bin packing algorithm is programmed in the language PHP 8.3.15 [34]. PHP is a general-purpose scripting language for web development. However, it can also be used to solve mathematical problems for better implementation in online forms with a powerful modern math library [35]. The source code is available in [36]. The following section provides a practical example of the algorithm and comparison of the results with other algorithms.

3. Results

The experimental results of the suggested bin packing algorithm were applied on an example task for robotic bricklaying in the robotic saw module. According to the digital bricklaying plan [19], it was necessary to prepare additional sets of cuts: 300 mm × 10 pieces, 250 mm × 5 pieces, 150 mm × 15 pieces and 100 mm × 20 pieces. The length of the masonry element is 500 mm. The visualization of the construction can be seen in Figure 2.
The robotic saw is designed to cut given masonry elements according to a building layout plan and a mathematical calculation model. The saw used to test the robotic system (see Figure 3) consists of a CCE400 construction saw [37] (1) and accessories for automatic saw operation. Pneumatic valves (2) are applied to control table movements and the pressure of the masonry element exerted on the table. The table movements (3) are driven by a pneumatic cylinder, which is attached to the saw frame. The pressure is ensured by a set of pressure arms with hard rubber (4) for better contact with masonry elements. The pressure arms are on a linear rail and the force is exerted by a pneumatic valve. The robotic saw is able to cut all standard masonry elements.
The total number of cuts is n = 50 , and the cuts fulfil condition (5). The maximum possible number of cuts from one masonry element is max N = 5 . For e = 11 , the optimal set of containers according to the iteration steps can be found (see Table 2). At the end of Table 2, a summary of the algorithm is shown. As can be seen there, the algorithm identified the optimal set of cuttings with the total usage of construction masonry materials of 94.444%.
The algorithm shows very fast convergence and reliable results for e = 6 . The computational time increases exponentially, as demonstrated in Figure 4.
The computation time corresponds to the amount of variants for the decomposition of an integer number into up to N smaller numbers [38]:
C n m = n ! m ! n m ! ,
where n is the number of all objects and m = max N is the maximum number of objects in one container. For the example provided, the number of variants is equal to C n m = 50 ! 5 ! 50 5 ! = 2,118,760 combinations. After applying the constraints and conditions, the number of acceptable combinations is reduced to 144.
Figure 5 shows charts of the dependence of other algorithm outputs on random selection parameter e .
Table 3 compares the results of packing methods for the identical example. Several algorithms, often used in practical instances of packing objects into containers, are included in the analysis [39]. The quality of the bin packing algorithms was tested online with [40].
Appendix B contains the data (Table A1) and the results of the simulation and comparison (Table A2 and Table A3) of the new bin packing algorithm (NBPA) with the First-Fit Decreasing algorithm (FFD). The data and a comparative analysis can be found in [36]. The experiment was based on 20 random simulations for different hyperparameters of the algorithms (such as container size, minimum allowable cut size, parameter e ) and for random sets of elements (size and number of brick elements) (Table A1). Each simulation was processed with the new bin packing algorithm (NBPA) [36] and checked with [40] for the FFD algorithm (Table A2). For each simulation, the number of containers, the number of combinations, the number of cuts and the unused space were calculated.
According to the multicriteria analysis (Table A3), for the same weight of criteria (number of containers, number of combinations, number of cuts and unused space), NBPA and FFD show the same result score (7 for NBPA, 7 for FFD). For the second set of weights (number of containers (20%), number of combinations (20%), number of cuts (40%) and unused space (20%)), NBPA shows better results with a score of 11 vs. FFD with a score of 3. Six simulations show the same result for both algorithms.
The research reports for each simulation can be found in [36].

4. Conclusions

A new bin packing algorithm was designed to be used for the optimal planning of masonry cutting with a robotic saw. The algorithm is based on the principle of random search for all combinations of cuts executed with respect to the maximum number of objects (cuts) located in one container (masonry element). The new bin packing algorithm minimizes the number of entire masonry elements (containers) and the number of cuts made by the robotic saw to reduce the wear and tear of the cutting plate. The algorithm converges very quickly and reliably finds optimal variants of a digital plan for the robotic saw and various construction objects. Already existing packing algorithms were compared with the newly developed algorithm intended to optimize cuts using a robotic saw. The performed analysis showed its faster convergence and better achievable results for masonry element assemblies.
When comparing the usage of space, the simulation comparing the performance on 20 different sets of elements showed that NBPA is comparable to FFD. Multicriteria analysis demonstrated that when the weighting criterion for saw wear was 40% of all the criteria, the use of NBPA was approximately 3.5 times more effective than FFD.
The presented work successfully introduced an effective methodology for the implementation of building object modelling as well as a connecting bridge between the BIM environment and the environment of industrial robots. The new algorithm enables us to significantly simplify the implementation of robotic assembly units (robotic masonry and robotic saw) in construction processes and achieve better solutions. The robotic saw module, after deploying the algorithm developed, can save time when performing technological construction processes and can also reduce the wear and tear of the technical equipment of robotic assemblies. The application of this methodology to the construction process has the potential to reduce the generation of CDW and to speed up the construction period of brick buildings.
However, scientific work on the development of the algorithm cannot end here. It is necessary to carry out more diverse tests, eliminate possible algorithm errors, accelerate its convergence and reduce time requirements. It is also necessary to analyse the use of the new packing algorithm for deployment in other applications and expand it from 1D to 2D and 3D spaces.
To test the algorithm, an online calculator with limited parameters e and the maximum number of elements n is available at [41].
The source code of the algorithm, written in PHP v.8.3.15, can be found at [36] or can be provided upon request to the main author of the contribution.

Author Contributions

Conceptualization, V.U. and R.Š.; methodology, V.U.; software, V.U.; validation, Č.J., M.K. and R.Š.; formal analysis, Č.J.; investigation, M.K.; resources, M.K.; data curation, Č.J.; writing—original draft preparation, V.U.; writing—review and editing, Č.J.; visualization, M.K.; supervision, Č.J.; project administration, R.Š.; funding acquisition, R.Š. All authors have read and agreed to the published version of this manuscript.

Funding

This research was funded by Czech Technical University in Prague, Faculty of Civil Engineering, Student Grant Competition, grant number SGS23/148/OHK1/3T/11, Increasing the sustainability of masonry and concrete structures using robots.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

The source code is available at [36], and the test algorithm is available at [36,41].

Conflicts of Interest

The authors declare that they do not have any competing financial, professional or personal interests from other parties.

Abbreviations

The following abbreviations are used in this manuscript:
CDWconstruction and demolition waste
IFCsIndustry Foundation Classes
BIMBuilding Information Model
PHPPersonal Home Page
NP-hardnondeterministic polynomial time problem
NFNext-Fit packing algorithm
FFFirst-Fit packing algorithm
BFBest-Fit packing algorithm
FFDFirst-Fit Decreasing packing algorithm
FCBfired clay brick

Appendix A

This appendix contains a pseudocode of the optimization algorithm for cutting masonry with a robotic saw.
//This program will find optimal masonry cutting with a robotic saw:
START
   SET container_size, number_of_elements
   SET minimal_length_of_cut, random_first_elements
   SET Array[element] of number_of_elements
   SET Array[container] of number_of_elements
   SET Array[result]
   COMPUTE max_objects = container_size/minimal_length_of_cut
   COMPUTE number_of_groups = all_combinations(Array[element], container_size, max_objects)
   WHILE Array[element] NOT EQUAL []
     Array[element] = random sort Array[element]
     SET work_area TO random_first_elements FROM Array[element]
     COMPUTE used_space, unused_space FOR each Array[container]
     COMPUTE number_cuts FOR each Array[container]
     Array[container] = SORT Array[container] (DESC unused_space, ASC number_cuts)
     IF unused_space in first Array[container] ≥ min(Array[work_area])
        COMPUTE used_space += min(Array[work_area]) FOR first Array[container]
        COMPUTE unused_space − = min(Array[work_area]) FOR first Array[container]
        REMOVE min(Array [element]) FROM Array[element]
     ELSE
        Array[result].APPEND(first Array[container])
     END IF
ENDWHILE
COMPUTE multi_criterial_score FOR each Array[result]
Array[result] = SORT Array[result] (DESC multi_criterial_score)
PRINT Array[result]
//Function for computation all possible cuts combinations in container
FUNCTION all_combinations(element, container_size, n)
    SET number_group = 0
    FOR each possible value v_1 in element
      FOR each possible value v_2 in element
         …
           FOR each possible value v_n in element
              SET tmp = 0
              FOR i = 1 TO n
                 tmp = tmp + v_i
                 IF tmp ≥ container_size
                     number_group = number_group + 1
                     BREAK
                 END IF
             END FOR i
           END FOR v_n
           …
        END FOR v_2
      END FOR v_1
      RETURN number_group
   END FUNCTION
END

Appendix B

This appendix contains data (Table A1) and the results of the simulation and comparison (Table A2 and Table A3) of the new bin packing algorithm (NBPA) with the First-Fit Decreasing algorithm. The data and a comparative analysis can be found in [36].
Table A1. Simulate data for comparative analysis.
Table A1. Simulate data for comparative analysis.
IDElementsContainer, [mm]Min Cut, [mm]Total CombsSet of Elements (Size [mm], Number)
1426 500100121(480, 70), (360, 20), (320, 72), (290, 95), (250, 9), (150, 73), (130, 34), (120, 1), (110, 27), (100, 25)
2529 50010065(450, 76), (440, 82), (380, 85), (300, 13), (260, 24), (210, 16), (170, 94), (160, 36), (140, 4), (110, 99)
3616 50010015(470, 78), (450, 70), (380, 33), (370, 60), (350, 23), (330, 85), (300, 11), (270, 89), (240, 92), (180, 75)
4455 50010034(470, 52), (460, 9), (430, 70), (390, 83), (350, 38), (320, 26), (280, 12), (270, 33), (130, 90), (100, 42)
5556 50010039(420, 23), (390, 69), (370, 77), (320, 7), (290, 79), (260, 94), (220, 56), (180, 83), (160, 51), (140, 17)
6591 50010046(480, 61), (360, 2), (310, 63), (280, 91), (270, 54), (250, 75), (240, 63), (190, 20), (180, 75), (110, 87)
7582 50010024(400, 35), (390, 88), (360, 69), (340, 79), (300, 80), (270, 44), (260, 64), (230, 1), (210, 95), (150, 27)
8621 50010048(480, 97), (460, 80), (430, 34), (300, 76), (290, 80), (250, 86), (200, 30), (180, 98), (150, 25), (110, 15)
9291 50010025(490, 33), (470, 42), (460, 43), (330, 13), (320, 35), (280, 35), (270, 48), (190, 25), (180, 15), (170, 2)
10533 50010062(480, 59), (470, 70), (430, 43), (400, 10), (310, 19), (250, 79), (180, 45), (160, 100), (120, 64), (100, 44)
11536 60020026(560, 25), (520, 64), (440, 75), (420, 32), (350, 43), (340, 76), (270, 72), (250, 74), (230, 43), (210, 32)
12575 60020021(580, 94), (480, 14), (400, 87), (370, 47), (360, 85), (350, 73), (330, 4), (300, 23), (250, 98), (240, 50)
13529 60020013(560, 26), (550, 72), (540, 54), (510, 48), (490, 53), (480, 33), (430, 65), (390, 40), (270, 65), (250, 73)
14548 60010084(540, 8), (460, 89), (440, 32), (350, 19), (300, 99), (270, 63), (250, 90), (190, 76), (140, 9), (100, 63)
15483 60010071(590, 34), (580, 47), (540, 38), (510, 13), (420, 18), (350, 100), (220, 52), (160, 85), (140, 17), (100, 79)
16352 40050186(360, 22), (330, 26), (320, 39), (230, 1), (190, 24), (160, 100), (120, 53), (110, 27), (60, 35), (50, 25)
17380 40050130(390, 14), (370, 76), (330, 29), (300, 25), (260, 37), (180, 33), (130, 8), (110, 20), (70, 40), (50, 98)
18446 4005049(380, 87), (350, 99), (310, 37), (270, 1), (260, 44), (250, 62), (220, 21), (140, 58), (110, 14), (70, 23)
19387 40010025(340, 53), (310, 20), (300, 48), (290, 9), (270, 18), (250, 28), (240, 30), (230, 40), (130, 51), (120, 90)
20612 40010013(370, 63), (330, 86), (310, 92), (280, 57), (270, 51), (260, 76), (250, 96), (240, 15), (200, 8), (190, 68)
Table A2. The results of the simulation and comparison.
Table A2. The results of the simulation and comparison.
IDNew Bin Packing AlgorithmFirst-Fit Decreasing Algorithm
ContainersCutsCombsUsageUnused Space, [mm]ContainersCutsCombsUsageUnused Space, [mm]
12733931283.96% 21,900 2623971187.48%16,400
23404691087.81% 20,730 3214921093.00%11,230
34956161081.58% 45,590 4956161081.58%45,590
43244211186.94% 21,160 3234551087.21%20,660
53835151279.61% 39,050 3585491185.17%26,550
63404911288.43% 19,670 3404921288.43%19,670
74595811077.02% 52,730 4595811077.02%52,730
84255481191.54% 17,980 4135481094.20%11,980
92492741081.71% 22,770 2492741081.71%22,770
103114231393.59% 9970 3074771594.81%7970
113664931086.14% 30,440 3664931086.14%30,440
124264411183.84% 41,300 4264411183.84%41,300
134605291182.95% 47,040 4605291182.95%47,040
142954311488.81% 19,800 2904711290.34%16,800
152954381186.07% 24,650 2734721393.01%11,450
161773001788.21% 8350 1763511188.71%7950
172123091490.98% 7650 2043311194.54%4450
183523891186.85% 18,520 3514021087.09%18,120
192673691181.39% 19,880 2553691185.22%15,080
20501535976.71% 46,680 5746081074.83%57,780
Table A3. Multicriteria analysis of the new bin packing algorithm and the First-Fit Decreasing algorithm.
Table A3. Multicriteria analysis of the new bin packing algorithm and the First-Fit Decreasing algorithm.
IDWeight Set 1Weight Set 2
Score
NBPA
Score FFDDiffScore
NBPA
Score FFDDiff
154.4355.92−1.5046.6447.46−0.82
254.8755.98−1.1148.4447.580.85
333.6433.640.0026.9126.910.00
447.7146.701.0141.1637.363.80
546.8348.46−1.6340.4239.271.15
655.4355.390.0451.1151.010.10
739.1739.170.0031.4031.400.00
852.9854.65−1.6747.0948.42−1.33
940.5040.500.0034.7334.730.00
1058.7355.882.8555.2448.916.33
1146.8546.850.0040.6940.690.00
1245.1745.170.0045.4645.460.00
1327.8427.840.0022.2822.280.00
1459.9259.300.6256.4753.063.41
1554.7155.11−0.4147.4945.002.49
1660.8958.272.6254.6246.737.89
1760.7861.32−0.5556.0954.221.88
1849.5649.460.1044.7643.521.25
1943.2644.99−1.7336.4737.86−1.39
2034.5526.198.3632.6721.2211.46
77 113
1 Weights: containers (25%), combinations (25%), cuts (25%), unused space (25%). 2 Weights: containers (20%), combinations (20%), cuts (40%), unused space (20%).

References

  1. Construction and Demolition Waste. Available online: https://environment.ec.europa.eu/topics/waste-and-recycling/construction-and-demolition-waste_en (accessed on 13 January 2025).
  2. Moschen-Schimek, J.; Kasper, T.; Huber-Humer, M. Critical Review of the Recovery Rates of Construction and Demolition Waste in the European Union—An Analysis of Influencing Factors in Selected EU Countries. Waste Manag. 2023, 167, 150–164. [Google Scholar] [CrossRef] [PubMed]
  3. Waste Statistics. Available online: https://ec.europa.eu/eurostat/statistics-explained/index.php?title=Waste_statistics (accessed on 20 January 2025).
  4. Distribution of Waste Generation in the United Kingdom in 2020, by Economic Activity. Available online: https://www.statista.com/statistics/1317719/waste-generation-split-uk-by-source/ (accessed on 20 January 2025).
  5. U.S. Industrial Waste Production in 2011, by Sector. Available online: https://www.statista.com/statistics/249121/breakdown-of-the-us-industrial-waste-market-by-sector/ (accessed on 20 January 2025).
  6. Construction Producer Price and Construction Cost Indices Overview. Available online: https://ec.europa.eu/eurostat/statistics-explained/index.php?title=Construction_producer_price_and_construction_cost_indices_overview (accessed on 13 January 2025).
  7. Construction Building Materials: Commentary, March 2024. Available online: https://www.gov.uk/government/statistics/building-materials-and-components-statistics-march-2024/construction-building-materials-commentary-march-2024 (accessed on 13 January 2025).
  8. Building Materials Price Growth Plummets in 2023. Available online: https://www.nahb.org/blog/2024/01/building-materials-prices-plummet-in-2023 (accessed on 13 January 2025).
  9. Olsson, J.A.; Hafez, H.; Miller, S.A.; Scrivener, K.L. Greenhouse Gas Emissions and Decarbonization Potential of Global Fired Clay Brick Production. Environ. Sci. Technol. 2025, 59, 1909–1920. [Google Scholar] [CrossRef] [PubMed]
  10. Popowicz, M.; Katzer, N.J.; Kettele, M.; Schöggl, J.-P.; Baumgartner, R.J. Digital technologies for life cycle assessment: A review and integrated combination framework. Int. J. Life Cycle Assess. 2024, 30, 405–428. [Google Scholar] [CrossRef]
  11. Banihashemi, S.; Meskin, S.; Sheikhkhoshkar, M.; Mohandes, S.R.; Hajirasouli, A.; LeNguyen, K. Circular Economy in Construction: The Digital Transformation Perspective. Clean. Eng. Technol. 2024, 18, 100715. [Google Scholar] [CrossRef]
  12. Akbari, S.; Sheikhkhoshkar, M.; Pour Rahimian, F.; El Haouzi, H.B.; Najafi, M.; Talebi, S. Sustainability and Building Information Modelling: Integration, Research Gaps, and Future Directions. Autom. Constr. 2024, 163, 105420. [Google Scholar] [CrossRef]
  13. Liu, Y.; Alias, A.H.; Haron, N.A.; Bakar, N.A.; Wang, H. Robotics in the Construction Sector: Trends, Advances, and Challenges. J. Intell. Robot. Syst. 2024, 110, 72. [Google Scholar] [CrossRef]
  14. Sawhney, A.; Riley, M.; Irizarry, J. Construction 4.0: An Innovation Platform for the Built Environment, 1st ed.; Routledge: New York, NY, USA, 2020. [Google Scholar]
  15. Bock, T.; Linner, T. Construction Robots: Elementary Technologies and Single-Task Construction Robots, 1st ed.; Cambridge University Press: New York, NY, USA, 2017. [Google Scholar]
  16. Liu, Y.; Belousov, B.; Schneider, T.; Harsono, K.; Cheng, T.-W.; Shih, S.-G.; Tessmann, O.; Peters, J. Advancing Sustainable Construction: Discrete Modular Systems & Robotic Assembly. Sustainability 2024, 16, 6678. [Google Scholar] [CrossRef]
  17. Porotherm Products. Available online: https://porothermuk.co.uk/products/ (accessed on 31 March 2025).
  18. Cavity Best Practice Guide. Available online: https://www.wienerberger.co.uk/content/dam/wienerberger/united-kingdom/marketing/documents-magazines/brochures/UK_MKT_DOC_POR_Porotherm_Cavity_Best_Practice_Guide.pdf (accessed on 31 March 2025).
  19. Usmanov, V.; Illetško, J.; Šulc, R. Digital Plan of Brickwork Layout for Robotic Bricklaying Technology. Sustainability 2021, 13, 3905. [Google Scholar] [CrossRef]
  20. Borges, Y.G.F.; Schouery, R.C.S.; Miyazawa, F.K. Mathematical Models and Exact Algorithms for the Colored Bin Packing Problem. Comput. Oper. Res. 2024, 164, 106527. [Google Scholar] [CrossRef]
  21. Fleszar, K. A MILP Model and Two Heuristics for the Bin Packing Problem with Conflicts and Item Fragmentation. Eur. J. Oper. Res. 2022, 303, 37–53. [Google Scholar] [CrossRef]
  22. Coffman, E.G., Jr.; Csirik, J.; Galambos, G.; Martello, S.; Vigo, D. Bin Packing Approximation Algorithms: Survey and Classification. In Pardalos Handbook of Combinatorial Optimization; Pardalos, P., Du, D.Z., Graham, R., Eds.; Springer: New York, NY, 2021; pp. 455–531. [Google Scholar]
  23. Ekici, A. Bin Packing Problem with Conflicts and Item Fragmentation. Comput. Oper. Res. 2021, 126, 105113. [Google Scholar] [CrossRef]
  24. Zhang, Z.; Yin, F.; Huang, H.; Huang, G.; Cui, C. An Industrial Robot-Based Sawing Method for Natural Stone Sculpture. J. Comput. Des. Eng. 2024, 11, 75–85. [Google Scholar] [CrossRef]
  25. Li, M.; Wang, Z.; Fierro, G.; Man, C.; So, P.; Leung, K. Developing an Automatic Integration Approach to Generate Brick Model from Imperfect Building Information Modelling. J. Build. Eng. 2024, 97, 110697. [Google Scholar] [CrossRef]
  26. IFC 4.3.2.0 (IFC4X3_ADD2) Official. Available online: https://standards.buildingsmart.org/IFC/RELEASE/IFC4_3/ (accessed on 27 February 2025).
  27. Borges, Y.; de Lima, V.; Miyazawa, F.; Pedrosa, L.; de Queiroz, T.; Schouery, R. Algorithms for the Bin Packing Problem with Scenarios. J. Comb. Optim. 2024, 48, 34. [Google Scholar] [CrossRef]
  28. Quesada, J.; Gil-Gala, F.; Durasevic, M.; Sierra, M.; Varela, R. Evolutionary Algorithms for Bin Packing Problem with Maximum Lateness and Waste Minimization. In University of Oviedo; Vicente, J., Calvo, M., Adeli, H., Eds.; Springer: Cham, Switzerland, 2024; Volume 14675. [Google Scholar] [CrossRef]
  29. Jena, S.; Subramani, K.; Velasquez, A. A Differential Approach for Several NP-Hard Optimization Problems. In West Virginia University; Barneva, R., Brimkov, V., Gentile, C., Pacchiano, A., Eds.; Springer: Cham, Switzerland, 2024; Volume 14494. [Google Scholar] [CrossRef]
  30. da Silva, R.; Borges, Y.; Schouery, R. Fast Neighborhood Search Heuristics for the Colored Bin Packing Problem. Ann. Oper. Res. 2024, 343, 125–152. [Google Scholar] [CrossRef]
  31. Mommessin, C.; Erlebach, T.; Shakhlevich, N. Classification and Evaluation of the Algorithms for Vector Bin Packing. Comput. Oper. Res. 2025, 173, 106860. [Google Scholar] [CrossRef]
  32. Martello, S.; Toth, P. Knapsack Problems: Algorithms and Computer Implementations; Wiley-Interscience Series in Discrete Mathematics and Optimization; J. Wiley & Sons: Chichester, UK; New York, NY, USA, 1990. [Google Scholar]
  33. Vázquez-Aguirre, J.; Carmona-Arroyo, G.; Quiroz-Castellanos, M.; Cruz-Ramírez, N. Causal Analysis to Explain the Performance of Algorithms: A Case Study for the Bin Packing Problem. Math. Comput. Appl. 2024, 29, 73. [Google Scholar] [CrossRef]
  34. PHP Documentation. Available online: https://www.php.net/download-docs.php (accessed on 25 February 2025).
  35. Math Library for PHP. Available online: https://github.com/markrogoyski/math-php (accessed on 25 February 2025).
  36. Optimization Algorithm for Cutting Masonry with Robotic Saw. Available online: https://github.com/UsmanovSla/NewBinPackingAlgorithm (accessed on 26 February 2025).
  37. 400 CCE H47 Band Saw. Available online: https://www.eurotsc.com/en/products/400-cce-h47-band-saw/ (accessed on 20 February 2025).
  38. Al, B.; Alkan, M. Compositions of Integers And Fibonacci Numbers. Communications Faculty of Sciences University Of Ankara-Series A1. Math. Stat. 2024, 73, 178–191. [Google Scholar] [CrossRef]
  39. Sgall, J. Online Bin Packing: Old Algorithms and New Results. In Language, Life, Limits; Beckmann, A., Csuhaj-Varjú, E., Meer, K., Eds.; Lecture Notes in Computer Science; Springer International Publishing: Cham, Switzerland, 2014; Volume 8493. [Google Scholar] [CrossRef]
  40. Test Quality of Bin-Packing Algorithms. Available online: https://github.com/tahoe01/Bin-Packing (accessed on 25 February 2025).
  41. New Bin Packing Algorithm for Robotic Saw. Available online: http://www.robostav.cz/new-bin-packing-algorithm-on-line (accessed on 28 February 2025).
Figure 1. Flow chart of the mathematical model for the optimal design of masonry cuts.
Figure 1. Flow chart of the mathematical model for the optimal design of masonry cuts.
Applsci 15 04015 g001
Figure 2. Digital 3D model of load-bearing and non-load-bearing masonry.
Figure 2. Digital 3D model of load-bearing and non-load-bearing masonry.
Applsci 15 04015 g002
Figure 3. Functional prototype of the robotic saw.
Figure 3. Functional prototype of the robotic saw.
Applsci 15 04015 g003
Figure 4. Algorithm dependence of time consumption on random selection parameter e .
Figure 4. Algorithm dependence of time consumption on random selection parameter e .
Applsci 15 04015 g004
Figure 5. Dependence of the number of cuts and optimal container configurations on random selection parameter e .
Figure 5. Dependence of the number of cuts and optimal container configurations on random selection parameter e .
Applsci 15 04015 g005
Table 1. Comparison of the time and accuracy of the algorithm for different parameters e .
Table 1. Comparison of the time and accuracy of the algorithm for different parameters e .
eNumber of ContainersNumber of GroupsNumber of CutsUnused Space, [mm]Time, [s]Total Usage, [%]
15045016,5000.00307634.000%
22684945000.00228765.385%
32194820000.00318680.952%
41994210000.00680489.474%
51984010000.02386789.474%
6186385000.07741294.444%
7186385000.21418894.444%
8186385000.53064294.444%
9186385001.13599494.444%
10186385002.12888694.444%
11185385003.85618194.444%
12185385006.59628494.444%
131853850010.12313894.444%
141853850016.27485394.444%
151853850026.31543294.444%
161853850031.70944594.444%
171853850044.16931694.444%
181853850070.86778494.444%
191853850092.81026894.444%
2018538500124.55254394.444%
Table 2. Optimal masonry cutting for parameter e = 11 .
Table 2. Optimal masonry cutting for parameter e = 11 .
Iteration Combination Number of Cuts Used Part, [mm] Unused Snippet, [mm] Container Usage, [%] Time, [s]
1300 + 15024505090%0.287428
2250 + 150 + 10025000100%0.246005
3300 + 100 + 10025000100%0.269982
4300 + 100 + 10025000100%0.264411
5250 + 150 + 10025000100%0.254247
6250 + 150 + 10025000100%0.265522
7300 + 100 + 10025000100%0.255779
8250 + 150 + 10025000100%0.260728
9300 + 100 + 10025000100%0.266978
10300 + 100 + 10025000100%0.258111
11250 + 150 + 10025000100%0.276104
12300 + 100 + 10025000100%0.259949
13300 + 100 + 10025000100%0.257400
14300 + 15024505090%0.257507
15300 + 15024505090%0.141309
16150 + 150 + 15034505090%0.033435
17150 + 150 + 15034505090%0.000960
18150 + 100225025050%0.000041
w = 18Combinations: 538850050094.444%3.856181
Table 3. Comparison of the efficiency of developed algorithm with other packing algorithms.
Table 3. Comparison of the efficiency of developed algorithm with other packing algorithms.
ParametersNew Bin Packing
Algorithm
Next-Fit
Decreasing
First-Fit DecreasingWorst-Fit DecreasingBest-Fit
Decreasing
Total usage, [%]94.44%77.27%89.474%89.474%89.474%
Number of containers, [-]1822191919
Number of cuts, [-]3844434444
Unused space, [mm]5002500100010001000
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Usmanov, V.; Kovářík, M.; Šulc, R.; Jarský, Č. Optimization Algorithm for Cutting Masonry with a Robotic Saw. Appl. Sci. 2025, 15, 4015. https://doi.org/10.3390/app15074015

AMA Style

Usmanov V, Kovářík M, Šulc R, Jarský Č. Optimization Algorithm for Cutting Masonry with a Robotic Saw. Applied Sciences. 2025; 15(7):4015. https://doi.org/10.3390/app15074015

Chicago/Turabian Style

Usmanov, Vjačeslav, Michal Kovářík, Rostislav Šulc, and Čeněk Jarský. 2025. "Optimization Algorithm for Cutting Masonry with a Robotic Saw" Applied Sciences 15, no. 7: 4015. https://doi.org/10.3390/app15074015

APA Style

Usmanov, V., Kovářík, M., Šulc, R., & Jarský, Č. (2025). Optimization Algorithm for Cutting Masonry with a Robotic Saw. Applied Sciences, 15(7), 4015. https://doi.org/10.3390/app15074015

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop