1. Introduction
Recent reports from the Federal Aviation Agency state that there will be an increase from 2.75 to 4.47 million small drones operating in the United States by 2021. Since the end of May 2017, more than 772,000 owners have already registered with the Federal Aviation Administration (FAA) [
1]. The main reason for the sudden increase in drone ownership is due to consumers purchasing drones for their high mobility and applications in the field of computer vision [
2]. Thus, a shift in vision related jobs (building inspection, traffic monitoring and temporary cellular coverage extension) slowly being taken over by drones to perform these tasks. This is because drones can provide the required perspective for jobs such as bird’s eye view. Additionally, by using machines to take pictures in hazardous areas, we can minimize the risk to human safety. However, there is still no proposal on the initial deployment of drones which do not include random placement. Furthermore, the cost of privately owning drones can be far too expensive for companies who may only require drones for a single task, in comparison to renting drones [
3]. In the case of a rental system, companies and users are not required to purchase a drone allowing the cost to be fairly distributed amongst them. Although the cost to rent can reduce the overall cost when compared to owning a drone. Typically, users must visit a rental center to collect the drone. Otherwise, the drone must fly from the shop to the task, reducing the total energy available for completing tasks. Therefore, to overcome these foreseen issues, an unmanned drone rental service that utilizes drones placed at distributed drone ports is necessary. By providing a public service that allows the rental of distributed autonomous drones waiting at drone ports, this can reduce the total number of drones in the sky and the total cost of utilizing drones to complete tasks requested by the user. Thus, we propose an algorithm that can be applied to a shared drone service to reduce the excessive utilization to increase the efficiency by intelligently placing drone ports in respect to the demand and limitations of drones.
1.1. Motivation for Distributed Drone Ports
In this paper, we assume that drones will return to the drone port and charge after each cycle since there are already companies creating landing pads, including Skysense (San Francisco, CA, USA) [
4]. We imagine that drones must land, take off and be stored at the base of the drone port to charge drones while they are not completing tasks in the air to remove the risk of users being injured by rotating blades and electrical components that charge the drone. Multiple charging pads can be distributed over an area to reduce the average distance drones must travel to recharge. By doing so, we believe the cost of operating a fleet of drones located at distributed drone ports will be less than the cost of operating a central drone port because miniature drones don’t require a large drone and can be located from small areas such as building tops to open fields closer to tasks. Finally, the introduction of drone ports will give future research a foundation to justify their initial placement of drones.
1.2. Related Work
This section encompasses the work done by researchers who look at the problem of optimally placing drones in the sky. However, from our research, we noticed that none of their work justified the reason for the initial and final location of drones in their work. Thus, we proposed an idea to justify further work’s reasoning of the initial and final location of drones. The authors in paper [
5] propose a discrete and continuous environment to determine the location of drones based on the users. However, they fail to consider where these drones will begin and end their mission. Related work in the field of deploying drones to provide coverage has been growing in interest. In Ref. [
6], authors proposed an optimal transport approach to minimize the energy consumption to gather data from moving clusters of IoT (Internet of Things) devices. Works related to a rental system outline the challenges of providing enough assets to satisfy the number of users in the area.
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].
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.
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
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 .
2.3. Objective
Drones are considered to be resourced constrained devices; therefore, it is important that our cost function puts an emphasis on maximizing the utility of a drone in one charge cycle, while ensuring that it can safely return back to the drone to charge. Thus, the objective function is to minimize the number of drone ports in a given area to serve as many tasks as possible. Then, we analyze the result by applying various traveling salesman algorithms to see which algorithm maximizes the number of tasks that can be completed subject to task delay and energy constraints.
2.4. Tasks
Tasks are generated by actual users or artificial intelligent agents that require data or images that can only be collected by drones due to the location or danger to human safety. Since we can assume that our tasks will be periodically requested, it is feasible to estimate an arrival rate based on factors around the area, such as population density. The tasks in terms of a facility location problem are known as the customers that must be served by some facility. In terms of drone demand, we can apply different degrees of energy requirements to complete a task. For example, a task may require v units of energy to perform a task, so, therefore, there must be v units of energy available in the drone’s battery to complete the task.
In
Figure 2, we illustrate that a drone can only land and take off at its own drone port, in the case of a single drone at a drone port.
2.5. Energy Consumption
We estimate the energy consumption to be the following:
The energy consumption is calculated by the measuring the distance the drone must travel multiplied by its energy consumption rate and the total energy required by its respective tasks. The approximate energy function is vital because it calculates the energy remaining in a drone and allows us to determine if the path generated is feasible. The energy level after a cycle is denoted as
. This energy level is calculated from the current energy state minus the task energy
and distance traveled
multiplied with an energy consumption constant
[
13]. Equation (
1) shows that the drone’s energy in the next cycle is its current energy minus the power requirements of the task and the distance traveled to complete those tasks and return to its station.
2.6. Facility Location Problem
The objective of an capacitated facility location is to minimize the distance between the tasks and central drone port. We use this technique in combination with a shortest route algorithm to ensure that the coverage size and the number of drones is suitable to satisfy all the tasks generated near the drone port. In our initial formulation, introduce variable , containing the co-ordinates of potential drone ports and tasks, respectively, where , …, n where if drone port i is built, and , otherwise. We can treat the drone port acts as a facility because it contains the service subject to the energy constraint, known as the supply.
2.7. Capital Expenditure
In respect to capital expenditure, our objective is to minimize the total monetary cost of building new infrastructure. In the below cost function, our goal is to reduce the total distance between the drone port
and tasks
. Since we are limited by the budget
F, it is impossible to build every potential drone port
i:
2.8. Operational Expenditure
In respect to operational expenditure, our objective is to maximize the number of jobs denoted as
the index of a job while satisfying constraints such as
delay for every job. Furthermore, each drone must return back to its drone port. Lastly, the path generated must not exceed the drone’s energy capacity denoted as the function
2.9. Drone Port Placement Algorithm
Algorithm 1 Facility Location Problem for Drones |
procedure Drone Port Placement and Shortest Route |
|
|
|
|
|
while do |
|
|
|
if then |
Break |
else |
|
return Drone Port location |
return Shortest Routes |
Algorithm 1 is an overview of our proposed algorithm to efficiently place drones in a distributed area. We develop a heuristic approach by implementing a clustering and traveling salesman problem ensemble to determine the feasibility our algorithm’s output data. We continue to increase the number of drone ports until each drone has enough energy to perform all of the tasks in its coverage.
2.10. Traveling Salesman Problem
After creating the clusters, we apply a shortest route algorithm to ensure that the drone can perform all of the tasks allocated to it while completing a round-trip back to its original drone port. It is denoted as the Traveling Salesman Problem (TSP) below.