I Introduction
Recently, large companies and organizations such as Airbus,^{1}^{1}1https://www.airbus.com/innovation/zeroemission/urbanairmobility.html Thales,^{2}^{2}2https://www.thalesgroup.com/en/canada/pressrelease/futureairmobilityreliesthales and NASA^{3}^{3}3https://www.nasa.gov/aeroresearch/onewordchangeexpandsnasasvisionforfutureairspace initiated plans to transform personal mobility by introducing the concept of Urban Air Mobility (UAM) [1]. Urban Air Mobility includes piloted or autonomous electric multicopters, that are used instead of road vehicles to transport people within large cities. UAM advances the current mobility on demand (MoD) concept by adding a third dimension to the options of transportation infrastructure users have. The introduction of UAM is expected to dramatically change the transportation sector, and tackle the everincreasing traffic congestion problem that affects the quality of life of millions of people that reside in large cities.
Since UAM is still at its infancy, complicated decisionmaking procedures related to trip scheduling, such as assignment of vehicles to customers, placement of vehicles at specific nodes, the flight levels of the AVs, and the charging of the vehicles, remain unresolved. Optimizing the activities of UAM schemes demands algorithms that can efficiently solve problems that involve several heterogeneous entities (e.g., commuters, multicopter owners, multicopters), that have different goals and needs, operate in dynamic environments (e.g., traffic demands, variable weather conditions, variable consumption and charging characteristics, etc.) and handle uncertainties (e.g., travel requests, energy consumption, etc.).
A number of related research works exist under the general umbrella of urban air mobility. For example, Patterson et al. [2] study UAM schemes that carry passengers, focusing on defining a set of requirements for a number of different UAM examples. Additionally, Rothfeld et al. [3] propose an extension for the multiagent transport simulator MATSim that includes UAM and enables a systemwide analysis of an urban air transport scenario, while it considers different aspects such as variations in vertical takeoff and landing (VTOL) vehicle properties and the placement of the VTOL infrastructure. Aiming to tackle the crucial problem of multicopter flight level separation, Yang and Wei [4]
propose a decentralized messagebased computational guidance algorithm, formulating the problem as a multiagent Markov decision process and solving it with a Monte Carlo tree search algorithm. Focusing on the same problem, Rodionova et al.
[5] propose a decentralized framework that achieves airborne collision avoidance for multiple vehicles, ondemand. To achieve that, they use signal temporal logic and allow the AVs to execute independently missions that involve spatial, temporal, and reactive objectives. Moreover, the selection of the locations to build the takeoff and landing points is crucial in order to maximize the task execution ability of any UAM scheme. In this vein, Willey and Salmon [7]study this problem as a modified singleallocationhub median location problem that incorporates elements of subgraph isomorphism to create structured networks to allow for public transit operations. Given the NPhardness of the problem, the authors propose several heuristic algorithms that calculate nearoptimal solutions having relatively low execution times.
Additionally, Pradeep and Wei [6] focus on minimizing the landing completion time of a given set of electric VTOLs. This is optimized using a heuristic approach combined with two scheduling methods, the first one based on mixedinteger linear programming and the second one on a timeadvance algorithm. Further, Haddad et al. [8] focus on identifying the factors that could affect the adoption of UAM, based on a set of tools and acceptance models [9], concluding that safety and trust are of great importance for the adoption of UAM by the wider public. Finally, Afonso et al. [10] argue that in order for UAM to become a reality, significant progress on the fullyelectric propulsion systems needs to be made, and they propose a methodology to evaluate the environmental footprint of VTOL aircrafts for UAM.
This work investigates the assignment of multicopters to users in a UAM scheme, where the vehicles are located at stations and customers request trips across pairs of stations at particular points in time. The multicopters have a limited range which demands regular battery charging at the stations, while fly level separation is considered to avoid midair collisions. In this vein, an optimal offline solution is proposed. Further, given that this solution does not scale to problems with large numbers of AVs, trips, and stations, a nearoptimal scalable algorithm is also proposed that incrementally calculates a plan, one vehicle at a time.
These algorithms are inspired by [11] and [12], where the authors schedule electric vehicles to service customers in mobilityondemand schemes. Compared to these previous works, the novelty of this work lies in the following: (i) energy consumption is also considered, in relation to the flight level of the AVs, with the objective optimizing not only the number of serviced customers (number of executed tasks), but also the energy consumption of the entire fleet of AVs used in the UAM scheme; (ii) the flying level of the AVs is considered for collision avoidance as well as energy consumption minimization purposes, through the use of an edge intersection mechanism; (iii) the vehicles’ charging/discharging model is adapted to the UAM concept by considering not only the horizontal movement of the vehicles, but also the vertical one; and (iv) extensive simulation experiments are performed with regards to the number of serviced customers, energy consumption, AVs’ flight levels, and execution time, demonstrating the validity and scalability of the proposed approach.
The rest of the paper is organized as follows: Section II provides a formal definition of the problem. Section III calculates the set of intersecting edges for a graph embedded on a 2D surface. Section IV formulates the Optimal algorithm and Section V the Incremental one. In Section VI a detailed experimental evaluation of the algorithms is performed, while Section VII presents concluding remarks as well as future extensions of the proposed work.
Ii Problem Definition
For the UAM setting investigated in this work, customers communicate a priori their traffic demand requests (tasks) to fly between pairs of locations (i.e., takeoff/landing stations) at particular points in time. After all traffic demand requests have been collected, a scheduling algorithm is used to calculate an assignment of AVs to tasks. The aim of this algorithm is to calculate the optimal schedule so as to maximize the executed requests (i.e., executing all tasks may be infeasible due to insufficient resources), while also minimizing energy consumption (in terms of the AVs’ flight levels). In this work, it is assumed that all stations are operated by a single UAM company servicing all customers requests, and no competition between different providers exists. It is further assumed that the AVs are using an electric motor which provides them with a limited flying range, thus they have to charge their batteries at the takeoff/landing stations. Note also that oneway transport is assumed and that customers do not stop at inbetween locations during a trip (i.e., all customers are serviced via singlehop trips from source to destination).
Specifically, the flying space is defined as a fully connected graph with nodes being the takeoff/landing stations of the UAM scheme that accommodates a set of AVs (drones) . Each takeoff/landing station can simultaneously accommodate up to AVs and it is assumed that each station is equipped with AV chargers. Time is divided into a set of discrete points , where , and each AV has a current location which changes when the AV executes a task (i.e., vehicle relocation is not considered). At all AVs are at their initial location and the tasks’ execution initiates at . At each point in time , each AV has a current location except from the points in time that this AV is flying from one location to another. Moreover, at each point in time , each AV has an altitude where , a state of charge , and a remaining range . Energy consumption follows ; a fixed term which increases based on during the AV’s flight, i.e., depending on the flight level. The charging rate is fixed to .
Finally, the set of tasks is defined as and each task is denoted by tuple . The takeoff and landing stations of task are denoted as and , respectively, is the starting point in time for task , and is the point in time task should end its execution (i.e., is the duration of the task). It is assumed, that for a task to be executed, at least one AV must be located at at point in time (i.e., if a task is not executed at its predetermined time it is not rescheduled). The reader should also note that, in this work, the terms drone, multicopter, AV, and vehicle are used interchangeably.
Iii Finding Intersecting Edges
When designing the graph corresponding to the UAM region of operation, the nodes (station locations) are assumed to be points in a 2D Cartesian space and edges interconnect all graph nodes (i.e., a fully connected graph is assumed, with each edge from one node to another being drawn in a straight line following the shortest distance between the two nodes). In order to ensure drone collision avoidance, the edges that intersect (and constraint the drones from flying over these edges simultaneously at the same altitude) must be calculated. Algorithm 1 shown below is used to calculate the set of edges that intersect with edge , . In detail, for every edge , an empty set is initialized, and, for every other edge , it is examined whether it intersects with edge . To do so, a check is performed to ascertain whether the projections of these edges on the  and axis have a common area in both axes; in that case, edge is added to set , that will eventually include all edges that intersect with edge .
Iv Optimal Offline Scheduling
An offline algorithm is initially formulated as an ILP (referred to as Optimal) that calculates the optimal assignment of AVs to customers. Optimal maximizes the number of executed tasks, while at the same time it minimizes energy consumption for the AVs by enforcing flight levels at the lowest possible altitude (Eq. 1). Note that in Eq. 1, is a very small number that is selected so that the second part of the objective function never becomes greater than the first part. This ILP is solved using the IBM ILOG CPLEX 12.10 solver.
In this formulation, five () decision variables are utilized: (i) , which decides if a task is executed, (ii) , which decides if AV is executing task at point in time , (iii) , that decides if AV landed at time at location , (iv) , which decides the flight level of AV at time , and (v) , which decides if AV is recharging at time .
Objective function:
(1) 
Subject to:

