*1.3. Challenges*

One challenge faced with proposing a rental system is the finite number of combinations possible between the number of drone ports, the location of drone ports and the association between tasks and drones located at drone ports. Thus, we require an efficient mixed integer problem approach to solve our facility location framework. To complement our facility location framework, we apply a subfield of machine learning, clustering, to quickly identify the most efficient central points as drone ports.

Using the original facility location framework to solve the problem is a complex procedure that does not guarantee an optimal solution because it only considers the average distance between the drone ports and facilities. We also need to find the round-trip path to ensure that the drone can complete all the tasks in its cluster.

Drones come in a variety of classes as outlined in Table 1. However, previous research shows, among the available class of drones, the outlook looks the most promising for mini drones. This is due to the fact that mini drones are expected to reach a level of autonomous control within the next five years that meets FAA requirements. Despite the current legal roadblocks imposed by the FAA, there is likely still going to be an increasing demand for mini drones in civilian. Mostly due to their small size compared with larger drones, mini drones have a much greater intrinsic safety rating [7]. Furthermore, the reason for choosing mini drones to complete tasks is due to their high mobility and much lower cost compared with larger drones. Academics are already working to implement vision systems to allow drones to land [8].


**Table 1.** The various class of drones available.

*1.4. Facility Location Problem*

The Facility Location problem consists of a set of potential drone port locations *L*. We use this set of potential drone locations to discretize our solution space. Secondly, there is also a set of task locations *D* that must be serviced, as seen in Figure 1. The objective is to pick a subset *l* of drone ports to open that minimizes the average distance between each customer and facility. The Uncapacitated Facility Location (UFLP) and Capacitated Facility Location (CFLP) constitute the basic discrete facility location formulation with an abundance of papers based on their extensions by relaxing one or more of the underlying assumptions. The current state-of-the-art algorithm for solving Facility Location problems is proposed by [9]. They provide a close approximation to the global optimum. We can apply the facility location problem formulation since a drone port is considered to be a facility with limited output and a task can be considered as a customer, with a required demand. However, because our problem is not related to delivery trucks, we must make some adjustments to the original problem to ensure that the drones can perform the task without running out of energy. For the situation where there is delay, a congested facility location problem can be applied to minimize the waiting times for customers [10]. Next, we apply the shortest path algorithm to confirm if a generated cluster of tasks can be served by the drone port facility. In Figure 1, we illustrate the decision-making process. The light shaded gray drone ports are the drone ports that were not constructed. Otherwise, the drone ports selected to optimally serve tasks based on information such the population density and task arrival rate. Each cell in Figure 1 represents the discrete space of potential drone port places.

**Figure 1.** An example of selecting drone ports based on a set of potential 'facility' locations.

#### *1.5. K-Means Clustering Algorithms*

Papers that utilize drones to provide coverage to a cluster of users such as [11] attempt to maximize the ground users' battery life by deploying drones in areas where existing macro base stations can not provide sufficient coverage. Their numerical analysis showed promising results due to the fact that their algorithm was able to position drones so that over 60% of users fell within a drone's coverage. However, they did not benchmark their algorithm with other clustering methods, therefore making it difficult to truly understand if their approach was any better than other methods including exhaustive search. One interesting point was their data was based on real Beijing downtown trajectory data. The authors who proposed a k-means stochastic approach gave promising results with a level of complexity *O*( 1*t*) under general conditions [12] with mini batches improving the speed of convergence even more.

#### **2. Materials and Methods**

We envision that multiple drone ports will be managed by a central controller that is responsible for assigning autonomous grounded drones waiting at a drone port to tasks located within the drones operational coverage, removing the need for users to privately own a drone. A drone port is designed to be a small designated take-off, landing and charging area for autonomous drones. Our method to solve this is based on a facility location problem. Furthermore, our tasks only include those related to computers, which just requires the drone to visit the task location, take a photo, and then return to the base or move on to the next task. The tasks considered in this paper assumed that the drone is capable of completing the digital task at the requested location without the need to adjust its path to deliver a physical object, such as a delivery service. We apply k-means to reduce the complexity by implementing a clusters subject to our framework based on the facility problem. Once the model is matured, it allows us to determine the optimal location to install drone ports based on task demand. Then, for additional tasks, we can immediately assign tasks to their respective drone port, thus reducing the computational time to optimally associate drone port and tasks. Lastly, we distributed the drone ports over an area to increase the average number of tasks a drone can complete in one charge compared to a centralized drone port approach. In this section, we explain our system model and justify our approach to solve the issue of placing drones efficiently in an area. Finding the optimal solution for a Facility location problem is NP-Hard, it is not therefore advisable to use an exhaustive method to determine the optimal number of drones. Our algorithm utilizes clustering to reduce the initial search space of possible paths, thus improving the efficiency of our algorithm while giving a near optimal route for drones. We also perform heuristic analysis to find the point at which each drone can complete all of its tasks assigned to it during the cluster phase.

## *2.1. Central Controller*

In our model, we consider a central controller that is responsible for a set of drone ports that each have one drone. By using a central controller, we can assume that information containing the drone state, drone port and task state is available. Therefore, giving a large advantage over a completely distributed systems since information is accessible in a single place and can be used to increase the co-operation between drones waiting at drone ports.

## *2.2. Drone Port*

We propose the idea of a drone port that is connected via existing infrastructure to a central controller then controls the drone and dispatches it to a job. Our model will consider a drone's initial position (x, y) at a drone port as well as the energy consumption *e* to fly to and from the task, and the energy consumed while completing a task, and the distance flown before it can perform a task *τ*.
