System and method for generating flight plans used by rideshare networks

A computing system optimizes flight plans for a rideshare network by generating and adjusting aircraft flight paths based on real-time data, addressing urban transportation challenges and ensuring timely and efficient air travel.

JP7842169B2Active Publication Date: 2026-04-07JOBY AERO INC
View PDF 5 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2024-09-26
Publication Date
2026-04-07

AI Technical Summary

Technical Problem

Urban areas face transportation challenges due to congested land-based infrastructure, which cannot adequately meet the needs of a significant number of users.

Method used

A computing system generates flight plans for a rideshare network using input data on an aircraft fleet, constraints, and planning periods, allowing real-time adjustments to accommodate passenger additions and deviations, and optimizes flight plans based on demand and supply data to ensure timely arrivals.

Benefits of technology

The system efficiently manages aircraft fleets to provide timely transportation services, adapting to real-time changes and optimizing flight plans to minimize delays and maximize passenger capacity, ensuring adherence to constraints and passenger convenience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007842169000001
    Figure 0007842169000001
  • Figure 0007842169000002
    Figure 0007842169000002
  • Figure 0007842169000003
    Figure 0007842169000003
Patent Text Reader

Abstract

To provide a system and a method for generating a flight plan used by a suitable ride-sharing network.SOLUTION: The present disclosure provides a system and a method for generating a potential flight plan used by a ride-sharing network including a dynamic change and / or an automated change to the flight plan arranged for a passenger based on real time information. Especially, the system and the method of the present disclosure can operate to generate the fleet level set of the potential flight plan complying with one or more constraints related to an aircraft fleet. The potential flight plan is exposed in the ride-sharing network, is used by it, and can provide a transportation to a user.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] (Cross - reference to Related Applications) This application claims the priority and benefit of U.S. Provisional Patent Application No. 62 / 994,320, filed on March 25, 2020, which is incorporated herein by reference in its entirety.

[0002] The present disclosure generally relates to facilitating ridesharing in aircraft flight. More specifically, the present disclosure relates to systems and methods for planning flights for use by a ridesharing network, including dynamic changes to flight plans based on real - time information.

Background Art

[0003] There are transportation services that enable individual users to request transportation on demand. For example, currently, there are transportation services where drivers of land - based vehicles (e.g., "cars") provide transportation services for potential passengers and are able to deliver luggage, goods, and / or prepared food.

[0004] However, as urban areas become increasingly densified, land - based infrastructure such as roads becomes increasingly constrained and congested. As a result, land - based transportation may not adequately meet the transportation needs of a significant number of users.

Summary of the Invention

Means for Solving the Problems

[0005] Aspects and advantages of embodiments of the present disclosure will be set forth in part in the following description, or can be learned from the description, or can be learned through the practice of the embodiments.

[0006] An exemplary aspect of this disclosure relates to a computing system configured to generate flight plans for a rideshare network. The computing system includes one or more processors and one or more non-transient computer-readable media for storing instructions that, when executed by the one or more processors, cause the computing system to perform operations. The operation includes the step of receiving input data describing a fleet of aircraft, one or more constraints, and flight planning periods. The operation includes, at least in part, the step of generating a set of potential flight plans relating to the fleet of aircraft and flight planning periods based on the input data. The operation includes the step of exposing the set of potential flight plans to a rideshare network. The operation includes the step of receiving one or more additions of one or more passengers to one or more of the potential flight plans from the rideshare network and generating one or more arranged flight plans.

[0007] Other aspects of this disclosure cover various systems, apparatus, non-transient computer-readable media, user interfaces, and electronic devices.

[0008] These and other features, aspects, and advantages of the various embodiments of this disclosure will be better understood by referring to the following description and appended claims. The accompanying drawings incorporated herein and forming part thereof illustrate exemplary embodiments of this disclosure and, together with the description, illustrate the relevant principles. The present invention provides, for example, the following: (Item 1) A computing system configured to generate flight plans for a rideshare network, wherein the computing system is One or more processors, One or more non-transient computer-readable media, the one or more non-transient computer-readable media, collectively, store instructions, and the instructions, when executed by the one or more processors, cause the computing system to perform an operation, the operation being, Receiving input data describing the aircraft fleet, one or more constraints, and flight planning periods, At least partially, based on the input data, generate a set of potential flight plans relating to the aircraft fleet and the flight plan period, Exposing the set of potential flight plans to the rideshare network, Receiving from the rideshare network one or more additional passengers to one or more of the set of potential flight plans, and generating one or more booked flight plans. including one or more non-transient computer-readable media and A computing system equipped with [the following features]. (Item 2) The input data includes expected demand data describing the expected demand for individual flights at different individual times and locations, and the expected demand data is at least partially based on the rideshare network, as described in item 1. (Item 3) The input data includes expected supply data describing the expected supply of a land-based transportation provider at different individual times and locations, wherein the expected supply data is at least partially based on the rideshare network, as described in one of the preceding items. (Item 4) The aforementioned operation further, To monitor the aircraft fleet's compliance with the pre-arranged flight plans, Detecting one or more deviations of the aircraft fleet or the one or more passengers from the arranged flight plan, Adjusting one or both of the set of arranged flight plans or the set of potential flight plans to take into account the one or more deviations A computing system, including any of the preceding items. (Item 5) Monitoring the aircraft fleet's adherence to the pre-arranged flight plans is, Location data associated with one or more aircraft in the aforementioned aircraft fleet, or Location data associated with one or more of the aforementioned passengers A computing system as described in item 4, which includes tracking one or both of the following. (Item 6) Tracking the location data associated with one or more of the aforementioned passengers is, Prior to the individual flight plan arranged for the said passenger, passenger location data associated with the individual passenger is received from a ground vehicle device assigned to the said individual passenger for providing ground transport to the said individual passenger. A computing system, including the one described in item 5. (Item 7) Each arranged flight plan is associated with one or more assigned passengers, a scheduled takeoff time, a scheduled landing time, and a buffer period, the buffer period representing a delay from the scheduled takeoff time, as described in item 4-6 of the computing system. (Item 8) Generating the aforementioned one or more arranged flight plans is Determining the buffer period for the arranged flight plan, at least in part, based on the one or more passengers assigned to the arranged flight plan. A computing system as described in item 7, including the one described in item 7. (Item 9) The computing system according to item 8, wherein each of the one or more assigned passengers is associated with a multi-segment travel itinerary, one segment of the multi-segment travel itinerary is the arranged flight plan, and the buffer period is determined, at least in part, for each of the one or more assigned passengers based on the multi-segment travel itinerary. (Item 10) The computing system according to item 9, wherein the multi-segment travel itinerary is associated with the total estimated travel time for the assigned passengers, and the buffer period is determined based on the aggregated period for each of the multi-segment travel itinerary for the one or more assigned passengers, as a result of delaying the arranged flight plan by at least part of one or more different periods. (Item 11) The computing system according to item 9-10, wherein the buffer period is determined at least in part on the number of one or more assigned passengers who would have a change to their multi-segment travel itinerary as a result of delaying the arranged flight plan by one or more different periods. (Item 12) Adjusting one or more of the aforementioned set of arranged flight plans or potential flight plans, and considering the aforementioned one or more deviations, To determine that the deviation is due to an assigned passenger who is late for a pre-arranged flight plan, To determine the estimated arrival time for the aforementioned late assigned passenger, To determine adjustments to the arranged flight plan based at least in part on the estimated arrival time of the assigned passenger who is late, Apply the aforementioned adjustments to the previously arranged flight plan. Computing systems as described in item 7-11, including the following. (Item 13) Determining the adjustment regarding the pre - arranged flight plan comprises adding the assigned passengers who are late to one or more than one of the set of potential flight plans for a period that the estimated arrival time regarding the assigned passengers who are late exceeds the buffer period, in response to determining that the estimated arrival time regarding the assigned passengers who are late is after the scheduled departure time; delaying the scheduled departure time regarding the pre - arranged flight plan and adapting it to the assigned passengers who are late, in response to determining that the estimated arrival time regarding the passengers who are late is after the scheduled departure time and within the buffer period; automatically transmitting a notice to one or more than one of the assigned passengers who are late, flight crew, or aircraft operator; The computing system according to item 12, comprising the above. (Item 14) A computer - implemented method for generating a flight plan for a rideshare network, the method comprising: receiving, by a computing system comprising one or more computing devices, input data describing a fleet of aircraft, one or more constraints, and a flight - plan period; generating, by the computing system, at least in part based on the input data, a set of potential flight plans regarding the fleet of aircraft and the flight - plan period; exposing, by the computing system, the set of potential flight plans to the rideshare network; receiving, by the computing system, from the rideshare network, one or more additions of one or more passengers to one or more than one of the set of potential flight plans and generating one or more pre - arranged flight plans; The method comprising the above. (Item 15) Generating the set of potential flight plans for the fleet of aircraft includes generating the set of potential flight plans for the fleet of aircraft that optimizes an objective function, the computer-implemented method according to item 14. (Item 16) The objective function is The quantity of the set of potential flight plans, The ratio of the set of potential flight plans that are expected to be arranged by passengers, The number of the set of potential flight plans that are expected to operate with the maximum passenger capacity, The number of passengers that are expected to be served by the set of potential flight plans, The number or percentage of passengers of the set of potential flight plans that are expected to arrive at individual destinations prior to a desired arrival time, or The estimated period during which passengers of the set of potential flight plans are expected to be late beyond the desired arrival time Evaluating the set of potential flight plans according to one or more metrics including, the computer-implemented method according to item 15. (Item 17) The method further includes Learning updated values for a set of weights of the objective function, at least in part, based on observed performance data, The computer-implemented method according to items 15-16. (Item 18) Generating the set of potential flight plans for the fleet of aircraft includes Sorting a plurality of periods included within the flight plan period into two or more priority hierarchies, Starting from the highest priority hierarchy and iteratively generating the set of potential flight plans for the periods within each priority hierarchy and includes The potential flight plans generated for higher priority hierarchies are used to generate constraints that must be met by the potential flight plans generated for lower priority hierarchies. Computer implementation method as described in item 14-17. (Item 19) The computing system detects one or more deviations of the aircraft fleet or one or more passengers from the arranged flight plan, The computing system determines adjustments to at least one of the arranged flight plans or the set of potential flight plans, and adapts to one or more deviations. The computing system compares the adjustment with the pre-approval criteria for at least one operator of the set of arranged flight plans or potential flight plans, In response to the decision that the adjustment meets the pre-approval criteria, the computing system adjusts at least one of the arranged flight plans or the set of potential flight plans. In response to a decision that the adjustment does not meet the pre-approval criteria, the computing system transmits data indicating the adjustment to human mitigation personnel. The computer implementation methods described in items 14-18, further including the above. (Item 20) One or more non-transient computer-readable media, wherein the one or more non-transient computer-readable media comprises instructions, and when the instructions are executed by one or more computing devices, the instructions are transmitted to the one or more computing devices. Receiving input data describing the aircraft fleet, one or more constraints, and flight planning period, At least partially, based on the input data, generate a set of potential flight plans relating to the aircraft fleet and the flight plan period, Exposing the aforementioned set of potential flight plans to the rideshare network, Receiving from the rideshare network one or more additional passengers to one or more of the set of potential flight plans, and generating one or more booked flight plans. One or more non-transient computer-readable media that cause an operation including the following to be performed. [Brief explanation of the drawing]

[0009] A detailed discussion of embodiments intended for those skilled in the art is provided in the specification with reference to the attached drawings.

[0010] [Figure 1] Figure 1 depicts a block diagram of an exemplary computing system according to an exemplary embodiment of the present disclosure.

[0011] [Figure 2] Figure 2 illustrates an exemplary set of flight paths between an exemplary set of transport junctions according to an exemplary embodiment of the present disclosure.

[0012] [Figure 3] Figure 3 illustrates an exemplary transport node according to an exemplary embodiment of the present disclosure.

[0013] [Figure 4] Figure 4 illustrates a flowchart of an exemplary method for generating and using a set of flight plans within a rideshare network, according to an exemplary embodiment of the present disclosure.

[0014] [Figure 5] Figure 5 illustrates a flowchart of an exemplary method for generating a set of potential flight plans on an aircraft-by-aircraft basis, according to an exemplary embodiment of the present disclosure.

[0015] [Figure 6]Figure 6 illustrates a flowchart of an exemplary method for generating a set of potential flight plans based on a priority hierarchy, according to an exemplary embodiment of the present disclosure. [Modes for carrying out the invention]