Task execution constraints:
(2) 
(3) 
(4) 
(5) 
(6) 
The task execution constraints ensure that the tasks are properly executed. For each task executed, the AV must fly for the duration of the equivalent trip (Constraint 2), and the AV is not flying when it does not execute a task (Constraint 3). Additionally, at most one AV can execute a task (Constraints 4, 10). Constraint 5 ensures that in order for an AV to be charging, it must be located at one of the stations (i.e., it is not flying), and charging has a rate of . Note that the solver is selecting the points in time to charge considering that the task execution ability of the AV is not reduced. Moreover, Constraint 6 delimits the state of charge of each AV to always be between the range. Thus, no AV will execute a task for which the current state of charge is not enough to provide to the vehicle the necessary range for reaching its intended destination.

Temporal, spatial, and routing constraints:
(7) 
(8) 
(9) 
(10) 
(11) 
(12) 
(13) 
(14) 
(15) 
The temporal, spatial, and routing constraints ensure that the AVs are properly placed over time. In particular, Constraint 7 enforces all AVs to either be executing tasks or be located at a station. Moreover, together with Constraint 4 it ensures that at any point in time, each AV executes no more than one task. Further, Constraint 8 ensures that when an AV is not flying its flight level is equal to , and when it executes any task its flight level is greater than . Additionally, for each pair of tasks that involve trips over edges that intersect and overlap in time, the flight level of the AVs must be different to avoid midair collisions (Constraint 9). Also, Constraint 10 ensures that no location change for any AV takes place, without this AV executing a task (i.e., AVs cannot change locations if they are not servicing customers). Note that, although this constraint is quadratic due to the absolute value, it is linearized at run time by CPLEX.
Further, for an AV to execute a task , it must be present at the starting location of the task one point in time before the task execution initiates (Constraint 11) and at the destination of the task, once the trip has been completed (Constraint 12). In doing so, the capacity of every station is not violated at any point in time (Constraint 15). Finally, at time all AVs are not flying and are present at their initial locations (Constraint 13.
V Incremental ILP Scheduling Algorithm
It is well known that ILP problems are NPhard in the worst case [14]. Floudas and Lin [13] describe an efficient approach to solve largescale, computationally expensive or even intractable, ILP problems, that is based on the decomposition of these problems into smaller subproblems that are solved sequentially (usually in much shorter times). Although this technique leads to suboptimal solutions, it has the advantage of making possible the application of ILP formulations to realworld problems.
Using the decomposition technique, an offline scheduling algorithm is developed, that incrementally calls and solves the Optimal algorithm, one AV at a time. In this work, the problem was decomposed in terms of the set of AVs, as in the evaluation of the Optimal algorithm this was the dimension of the problem that affected the execution time the most (see Section VI). Regarding the flight level separation, in this approach the Optimal algorithm is adapted as follows: a table is used, where the first dimension of the table corresponds to the AVs, the second to the points in time, and the third to the task that the AV is executing, while the values in the table correspond to the flight level of the AV. After the execution of the Optimal algorithm for each AV, the equivalent values are added to the array. Additionally, Constraint 9 is reformulated as
(16) 
so that, given that in each execution round the schedule of one AV is calculated, the flight level is checked based on the already existing values of (i.e., the flight levels of the AVs for which the schedule has already been calculated).
In more detail, as illustrated in Alg. 2, the set of completed tasks is initialized to the empty set (line ). Then, for each AV and for the remaining tasks, the Optimal algorithm is called. This step returns the tasks that are selected to be executed from the current vehicle (lines ). The set of completed tasks is subsequently updated with the newly scheduled ones, while these tasks are also removed from the list of the remaining tasks (lines ). Further, the table is also updated (line ). Once the Optimal algorithm has been executed for all AVs, the complete set of executed tasks is returned (line ).
Vi Performance Evaluation
In this section, the proposed algorithms are evaluated with regards to a number of performance metrics, in order to demonstrate the validity and scalability of the proposed approach. Specifically, two sets of simulation experiments are performed:

EXP1: Evaluates the Optimal and Incr algorithms in terms of the average number of executed tasks (i.e., number of customers serviced), energy consumption and AVs’ flight levels.

EXP2: Calculates the execution time of the Optimal and Incr algorithms and addresses the scalability of the algorithms.
For all experiments, the following settings are used:
points in time, station locations which are points in the Cartesian space, trips and starting times selected from uniform distributions, trip durations between
and points in time, maximum capacity of each location , energy consumption rate and , and charging rate of . Note that, and are parameters that depend on the type of AV utilized; in these experiments a homogeneous fleet of vehicles is assumed with the same charging and consumption rates. To execute the aforementioned experiments, a Windows PC is utilized equipped with an Intel i74790K CPU and 16 GB of RAM running at 2400MHz.Via EXP1: Execution of tasks
Initially, the average number of customers serviced (i.e., average number of executed tasks) is investigated when using the Incr algorithm in comparison to the Optimal one. In a setting with AVs and up to tasks, it is observed that Incr performs close to the optimal, as it is at of the Optimal in the worst case (Fig. 1). At the same time, it is observed that when the Incr algorithm is used, the AVs consume in the worst case more energy compared to the Optimal (Fig. 2), due to the fact that the flight level is not optimized, since each AV’s flight level is calculated based only on the solution obtained for the AVs that have already been scheduled when the current AV is considered. In this vein, Fig. 3 depicts an example execution with AVs and tasks and shows the number of AVs flying at each level for each point in time using the Optimal algorithm. Additionally, Fig. 4 depicts the total number of points in time the AVs are at one of five possible flight levels (with flight level denoting that the AV is on the ground). From this figure, it is observed that the majority of the time the AVs fly at the lowest possible altitude (i.e., flight level ). This is due to the fact that the higher they fly, the more energy they consume, so the Optimal algorithm calculates the lowest possible flight levels, given the edge intersecting constraints (i.e., ensuring no midair collision).
When the total number of tasks is fixed to but the number of AVs varies (Fig. 5), it is shown that the Incr approach is, in the worst case, at of the Optimal. Finally, when the number of AVs is fixed to and the number of tasks to , but the number of stations varies, Incr is at of the Optimal in the worst case (Fig. 6). In this experiment, it is observed that the number of tasks that are executed decreases as the number of stations increases. This observation leads to the conclusion that when the number of stations increases, the task execution ability is reduced, as vehicles are less likely to be at locations with demand at the correct point in time.
ViB EXP2: Execution Time and Scalability
Execution time and scalability are critical factors concerning the applicability of any scheduling algorithm. In this case, as illustrated in Fig. 7, when the number of AVs is fixed and the number of tasks increases, the execution time of the Optimal algorithm has a relatively steep increase, as it reaches around seconds for tasks, while Incr has a low execution time, always remaining under seconds even in the larger size problems. Examining the obtained results, it is interesting to note that for more than tasks the execution time increases with a smaller rate. This can be explained by the fact that after this number of tasks the AVs have almost reached their maximum utilization and the number of additional tasks that can be executed reduces. At the same time, for tasks, as the number of AVs increases a very steep increase in the execution time of the Optimal algorithm is observed (for AVs the execution time is seconds), while Incr retains its low execution time of less than second (Fig. 8). Moreover, when the number of AVs and tasks is fixed, but the number of locations increases, a gradual decrease in the execution time of both algorithms is observed. This occurs as now fewer tasks are executed, which simplifies the solution to the problem (Fig. 9). Finally, in a larger setting with AVs and variable number of tasks, it is observed that the execution time of Incr increases with a relatively low rate (Fig. 10), demonstrating that Incr can scale to practicalsize problems.
Vii Conclusion
This work investigates the scheduling of AVs in an Urban Air Mobility scheme, where customer demand is known a priori. The aim is to maximize the number of completed tasks (i.e., number of customers serviced), while also optimizing the flight level of the AVs, in order to avoid midair collisions and minimize energy consumption. Two offline scheduling algorithms are proposed, Optimal and Incr, with the former calculating the optimal solution, while the latter obtaining nearoptimal solutions (in terms of tasks completed and energy consumption), but with increased scalability. Performance results indicate that scalability of Optimal is constrained by the number of AVs, while Incr, that solves the ILP formulation sequentially for each AV, can scale to large numbers of locations, AVs, and tasks, while producing results close to the optimal.
Future work includes the development of a heuristic algorithm to solve very large problems, as well as the development of an equivalent online algorithm. Moreover, the relocation of the vehicles in order to decrease idle time and increase the task execution ability will also be considered.
Acknowledgment
This work was supported by the European Union’s Horizon 2020 Research and Innovation Programme under Grant 739551 (KIOS CoE) and from the Republic of Cyprus through the Directorate General for European Programmes, Coordination, and Development.
References
 [1] A. Straubinger, R. Rothfeld, M. Shamiyeh, KD. Buchter, J. Kaiser, and K.O. Plotner, “An Overview of Current Research and Developments in Urban Air Mobility  Setting the Scene for UAM Introduction”, Journal of Air Transport Management, 87:101852, 2020.
 [2] M.D. Patterson, K.R. Antcliff, and L.W. Kohlman, “A Proposed Approach to Studying Urban Air Mobility Missions Including an Initial Exploration of Mission Requirements”, Proc. AHS International 74th Annual Forum & Technology Display, 2018.
 [3] R. Rothfeld, M. Balac, K.O Ploetner, and C. Antoniou, “Agentbased Simulation of Urban Air Mobility”, Proc. Modeling and Simulation Technologies Conf., 2018.
 [4] X. Yang, and P. Wei, “Scalable MultiAgent Computational Guidance with Separation Assurance for Autonomous Urban Air Mobility”, Journal of Guidance, Control, and Dynamics, 43(8):1473–1486, 2020.
 [5] A. Rodionova, Y.V. Pant, K. Jang, H. Abbas, and R. Mangharam, “LearningtoFly: Learningbased Collision Avoidance for Scalable Urban Air Mobility” Proc. IEEE 23rd International Conference on Intelligent Transportation Systems, 2020.
 [6] P. Pradeep and P. Wei, “Heuristic Approach for Arrival Sequencing and Scheduling for eVTOL Aircraft in OnDemand Urban Air Mobility” Proc. IEEE/AIAA 37th Digital Avionics Systems Conference, 2018.
 [7] L.C. Willey and J.L. Salmon, “A Method for Urban Air Mobility Network Design using Hub Location and Subgraph Isomorphism” Transportation Research Part C: Emerging Technologies, 125, 102997, 2021
 [8] C. Al Haddad, E. Chaniotakis, A. Straubinger, K. Plötner, and C. Antoniou, “Factors Affecting the Adoption and Use of Urban Air Mobility”, Transportation Research Part A: Policy and Practice, 132:696–712, 2020.
 [9] F.D. Davis, R.P. Bagozzi, and P.R. Warshaw, “User Acceptance of Computer Technology: A Comparison of Two Theoretical Models”, Management Science, 35(8):982–1003, 1998.
 [10] F. Afonso, A. Ferreira, I. Ribeiro, F. Lau, and A. Suleman,“On the Design of Environmentally Sustainable Aircraft for Urban Air Mobility”, Transportation Research Part D: Transport and Environment, 91, 102688, 2021
 [11] E.S. Rigas, S.D. Ramchurn, and N. Bassiliades, “Algorithms for Electric Vehicle Scheduling in Largescale Mobilityondemand Schemes”, Artificial Intelligence, 262:248–278, 2018.
 [12] E.S. Rigas and K. Tsompanidis, “Congestion Management for MobilityonDemand Schemes that use Electric Vehicles”, in MultiAgent Systems and Agreement Technologies, Springer International Publishing, 2020.
 [13] C.A. Floudas and X. Lin, “Mixed Integer Linear Programming in Process Scheduling: Modeling, Algorithms, and Applications”, Annals of Operations Research, 139(1):131–162, 2005.
 [14] F. Hutter, L. Xu, H.H. Hoos, and K. LeytonBrown, “Algorithm Runtime Prediction: Methods and Evaluation”, Artificial Intelligence, 206:79–111, 2014.
 [15] R.I. Brafman and C. Domshlak, “On the Complexity of Planning for Agent Teams and its Implications for Single Agent Planning”, Artificial Intelligence, 198:52–71, 2013.
Comments
There are no comments yet.