1. Introduction
Unmanned Aerial Vehicles (UAVs) have significantly transformed various industries by providing productive solutions for data collection, inspection, and monitoring [
1,
2,
3]. Their ability to navigate complex environments with minimum operator involvement has resulted in widespread adoption of them in agriculture [
4], surveying, disaster response [
5], and infrastructure inspection [
6]. While UAVs have been widely used in outdoor applications, their potential in indoor environments, particularly in the construction industry, has attracted growing attention [
7] due to the need for precise and efficient monitoring of construction progress [
8], safety assessments [
9], and resource management [
10].
Despite their advantages, most drones are still operated by humans, making them susceptible to mistakes, labor-intensive, and less effective in complex settings [
11]. Relying on manual navigation restricts the potential to fully utilize the capabilities of UAVs, as operators may struggle with line-of-sight constraints, real-time decision-making, and optimal route planning in congested spaces [
12]. The main obstacle in employing drones for indoor applications is the requirement for developing an automated 3D path planning system that could efficiently navigate through dynamic construction sites [
13]. In contrast to outdoor path planning, where GPS-based navigation works well, indoor environments necessitate more sophisticated localization and mapping methods to guarantee accurate and obstacle-free drone navigation [
14].
Traditional approaches mainly concentrate on predefined environments with well-established spatial boundaries for drone path finding. These approaches often include creating space graphs, utilizing point-cloud navigation, or implementing grid-based methods to determine optimal paths [
15]. However, these boundaries are constantly changing throughout the construction process, making conventional methods less effective. Dynamic obstacles such as scaffolding, temporary structures, and shifting materials create an ever-changing environment that complicates traditional path planning algorithms [
16].
Building information modeling (BIM) is reshaping the landscape of architecture, engineering, and construction with a new paradigm for project design and management, offering comprehensive digital representations of buildings [
17]. BIM provides rich geometric, semantic, and topological data that can enhance drone path planning by offering precise spatial information [
18]. It allows for integrating material properties, construction schedules, and spatial relationships, enabling a holistic view of the building process [
19]. However, most previous research has focused on BIM-based path planning in entirely constructed environments, overlooking the dynamic nature of construction sites and the need for continuous updates in navigational data [
20].
To address this gap, this study proposes an innovative framework integrating 4D BIM with voxel-based navigation models to facilitate automated 3D indoor UAV path planning during construction. This approach ensures real-time adaptability to construction progress by incorporating temporal data into voxel models, enabling UAVs to navigate in partially built structures efficiently. The proposed methodology maintains a strong connection between the BIM model and the path finding environment, ensuring minimal information loss during data transformation. Additionally, it allows for the dynamic adjustment of navigation routes in response to site changes, thereby improving drone efficiency and operational safety.
This research demonstrates how a 4D voxel-based approach can optimize drone navigation by considering dynamic construction timelines, safety constraints, and workspace requirements. Integrating time-dependent data into navigation models enables UAVs to make informed decisions regarding their flight paths, avoiding hazards while maximizing efficiency. The results indicate that this framework effectively determines optimal flight paths, updates navigation routes in response to project changes, and enhances the overall efficiency of UAV deployment in construction environments. Furthermore, accounting for real-time changes in construction conditions reduces the risk of collisions and improves UAV autonomy.
This paper is structured as follows.
Section 2 provides a review of the relevant literature, including the application of UAVs in construction projects (
Section 2.1), existing path planning approaches (
Section 2.2), and BIM-based UAV navigation (
Section 2.3). The section concludes by identifying key research gaps.
Section 3 outlines the research methodology, which is developed around the proposed framework. This framework comprises three main components: the voxelization process (
Section 3.1), voxel model creation (
Section 3.2), and voxel map generation and enrichment (
Section 3.3).
Section 4 presents the validation of the framework through its application to two real construction project models under varying site conditions. The results of this validation are analyzed and discussed in
Section 5. Finally,
Section 6 concludes this paper by summarizing the objectives, findings, and limitations of this study and by suggesting potential directions for future research.
3. Method
This section describes the detailed methodology of the proposed framework. The proposed framework is presented in
Figure 3. The path planning consists of (1) voxelization, (2) voxel map enrichment, (3) voxel map modification considering site conditions, and (4) path finding, which are detailed in
Section 3.1,
Section 3.2,
Section 3.3 and
Section 3.4, respectively.
The primary objective of this research is to create a voxel map that can be used for path planning at various stages of the project, considering different scenarios of construction site circumstances, without requiring voxelization of the BIM model each time. To do this, an enriched voxel map is defined as a connection with each BIM model element using ElementIDs of the BIM model elements that intersect with voxel model cubes.
3.1. Voxelization
The proposed method divides the 3D model into non-overlapping voxels of fixed size, as shown in
Figure 4. Each voxel represents the situation of a cubic space in terms of whether it is available for flying in. Two requirements for creating a voxel model are defining the navigable space boundary and determining the number of voxels in each direction, which are detailed in
Section 3.1.1 and
Section 3.1.2.
3.1.1. Navigable Space Boundary
The navigable space could be defined using the project’s bounding box, which is a 3D invisible rectangular that encloses entire project’s model elements, including their geometries in the 3D space. If the project bounding box is not determined precisely or is in use for other purposes, there should be another way to determine navigable space. This space could be retrieved using the minimum and maximum coordinates of the project elements. After collecting all the elements, the bounding boxes of the elements are extracted, and the minimum
and maximum
coordinates of each bounding box are collected in two separate lists, called the ‘minimum list’ and the ‘maximum list’. The minimum coordination of the minimum list and the maximum coordination of the maximum list are the minimum and maximum coordination of the search space. The pseudo-code for determining the space boundary is represented in Algorithm 1.
| Algorithm 1: DETERMINING SEARCH SPACE BOUNDARY |
INPUT: 3D BIM MODEL OUTPUT: THE NAVIGABLE SEARCH SPACE COORDINATION |
| 1 | Collect all the elements |
| | Let ref be the collection of all elements in the project document doc. |
| | Let min_coords be the list of minimum coordinates of bounding boxes |
| | Let max_coords be the list of maximum coordinates of bounding boxes |
| | Let elements_list be the Filter of ref to include only element instances from the project (excluding element types). |
| 2 | Extracting the bounding box of elements |
| | For each element in elements_list: |
| | Let BB be the bounding box of elements. |
| 3 | Extract the minimum and maximum coordinates of bounding boxes |
| | Save the Min of the bounding box (lower-left-rear corner of the box) in min_coords |
| | Save the Max of the bounding box (upper-right-front corner of the box) in max_coords |
| 4 | Determine search space coordinates |
| | Select the minimum of the min_coords list the minimum coordination of navigable search space. |
| | Select the maximum of the max_coords list as the maximum coordination of navigable search space. |
3.1.2. Number of Voxels in Each Direction
Using the boundary search space, the limitations of voxel model coordination are determined as shown in Equation (1).
where
,
and
are the coordination of the voxel’s center along axes
X,
Y and
Z.
Based on the voxel size (
S) and the search space boundary dimensions, the number of voxels (
N) along the axes are shown in Equation (2), which are the dimensions of the matrix
M.
where
,
,
are the number of voxels along axes
,
and
.
3.1.3. Voxel Model Creation
The voxel model cube’s center is presented in Equation (3). Considering the voxel size (S), a cube with dimension equal to voxel size is placed in each coordinate according to the relations defined in Equations (3) and (4). The intersection between the solid geometry of elements in the BIM model and the placed cube is checked using
ElementIntersectsElementFilter. If there is any intersection, the cube is omitted from the voxel model, and if not, the cube is stored. The process is repeated for the next coordinate until all coordinates reach the project’s bounding box boundary.
where
i,
j, and
k are ∈
Z and
3.2. Voxel Map
This research proposed a 3D matrix (
M) as a connection between the BIM and voxel models. This matrix represents a voxel model, so first, based on the created voxel model that is described in
Section 2.2, a voxel map is generated, which is detailed in
Section 3.2.1. For establishing a relation between this voxel map and the BIM model, the voxel map should be enriched, which is detailed in
Section 3.2.2.
3.2.1. Voxel Map Definition
The matrix dimensions represent the number of voxels in each direction of the search space. The matrix dimensions are, respectively, equal to
,
and
. The relationship between the voxel model’s cube center and the index of the voxel map matrix is equal to Equation (5). Moreover, the relationships between the index
of the matrix
M and any location in the project
, which shows the cube number in the voxel model in that direction, are as follows:
where the ‘
min’ function returns the minimum integer of the value.
3.2.2. Voxel Map Enrichment
The matrix M represents the voxel model in a 3D matrix shape, so each item of the matrix should represent a cube in the voxel model. On the other hand, the type of data stored in the matrix should help maintain the relationship between the BIM model and the voxel model. Unlike previous studies that filled the matrix with ‘zero’ and ‘one’, which isa representation of situations like obstacles and free passes, in this research the matrix items are defined as a list of integers that are Element IDs of those model elements, which have an intersection with the placed cube of the voxel model in that 3D coordination.
For each cube stored from
Section 3.1.3, the output of
ElementIntersectsElementFilter, which is the list of
ElementIds of BIM model elements that have an intersection with the cube, is stored as a list in the defined matrix as
M (i, j, k). This procedure will create a matrix as a voxel map with an implicit connection to the original BIM model using
ElementIds of the BIM model’s entities, which will help retrieve any information from the original BIM model. The pseudocode for creating the voxel model and voxel map is shown in Algorithm 2.
| Algorithm 2: VOXEL MODEL AND VOXEL MAP GENERATION |
INPUT: 3D BIM MODEL, VOXEL SIZE(S) OUTPUT: VOXEL MAP (VOXEL MODEL AND VOXEL MATRIX) |
| 1 | |
| 2 | Parse the BIM model and determine the search space bounding box (BB). |
| 3 | Create a cube according to voxel size(S) |
| 4 | Create matrix(M) according to Equation (2). |
| 5 | Let elements_list be the Filter of ref to include only element instances from the project (excluding element types). |
| | Extracting the bounding box of elements |
| 6 | For i in range (0, Nx,v): |
| 7 | | For j in range (0, Ny,v): |
| 8 | | | For k in range (0, Nz,v): |
| 9 | | | | Place the cube according to Equation (4). |
| 10 | | | | Find intersected elements with the cube using ElementIntersectElementFilter |
| 11 | | | | If there is an intersection: |
| | | | | | keep the cube in the voxel model |
| 12 | | | | | Store element IDs of intersected elements as a list in M (i, j, k) |
| 13 | | | | If there is no intersection: |
| 14 | | | | | M (i, j, k) = 0 |
| 15 | | | | | Delete the cube |
3.3. Considering Site Condition in Voxel Map
Flying during the construction phase is different from flying during the operational phase. Certain conditions must be considered when flying within a construction site. To include these conditions in path planning, a matrix is first created based on the flight data. Then, different scenarios are applied as additional filters to this matrix, producing a modified voxel model that reflects the specific conditions of each scenario. This procedure avoids voxelizing the BIM model for each scenario, which was one of the weaknesses of the previous research.
3.3.1. Construction Timestamp
During the construction phase, certain elements are built according to a schedule. To find the optimal path before these elements are constructed, the corresponding cubes in the voxel model should be removed. The 4D BIM model needs to be voxelized using the same method as before (
Figure 5), which can be a time-consuming process. Then, based on the created voxel model, path finding should be executed.
In the proposed framework based on the timeline, all elements’ data is extracted, and a modified voxel map is created using the enriched voxel map, as indicated in
Figure 6. This process eliminates the requirement for voxelization of the model for each path planning request. To consider the construction time, each item on the enriched voxel map matrix has been investigated based on the flying date. For each item of the matrix with a list of element IDs, the start and end dates of the element are retrieved from the BIM model. Possible situations are as follows:
- 1.
If all the elements in the list have a start date after the flying date, it means that the related space is empty at that time and could be a part of the flying path.
- 2.
If even one of the elements has a start date before the flying date, the related space will be considered occupied and cannot be part of the flying path.
3.3.2. Workspaces
To accommodate workers’ spatial requirements, two additional filters will be incorporated into the voxel map. The first filter identifies elements whose construction period overlaps with the flying date, i.e., elements with a start date preceding and an end date following the flying date. For these elements, the associated predefined workspace bounding boxes are extracted from the BIM model. After converting to the matrix indices using Equation (2), the situation of the mentioned indices will change to occupied, as illustrated in
Figure 7. Moreover, as a second filter, the modified voxel map matrix will retrieve and filter other workspaces that are not connected to any specific element but occurred between flying dates.
3.3.3. Safety Distance
The proposed voxel model algorithm voxelizes the pure geometry of the model, so safety issues additionally need to be considered in the voxel map. The safety distance can be separated into general and special safety distances. The general safety distance is the distance between the drone and all the elements of the project to ensure a secure flight. According to Freimuth & König [
70], the minimum safety distance to construction project elements should be 35 cm. However, the special safety distance depends on the project’s elements. To compensate for additional safety concerns for elements like components with fragile materials (like glass) or pipes with harmful fluids, a special safety distance must be considered, which could be customized by users. Song et al. [
71] considered a safety factor equal to 1.5 for fragile elements. Standards require that uncertainties be considered when determining protective clearances (ISO 12100) [
72]. In engineering practice, non-critical design safety factors typically range from 1.5 to 2.0, and building codes commonly use 1.5 as a conventional minimum (IBC/ASCE) [
73]. Therefore, we consider a conservative multiplier of 1.5–2.0 to the measured worst-case UAV positioning when defining exclusion zones for operations near fragile elements, which results in a 52.5–70 cm safety distance. For general safety distance, based on the predefined distance, the number of required voxels around all the voxels in the voxel model is calculated using Equation (6):
Based on the N
D, around each item in the voxel map matrix, if it is zero, the N
D item will change to one. However, for special equipment, N
D will be calculated according to the required distance data extracted from the BIM model.
Figure 8 represents the voxels related to walls (a), general safety cubes (b), and special safety cubes (c) related to windows as an element with fragile material that requires more safety distance.
3.4. Path Planning
Finding the path using the modified voxel map could have two scenarios: The first uses one start position and goal position, which requires a single path. On the other hand, finding the optimum path between multiple targets requires both prioritizing them and finding the optimum path between each pair of them.
3.4.1. Single Path (A*)
The A* algorithm has been adopted to search paths. The evaluation function is as shown in Equation (7):
where g(v) represents the cost of the path from the current voxel (v) to the start point. h(v) represents the Euclidean distance between current voxel (v) and the target voxel (t), which is shown in the formula below:
where
is the distance from current voxel (v) and the target voxel (t) in the X direction;
is the distance from current voxel (v) and the target voxel (t) in the Y direction;
is the distance from current voxel (v) and the target voxel (t) in the Z direction;
are calculated using Equation (5) for voxel v.
According to the special relationship between voxels, as shown in
Figure 9, the cost of each transmission between voxels is calculated using Equation (9):
3.4.2. Multi-Target Path (ACO + A*)
Finding a path between multiple targets, calculating the path costs between each pair of targets, and then considering all the possible paths that cover all the targets is a time-consuming process. Ramirez-Atencia et al. [
74] and Bui et al. [
75] proposed algorithms like GA, ACO, and so on to optimize the calculation path for multiple targets. In this research, the ACO algorithm has been used for several reasons. The ACO, a member of the swarm intelligence family, utilizes probability and is a successful approach in addressing the TSP problem. This algorithm draws inspiration from nature and has been validated through experimental studies. In tackling issues involving 50-, 75-, and 100-city scenarios, ACO has outperformed various metaheuristic methods such as genetic algorithms, evolutionary programming, and simulated annealing. Additionally, it produces the most optimal route. Unlike the GA algorithm, which proposes a complete genome and then calculates the cost of the genome, in ACO, the path is created step by step, considering the distances between each pair of positions. Equation (10) represents the standard transition probability formula for the ACO, and the ACO parameters are listed in
Table 1. In this work, we fixed the ACO hyperparameters. These values were chosen to remain consistent with ranges commonly reported in the literature while avoiding the confounding effects of parameter re-tuning across experiments. For example, Hamledari et al. [
76] applied ACO to UAV path planning with a pheromone weight of 1.2 and heuristic weight of 1 within their test, while the study by Banerjee and Modal [
77] used an ant colony size of 50 ants with an evaporation rate of 0.05, demonstrating the acceptability of an evaporation rate between 0.05 and 0.1. Taken together, these references establish that our chosen settings lie well within typical practice, and fixing them across all trials isolates the effect of algorithmic modifications rather than parameter variations.
where
is the probability that ant k moves from node i to node j at time t.
is the pheromone intensity on edge (i, j) at time t.
is the heuristic value (usually inverse of distance ).
α is a parameter controlling the influence of the pheromone trail.
β is a parameter controlling the influence of the heuristic value.
is a set of feasible nodes that ant k can visit from node i.
Table 1.
ACO hyperparameters.
Table 1.
ACO hyperparameters.
| Parameter | Value |
|---|
| pheromone exponential weight | 1.2 |
| Heuristic exponential weight | 1 |
| pheromone deposit coefficient | 1 |
| evaporation rate | 0.05 |
| initial pheromone | 1 |
| Number of ants (population size) | 50 |
| Maximum number of iterations | 150 |
5. Discussion
This study provides several theoretical contributions to the body of knowledge in computational design and construction informatics. First, this work frames voxelization as more than a data processing step, positioning it as a conceptual model representation strategy that links geometric complexity with analysis-ready discretization. This advances theoretical understanding of how building information models can be abstracted for algorithmic reasoning. Second, the results demonstrate that efficiency in digital workflows should not be interpreted solely in terms of computational speed, but also through the elimination of redundant operations, such as repetitive voxelization. This contributes to theory by reframing efficiency as a property of process design rather than isolated task execution.
Semantic enrichment of the voxel model using BIM model data can improve the navigation of the drones. Previous BIM-based models had limitations for indoor navigation in the 3D environment and in different timestamps of the construction projects. This weakness impedes their application in activities like progress monitoring and quality inspection. Therefore, in this research, based on the existing research, a framework is proposed for applying the voxelization method to BIM models while keeping the relationship between voxels and BIM model entities. This helps to transfer BIM models’ data to the voxel model and apply it to voxels, considering the real-time situation of the project immediately, which was neglected in previous research, where a new voxel model had to be built each time. After applying the proposed framework to two real projects’ BIM models, the following results were obtained:
Some target positions may be unreachable due to intersection with model entities or being too close to the entities. Implementing A* on these positions leads to an endless loop, as no point can satisfy the A* ending condition. The proposed framework executes an initial filter to check the condition of the target positions by placing the cube’s center, which is two times bigger than the voxel size, in those positions and checking the intersection with model elements. This proves that there is at least a one-voxel-size distance between each target point and model elements, so the A* algorithm never falls into an endless loop.
Traditional path planning approaches mainly focus on the maintenance phase and neglect construction timestamps. This research proposed a framework for transferring the element’s construction time data from the BIM model to the voxel model. This makes the voxel model valuable for path planning in the indoor environment of construction projects. As the proposed framework works based on the predefined 4D model, the elements that were not considered in the 4D model like temporary storage or scaffolding may impede real execution of UAV flying. However, such elements could be considered in two manners. First, they could be modeled as a “temporary element” in the BIM model, with a start and end date like other elements, so that corresponding voxels will be added to the voxel model and considered in voxel map creation according to 4D model consideration in the path planning process of the proposed framework. Secondly another safety distance like “Scaffolding Distance” could be defined for each element in the projects as an attribute, and extra voxels required for them could be added, as has been performed with “special safety distance” in the proposed framework.
Safety distance is one of the most critical factors in path planning in indoor environments. While most of the research has focused on avoiding collision between the drone and the elements, there is a need for additional safety distance to reduce the risk of collision with construction elements. Moreover, fragile elements like curtain walls need more safety distance than others. The proposed framework considers both safety distances through the semantic enrichment of the voxel model. Two items, general safety distance and special safety distance, have been defined for this purpose. Several voxels have been placed around each model element, considering the general safety distance and the voxel size. Moreover, for each element in the BIM model with a special safety distance as an attribute, additional layers of voxels related to the specific element in the voxel model have been placed to occupy more space around the element and keep more distance in path planning.
As workspaces and no-fly zones like manager offices are not physical elements in the BIM model, there would not be any intersection with the placed voxels. So, an additional filter has been implemented for enriching the voxel model by transferring the coordinates of the defined workspaces in the BIM model to the voxel model coordinates and placing additional voxels in that space. This helps consider workspaces and avoid conflict between planned paths and workspaces.
Reaching multiple target goals requires an optimized path between each target, which is generally optimized among all the target goals. For this purpose, this research proposed an integration of ACO and A* for finding the shortest path to reach all the target positions. This results in the best-planned route in the project’s 3D environment.
6. Conclusions
This research is mainly focused on finding optimized flying paths for drones among multiple targets in the dynamic environment of construction projects, considering all the effective metrics. For this purpose, the first voxel model of the project is created using the BIM model. Then, an enriched voxel map is generated considering the voxel model and containing BIM model data. The required data, based on the flying time and the construction site situation, is extracted from the BIM model and implemented on the enriched voxel map as additional filters. At the end, a combination of ACO and A* is executed to find the optimized path in the voxel map.
This research encountered some limitations. First, current results reflect simulated scenarios, not yet real-time performance under real-world UAV operational conditions, which may reveal practical implementation issues. Although this research tried to omit the requirement for voxel model creation for each path planning purpose, another limitation of this study is that its focus was not on evaluating voxelization time; consequently, performance parameters such as computational efficiency and memory usage were not considered. As this aspect has also been overlooked in the prior literature, future research could address this gap by systematically assessing voxelization approaches (e.g., OBJ-based methods) in terms of processing time, memory consumption, and their broader advantages and disadvantages, while ensuring the fidelity of BIM model data is preserved.
The framework is validated on two building-type projects (residential and office), but its applicability to linear infrastructure like tunnels, bridges, or railways—characterized by elongated geometries and different spatial constraints—remains unexplored. Additionally, dynamic elements and temporary structures (e.g., scaffolding, cranes, or storage materials) can greatly affect UAV navigation. Future work could consider these scenarios and determine how they could be implemented on the enriched voxel map both in simulation and real-world projects.
Although this research tried to consider site conditions by considering elements’ construction time and workspaces for filtering path planning methods, air situations like wind or dust in the air were not considered. To address these factors, integrating real-time meteorological data from IoT sensors into the voxel map or using wind-resistant UAV dynamics models could be investigated in future research.
Moreover, future research could explore integrating voxel maps with space graphs in areas with existing structures to improve path finding efficiency. This study only treats workspaces as no-fly zones, but construction sites also have many moving machines. Subsequent studies could incorporate these machines and their movement paths into the analysis.