[0016] Detailed explanation Exemplary aspects of this disclosure relate to systems and methods for generating potential flight plans for use by rideshare networks, including, in some implementations, dynamic and / or automated modifications to flight plans based on real-time information. In particular, the systems and methods of this disclosure can operate to generate a fleet-level set of potential flight plans that comply with one or more constraints relating to a fleet of aircraft. Potential flight plans can be introduced into and used by a rideshare network to provide transportation services to users. For example, a rideshare network can add passengers to a potential flight plan and arrange the flight plan (e.g., operate the flight plan). Flights associated with arranged flight plans may be offered as standalone transportation services or as part of a larger multi-segment transportation service itinerary that utilizes multiple means of transport, such as a mix of transport by car and transport by aircraft. In addition, the systems and methods of this disclosure provide manual and / or automated tools for flight plan adjustments to handle and mitigate delays or other real-time impacts that cause deviations of a fleet of aircraft from a set of flight plans, for example.

[0017] More specifically, a flight planning system implemented by one or more computing devices can receive a set of input data describing an aircraft fleet, one or more flight planning constraints, and flight planning durations. This input data can be provided by a user and / or automatically ingested (e.g., regularly, such as daily). For example, in some implementations, heterogeneous aircraft owners / operators can interact with the computing system (e.g., the applications implemented therein) to provide information about the availability of their aircraft for participation in a rideshare network. This information can then be accessed by the flight planning system. In other implementations, information about the available aircraft fleet originates from a single, centralized source overseeing all aircraft operations.

[0018] An aircraft fleet may include any number of aircraft of the same or different models owned and / or operated by one or more different aircraft operators. Exemplary aircraft that may be included in a fleet include helicopters or other vertical take-off and landing (VTOL) aircraft, such as electric vertical take-off and landing (eVTOL) aircraft. In some implementations, an aircraft fleet may include aircraft corresponding to variable levels of autonomous flight / maneuver, including non-autonomous aircraft, semi-autonomous aircraft, and fully autonomous aircraft. Each aircraft may be owned, maintained, and / or operated by one or more different aircraft operators. As an example, an aircraft operator may include any entity with operational control (e.g., ownership, licensing, etc.) of one or more aircraft. Each aircraft operator may make one or more aircraft available during the flight planning period.

[0019] A flight planning period may define the overall departure and arrival dates and times for which the flight planning system should generate a potential flight plan for the aircraft fleet. Exemplary flight planning periods include periods such as 3 hours, 24 hours, or 1 week. Flight planning periods may be continuous or fragmented.

[0020] The constraints described by the set of input data may, in practice, include any number of different constraints associated with each aircraft, such as the individual departure location for each aircraft, the individual destination location for each aircraft, the individual times when each aircraft is available or unavailable, the individual starting fuel or charge level for each aircraft, the number of available passenger seats associated with the aircraft's operation, the maximum continuous operating time, the maximum or minimum flight range, the maximum or minimum flight altitude, the noise level, and other individual capabilities or attributes of each aircraft.

[0021] The constraints described by the set of input data can also describe the fixed infrastructure that an aircraft fleet must utilize. More specifically, in some implementations, aircraft may operate in accordance with or within a fixed infrastructure whose ability for passengers to board and disembark from aircraft is constrained to a defined set of transport hubs. In one embodiment, an aircraft may be constrained to board and disembark passengers only in a defined set of physical takeoff and / or landing areas, which in some cases may be referred to as airports. To provide an embodiment, a metropolitan area may have dozens of transport hubs located at various locations within the metropolitan area. Each transport hub may include one or more takeoff and / or arrival points and / or other infrastructure that can enable passengers to safely board and disembark from aircraft. Transport hubs may also include charging equipment, refueling equipment, and / or other infrastructure to enable aircraft operations. The takeoff and / or arrival points of transport hubs may be located at ground level and / or elevated from ground level (e.g., on top of buildings). Therefore, the input data to the flight planning system can also provide, as an example, various constraints associated with each individual transport node, such as location, type of aircraft capable of taking off / landing at the transport node, number of takeoff and / or arrival points at the transport node, number of refueling or charging structures at the transport node, minimum turnaround preparation time for the aircraft to land and then take off from the transport node, frequency (e.g., throughput) at which the aircraft can arrive at and depart from the transport node, airspace access requirements, and / or other descriptors of different transport nodes.

[0022] In some implementations, constraints described by the set of input data can also describe the availability of other resources, such as specific aircraft operators ("pilots"), operational personnel, and physical resources available at transport hubs (e.g., machinery, fuel, and maintenance capacity for safe passenger boarding). In some implementations, specific pilots may be linked to specific aircraft and treated as a single resource, while in others they may be treated as separate resources.

[0023] In some implementations, input data to the flight planning system may include other additional data such as expected demand, supply, or weather data. For example, expected demand data may be provided as input to the flight planning system. Expected demand data can describe the expected demand for air transport at various times and locations over the flight planning period. The data can describe the expected origin and destination of the demand, or simply predict the origin of the demand.

[0024] Forecasted demand data can be determined, at least in part, based on a rideshare network. A rideshare network may include a multimode rideshare network configured to provide transportation services for multiple different users of the network (e.g., to be carried out by aircraft, land vehicles, etc.). For example, a rideshare network can receive requests for transportation between two locations (e.g., a starting location and a desired location), determine one or more optimal means (e.g., aircraft, land vehicles, etc.) to facilitate the transportation, assign a service provider associated with one or more optimal means, and provide the transportation. A rideshare network can determine forecasted demand data by leveraging real-time request counts and / or historical data, indicating the number of requests received from multiple different users of the network. Thus, forecasted demand data can be determined, at least in part, based on a rideshare network. As an example, forecasted demand data may include historical and / or real-time requests from passengers of the rideshare network, and / or at least in part, data determined based on historical and / or real-time requests from passengers of the rideshare network and provided to a flight planning system. Thus, the set of potential flights generated by the flight planning system may shift, at least in part, throughout the entire flight period, based on information from the rideshare network.

[0025] In another embodiment, expected supply data can be provided as input to a flight planning system. Expected supply data can describe the expected supply of ground-based transport providers at different individual times and locations over the flight planning period. Expected supply data can be based, at least in part, on a rideshare network. For example, a rideshare network may include multiple service providers (e.g., drivers, aircraft operators, etc.) and / or be associated with multiple rideshare assets (e.g., vehicles, etc.). Expected supply data can identify the number of service providers and / or assets available (e.g., opt-in) to provide transport services at multiple different times and / or locations over the flight planning period. Thus, expected supply data can be determined, at least in part, on a rideshare network. As an example, expected supply data may include historical and / or real-time information identifying the availability of the number of service providers and / or assets in the rideshare network, and / or data determined, at least in part, based on the historical and / or real-time availability of the number of service providers and / or assets in the rideshare network, and provided to the flight planning system. In some implementations, a set of potential flights generated by the flight planning system can be provided as expected supply data for the rideshare network. In such cases, a rideshare network can, at least in part, boost the availability of a number of its service providers and / or assets based on a set of potential flights (for example, by encouraging commitments from drivers, operators, and / or asset owners).

[0026] In further embodiments, additional data may include expected weather data, available flight paths between infrastructure nodes, airspace availability throughout the planning period, and / or other aeronautical information, which may be provided as input data to the flight planning system.

[0027] According to one aspect of this disclosure, in response to input data, a flight planning system can generate a set of potential flight plans for a fleet of aircraft over a flight planning period. Each potential flight plan may, in examples, include various types of information such as aircraft identification, pilot identification (if required), origin location, destination location, rough indication of the flight path, estimated departure time, estimated arrival time, and / or various other information regarding the potential operation of the aircraft.

[0028] More specifically, a flight planning system can generate a set of potential flight plans that maximize the satisfaction of one or more combinations of objectives while also adhering to all constraints (e.g., not violating any constraints). Examples of objectives considered by a flight planning system include maximizing the number of potential flights generated, maximizing the ratio of potential flight plans to be booked, operating at maximum passenger capacity, maximizing the number of booked flights, ensuring flights are made on time, maximizing the number of passengers, arriving at their destination on time, maximizing the number of passengers, ensuring passengers are not delayed beyond their desired arrival time, minimizing cumulative duration, and / or various other objectives. In some implementations, a flight planning system may use a fleet-level objective function that balances some or all of the different objectives described above (e.g., using a set of weights). The set of weights can be manually adjusted and / or automatically adjusted (e.g., learned).

[0029] A flight planning system can implement one or more of a variety of different algorithms to generate a set of potential flight plans. For example, in some implementations, a flight planning system can iteratively analyze a fleet of aircraft on an aircraft-by-aircraft basis and thereby generate an optimal set of potential flight plans for each aircraft. For example, the optimal set of potential flight plans for a given aircraft can be generated by optimizing an aircraft-level objective function that balances any combination of the objectives described above (e.g., using a set of weights) for that aircraft. The set of weights in the aircraft-level objective function can be manually adjusted and / or automatically adjusted (e.g., learned). In some implementations, the aircraft-level objective function and the fleet-level objective function can be identical functions with identical weights. In some implementations, the fleet-level objective function can be equal to the sum of aircraft-level objective functions that apply to all aircraft in the fleet, each applicable to all aircraft.

[0030] In particular, in one embodiment, the flight planning system can generate a set of flight plans for a specific aircraft by sequentially generating / adding flight plans for the aircraft, starting from the beginning of the flight planning period and reaching the end of the flight planning period. In one embodiment, in each instance in which the flight planning system attempts to generate a new flight plan for a given aircraft, the flight planning system can generate multiple candidate flight plans, score each candidate flight plan according to an aircraft-level objective function, and then select and add the highest-scoring flight plan for that aircraft.

[0031] As described above, the aircraft-level objective function can, in an embodiment, balance any number of different objectives, including various objectives, which are a function of demand for the generated flight plans (e.g., the total number of passengers to be served, the total number of flights booked, the total number of flights with all available seats filled, etc.). To evaluate such an objective function, which is a function of demand and includes objectives, the flight planning system can query a demand model and obtain expected demand and / or supply information, which can be used to evaluate such objectives. In another embodiment, the aircraft-level objective function may focus on maximizing the total number of flight plans generated (e.g., including as a single objective).

[0032] In some implementations, the objective function can evaluate a set of flight plans based, at least partially, on the final journey for multiple potential passengers. For example, the objective could include a function to reduce the total travel time for multiple passengers. As an example, demand data (e.g., received and / or based on rideshare services) could include the expected demand for a transport service. From time to time, the transport service could include a multimode transport service. In such cases, an air flight segment, such as one of the set of potential flight plans, could include one of multiple destinations for a passenger before the passenger reaches their final destination. The objective function can evaluate a set of flight plans based, at least partially, on the total estimated travel time for multiple passengers. For example, a flight planning system could identify infrastructure, traffic, weather, and / or other factors that may affect subsequent ground transport segments, optimize a set of potential flight plans, and reduce the total estimated travel time for users of a rideshare network.

[0033] For example, a flight planning system may consider ground-based transport information when generating a set of flight plans. For instance, the availability of supply for the expected final segment can be used as input to an aircraft-level objective function to reward flights that have a robust supply of ground-based transport services and deliver passengers to their destination (e.g., increase their objective score), while penalizing flights that do not have a robust supply of ground-based transport services and deliver passengers to their destination (e.g., decrease their objective score). Similarly, the availability of supply for the expected first segment can also be used as input to an aircraft-level objective function to reward flights that have a robust supply of ground-based transport services and collect passengers from the departure node (e.g., increase their objective score), while penalizing flights that do not have a robust supply of ground-based transport services and collect passengers from the departure node (e.g., decrease their objective score). In other implementations, it may be assumed that such information regarding the supply of transport services subject to other means is also included in the expected demand data.

[0034] A flight planning system (e.g., an objective function) can evaluate a set of potential flight plans based on proximity, at least partially, to determine if the set of potential flight plans can transport potential passengers (e.g., those expected based on anticipated demand data, etc.) to their expected final destinations. For example, the anticipated demand data may include the expected final destinations for each of the multiple expected passengers. The flight planning system can generate a set of potential flight plans to facilitate transport of the multiple expected passengers to the location closest to their expected final destinations (e.g., a transport hub).

[0035] In some implementations, the location closest to the expected final destination (e.g., a transport hub) may not be the most efficient and / or timely route for transporting multiple expected passengers. For example, subsequent ground transport from the nearest location may be affected by traffic volume and / or other road delays. Furthermore, in some implementations, flight plans to the nearest location may be affected by weather or other airspace delays. In such cases, the flight planning system (e.g., objective function, etc.) can generate / evaluate a set of flight plans to facilitate the transport of multiple expected passengers to the location closest in time to the expected final destination (e.g., a transport hub) so as to account for factors affecting subsequent transport to the final destination.

[0036] In some implementations, flight planning systems can employ a hierarchical approach to generate flight plans. Specifically, the flight planning period can be divided into several different periods, each period being assigned to one of several priority hierarchies. For example, there can be any number of priority hierarchies, including two. More specifically, the hierarchical approach recognizes that certain periods throughout a day or week may have a higher priority due to increased levels of demand from passengers. In one embodiment, a period corresponding to "peak hours" or general commute times may be considered to have a higher priority than other periods. In another embodiment, a period including the occurrence of a popular event (e.g., a sporting event, a music festival, and / or equivalent) may be recognized as a higher priority period. In yet another embodiment, periods may be sorted into different priority hierarchies based on expected demand data.

[0037] In a multi-tiered approach, the flight planning system can iteratively generate flight plans for periods within each priority tier, starting with the highest priority tier. Thus, after determining the flight plan for a period in the highest priority tier, the flight planning system can then determine the flight plan for the period in the next highest priority tier. In particular, each tier of periods can use the generated flight plan for the previous tier as a constraint on the scheduling process. For example, if the generated flight plan for the period from 4pm to 7pm requires a given aircraft to depart from a specific transport hub with a specific fuel / charge level, then when generating a flight plan for the period from 1pm to 4pm, the flight planning system can handle, as a constraint, the fact that the aircraft must arrive at the specific transport hub with a specific fuel / charge level during the period from 1pm to 4pm. In such a system, the flight plan can be specifically optimized for the highest priority period, for example, when the maximum number of passengers need to be served.

[0038] In addition, in some implementations, the flight planning algorithm can include a greedy refueling component. The greedy refueling component can greedily assign an aircraft to engage in refueling and / or recharging whenever the aircraft is not in flight (e.g., beyond a minimum time) and refueling / recharging infrastructure is available at the aircraft's current location. The greedy refueling component can be applied after the flight plan is generated, or used as part of the generation process itself. In such a manner, the use of refueling / recharging infrastructure can be optimized.

[0039] In some implementations, the flight planning system can perform or participate in an iterative learning process for weighting the planning objective function. For example, an initial set of weights for the objective function can be manually adjusted. The flight planning system can operate with this initial set of weights and generate any number of flight plans over any number of flight planning periods. The results associated with the generated flight plans can be observed and measured according to various metrics. The set of weights can be readjusted (e.g., automatically and / or manually) based on the observed results. For example, various learning techniques such as gradient descent can be applied to learn the set of weights. For example, gradient descent can be applied to weighting the fleet-level objective function or the aircraft-level objective function. More generally, the flight planning system can collect arbitrary data that describes the results of some manually controlled settings, measures, weights, decisions, and / or equivalents, and can apply machine learning techniques to such data to learn updated or optimized versions of such settings, measures, weights, decisions, and / or equivalents.

[0040] Thus, the flight planning system can automatically generate a set of potential flight plans for a fleet of aircraft owned and / or operated by one or more different aviation operators. In some implementations, each flight plan may be approved by an individual aviation vehicle operator. For example, each aviation vehicle operator may be associated with a set of pre-approval rules. The pre-approval rule set may outline one or more acceptable flight plans for an aviation vehicle under the operational control of an individual aviation vehicle operator (e.g., from / to / between one or more approved locations, within an approved period, etc.). In some implementations, the set of potential flight plans may include only approved flight plans. In addition, or alternatively, the set of potential flight plans may include unapproved flight plans. In such cases, unapproved flight plans may be provided to the individual aviation vehicle operator for manual approval (e.g., higher-stage approval). The flight planning system can modify and / or regenerate any flight plans that are not manually and / or pre-approved by an individual aviation vehicle operator.

[0041] After the flight planning system generates a set of potential flight plans for a fleet and flight planning period, the set of potential flight plans can be exposed to a rideshare network. In particular, a matching system in a rideshare network can, according to a matching process, match a specific flight plan with one or more passengers in the network, thereby arranging for the flight plan to be put into operation. In some implementations, the matching system can implement a passenger pool, in which multiple requests for the service are collected from users over a certain period, and the matching service collectively analyzes the requests and identifies opportunities to pool passengers together. While aspects of this disclosure focus on providing air transport services to human passengers, the systems and methods of this disclosure are equally applicable to determining flight plans for air transport services for non-human payloads such as luggage, cooked food, pet transport, and / or equivalents.

[0042] In some implementations, a set of potential flight plans can be exposed to the rideshare network with minimal detail. For example, a potential flight plan can be described by data indicating the number of passengers and / or routes that can be served during, between, and / or to a segment of time at multiple locations. Passengers on the rideshare network can book a route by booking air transport over a segment of time. The booked segment of time can then be used by the rideshare network to match passengers to flights from the potential set of flights.

[0043] As an example, a passenger on a rideshare network can book a route (e.g., generally, flight details, etc.) over a certain segment of time. Segment time can describe a time slot container, which can be used as input to generate a booked flight plan. A rideshare network can receive multiple requests, group them within one or more time slot containers, and cluster flights around these time slot containers. Passengers are given a price estimate but are not charged until after the flight has taken place. Before the flight takes place, passengers may be provided with information such as the type of aircraft assigned to perform the flight, the time slot associated with the flight, and / or any other information associated with the booked flight.

[0044] Thus, a booked flight plan can be generated by adding passengers to a set of potential flight plans. Therefore, a booked flight plan can include potential flight plans with one or more assigned passengers. For example, each booked flight plan can be associated with one or more assigned passengers of the passengers associated with the rideshare network. In addition, a booked flight plan can include a scheduled takeoff time, a scheduled landing time, and a buffer period. The buffer period may indicate a delay from the scheduled takeoff time. This can be a period that is understood to be acceptable to the passenger, for example. Acceptability can be based on feedback data provided through the passenger via a software application launched on the user device. For example, the software application can provide prompts and collect feedback from the passenger on their experience, including, for example, the passenger's level of satisfaction or dissatisfaction regarding delays. Feedback data from specific passengers is stored for determining acceptability for those passengers (e.g., if they are included on a later flight) and / or aggregated with feedback data from one or more other passengers to determine whether the period would represent an acceptable delay for other passengers. In some implementations, the aggregated data can be used to determine whether the delay is acceptable for passengers who previously provided feedback data. Buffer periods can be determined, at least in part, based on input data, one or more constraints (e.g., weather, traffic, deviation, etc.), and / or duration. For example, a booked flight plan can form a user-centric flight schedule with an adjustable takeoff time, at least in part, based on the assigned passengers associated with the booked flight plan. This adjustable user-centric takeoff time may be represented by a buffer period.

[0045] More specifically, a booked flight plan may include a buffer period, determined based on a comprehensive input centered on passenger convenience. For example, a flight planning system may generate a booked flight plan based at least partially on one or more assigned passengers (e.g., added by a rideshare network). The flight planning system may determine a buffer period for a booked flight plan based at least partially on one or more assigned passengers in that plan.

[0046] For example, each assigned passenger, one or more, may be associated with a multi-segment itinerary. A multi-segment itinerary may include multiple segments of travel, for example, via one or more different means of transport. For example, one segment of a multi-segment itinerary may include a pre-arranged flight plan. Additional segments may include land transport to the origin of the pre-arranged flight plan, another land transport from the destination of the pre-arranged flight plan, and / or one or more additional flight segments preceding and / or following the pre-arranged flight plan.

[0047] In some implementations, the flight planning system can determine a buffer period for each assigned passenger, one or more, based at least partially on multi-segment travel itineraries. For example, a multi-segment travel itinerary may be associated with the total estimated travel time for the assigned passengers. In such cases, the buffer period can be determined at least partially on the aggregated delay period for each multi-segment travel itinerary for one or more assigned passengers, as a result of delaying the arranged flight itinerary by one or more different periods. The buffer period can be determined, for example, to ensure that the aggregated delay period is less than a threshold time (e.g., one hour or more, 30 minutes, 10 minutes). In some cases, the threshold time may include a period less than the duration of the arranged flight. In one embodiment, the flight planning system may predict a higher traffic volume for ground transport in a first period after the arranged flight. In such cases, the flight planning system may determine a buffer period that is less than the first period to prevent affected passengers from being further delayed by the predictable traffic volume.

[0048] In addition, or alternatively, the buffer period may be determined based on the number of one or more assigned passengers who would have to make changes to their multi-segment travel itinerary as a result of delaying the arranged flight plan by one or more different periods. For example, the buffer period may be determined to avoid one or more assigned passengers missing a subsequent flight.

[0049] Computing systems, including flight planning systems, can continuously monitor the success / feasibility of each arranged flight plan. For example, the computing system can monitor real-time data such as aircraft location data (e.g., received from the aircraft's GPS system), aircraft sensor data (e.g., fuel / charge levels), passenger location data (e.g., received from passengers' computing devices with permission), weather data, ground-based transport data, and / or other forms of data, and can detect current or likely deviations of aircraft fleets and / or passengers from arranged flight plans. In particular, the computing system can monitor and evaluate estimated arrival times versus planned arrival times for some or all passengers, estimated arrival times versus planned arrival times for some or all aircraft, and / or other measures of flight plan success.

[0050] Therefore, a computing system can continuously assess whether an aircraft will depart and / or arrive on time as scheduled, including tracking whether an assigned passenger will be able to physically travel through the transportation hub and arrive safely at the departure transportation hub within sufficient time to board the aircraft. In particular, in some implementations, the estimated arrival time may be related to the passenger and may be based on the first segment of a multi-segment journey. For example, a user may arrive at the transportation hub using land-based transportation (e.g., a rideshare vehicle), and therefore the computing system can track the user's progress along the land-based transportation segment and assess whether the user will arrive within sufficient time to avoid delaying their associated flight (e.g., which may be the second segment of a multi-segment journey).

[0051] A computing system can track user locations by, for example, receiving location data associated with one or more of a passenger. For example, a computing system can interact with a rideshare network and receive updates on passenger locations. In one embodiment, a computing system can receive passenger location data associated with individual passengers from a ground vehicle device assigned to an individual passenger to provide ground transport to that passenger prior to an individual arranged flight plan for that passenger. Location data can be received in real time, periodically, and throughout the journey from the passenger's origin location to a first transport hub. In addition, or alternatively, location data can be received in response to detected deviations from the original estimated arrival time. For example, location data for a passenger may indicate a later or earlier estimated arrival time for that passenger. In some implementations, location data may include traffic information, driver information, flight information, and / or any other information associated with the passenger's transport to the first transport hub of the arranged flight.

[0052] The computing system can implement real-time mitigation and replanning measures when a particular flight plan is significantly delayed or canceled / failed to be performed. Typically, the computing system may attempt to delay replanning activity until it is deemed with a significant probability that the arranged flight plan will be impossible to complete successfully.

[0053] In addition, or alternatively, the computing system can implement real-time mitigation measures and replanning based at least in part on one or more passenger deviations. For example, the computing system can reoptimize a set of potential flight plans and / or one or more booked flight plans based at least in part on minimizing inconvenience to passengers. As an example, the computing system can determine mitigation measures (e.g., delay a flight, reallocate one or more passengers to a different booked flight) in response to one or more deviations in an aircraft fleet and / or passengers. For each available mitigation measure, the computing system can determine which passengers will be affected as a result of the mitigation measure. As an example, the computing system can determine which passengers will not be able to arrive on time as a result of the mitigation measure, the total time (e.g., one hour or more, several minutes, etc.) that will be added to the transport service for all passengers as a result of the mitigation measure, and / or other metrics. Thus, the computing system can adjust one or both of the set of arranged flight plans and / or potential flight plans, taking into account one or more deviations, without adversely impacting the convenience of passengers arranged in the on-demand transport service.

[0054] In some implementations, the mitigation process may include delaying the flight based on a buffer period in the booked flight plan. For example, the buffer period may represent an acceptable period before and / or after the scheduled takeoff with respect to the aircraft. For example, it may be considered to accommodate late and / or early passengers based at least in part on an understanding of the user (e.g., its location) and other pooled users associated with the booked flight. For example, the buffer period may be determined based on collective inconvenience factors and / or trickle-down effects of delayed takeoff time. The computing system may determine that the deviation is due to a late assigned passenger with respect to the booked flight plan. The computing system may determine an estimated time of arrival for the late assigned passenger and, at least in part, determine adjustments to the booked flight plan based on the estimated time of arrival for the late assigned passenger and the buffer period. The computing system may apply the adjustments to the booked flight plan.

[0055] For example, in response to a determination that the estimated arrival time for a late assigned passenger is after the scheduled departure time by a period exceeding a buffer period, the computing system may add the late assigned passenger to one or more of the set of potential flight plans (and / or arranged flight plans with space for the late assigned passenger). In addition, or alternatively, in response to a determination that the estimated arrival time for a late passenger is after the scheduled departure time, which is within a buffer period, the computing system may delay the scheduled departure time for an arranged flight plan to accommodate the late assigned passenger. In some implementations, the computing system may automatically transmit a notification to one or more of the late assigned passenger (e.g., via a user device), operational personnel (e.g., via an operational device), and / or aircraft operators (e.g., via an aircraft device).

[0056] In some implementations, the mitigation process may include manual input by human mitigation personnel. For example, the need to implement mitigation can be automatically detected, and as a result, the computing system can provide alerts and a mitigation user interface to the human mitigation personnel. For example, the mitigation user interface may include a graphical user interface that shows potential alternative flight plans and / or changes thereto for flight plans that are currently experiencing delays / cancellations. In one embodiment, human personnel can interact with the interface and adjust various parameters of one or more flight plans. For example, human personnel may modify flight departure times, modify buffer times associated with the physical passage of passengers through transport hubs and / or vehicle boarding / alighting, add or remove passengers from flights, move passengers between flights, change pilots, and / or take other measures to manually modify a set of flight plans. In some implementations, any downstream impact on flight plans from manual changes can be automatically calculated and propagated through the set of flight plans.

[0057] In some implementations, the user interface can provide warnings or other indications of the extent to which a mitigation activity or potential measure may affect other users of the system and / or violate any initial input constraints. For example, if mitigation personnel attempt to delay a flight plan that has not yet departed and have delayed users wait, the user interface can inform the mitigation personnel that such a measure will affect one or more other travelers (e.g., three other travelers). Warnings / indications provided within the user interface can provide impact information according to various metrics, including the number of users who will be affected as a result of the option / measure, the number of users who will lose their arrival time as a result of the option / measure, the total time that will be added to the transport service for all users as a result of the option / measure, and / or other metrics. Generally, preferences can be given to mitigation strategies that have the least impact on other passengers. In addition, some constraints (e.g., the final aircraft destination at the end of the flight planning period) can be violated manually, while other constraints (e.g., safety constraints such as the maximum weight on board the aircraft) cannot be violated manually.

[0058] In another embodiment, human personnel may modify one or more constraints and then reinstate the flight planning process. For example, if extreme weather conditions render a subset of transport nodes unusable for a period of time, human personnel may adjust constraints to mark the subset of transport nodes as unusable for that period and then reinstate the flight planning process. Thus, some adjustments may be made directly to individual flight plans, while others may require readjustment or replanning across the entire system.

[0059] In some implementations, the mitigation process can be automated (e.g., with the ability to manually override). For example, a computing system can continuously generate emergency response flight plans. For instance, an emergency response flight plan can be generated using the process described above, but taking into account potential or actual delays in a given flight plan. When it is detected that a mitigation intervention should be implemented, the computing system can automatically select the best available emergency response flight plan and present the selected flight plan to each aircraft and other system components. For example, automatic updates and alerts can be sent to passengers, aircraft providers, operational personnel, and / or other integrated systems. For each potential set of updated flight plans, emergency response flight plans can be ranked based on various metrics, including the number of passengers who would be affected as a result of the choice / action, the number of passengers who would lose their arrival time as a result of the choice / action, the total time that would be added to the transport service for all passengers as a result of the choice / action, and / or other metrics. Alternatively, or in addition, the objective function can be used to score emergency response flight plans and / or replanning for some or all of a fleet of aircraft. Thus, in some cases, dynamic emergency response generation can be considered a re-optimization of flight plans across a sustained fleet based on real-time conditions.

[0060] In some implementations, the mitigation process can be automated and implemented within the boundaries of pre-approval criteria established by one or more aircraft operators. For example, a computing system can detect one or more deviations of an aircraft fleet and / or one or more passengers from a booked flight plan. The computing system can determine adjustments to at least one of the booked flight plans and / or potential flight plans and adapt them to one or more deviations. The computing system can compare the adjustments to pre-approval criteria for at least one operator of the booked or potential flight plan set. In response to a determination that the adjustments meet the pre-approval criteria, the computing system can automatically adjust at least one of the booked flight plans and / or potential flight plans. In response to a determination that the adjustments do not meet the pre-approval criteria, the computing system can transmit data indicating the adjustments to human mitigation personnel.

[0061] Accordingly, the systems and methods of the present disclosure can, in some implementations, generate potential flight plans for use by rideshare networks, including dynamic and / or automated changes to flight plans based on real-time information. In particular, the systems and methods of the present disclosure can operate to generate a fleet-level set of potential flight plans that conform to one or more constraints relating to a fleet of aircraft, and can provide manual and / or automated tools for flight plan adjustment to handle and mitigate delays or other real-time impacts that cause deviations of a fleet of aircraft from the set of flight plans.

[0062] The exemplary embodiments of this disclosure will be discussed in more detail here with reference to the figures. Exemplary devices and systems

[0063] Figure 1 depicts a block diagram of an exemplary computing system 100 according to an exemplary embodiment of the present disclosure. The computing system 100 includes a cloud service system 102 that can operate to plan and perform transportation services.

[0064] The cloud service system 102 can be communicatively connected via the network 180 to one or more passenger computing devices 140, one or more service provider computing devices 150 for the first means of transport, one or more service provider computing devices 160 for the second means of transport, one or more service provider computing devices 170 for the Nth means of transport, and one or more infrastructure and operational computing devices 190.

[0065] Computing devices 140, 150, 160, 170, and 190 can each include any type of computing device, such as a smartphone, tablet, handheld computing device, wearable computing device, embedded computing device, navigation computing device, or vehicle computing device. A computing device can include one or more processors and memory (similar to, for example, those discussed with reference to processor 112 and memory 114). A service provider device is shown for N different means of transport, but any number of different means of transport can be used, including, for example, fewer than three illustrated means (e.g., two means may be used). A service provider can include a human operator of a vehicle or the vehicle itself.

[0066] The cloud service system 102 includes one or more processors 112 and memory 114. The one or more processors 112 can be any suitable processing device (e.g., processor core, microprocessor, ASIC, FPGA, controller, microcontroller, etc.) and can be one processor or multiple processors connected operably. The memory 114 can include one or more non-transient computer-readable storage media such as RAM, ROM, EEPROM, EPROM, one or more memory devices, flash memory devices, etc., and combinations thereof.

[0067] Memory 114 can store information that can be accessed by one or more processors 112. For example, memory 114 (e.g., one or more non-transient computer-readable storage media, memory devices) can store data 116 that can be retrieved, received, accessed, written, manipulated, created, and / or stored. In some implementations, a cloud service system 102 can retrieve data from one or more memory devices located remotely from system 102.

[0068] Memory 114 can also store computer-readable instructions 118 that can be executed by one or more processors 112. Instructions 118 can be software written in any preferred programming language, or they can be implemented in hardware. In addition, or alternatively, instructions 118 can be executed logically and / or virtually in separate threads on processors 112. For example, memory 114 can store instructions 118 that, when executed by one or more processors 112, cause one or more processors 112 to perform any of the operations and / or functions described herein. As an example, memory 114 may include instructions 118 that, when executed by one or more processors 112, cause one or more processors 112 to perform the operations of the flight planning system described herein.

[0069] The cloud service system 102 may include several different systems, such as a world state system 126, a forecasting system 128, an optimization / planning system 130, and a matching and execution system 132. The matching and execution system 132 may include different matching systems 134 for each mode of transport and a monitoring and mitigation system 136. Systems 126-136 can each be implemented in software, firmware, and / or hardware, including, for example, as software that, when executed by a processor 112, causes the cloud service system 102 to perform a desired operation. Systems 126-136 can cooperate and interoperate (including, for example, providing information to each other).

[0070] The World State System 126 can operate to maintain data that describes the current state of the world. For example, the World State System 126 can generate, collect, and / or maintain data that describes predicted passenger demand, predicted service provider supply, predicted weather conditions, planned itineraries, given transport plans (e.g., flight plans) and allocations, current requests, current ground transport service providers, current transport hub operational status (e.g., including recharging or refueling capacity), current aircraft status (e.g., including current fuel or battery levels), current aircraft pilot status, current flight status and trajectory, current airspace information, current weather conditions, current communication system behavior / protocols, and / or equivalent. The World State System 126 can obtain such world state information through communication with some or all of the devices 140, 150, 160, 170, and 190. For example, device 140 can provide current information about passengers, while devices 150, 160, and 170 can provide current information about service providers. Device 190 can provide current information about the infrastructure and associated operational / management status.

[0071] The forecasting system 128 can generate forecasts over time of the demand and supply of transportation services in or between various locations. The forecasting system 128 can also generate or supply weather forecasts. The forecasts made by system 128 can be generated based on historical data and / or through supply and demand modeling. In some cases, the forecasting system 128 may be referred to as an RMR system, where RMR stands for "Route Designation, Matching, and Recharge." An RMR system may be capable of simulating the daily behavior of activity across multiple rideshare networks.

[0072] The optimization / planning system 130 can generate transport plans for various transport assets and / or itineraries for passengers. For example, the optimization / planning system 130 can implement flight plans for a fleet of aircraft (e.g., through implementation of any of the methods described herein, including methods 400, 500, and 600 in Figures 4, 5, and 6). In another embodiment, the optimization / planning system 130 can plan or manage / optimize itineraries, which include interactions between passengers and service providers across multiple modes of transport.

[0073] The matching and fulfillment system 132 can match passengers with service providers for each different mode of transport. For example, each individual matching system 134 can communicate with the corresponding service provider computing devices 150, 160, 170 via one or more APIs or connections. Each matching system 134 can communicate the trajectory and / or assignment to the corresponding service provider. Thus, the matching and fulfillment system 132 can implement or handle assignments such as ground transport, flight trajectory, takeoff / landing, etc.

[0074] The monitoring and mitigation system 136 can monitor the user's journey and implement mitigation measures when the journey is experiencing a significant delay (e.g., one of the segments fails to succeed). Thus, the monitoring and mitigation system 136 can perform situational awareness, advice, adjustment, and equivalent actions. The monitoring and mitigation system 136 can trigger alerts and actions transmitted to devices 140, 150, 160, 170, and 190. For example, passengers, service providers, and / or operational personnel can be alerted when a transport plan is modified and provided with an updated plan / set of actions. Thus, the monitoring and mitigation system 136 can have additional control over the movements of aircraft, ground vehicles, pilots, and passengers.

[0075] In some implementations, the cloud service system 102 may also store or include one or more machine learning models. For example, the models may be various machine learning models such as support vector machines, neural networks (e.g., deep neural networks), decision tree-based models (e.g., random forests), or other multilayer nonlinear models, or may include them in other ways. Exemplary neural networks include feedforward neural networks, recurrent neural networks (e.g., long-short-term memory recurrent neural networks), convolutional neural networks, or other forms of neural networks.

[0076] In some cases, service provider computing devices 150, 160, and 170 can be associated with an autonomous vehicle. Thus, service provider computing devices 150, 160, and 170 can provide communication between the cloud service system 102 and the autonomous stack of the autonomous vehicle, which autonomously controls the movement of the autonomous vehicle.

[0077] The infrastructure and operational computing devices 190 can be any form of computing device used by or in the infrastructure or operational personnel, including devices configured to perform, for example, passenger security checks, baggage check-in / check-out, recharging / refueling, safety briefings, vehicle check-in / check-out, and / or equivalent.

[0078] Network 180 can be any type of network or combination of networks that enables communication between devices. In some embodiments, the network can include one or more of the following: a local area network, a wide area network, the Internet, a secure network, a cellular network, a mesh network, peer-to-peer communication links and / or any combination thereof, and can include any number of wired or wireless links. Communication over Network 180 can be carried out, for example, via a network interface, using any type of protocol, protection scheme, encoding, format, packaging, etc. Exemplary fixed infrastructure

[0079] Figure 2 illustrates an exemplary set of flight plans between an exemplary set of transport hubs according to an exemplary embodiment of the present disclosure. In particular, Figure 2 provides a simplified illustration of exemplary fixed infrastructure associated with flight-based transport in an exemplary metropolitan area. As illustrated in Figure 2, there are four transport hubs, which may be referred to as “skyports” (e.g., vertiports, vertihubs). For example, the first transport hub 202 is located within the first neighborhood of the metropolitan area, the second transport hub 204 is located within the second neighborhood, the third transport hub 206 is located within the third neighborhood, and the fourth transport hub 208 is located within the fourth neighborhood. The locations and number of transport hubs are provided for illustrative purposes only. Any number of transport hubs in any different locations may be used.

[0080] Flights are available between a pair of transport hubs (for example, they can be planned in advance). For example, flight path 210 exists between the first transport hub 202 and the fourth transport hub 208. Similarly, flight path 212 exists between the fourth transport hub 208 and the third transport hub 206.

[0081] Figure 3 illustrates an exemplary transport hub 300 according to an exemplary embodiment of the present disclosure. The exemplary transport hub 300 includes several takeoff / arrival points, such as points 302 and 304. The exemplary transport hub 300 also includes several vehicle parking locations, such as parking locations 306 and 308. For example, refueling or recharging infrastructure may be accessible at each parking location.

[0082] Flight trajectories to and from the transport hub 300 may be defined, configured, assigned, communicated, etc. Figure 3 illustrates several flight trajectories, including, for example, trajectories 310 and 312. Trajectories may be fixed or dynamically calculated. Trajectories may be calculated by the aircraft or calculated centrally and then assigned to the aircraft and communicated. As one embodiment, Figure 3 illustrates a helicopter 314 taking off from point 304 according to trajectory 312. Estimative method

[0083] Figure 4 depicts a flowchart of an exemplary method 400 for generating and using a set of flight plans within a rideshare network, according to an exemplary embodiment of the present disclosure. One or more parts of Method 400 can be implemented by a computing system, including one or more computing devices, such as the computing systems described with reference to other figures (e.g., a flight planning system, computing system 100, cloud service system 102, world state system 126, forecasting system 128, optimization / planning system 130, matching and execution system 132, etc.). Each individual part of Method 400 can be implemented by any (or any combination) of one or more computing devices. Furthermore, one or more parts of Method 400 can be implemented as an algorithm on the hardware components of the devices described herein (e.g., in Figures 1-3, etc.) to generate, for example, a set of flight plans. Figure 4 depicts the elements, implemented in a specific order, for illustrative and discussional purposes. A person skilled in the art using the disclosure provided herein will understand that any element of the methods discussed herein can be adapted, rearranged, extended, omitted, combined, and / or modified in various ways without departing from the scope of the disclosure. Figure 4 is described for illustrative purposes with reference to elements / terms described in relation to other systems and figures and is not intended to be limiting. One or more parts of Method 400 can be carried out by other systems, in addition or as an alternative.

[0084] (402) Method 400 may include the step of receiving data describing an aircraft fleet and one or more flight planning constraints for a given flight planning period. For example, a computing system (e.g., computing system 100, cloud service system 102, world state system 126, forecasting system 128, optimization / planning system 130, matching and execution system 132) may receive data describing an aircraft fleet and one or more flight planning constraints for a given flight planning period. A computing system (e.g., optimization and planning system 130, etc.) may receive a set of input data describing an aircraft fleet, one or more flight planning constraints, and / or flight planning periods. The input data may be provided by one or more systems and / or devices of the rideshare environment. For example, the input data may include passenger data received via one or more passenger computing devices 140 in Figure 1, service provider data received from one or more service provider devices 150, 160, 170 in Figure 1, infrastructure data received from one or more infrastructure and operations computing devices 190, world state data received from one or more world state systems 126, forecast data received from one or more forecast systems 128, and / or any other information associated with the rideshare network.

[0085] User input data can be entered manually by users (e.g., passengers, pilots, drivers, operational personnel, etc.) and / or automatically captured (e.g., regularly, such as daily). For example, in some implementations, heterogeneous aircraft owners / operators can interact with a computing system (e.g., applications implemented therein) (e.g., via service provider devices 150, 160, 170, etc.) to provide information about the availability of their aircraft for participation in a rideshare network. The information provided can then be accessed by a computing system (e.g., an optimization / planning system 130). In other implementations, information about the fleet of available aircraft originates from a single, centralized source that oversees all aircraft operations.

[0086] An aircraft fleet may include any number of aircraft of the same or different models owned and / or operated by one or more different aircraft operators. Exemplary aircraft that may be included in a fleet include helicopters or other vertical take-off and landing (VTOL) aircraft, such as electric vertical take-off and landing (eVTOL) aircraft. In some implementations, an aircraft fleet may include aircraft corresponding to variable levels of autonomous flight / maneuver, including non-autonomous aircraft, semi-autonomous aircraft, and fully autonomous aircraft. Each aircraft may be owned, maintained, and / or operated by one or more different aircraft operators. As an example, an aircraft operator may include any entity with operational control (e.g., ownership, licensing, etc.) of one or more aircraft. Each aircraft operator may make one or more aircraft available during the flight planning period.

[0087] A flight planning period may define the overall departure and arrival dates and times for which the flight planning system should generate a potential flight plan for the aircraft fleet. Exemplary flight planning periods include periods such as 3 hours, 24 hours, or 1 week. Flight planning periods may be continuous or fragmented.

[0088] The constraints described by the set of input data may, in practice, include any number of different constraints associated with each aircraft, such as the individual departure location for each aircraft, the individual destination location for each aircraft, the individual times when each aircraft is available or unavailable, the individual starting fuel or charge level for each aircraft, the number of available passenger seats associated with the aircraft's operation, the maximum continuous operating time, the maximum or minimum flight range, the maximum or minimum flight altitude, the noise level, and other individual capabilities or attributes of each aircraft.

[0089] The constraints described by the set of input data can also describe fixed infrastructure (e.g., fixed infrastructure 300 in Figure 2-3) that the aircraft fleet must utilize. In some implementations, the constraints described by the set of input data can also describe the availability of other resources, such as specific aircraft operators ("pilots"), operational personnel, and physical resources available at transport hubs (e.g., machinery, fuel, and maintenance capabilities for safe passenger boarding). In some implementations, specific pilots may be linked to specific aircraft and treated as a single resource, while in others they may be treated as separate resources.

[0090] In some implementations, input data to a computing system (e.g., an optimization / planning system 130) may include world state and / or expected data (e.g., determined / predicted by a world state system 126 and / or forecasting system 128). For example, input data may include expected demand data that can describe the expected demand for air transport at various times and locations over a flight planning period. The data may describe the expected origin and destination of the demand, or simply predict the origin of the demand.

[0091] Forecasted demand data can be based, at least in part, on the rideshare network. A rideshare network (e.g., one or more of its devices 102, 140, 150, 160, 170, 190) can determine forecasted demand data by leveraging real-time request counts and / or historical data, which indicate the number of requests received from multiple different users of the network (e.g., drivers, service providers, pilots, crew members, etc.). Thus, forecasted demand data can be determined, at least in part, on the rideshare network. As an example, forecasted demand data may include historical and / or real-time requests from passengers of the rideshare network, and / or at least in part, data determined based on historical and / or real-time requests from passengers of the rideshare network and provided to a computing system (e.g., forecast system 128).

[0092] In another embodiment, the input data may include expected supply data that can describe the expected supply of ground-based transport providers at different individual times and locations over the flight planning period. The expected supply data may be at least in part based on a rideshare network. For example, the expected supply data can be determined by identifying the number of service providers and / or assets that are available (e.g., opt-in, etc.) to provide transport services at multiple different times and / or locations over the flight planning period within a rideshare network (e.g., one or more of these devices 102, 140, 150, 160, 170, 190). Thus, the expected supply data can be determined (e.g., by the expectation system 128). As an example, the expected supply data may include historical and / or real-time information that identifies the availability of the number of service providers and / or assets in the rideshare network, and / or data that is determined based on the historical and / or real-time availability of the number of service providers and / or assets in the rideshare network and provided to a computing system (e.g., the optimization / planning system 130).

[0093] (404) Method 400 may include the step of generating a set of potential flight plans for a fleet of aircraft. For example, a computing system (e.g., computing system 100, cloud service system 102, world state system 126, forecasting system 128, optimization / planning system 130, matching and execution system 132) may generate a set of potential flight plans for a fleet of aircraft. For example, in response to input data, a computing system (e.g., optimization / planning system 130, etc.) may generate a set of potential flight plans for a fleet of aircraft over a flight planning period. Each potential flight plan may, in examples, include various types of information such as aircraft identification, pilot identification (if required), origin location, destination location, rough indication of the flight path, estimated departure time, estimated arrival time, and / or various other information regarding the potential operation of the aircraft.

[0094] A computing system (e.g., optimization / planning system 130) can generate a set of potential flight plans that maximize the satisfaction of one or more combinations of objectives while adhering to all constraints (e.g., not violating any constraints). Examples of objectives considered by the computing system (e.g., optimization / planning system 130) include maximizing the number of potential flights generated, maximizing the ratio of potential flight plans to be booked, operating at maximum passenger capacity, maximizing the number of booked flights, ensuring flights are made on time, maximizing the number of passengers, ensuring passengers arrive at their destination on time, ensuring passengers are not delayed beyond their desired arrival time, minimizing cumulative time, and / or various other objectives. In some implementations, the computing system (e.g., optimization / planning system 130) can use a fleet-level objective function that balances some or all of the different objectives described above (e.g., using a set of weights). The set of weights can be manually adjusted and / or automatically adjusted (e.g., learned).

[0095] A computing system (e.g., optimization / planning system 130) can implement one or more of a variety of different algorithms to generate a set of potential flight plans. For example, in some implementations, the computing system (e.g., optimization / planning system 130) can iteratively analyze a fleet of aircraft on an aircraft-by-aircraft basis and thereby generate an optimal set of potential flight plans for each aircraft. For example, an optimal set of potential flight plans for a given aircraft can be generated by optimizing an aircraft-level objective function that balances any combination of the objectives described above (e.g., using a set of weights) for that aircraft. The set of weights in the aircraft-level objective function can be manually adjusted and / or automatically adjusted (e.g., learned). In some implementations, the aircraft-level objective function and the fleet-level objective function can be identical functions with identical weights. In some implementations, the fleet-level objective function can be equal to the sum of aircraft-level objective functions that apply to all aircraft in the fleet, each applicable to all aircraft in the fleet.

[0096] For example, Figure 5 depicts a flowchart of an exemplary method 500 for generating a set of potential flight plans on an aircraft-by-aircraft basis, according to an exemplary embodiment of the present disclosure. One or more parts of Method 500 can be implemented by a computing system, including one or more computing devices, such as the computing systems described with reference to other figures (e.g., a flight planning system, computing system 100, cloud service system 102, world state system 126, forecasting system 128, optimization / planning system 130, matching and execution system 132, etc.). Each individual part of Method 500 can be implemented by any (or any combination) of one or more computing devices. Furthermore, one or more parts of Method 500 can be implemented as an algorithm on the hardware components of the devices described herein (e.g., in Figures 1-3, etc.) to generate a set of flight plans on an aircraft-by-aircraft basis, for example. Figure 5 depicts the elements, implemented in a specific order, for illustrative and discussional purposes. A person skilled in the art using the disclosure provided herein will understand that any element of the methods discussed herein can be adapted, rearranged, extended, omitted, combined, and / or modified in various ways without departing from the scope of the disclosure. Figure 5 is described for illustrative purposes with reference to elements / terms described in relation to other systems and figures and is not intended to be limiting. One or more parts of Method 500 can be carried out by other systems, in addition or as an alternative.

[0097] (502) Method 500 may include the step of receiving data describing an aircraft fleet and one or more flight planning constraints with respect to flight duration. For example, a computing system (e.g., a flight planning system, computing system 100, cloud service system 102, world state system 126, forecasting system 128, optimization / planning system 130, matching and execution system 132, etc.) may receive data describing an aircraft fleet and one or more flight planning constraints with respect to flight duration in the manner described herein (see, for example, Figure 4).

[0098] In (504), method 500 may include the step of considering the next aircraft in the fleet. For example, a computing system (e.g., optimization / planning system 130, etc.) may consider the next aircraft in the fleet. In (506), method 500 may include the step of generating a set of potential flight plans for the currently considered aircraft over the entire planning period. For example, a computing system (e.g., optimization / planning system 130, etc.) may generate a set of potential flight plans for the currently considered aircraft over the entire planning period. In particular, the set of potential flight plans may be flight plans that optimize the aircraft-level objective function.

[0099] For example, a computing system (e.g., optimization / planning system 130) can generate a set of flight plans for a particular aircraft by sequentially generating / adding flight plans for the aircraft, starting from the beginning of the flight planning period and continuing until the end of the flight planning period. In one embodiment, in each instance where a computing system (e.g., optimization / planning system 130) attempts to generate a new flight plan for a given aircraft, the computing system (e.g., optimization / planning system 130) can generate multiple candidate flight plans, score each candidate flight plan according to an aircraft-level objective function, and then select and add the highest-scoring flight plan for that aircraft.

[0100] As described herein, the aircraft-level objective function can, in examples, balance any number of different objectives, including various objectives, which are functions of demand for the generated flight plans (e.g., the total number of passengers to be served, the total number of flights booked, the total number of flights with all available seats filled, etc.). To evaluate such an objective function, which includes objectives that are functions of demand, the system (e.g., optimization / planning system 130, etc.) can query a demand model (e.g., world state / forecasting systems 126, 128, etc.) to obtain expected demand and / or supply information that can be used to evaluate such objectives. In another embodiment, the aircraft-level objective function may focus on maximizing the total number of generated flight plans (e.g., including as a single objective).

[0101] In some implementations, the objective function can evaluate a set of flight plans based, at least partially, on the final journey for multiple potential passengers. For example, the objective could include a function to reduce the total travel time for multiple passengers. As an example, demand data (e.g., from world state / forecasting systems 126, 128, etc.) could include expected demand for a transport service (e.g., expected demand data determined by forecasting system 128, etc.). At any given time, the transport service could include a multimode transport service. In such cases, an air flight segment, such as one of the set of potential flight plans, could include one of multiple destinations for a passenger before the passenger reaches their final destination. The objective function can evaluate a set of flight plans based, at least partially, on the total estimated travel time for multiple passengers. For example, a computing system (e.g., optimization / planning system 130, etc.) could identify infrastructure, traffic, weather, and / or other factors that may affect subsequent ground transport segments and optimize a set of potential flight plans to reduce the total estimated travel time for users of a rideshare network.

[0102] For example, when a computing system (e.g., optimization / planning system 130) generates a set of flight plans, it may consider ground-based transport information (e.g., provided by world conditions, forecasting systems 126, 128, service provider computing devices 150, 160, 170, infrastructure and operations computing device 190, etc.). For example, the availability of supply for the expected final segment may be used as input to an aircraft-level objective function, rewarding flights that have a robust supply of ground-based transport services, deliver passengers to their destination (e.g., increasing their objective score), and penalizing flights that do not have a robust supply of ground-based transport services, deliver passengers to their destination (e.g., decreasing their objective score). Similarly, the expected supply availability for the initial segment can also be used as input to the aircraft-level objective function, rewarding flights that have a robust supply of land-based transport services and collect passengers from the departure node (e.g., increasing their objective score), and penalizing flights that do not have a robust supply of land-based transport services and collect passengers from the departure node (e.g., decreasing their objective score). In other implementations, it may be assumed that such information regarding the supply of transport services subject to other means is also included in the expected demand data.

[0103] A computing system (e.g., optimization / planning system 130) can evaluate a set of potential flight plans based on proximity, at least partially, to determine if the set of potential flight plans can transport potential passengers (e.g., expected based on anticipated demand data, etc.) to their expected final destinations. For example, the anticipated demand data may include the expected final destinations for each of the multiple expected passengers. The computing system (e.g., optimization / planning system 130) can generate a set of potential flight plans to facilitate transport of the multiple expected passengers to the location closest to their expected final destinations (e.g., a transport hub).

[0104] In some implementations, the location closest to the expected final destination (e.g., a transport hub) may not be the most efficient and / or timely route for transporting multiple expected passengers. For example, subsequent ground transport from the nearest location may be affected by traffic volume and / or other road delays. Furthermore, in some implementations, flight plans to the nearest location may be affected by weather or other airspace delays. In such cases, a computing system (e.g., optimization / planning system 130, etc.) can generate / evaluate a set of flight plans to facilitate the transport of multiple expected passengers to the location closest in time to the expected final destination (e.g., a transport hub) so as to take into account factors affecting subsequent transport to the final destination.

[0105] In some implementations, a computing system (e.g., an optimization / planning system 130, etc.) may include a greedy refueling component. The greedy refueling component can greedily assign an aircraft to engage in refueling and / or recharging whenever the aircraft is not in flight (e.g., beyond a minimum time) and refueling / recharging infrastructure is available at the aircraft's current location (e.g., as indicated by an infrastructure and operations computing device 190, etc.). The greedy refueling component can be applied after the flight plan is generated or used as part of the generation process itself. In such a manner, the use of refueling / recharging infrastructure can be optimized.

[0106] In some implementations, a computing system (e.g., optimization / planning system 130) can perform or participate in an iterative learning process for weighting the planning objective function. For example, an initial set of weights for the objective function can be manually adjusted. The computing system (e.g., optimization / planning system 130) can operate with this initial set of weights and generate any number of flight plans over any number of flight planning periods. The results associated with the generated flight plans can be observed and measured according to various metrics. The set of weights can be readjusted (e.g., automatically and / or manually) based on the observed results. For example, various learning techniques, such as gradient descent, can be applied to learn the set of weights. For example, gradient descent can be applied to weighting the fleet-level objective function or the aircraft-level objective function. More generally, a computing system (e.g., an optimization / planning system 130, etc.) can collect arbitrary data that describes the outcomes of some manually controlled settings, measures, weights, decisions, and / or equivalents, and can apply machine learning techniques to such data to learn updated or optimized versions of such settings, measures, weights, decisions, and / or equivalents.

[0107] Thus, a computing system (e.g., optimization / planning system 130, etc.) can automatically generate a set of potential flight plans for a fleet of aircraft owned and / or operated by one or more different aviation operators. In some implementations, each flight plan can be approved by an individual aviation vehicle operator (e.g., via service provider computing devices 150, 160, 170, etc.). For example, each aviation vehicle operator can be associated with a pre-approved rule set. The pre-approved rule set can outline one or more acceptable flight plans for an aviation vehicle under the operational control of an individual aviation vehicle operator (e.g., from / to / between one or more approved locations, within an approved period, etc.). In some implementations, the set of potential flight plans can include only approved flight plans. In addition, or alternatively, the set of potential flight plans can include unapproved flight plans. In such cases, the unapproved flight plans can be provided to the individual aviation vehicle operator for manual approval (e.g., phased approval). The computing system (e.g., optimization / planning system 130) can modify and / or regenerate any flight plans that are not manually and / or pre-approved by individual aircraft operators.

[0108] (508) Method 500 may include a step of determining whether an additional aircraft remains in the fleet. For example, a computing system (e.g., an optimization / planning system 130, etc.) may determine whether an additional aircraft remains in the fleet.

[0109] If there are any additional aircraft remaining, method 500 can return to (504) to consider the next aircraft in the fleet. However, if it is determined in (508) that all aircraft in the fleet have been considered, method 500 can proceed to (510).

[0110] In (510), method 500 may include a step of determining whether additional optimization iterations should be performed. For example, a computing system (e.g., optimization / planning system 130, etc.) may determine whether additional optimization iterations should be performed. Any number of iterations may be performed to allow flight plans to be generated for different aircraft, to be balanced and rearranged with respect to each other. For example, aircraft may be considered in different sequences in each iteration. Iterations may be performed until one or more stopping criteria are met. Stopping criteria may include the loop counter meeting a threshold, the iterative change in the objective function score falling below a threshold, the raw objective function score exceeding a threshold, and / or other criteria. However, in some cases only a single iteration is performed.

[0111] If it is determined in (510) that an additional iteration should be performed, method 500 may return to block (504) and perform another iteration of plan generation for some or all of the fleet. However, if it is determined in (510) that an additional iteration should not be performed, method 500 may proceed to (512).

[0112] In (512), method 500 may include the step of providing a set of potential flights as an output. For example, a computing system (e.g., optimization / planning system 130, etc.) may provide a set of potential flights as an output. In an embodiment, the set of potential flights may be output to a matching and fulfillment system (e.g., matching and fulfillment system 132 in Figure 1) configured to add passengers to one or more of the set of potential flights to generate one or more booked flights.

[0113] As another embodiment, Figure 6 depicts a flowchart of an exemplary method 600 for generating a set of potential flight plans based on a priority hierarchy, according to an exemplary embodiment of the present disclosure. One or more parts of Method 600 can be implemented by a computing system, including one or more computing devices, such as the computing systems described with reference to other figures (e.g., a flight planning system, computing system 100, cloud service system 102, world state system 126, forecasting system 128, optimization / planning system 130, matching and execution system 132, etc.). Each individual part of Method 600 can be implemented by any (or any combination) of one or more computing devices. Furthermore, one or more parts of Method 600 can be implemented as an algorithm on the hardware components of the devices described herein (e.g., in Figures 1-3, etc.) to generate a set of flight plans based on a priority hierarchy, for example. Figure 6 depicts the elements, implemented in a specific order, for illustrative and discussional purposes. A person skilled in the art using the disclosure provided herein will understand that any element of the methods discussed herein can be adapted, rearranged, extended, omitted, combined, and / or modified in various ways without departing from the scope of the disclosure. Figure 6 is described for illustrative purposes with reference to other systems and elements / terms described in relation to the figures and is not intended to be limiting. One or more parts of Method 600 can be carried out by other systems, in addition or as an alternative.

[0114] (602) Method 600 may include the step of receiving data describing an aircraft fleet and one or more flight planning constraints for flight duration. For example, a computing system (e.g., a flight planning system, computing system 100, cloud service system 102, world state system 126, forecasting system 128, optimization / planning system 130, matching and execution system 132, etc.) may receive data describing an aircraft fleet and one or more flight planning constraints for flight duration in the manner described herein (see, for example, Figure 4).

[0115] In (602), method 600 may include the step of sorting periods within the flight planning period into two or more priority hierarchies. For example, a computing system (e.g., optimization / planning computing system 130) may sort multiple periods within the flight planning period into two or more priority hierarchies.

[0116] In (606), method 600 may include a step of considering the next priority hierarchy of periods. For example, a computing system (e.g., an optimization / planning computing system 130) may consider the next priority hierarchy of periods. For example, in the first example of (606), a computing system (e.g., an optimization / planning computing system 130) may consider the highest priority hierarchy of periods. As an example, in a multi-tiered approach, a computing system (e.g., an optimization / planning computing system 130) may first start with the highest priority hierarchy and iteratively consider the periods within each priority hierarchy (e.g., by generating flight plans, etc.). Thus, after considering the periods of the highest priority hierarchy, the computing system (e.g., an optimization / planning computing system 130) may then consider the periods of the next highest priority hierarchy.

[0117] (608) Method 600 may include the step of generating a set of potential flight plans for an aircraft fleet for each period within the priority hierarchy currently under consideration. For example, a computing system (e.g., optimization / planning computing system 130, etc.) can generate a set of potential flight plans for an aircraft fleet for each period within the priority hierarchy currently under consideration. For example, Method 500 in Figure 5 can be implemented for each period within the priority hierarchy currently under consideration. Each hierarchy of periods can use the flight plans generated for the previous hierarchy as constraints on the scheduling process. For example, if the generated flight plan for the period 4pm to 7pm requires a given aircraft to depart from a specific transport hub with a specific fuel / charge level, then when generating a flight plan for the period 1pm to 4pm, the flight planning system can handle as a constraint the fact that the aircraft must arrive at a specific transport hub with a specific fuel / charge level during the period 1pm to 4pm. In such a scheme, the flight plan can be specifically optimized with respect to the highest priority period, for example, when the maximum number of passengers need to be served.

[0118] In (610), method 600 may include a step of determining whether an additional priority hierarchy remains. For example, a computing system (e.g., optimization / planning system 130, etc.) may determine whether an additional priority hierarchy remains. If an additional priority hierarchy remains, method 600 may return to 606 and consider the next priority hierarchy for the period. However, if in (610) it is determined that no additional priority hierarchy remains, method 600 may proceed to 612. In (612), method 600 may include a step of providing as output a set of potential flight plans for the entire flight planning period. For example, a computing system (e.g., optimization / planning system 130, etc.) may provide as output a set of potential flight plans for the entire flight planning period. In an embodiment, the set of potential flight plans may be output to a matching and fulfillment system (e.g., matching and fulfillment system 132 in Figure 1) configured to add passengers to one or more of the set of potential flights and generate one or more booked flights.

[0119] Returning to Figure 4, Method 400 may include the step of generating one or more booked flights based on a set of potential flight plans and passenger demand in order to generate and use a set of flight plans within a rideshare network.

[0120] (406) Method 400 may include the step of exposing a set of potential flight plans (determined, e.g., according to Methods 500, 600, etc.) to a rideshare network, receiving passenger additions to one or more flight plans, thereby transitioning the potential flight plans to booked flight plans. For example, a computing system (e.g., an optimization / planning computing system 130, a matching and execution system 132, etc.) may expose a set of potential flight plans to a rideshare network, receive passenger additions to one or more flight plans, thereby transitioning the potential flight plans to booked flight plans.

[0121] As an example, after a computing system (e.g., optimization / planning computing system 130, matching and execution system 132, etc.) generates a set of potential flight plans for a fleet and flight planning period, the set of potential flight plans can be exposed to a rideshare network. In particular, a matching system in the rideshare network (e.g., matching system 134 in Figure 1, etc.) can, according to the matching process, match one or more passengers in the network with a specific flight plan, thereby arranging for the flight plan to be put into operation. In some implementations, the matching system in Figure 1 (e.g., matching system 134, etc.) can implement a passenger pool in which multiple requests for the service are collected from users over a period of time, and the matching service collectively analyzes the requests and identifies opportunities to pool passengers together. While aspects of this disclosure focus on providing air transport services to human passengers, the systems and methods of this disclosure are equally applicable to determining flight plans for air transport services for non-human payloads such as luggage, cooked food, pet transport, and / or equivalents.

[0122] In some implementations, a set of potential flight plans can be exposed to the rideshare network with minimal detail. For example, a potential flight plan can be described by data indicating the number of passengers and / or routes that can be served during, between, and / or to a segment of time at multiple locations. Passengers on the rideshare network can book a route by booking air transport over a segment of time. The booked segment of time can then be used by the rideshare network to match passengers to flights from the potential set of flights.

[0123] As an example, a passenger on a rideshare network can book a route (e.g., generally, flight details, etc.) over a certain segment of time. The segment of time can describe a time slot container, which can be used as input for generating a booked flight plan. A computing system (e.g., matching and execution system 132, etc.) can receive multiple requests, group them into one or more time slot containers, and arrange flights around the time slot containers. Passengers are given a price estimate but cannot be charged until after the flight has taken place. Before the flight takes place, passengers may be provided with information such as the type of aircraft assigned to perform the flight, the time slot associated with the flight, and / or any other information associated with the booked flight.

[0124] Thus, a booked flight plan can be generated by adding passengers to a set of potential flight plans. Therefore, a booked flight plan can include potential flight plans with one or more assigned passengers. For example, each booked flight plan can be associated with one or more assigned passengers of the rideshare network. In addition, a booked flight plan can include a scheduled takeoff time, a scheduled landing time, and a buffer period. The buffer period may indicate a delay from the scheduled takeoff time (e.g., an acceptable delay). The buffer period can be determined, at least in part, based on input data, one or more constraints (e.g., weather, traffic, deviation, etc.), and / or duration. For example, a booked flight plan can form a user-centric flight schedule, with an adjustable takeoff time, based, at least in part, on the assigned passengers associated with the booked flight plan. This adjustable user-centric takeoff time may be represented by a buffer period.

[0125] More specifically, the booked flight plan may include a buffer period, determined based on a comprehensive input centered on passenger convenience. For example, a computing system (e.g., matching and execution system 132) may generate a booked flight plan based at least in part on one or more assigned passengers (e.g., added by a rideshare network). The computing system (e.g., matching and execution system 132) may determine a buffer period for the booked flight plan based at least in part on one or more assigned passengers in the booked flight plan.

[0126] For example, each assigned passenger, one or more, may be associated with a multi-segment itinerary. A multi-segment itinerary may include multiple segments of travel, for example, via one or more different means of transport. For example, one segment of a multi-segment itinerary may include a pre-arranged flight plan. Additional segments may include land transport to the origin of the pre-arranged flight plan, another land transport from the destination of the pre-arranged flight plan, and / or one or more additional flight segments preceding and / or following the pre-arranged flight plan.

[0127] In some implementations, a computing system (e.g., matching and execution system 132) can determine a buffer period for each assigned passenger, one or more, based at least partially on multi-segment travel routes. For example, a multi-segment travel route may be associated with the total estimated travel time for the assigned passengers. In such cases, the buffer period can be determined at least partially on the aggregated delay period for each multi-segment travel route for one or more assigned passengers, as a result of delaying the arranged flight plan by one or more different periods. The buffer period can be determined, for example, to ensure that the aggregated delay period is less than a threshold time (e.g., 1 hour, 30 minutes, 10 minutes). In some cases, the threshold time may include a period less than the duration of the arranged flight. For illustrative purposes as an embodiment, a computing system (e.g., matching and execution system 132) may predict a higher traffic volume with respect to ground transport in a first period after the arranged flight. In such cases, a computing system (e.g., matching and performance system 132) can determine a buffer period, which is less than a first period, to prevent affected passengers from being further delayed by the predictable traffic volume.

[0128] In addition, or alternatively, the buffer period may be determined based on the number of one or more assigned passengers who would have to make changes to their multi-segment travel itinerary as a result of delaying the arranged flight plan by one or more different periods. For example, the buffer period may be determined to avoid one or more assigned passengers missing a subsequent flight.

[0129] (408) Method 400 may include a step of monitoring the aircraft's compliance with the fleet and / or passengers' arranged flight plans. For example, a computing system (e.g., matching and enforcement system 132, monitoring and mitigation system 136, etc.) may monitor the aircraft's compliance with the fleet and / or passengers' arranged flight plans.

[0130] More specifically, computing systems (e.g., matching and execution system 132, monitoring and mitigation system 136, etc.) can continuously monitor the success / feasibility of each arranged flight plan. For example, computing systems (e.g., matching and execution system 132, monitoring and mitigation system 136, etc.) can monitor real-time data such as aircraft location data (e.g., received from service provider computing devices 150, 160, 170, etc.), aircraft sensor data (e.g., from service provider computing devices 150, 160, 170, infrastructure and operations computing device 190, etc.), passenger location data (e.g., received with permission from passenger computing device 140, service provider computing devices 150, 160, 170, etc.), weather data (e.g., from forecasting system 128, etc.), ground-based transport data (e.g., received from service provider computing devices 150, 160, 170, etc.), and / or other forms of data, and can detect current or likely deviations of aircraft fleets and / or passengers from arranged flight plans. In particular, computing systems (e.g., matching and implementation system 132, monitoring and mitigation system 136, etc.) can monitor and evaluate estimated arrival times versus planned arrival times for some or all passengers, estimated arrival times versus planned arrival times for some or all aircraft, and / or other measures of flight plan success.

[0131] Thus, in (408), a computing system (e.g., matching and execution system 132, monitoring and mitigation system 136, etc.) can continuously assess whether a flight will depart and / or arrive on time as scheduled, including tracking whether an assigned passenger will be able to physically proceed through the transport hub and arrive safely at the departure transport hub in sufficient time to board the aircraft. In particular, in some implementations, the estimated arrival time may be relating to a passenger and may be based on a first segment of a multi-segment journey. For example, a user may arrive at a transport hub using land-based transport (e.g., a rideshare vehicle), and therefore the computing system (e.g., matching and execution system 132, monitoring and mitigation system 136, etc.) can track the user's progress along the land-based transport segment and assess whether the user will arrive in sufficient time to avoid delaying their associated flight (e.g., a second segment of a multi-segment journey).

[0132] A computing system (e.g., matching and enforcement system 132, monitoring and mitigation system 136, etc.) can track user locations by, for example, receiving location data associated with one or more of one or more passengers. For example, a computing system (e.g., matching and enforcement system 132, monitoring and mitigation system 136, etc.) can interact with a rideshare network (e.g., via one or more service provider devices 150, 160, 170, etc.) to receive updates on passenger locations. In an embodiment, a computing system (e.g., matching and enforcement system 132, monitoring and mitigation system 136, etc.) can receive passenger location data associated with individual passengers from a ground vehicle device assigned to an individual passenger to provide ground transport to that individual passenger prior to an individually arranged flight plan relating to the passenger. Location data can be received in real time, periodically, and during the journey from the passenger's origin location to a first transport hub. In addition, or alternatively, location data can be received in response to detected deviations from the original estimated time of arrival. For example, location data for a passenger may indicate a later or earlier estimated arrival time for that passenger. In some implementations, location data may include traffic information, driver information, flight information, and / or any other information associated with the passenger's transport to the first transport node of the arranged flight.

[0133] (410) Method 400 may include a step of detecting one or more deviations from the arranged flight plans of an aircraft fleet and / or passengers. For example, a computing system (e.g., matching and execution system 132, monitoring and mitigation system 136, etc.) may detect one or more deviations from the arranged flight plans of an aircraft fleet and / or passengers. The computing system (e.g., matching and execution system 132, monitoring and mitigation system 136, etc.) may implement real-time mitigation and replanning when a particular flight plan is significantly delayed or canceled / not performed. Typically, the computing system (e.g., matching and execution system 132, monitoring and mitigation system 136, etc.) may attempt to delay replanning activity until it is considered with a significant probability that it will be impossible for the arranged flight plan to be completed successfully.

[0134] (412) Method 400 may include a step of adjusting the flight plan and considering deviations. For example, a computing system (e.g., matching and enforcement system 132, monitoring and mitigation system 136, etc.) may adjust the flight plan and consider deviations. For example, a computing system (e.g., matching and enforcement system 132, monitoring and mitigation system 136, etc.) may, at least in part, implement real-time mitigation and replanning based on one or more deviations of one or more passengers. For example, a computing system (e.g., matching and enforcement system 132, monitoring and mitigation system 136, etc.) may, at least in part, reoptimize a set of potential flight plans and / or one or more arranged flight plans based on minimizing inconvenience to passengers. For example, a computing system (e.g., matching and enforcement system 132, monitoring and mitigation system 136, etc.) may determine mitigation measures (e.g., delaying a flight, reallocating one or more passengers to a different scheduled flight, etc.) in response to one or more deviations in an aircraft fleet and / or passengers. For each available mitigation measure, the computing system (e.g., matching and enforcement system 132, monitoring and mitigation system 136, etc.) may determine which passengers will be affected as a result of the mitigation measure. For example, the computing system (e.g., matching and enforcement system 132, monitoring and mitigation system 136, etc.) may determine which passengers will not be able to arrive on time as a result of the mitigation measure, the total time and / or other metrics that will be added to the transport service for all passengers as a result of the mitigation measure.Thus, computing systems (e.g., matching and implementation system 132, monitoring and mitigation system 136, etc.) can adjust one or both of the set of arranged flight plans and / or potential flight plans, taking into account one or more deviations, without adversely impacting the convenience of passengers arranged in the on-demand transport service.

[0135] In some implementations, the mitigation process may include delaying the flight based on a buffer period in the booked flight plan. For example, the buffer period may represent an acceptable period before and / or after the scheduled takeoff with respect to the aircraft. For example, it may be considered to accommodate late and / or early passengers based at least in part on an understanding of the user (e.g., its location) and other pooled users associated with the booked flight. For example, the buffer period may be determined based on collective inconvenience factors and / or trickle-down effects of delayed takeoff time. A computing system (e.g., matching and execution system 132, monitoring and mitigation system 136, etc.) may determine that the deviation is due to a late assigned passenger with respect to the booked flight plan. The computing system (e.g., matching and execution system 132, monitoring and mitigation system 136, etc.) may determine an estimated time of arrival for the late assigned passenger and, at least in part, determine adjustments to the booked flight plan based on the estimated time of arrival for the late assigned passenger and the buffer period. Computing systems (e.g., matching and implementation system 132, monitoring and mitigation system 136, etc.) can apply adjustments to the arranged flight plan.

[0136] As an example, in response to a determination that the estimated arrival time for a late assigned passenger is after the scheduled takeoff by a period exceeding the buffer period, the computing system (e.g., matching and execution system 132, monitoring and mitigation system 136, etc.) may add the late assigned passenger to one or more of the set of potential flight plans (and / or arranged flight plans with space for the late assigned passenger). In addition, or alternatively, in response to a determination that the estimated arrival time for a late assigned passenger is after the scheduled takeoff period, which is within the buffer period, the computing system (e.g., matching and execution system 132, monitoring and mitigation system 136, etc.) may delay the scheduled takeoff time for the arranged flight plans to accommodate the late assigned passenger. In some implementations, computing systems (e.g., matching and enforcement system 132, monitoring and mitigation system 136, etc.) can automatically transmit notifications to one or more of the following: the assigned passenger who is late (e.g., via individual passenger computing device 140), the operational personnel (e.g., via infrastructure and operations computing device 190), and / or the aircraft / land vehicle operator (e.g., via service provider computing devices 150, 160, 170).

[0137] In some implementations, the mitigation process may include manual input by human mitigation personnel. For example, the need to implement mitigation can be automatically detected, and as a result, a computing system (e.g., matching and implementation system 132, monitoring and mitigation system 136, etc.) can provide alerts and a mitigation user interface to human mitigation personnel. For example, the mitigation user interface may include a graphical user interface that shows potential alternative flight plans and / or changes thereto for a flight plan that is currently experiencing delays / cancellations. In one embodiment, human personnel can interact with the interface and adjust various parameters of one or more flight plans. For example, human personnel can modify flight departure times, modify buffer times associated with the physical passage of passengers through transport hubs and / or vehicle boarding / alighting, add or remove passengers from a flight, move passengers between flights, change pilots, and / or take other measures to manually modify a set of flight plans. In some implementations, any downstream effects on the flight plan from manual changes can be automatically calculated and propagated through the set of flight plans.

[0138] In some implementations, the user interface can provide warnings or other indications to the extent that a mitigation activity or potential measure may affect other users of the system and / or violate any initial input constraints. For example, if mitigation personnel attempt to delay a flight plan that has not yet departed and have delayed users wait, the user interface can inform the mitigation personnel that such a measure will affect three other travelers. Warnings / indications provided within the user interface can provide impact information according to various metrics, including the number of users who will be affected as a result of the option / measure, the number of users who will lose their arrival time as a result of the option / measure, the total time that will be added to the transport service for all users as a result of the option / measure, and / or other metrics. Generally, preferences can be given to mitigation strategies that have the least impact on other passengers. In addition, some constraints (e.g., the final aircraft destination at the end of the flight plan period) can be violated manually, while others (e.g., safety constraints such as the maximum weight on board the aircraft) cannot be violated manually.

[0139] In another embodiment, human personnel may modify one or more constraints and then reinstate the flight planning process. For example, if extreme weather conditions render a subset of transport nodes unusable for a period of time, human personnel may adjust constraints to mark the subset of transport nodes as unusable for that period and then reinstate the flight planning process. Thus, some adjustments may be made directly to individual flight plans, while others may require readjustment or replanning across the entire system.

[0140] In some implementations, the mitigation process can be automated (e.g., with the capability for manual override). For example, a computing system (e.g., matching and implementation system 132, monitoring and mitigation system 136, etc.) can continuously generate emergency response flight plans. For example, an emergency response flight plan can be generated using the process described above, but taking into account potential or actual delays in a given flight plan. When it is detected that a mitigation intervention should be implemented, the computing system (e.g., matching and implementation system 132, monitoring and mitigation system 136, etc.) can automatically select the best available emergency response flight plan and present the selected flight plan to each aircraft and other system components. For example, automatic updates and alerts can be sent to passengers, aircraft providers, operational personnel, and / or other integrated systems. Emergency response flight plans can be ranked based on various metrics, including the number of passengers who will be affected as a result of the choices / actions, the number of passengers who will lose their arrival time as a result of the choices / actions, the total time that will be added to the transport service for all passengers as a result of the choices / actions, and / or other metrics, for each potential set of updated flight plans. Alternatively, or in addition, an objective function can be used to score emergency response flight plans and / or replanning for some or all of the aircraft fleet. Thus, in some cases, dynamic emergency response generation can be considered a re-optimization of flight plans across a persistent fleet based on real-time conditions.

[0141] In some implementations, the mitigation process can be automated and implemented within the boundaries of pre-approval criteria established by one or more aircraft operators. For example, a computing system (e.g., matching and enforcement system 132, monitoring and mitigation system 136, etc.) can detect one or more deviations of an aircraft fleet and / or one or more passengers from a booked flight plan. The computing system (e.g., matching and enforcement system 132, monitoring and mitigation system 136, etc.) can determine adjustments with respect to at least one of a set of booked flight plans and / or potential flight plans and adapt them to one or more deviations. The computing system (e.g., matching and enforcement system 132, monitoring and mitigation system 136, etc.) can compare the adjustments with pre-approval criteria with respect to at least one operator of a set of booked or potential flight plans. In response to a decision that the adjustment meets the pre-approval criteria, the computing system (e.g., matching and implementation system 132, monitoring and mitigation system 136, etc.) may automatically adjust at least one of the set of arranged flight plans and / or potential flight plans. In response to a decision that the adjustment does not meet the pre-approval criteria, the computing system (e.g., matching and implementation system 132, monitoring and mitigation system 136, etc.) may transmit data indicating the adjustment to human mitigation personnel. Additional disclosure

[0142] The use of computer-based systems allows for a wide variety of possible configurations, combinations, and divisions of tasks and functionalities between and within components. Computer implementation operations can be performed on a single component or across multiple components. Computer implementation tasks and / or operations can be performed sequentially or in parallel. Data and instructions can be stored in a single memory device or across multiple memory devices.

[0143] Although the subject matter has been described in detail with respect to various specific exemplary embodiments thereof, each embodiment is provided as an illustration rather than an limitation of the disclosure. Those skilled in the art will readily be able to produce modifications, variations, and equivalents of such embodiments as they attain the foregoing understanding. Therefore, the disclosure does not exclude such modifications, variations, and / or additions to the subject matter which would be readily apparent to those skilled in the art. For example, features illustrated or described as part of one embodiment can be used in conjunction with another embodiment to further embodiments. Thus, the disclosure is intended to cover such modifications, variations, and equivalents.

[0144] In particular, Figures 4, 5, and 6 depict steps performed in a specific order for illustrative and illustrative purposes, but the methods of this disclosure are not limited in any particular order or arrangement shown. Various steps of Methods 400, 500, and 600 can be omitted, rearranged, combined, and / or adapted in various ways without departing from the scope of this disclosure.

Claims

1. A method, wherein the said method is The flight planning system accesses the flight plan for the aircraft, The flight planning system exposes the flight plan to the rideshare network via a communication network, The flight planning system accesses passenger data from the rideshare network indicating passengers to be added to the flight plan, The flight planning system adds the passenger to the flight plan, The flight planning system accesses the estimated time of arrival at a transportation hub for the passenger to be added to the flight plan from the rideshare network, wherein the passenger is to board the aircraft at the transportation hub. The flight planning system calculates the time difference between the aircraft's takeoff time and the estimated arrival time in the flight plan, Based on the aforementioned time difference, the flight planning system calculates an adjusted flight plan which includes adjusting the aircraft's takeoff time or removing the passengers from the flight plan. The flight planning system transmits the adjusted flight plan to a computing device associated with the aircraft in order to adjust the aircraft's takeoff time or remove the passengers from the flight plan. Methods that include...

2. The method according to claim 1, wherein the passenger is associated with a multi-segment travel itinerary, the multi-segment travel itinerary comprising at least a segment comprising land-based transport provided via the rideshare network and another segment comprising a flight associated with the flight plan.

3. The method according to claim 2, wherein the estimated time of arrival is based on the progress of the passengers along the section comprising the land-based transport.

4. The method according to claim 1, wherein the estimated time of arrival is based on location data indicating the location of a user device associated with the passenger.

5. Accessing the aforementioned flight plan for the aforementioned aircraft means The flight planning system accesses land-based transportation information from the rideshare network indicating the supply of land transportation services, The flight planning system adjusts the purpose score for a flight associated with the flight plan based on the land-based transport information, wherein the purpose score is increased when the flight delivers passengers to a destination with a robust supply of land-based transport services, or when the flight picks up passengers from a departure point with a robust supply of land-based transport services, and the purpose score is decreased when the flight delivers passengers to a destination without a robust supply of land-based transport services, or when the flight picks up passengers from a departure point without a robust supply of land-based transport services. The method according to claim 1, including the method described in claim 1.

6. The method according to claim 1, wherein multiple passengers are associated with the flight plan, each individual passenger among the multiple passengers is associated with an individual multi-segment travel itinerary, and each segment of the individual multi-segment travel itinerary relating to the multiple passengers is a flight associated with the flight plan.

7. The method according to claim 6, wherein the flight planning system includes calculating a buffer period for the flight associated with the flight plan based on the individual multi-segment travel itineraries for each of the plurality of passengers.

8. The method according to claim 7, wherein the buffer period is determined based on the number of passengers who would have a change to their multi-segment journey as a result of delaying the takeoff time by one or more different periods.

9. The flight planning system further includes determining that the estimated time of arrival for the passenger is after the takeoff time by a period exceeding a buffer period, The method according to claim 1, wherein the adjusted flight plan includes removing the passengers from the flight plan.

10. The flight planning system further includes determining that the estimated time of arrival for the passenger is after the takeoff time by a period less than the buffer period, The method according to claim 1, wherein the adjusted flight plan includes adjusting the takeoff time of the aircraft by delaying the takeoff time of the aircraft.

11. The method according to claim 1, wherein the flight planning system transmits the adjusted flight plan to the computing device associated with the aircraft, which includes transmitting a notification associated with the adjusted flight plan to at least one of the computing devices of the aircraft, the computing device of the crew, or the computing device of the aircraft operator.

12. The method according to claim 1, wherein exposing the flight plan includes providing access to the flight plan through one or more application programming interfaces.

13. A computing system, wherein the computing system is One or more processors, One or more non-transient computer-readable media that store the instructions and The instructions are executable by one or more processors to perform an operation, and the operation is Accessing flight plans related to aircraft, Exposing the aforementioned flight plan to the rideshare network via a communication network, Accessing passenger data from the aforementioned rideshare network, which indicates passengers to be added to the flight plan, Adding the aforementioned passenger to the aforementioned flight plan, Accessing the estimated time of arrival of the passenger at the transportation hub, which is to be added to the flight plan, from the rideshare network, wherein the passenger is to board the aircraft at the transportation hub, To calculate the time difference between the aircraft's takeoff time and the estimated arrival time in the aforementioned flight plan, Based on the aforementioned time difference, calculate an adjusted flight plan which includes adjusting the aircraft's takeoff time or removing the passengers from the flight plan. To transmit the adjusted flight plan to a computing device associated with the aircraft in order to adjust the aircraft's takeoff time or remove the passengers from the flight plan. A computing system that includes this.

14. The computing system according to claim 13, comprising a flight in which multiple passengers are associated with the flight plan, each individual passenger among the multiple passengers is associated with an individual multi-segment travel itinerary, and each segment of the individual multi-segment travel itinerary relating to the multiple passengers is associated with the flight plan.

15. The aforementioned operation is, The computing system according to claim 14, further comprising calculating a buffer period for the flight associated with the flight plan based on the individual multi-segment travel itinerary for each of the plurality of passengers.

16. The computing system according to claim 15, wherein the buffer period is determined based on the number of passengers who would have a change to their multi-segment journey as a result of delaying the takeoff time by one or more different periods.

17. The computing system according to claim 13, wherein the estimated time of arrival is based on location data indicating the location of a user device associated with the passenger.

18. Transmitting the adjusted flight plan to the computing device associated with the aircraft is: The computing system according to claim 13, comprising transmitting a notification associated with the adjusted flight plan to at least one of the computing devices of the aircraft, the computing device of the crew, or the computing device of the aircraft operator.

19. One or more non-transient computer-readable media storing instructions, wherein the instructions are executable by one or more processors to perform operations, and the operations are Accessing flight plans related to aircraft, Exposing the aforementioned flight plan to the rideshare network via a communication network, Accessing passenger data from the aforementioned rideshare network, which indicates passengers to be added to the flight plan, Adding the aforementioned passenger to the aforementioned flight plan, Accessing the estimated time of arrival of the passenger at the transportation hub, which is to be added to the flight plan, from the rideshare network, wherein the passenger is to board the aircraft at the transportation hub, To calculate the time difference between the aircraft's takeoff time and the estimated arrival time in the aforementioned flight plan, Based on the aforementioned time difference, calculate an adjusted flight plan which includes adjusting the aircraft's takeoff time or removing the passengers from the flight plan. To transmit the adjusted flight plan to a computing device in order to adjust the takeoff time of the aircraft or to remove the passengers from the flight plan. One or more non-transient computer-readable media, including [the specified text].

Citation Information

Patent Citations

  • Passenger communications system

    JP2017139746A

  • Systems and methods for collaboratively controlling at least one aircraft

    US20140156109A1

  • Automatic real-time flight plan updates

    US20160093217A1

  • Vertiport Management Platform

    US20190221127A1

  • Determining VTOL departure time in an aviation transport network for efficient resource management

    US20190325757A1