Cargo reservation management system and method
By identifying pseudo-missing values and using machine learning models to predict cargo volume, the problem of unreliable data in air cargo management is solved, the accuracy of booking decisions and the efficiency of revenue management are improved, and unloading costs are reduced.
Patent Information
- Application Number
- CN202010405955.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2019-05-14
- Filing Date
- 2020-05-14
- Publication Date
- 2025-10-03
- Estimated Expiration
- 2040-05-14
AI Technical Summary
The cargo booking data in the air cargo management system is unreliable, resulting in over- or under-booking, making it difficult to effectively manage cargo capacity and affecting revenue management efficiency.
By identifying pseudo-missing values (DMVs) and using machine learning models to predict cargo volume, decisions on whether to accept or reject cargo bookings are generated, improving prediction accuracy and decision-making efficiency.
Improves the efficiency of cargo revenue management, reduces unloading costs and the risk of overbooking, and optimizes cargo capacity utilization.
Smart Images

Figure CN111950748B_ABST
Abstract
Description
[0001] Priority claim
[0002] This application claims priority to and the benefit of U.S. Provisional Application No. 62 / 847,439, filed May 14, 2019, which is hereby incorporated by reference in its entirety. Background Art
[0003] Commercial airline revenue primarily comes from the sale of passenger tickets and cargo (load) shipments. While most modern airlines have implemented sophisticated, data-driven passenger revenue management systems, doing so for cargo shipments presents unique challenges. The air cargo ecosystem is complex and involves multiple players, including shippers, loading agents, airline clients, and end customers. Overall, five fundamental differences between passenger and cargo revenue management can be highlighted.
[0004] First, in the case of passenger revenue, the sales unit is the aircraft seat, which is static. However, in the case of cargo, there is significant variability in both the volume and weight of cargo shipments. Furthermore, the revenue from cargo shipments often depends on the nature of the cargo. For example, volatile and non-volatile shipments generate different revenue margins. Therefore, the sales unit of cargo is highly dynamic.
[0005] Second, loading agents pre-book a significant amount of air cargo capacity. These agents tend to overbook and release capacity closer to departure. The air cargo management ecosystem ensures that there are no penalties for overbooking. Furthermore, some cargo space is reserved for mail and passenger baggage. Therefore, the effective capacity available for cargo is known as "free sale," which can fluctuate before departure.
[0006] Third, for cargo shipments, the source and destination are important. As long as the cargo arrives at the destination on time, rerouting the cargo from source to destination is not an issue. However, rerouting carries additional costs because the shipment must be stored in a warehouse.
[0007] Fourth, a unique aspect of the air cargo ecosystem is that there is often a significant discrepancy between the space (in terms of volume and weight) reserved by shipping agents for specific items and the actual quantity on or just before the departure date. Consequently, airlines tend to overbook flights under the assumption that fewer items will arrive than booked. Overbooking often leads to offloading, which increases costs in terms of storage and rerouting. Furthermore, it is common industry practice for airlines not to charge for these discrepancies, making it difficult for airlines to manage their volatile loading capacity, as it is impossible to add additional cargo once a flight has departed. Overall, this aspect of the air cargo ecosystem creates market inefficiencies.
[0008] Fifth, passenger capacity is determined by the number of seats, while cargo capacity is generally limited by volume. Furthermore, an aircraft will reach volume capacity before reaching weight capacity. Volume estimates tend to be less accurate than weight estimates, making it more difficult for airlines to manage their booking capacity before departure.
[0009] Because of these fundamental differences, air cargo management requires not only accurate predictions of the number of items to be picked up (e.g., weight and volume) before departure, but also the ability to make decisions about whether to accept or reject a particular booking for a flight. However, making such predictions and making such decisions is challenging in an air cargo setting because the data for booking cargo is often unreliable. Employees on the cargo revenue team often use their intuition to decide whether to accept a cargo booking for a flight or to reroute it to another flight. Therefore, systems and methods for increasing the efficiency of selling cargo space and, therefore, increasing revenue are desirable. Summary of the Invention
[0010] The present disclosure provides new and innovative systems, methods, and non-transitory computer-readable media for increasing cargo revenue management efficiency. In an example, the system includes a processor in communication with a memory. The processor is configured to receive a cargo reservation including a reserved cargo volume and a reserved cargo weight. The cargo reservation is received for a number of days until the cargo departure date. The processor is further configured to determine whether the reserved cargo volume is a disguised missing value. The processor determines a predicted cargo volume for the cargo reservation based on a set of characteristics of the cargo reservation. The set of characteristics includes at least whether the reserved cargo volume is a disguised missing value, the reserved cargo weight, and the number of days until the cargo departure date. The processor is further configured to generate a decision to accept or reject the cargo reservation based in part on the predicted cargo volume.
[0011] In an example, a method includes receiving a cargo reservation including a scheduled cargo volume and a scheduled cargo weight. The cargo reservation is received for a number of days until a cargo departure date. A determination is then made as to whether the scheduled cargo volume is a pseudo-missing value. A predicted cargo volume for the cargo reservation is determined based on a set of features of the cargo reservation. The set of features includes at least whether the scheduled cargo volume is a pseudo-missing value, the scheduled cargo weight, and the number of days until the cargo departure date. A decision is then generated to accept or reject the cargo reservation based in part on the predicted cargo volume.
[0012] In an example, a non-transitory computer-readable medium stores instructions. When executed by a processor, the instructions cause the processor to receive a cargo reservation including a scheduled cargo volume and a scheduled cargo weight. The cargo reservation is received a certain number of days before a cargo departure date. The instructions further cause the processor to determine whether the scheduled cargo volume is a pseudo-missing value. The instructions further cause the processor to determine a predicted cargo volume for the cargo reservation based on a set of characteristics of the cargo reservation. The set of characteristics includes at least whether the scheduled cargo volume is a pseudo-missing value, the scheduled cargo weight, and the number of days until the cargo departure date. The instructions further cause the processor to generate a decision to accept or reject the cargo reservation based in part on the predicted cargo volume. BRIEF DESCRIPTION OF THE DRAWINGS
[0013] Figure 1 A graph showing the observed difference between the ordered cargo volume and the received cargo volume is shown.
[0014] Figure 2 A block diagram of a cargo reservation system according to an aspect of the present disclosure is shown.
[0015] Figure 3 A flow chart of a cargo revenue management method according to one aspect of the present disclosure is shown.
[0016] Figure 4 A graph showing the identified spurious missing values is shown.
[0017] Figure 5 A graph showing the importance of features utilized in determining predicted cargo volume according to an aspect of the present disclosure is shown.
[0018] Figure 6A A graph showing comparative data between utilized booked cargo volume and utilized forecasted cargo volume with respect to unloading costs at various capacities is shown.
[0019] Figure 6B A graph showing comparative data between utilization of booked cargo volume and utilization of predicted cargo volume with respect to final revenue at various capacities is shown.
[0020] Figure 7 A scatter plot of flight data utilizing the presently disclosed system is shown, showing the percentage error of predicted cargo volume compared to received cargo volume, in accordance with an aspect of the present disclosure. DETAILED DESCRIPTION
[0021] The cargo booking data collected by airlines is fraught with errors and often unreliable, making it difficult for airlines to effectively sell their cargo space without underbooking or overbooking. Underbooking results in lost revenue, while overbooking incurs unloading costs that reduce revenue. For example, capacity is the variable quantity of any flight. Once a flight departs, the capacity disappears. However, a flight's capacity is also finite. Once a flight's capacity is reached, no more cargo can be added. Therefore, airlines seek to accept bookings that maximize revenue.
[0022] One source of error is that shippers use a variety of communication methods (including email, phone calls, instant messaging, or SMS messages) to coordinate with loading agents and airlines, which can increase the likelihood of data entry errors. For example, using various communication methods, a received cargo booking may be incorrectly forwarded somewhere along the chain from the customer to the intermediate loading agent to the airline and into the central system. In another example, by communicating via more than one communication method, cargo bookings may be inadvertently duplicated. There may also be a lag time between when a cargo booking is received and when it is entered into the central system, which may affect orders placed during this lag time (e.g., booking space that appears to be available but is not).
[0023] Another source of error is that when customers don't know the actual volume of cargo they will receive, they often reserve arbitrary but fixed values for the cargo volume, rather than indicating that the volume is unknown (e.g., a NaN value). These arbitrary values have no correlation to the volume of cargo to be received, but if nothing indicates to the airline that the value should not be treated as such, these arbitrary values can be misinterpreted as valid reservation values. Consequently, the airline may predict how much cargo volume is left to sell on a flight based on values that do not reflect how much volume will be delivered for a given order. Figure 1 A graph 100 is shown that illustrates the differences between booked and received cargo volumes observed by the inventors while analyzing air cargo data. For example, the graph illustrates how many data points deviate from a line 102 that indicates when the booked volume equals the received volume.
[0024] As used herein, a "pseudo-missing value" (DMV) refers to an unknown, inapplicable, or otherwise unspecified data item that is misinterpreted as a valid data value. As described above, in the context of cargo bookings, DMVs may appear in cargo booking data when a customer does not know the cargo volume required by the customer at the time of booking and instead submits an arbitrary cargo volume. For example, consider a set of six cargo bookings, each with a booking volume of 10.23, but with receiving volumes of 5.1, 2.8, 13.3, 26.4, 26.4, and 2.8, respectively. Unless other features can explain the different ranges of values for the receiving volume, the value 10.23 is likely a DMV. Those skilled in the art will understand that DMVs can have a significant impact on the results of data analysis, such as predictive machine learning models.
[0025] For example, we can see the impact that DMVs have on predictions by considering a linear regression model on a single dimension. The linear model y=wx is learned in , then the following equation 1 is well known.
[0026]
[0027] Then, suppose x dmv and the associated set of values {y1, y2, ..., y m} is added to the training set, the new update parameter w can be obtained new , as shown in Equation 2 below.
[0028]
[0029] depending on The model may or may not be affected by the value of x dmv For example, if Substituting into the above formula shows that w new = w and DMV has no effect on the model. However, if Obviously deviates from the straight line y = wx, then x dmv The impact could be huge.
[0030] The presently disclosed cargo revenue management system and method increases the efficiency of cargo revenue management by increasing the accuracy of predictions of the cargo volume that a customer will request, so that more efficient decisions can be generated to accept or reject cargo reservations. The provided system can achieve this increased efficiency by identifying the aforementioned arbitrary, fixed reservation values for customer reservations as pseudo-missing values and deemphasizing these values in the prediction of the cargo volume to be received. In addition, the provided system utilizes a machine learning model trained on a combination of features to predict the cargo volume to be received for a particular cargo reservation. Based on the predicted cargo volume to be received, the system will generate a decision whether to accept or reject the cargo reservation depending on whether the revenue from the reservation and the value of accepting the reservation is greater than the value of rejecting the reservation. Therefore, the presently disclosed system helps to increase the efficiency of the cargo revenue management process via the predictive model and decision generation.
[0031] Although the present disclosure is described in the context of air cargo, it should be understood that the provided systems and methods are also applicable, in some instances, to other forms of cargo transportation, such as ground transportation and maritime transportation.
[0032] System Example
[0033] Figure 2 A block diagram of an example cargo reservation system 200 is shown. The cargo reservation system 200 includes an example cargo revenue management system 202. One or more devices 240, 242, 244 can communicate with the cargo revenue management system 202 to submit cargo reservations. For example, a customer can submit a cargo reservation to the cargo revenue management system 202 via a laptop computer 240 or a smartphone 242 over a network 206. The network 206 can include, for example, the Internet or some other data network, including, but not limited to, any suitable wide area network or local area network. In another example, a customer can communicate with a cargo management employee (e.g., via phone, email, text message, etc.), and the cargo management employee can submit the customer's cargo reservation to the cargo revenue management system 202 via a wired connection via a laptop computer 244. Additionally or alternatively, the laptop computer 244 can communicate with the cargo revenue management system 202 over the network 206.
[0034] The cargo revenue management system 202 includes a processor in communication with a memory 210. In some aspects, the cargo revenue management system 202 may include a display 216, allowing cargo reservations and other information to be viewed on the display 216. In other examples, components of the cargo revenue management system 202 may be combined, rearranged, removed, or provided on separate devices or servers. The processor may be a CPU 204, an ASIC, or any other similar device. The memory 210 stores a DMV database 212, which includes identified DMVs. The DMV database 212 may be continuously updated as new DMVs are identified based on received reservations. The memory 210 may also store reservation data 214, which includes data on all cargo reservations received by the cargo revenue management system 202. For example, the reservation data 214 may include the volume of cargo received each time a specific reservation volume appears in a cargo reservation. As described below, this data may be used to identify DMVs. In various examples, some or all of the reservation data 214 may be stored on one or more separate servers in communication with the cargo revenue management system 202. The reservation data 214 may be used to continuously train the algorithms and models of the cargo revenue management system 202 described herein.
[0035] The DMV detector 220 of the cargo revenue management system 202 can be programmed to identify whether a received cargo volume reservation is for a DMV. For example, the DMV detector 220 can compare the received cargo volume reservation with the identified DMVs in the DMV database 212. The DMV detector 220 can also be programmed to continuously identify new DMVs from received cargo reservations and from the reservation data 214. The DMV detector 220 can update the DMV database 212 with newly identified DMVs that are not already in the DMV database 212. The DMV detector 220 can be implemented by software executed by the CPU 204.
[0036] The cargo revenue management system 202 may also include a cargo forecaster 222 that is programmed to predict the cargo volume that will be received for a particular cargo booking. The predicted cargo volume may be determined via a machine learning model trained on various features, such as combining Figure 3 As described in more detail, the machine learning model of the cargo predictor 222 can be continuously trained via the booking data 214. The cargo predictor 222 can be implemented by software executed by the CPU 204.
[0037] The decision generator 224 of the cargo revenue management system 202 can be programmed to generate a decision on whether to accept or reject a received cargo booking. The generated decision is based on the predicted cargo volume. The generated decision can also be based on the expected revenue of accepting the cargo booking, the value of accepting the cargo booking, and the value of rejecting the cargo booking. This will be combined with Figure 3Detailed description is provided below. In some aspects, decision generator 224 can be programmed to generate an actionable decision that is displayed on display 216. In other words, the actionable decision is a recommendation to the operator to accept or reject a particular cargo booking, which the operator can do by interacting with the actionable decision. In other aspects, decision generator 224 can be programmed to automatically accept or reject a particular cargo booking based on the generated decision. Decision generator 224 can be implemented by software executed by CPU 204.
[0038] Method Example
[0039] Figure 3 A flow chart of a cargo revenue management method 300 according to an aspect of the present disclosure is shown. Figure 3 The flowchart shown describes an example method 300, but it should be understood that many other methods of performing the actions associated with method 300 may be used. For example, the order of some blocks may be changed, some blocks may be combined with other blocks, and some of the blocks described are optional. Method 300 may be performed by processing logic that may include hardware (circuitry, dedicated logic, etc.), software, or a combination of both.
[0040] Method 300 may include receiving a cargo reservation (block 302). For example, DMV detector 220 may receive a cargo reservation. A cargo reservation is received until a certain number of days, which is a cargo departure date. The cargo departure date is the date on which a cargo shipment departs from its source to its destination. For example, the day a flight departs, a truck leaves, or a ship leaves a dock. Therefore, after the cargo departure date, additional cargo cannot be added to the shipment. The cargo reservation includes information related to the reservation. For example, the cargo reservation includes the reserved volume of the cargo (e.g., m 3 or ft 3 ) and the scheduled weight of the cargo (e.g., lbs or kgs). The cargo reservation may also include the number of items in the scheduled cargo, the shipping code, the cargo type, the cargo destination, and / or the cargo source. In the example, the DMV detector 220 receives the cargo reservation three days from the departure date, and the cargo reservation includes the scheduled volume (e.g., 10m 3 ) and the predetermined weight (e.g. 50kg).
[0041] It may then be determined whether the booked cargo volume is a DMV (block 304). For example, the DMV detector 220 may determine the booked volume (e.g., 10 m3) of the received cargo booking. 3) with the identified DMVs in the DMV database 212. If the value of the reserved volume matches one of the identified DMVs in the DMV database 212, the DMV detector 220 marks the reserved volume as a DMV. If the reserved volume does not match one of the identified DMVs, it may be determined whether the reserved volume is a newly identified DMV.
[0042] One way to identify whether a booking volume is a DMV is to consider the deviation of the average received volume for a specific booking volume from that specific booking volume. In other words, each cargo booking includes a booked cargo volume and a received cargo volume, and over time, multiple cargo bookings may have the same specific booking volume. If the deviation is significant enough, analyzing how the average received cargo volume deviates from that specific booking volume can help identify the booking volume as an arbitrary number entered by the customer (e.g., a DMV).
[0043] For example, returning to the example, which includes a set of six cargo bookings, each with a booking volume of 10.23, but with received volumes of 5.1, 2.8, 13.3, 26.4, 26.4, and 2.8, respectively, the average received volume is 12.8. The deviation g1 can then be determined according to the following equation 3 to obtain 6.60. In equation 3, u i is the specific booked cargo volume, v i,k is the corresponding received cargo volume for a specific booked cargo volume, and n i is the number of received cargo volumes for a particular ordered cargo volume.The determined deviation may then be compared to a predetermined threshold to determine whether the deviation is large enough to identify a DMV.
[0044]
[0045] Another method for identifying whether a booking volume is a DMV is to consider the entropy of the received cargo volume for a particular booking volume. The entropy of a value is a measure of the order or predictability of the value. For example, the higher the entropy of the received cargo volume, the greater the unpredictability of the received cargo volume, and the greater the likelihood that the particular booking volume is a DMV. In some examples, the entropy can be normalized so that the entropy is capped at one. The normalized entropy g2 can be determined according to the following equation 4, where V i consists of K different elements, and V i,k It is V i The kth bucket of . Moreover, u i is the specific booked cargo volume, V i is the set of received cargo volumes for a specific reserved cargo volume, K is V i The number of distinct elements, and n iis the number of received cargo volumes for a particular reserved cargo volume. The determined entropy can then be compared with a predetermined threshold to determine whether the entropy is sufficient to identify the DMV.
[0046] in
[0047] In various aspects, the booking value is identified as a DMV only when g1 exceeds its predetermined threshold and g2 exceeds its predetermined threshold. In other aspects, the booking value is identified as a DMV when either g1 or g2 exceeds its predetermined threshold. It should be noted that previous cargo booking data (e.g., included in booking data 214) can be analyzed according to the same method to identify DMVs and the identified DMVs (e.g., Figure 4 ) populates the DMV database 212. Once a booked volume is identified as a DMV, the value of that booked volume can be weakened when predicting the volume to be received in subsequent instances of receiving the booked volume.
[0048] A predicted cargo volume for the cargo reservation may then be determined based on the set of characteristics of the cargo reservation (block 306). For example, the cargo forecaster 222 may determine the cargo volume of the received reservation (e.g., 10 m 3 ) of the predicted cargo volume (e.g. 8m 3 ). It can be based on the machine learning regression model f θ :X→R + To determine the predicted cargo volume, where X is the feature set and each booking i is mapped to an element x i ∈X, and each receiving booking volume is mapped to y i ∈R + . In some instances, the model was built using gradient boosting machines. In other instances, the model was built using random forests. Gradient boosting machines are ensemble methods and are known to perform well "out of the box." They can also easily handle a mixture of data types, including numerical and categorical data. Random forests can reduce error by reducing variance because they combine independently generated deep trees on bootstrapped samples. However, gradient boosting machines reduce bias by building shallow trees sequentially, where each subsequent tree is trained by using the dependent variable as the residual of the previous one.
[0049] The inventors have discovered that for the purposes of cargo revenue management method 300, using a gradient boosting machine to build a predictive model may produce better predictions. For example, even if a predictive model is trained to make predictions at the booking level, the main focus is on making flight-level predictions (e.g., maximizing the total cargo volume of a flight for maximum revenue), which is an aggregation of booking-level predictions. Therefore, although the gradient boosting machine predictions fluctuate more and the individual predictions are farther from the actual values, the differences offset each other at the flight level. In other words, the aggregation of bookings at the flight level will automatically lead to a reduction in variance. In an evaluation, the inventors found that at the booking level, the variance in the gradient boosting machine predictions was more than five times higher than that in the random forest predictions. However, at the flight level, the mean absolute error of the random forest predictions was 87.1% higher than the prediction error of the gradient boosting machine. For these reasons, in some instances, using a gradient boosting machine to build a predictive model may be preferred, but is not limited to this. In other instances, the predictive model can be built on other suitable machine learning models.
[0050] A predictive model can be constructed based on various features of cargo bookings from a feature set. In one example, the feature set includes whether the scheduled cargo volume is a DMV, the scheduled cargo weight, and the number of days until the cargo departure date. If the scheduled cargo volume is marked as a DMV, the predictive model will devalue that scheduled cargo volume. In contrast to the scheduled cargo volume, which typically tends to be a DMV, the scheduled cargo weight can be valuable information. This is because shipping agents have more accurate information about cargo weight due to their access to high-quality weighing machines. In contrast, many shipping agents lack access to instruments for accurately measuring cargo volume. Therefore, because cargo weight is easier to measure, scheduled cargo weight is, on average, more accurate than scheduled cargo volume.
[0051] The number of days until the shipment's departure date may be included, as the inventors have found that bookings made closer to the departure date tend to be more accurate. In fact, the inventors have found that bookings timestamped a few days before the departure date from the customer's perspective tend to show a significant overbooking pattern (e.g., using the DMV). Therefore, the number of days until the shipment's departure date may be the most important feature for predicting the volume of cargo to be received. One explanation is that it's natural for shippers to overbook, as there are no penalties for overbooking in the air cargo business, and shippers would rather overbook than underbook.
[0052] In other aspects, the feature set may include one or more other features, including but not limited to the number of items in the booked cargo volume, the booked cargo volume, the shipping code, the cargo type, the cargo destination, and the cargo origin. The number of items in the booked cargo volume may be valuable to include in the prediction model because the received cargo volume tends to differ from the booked cargo volume not because the items are of different volumes, but because the number of items received is greater or less than the number booked. Therefore, the number of items in the booked cargo volume may be useful in predicting the likely outcome of the cargo volume to be received. For example, if a 12m 3 The volume of two single pieces, each of which has a volume of 6m 3 , then it is unlikely that a single piece will be split and the received volume will become 4m 3 In reality, the volume of the received cargo is more likely to be 6m 3 、18m 3 or 24m 3 .
[0053] The booked cargo volume, although in many instances a DMV, can still be valuable to include in the predictive model. This is because the booked cargo volume tends to be more accurate when it is not a DMV. The cargo type refers to the type of product that the cargo is, such as fresh food, pharmaceuticals, electronics, etc. Various patterns can be observed for specific cargo types and included in the predictive model. The shipping code is one or more codes that indicate how the shipment must be handled, such as live animals or perishable items. The shipping code feature may replace or supplement the product type feature. The shipping code can be encoded as a binary vector with one element for each shipping code (e.g., one-hot encoding).
[0054] The shipment destination (e.g., where the shipment is going) can be included in the forecast model because, in some instances, while the shipment destination is a weak predictor of the volume to be received, the shipment destination may help derive subtypes within the shipment type, which may help reduce variance in the forecast. Similarly, the shipment origin (e.g., where the shipment departs from) is a weak predictor of the volume to be received. However, the shipment origin may help capture the average behavior of booking agents of a particular origin, which may help reduce variance in the forecast. Therefore, it may be valuable to include both the shipment origin and the destination as features in the forecast model.
[0055] The features included in the feature set of the prediction model can each be weighted differently relative to their respective impact on the predicted cargo volume. For example, when determining the predicted cargo volume, the features can be weighted differently based on their importance (e.g., Figure 5 ) to weight each feature.
[0056] Then, a decision to accept or reject the cargo booking is generated based on the predicted cargo volume of the cargo booking (block 308). For example, the decision generator 224 may accept or reject the cargo booking based on the cargo volume predicted by the cargo forecaster 222 (e.g., 8m 3 ) to generate the decision to accept or reject a cargo booking. For any flight, capacity is a variable quantity (e.g., once the flight departs, the capacity disappears). Therefore, the decision-making problem can be viewed as a generalization of the classic knapsack problem, with two caveats: (i) cargo bookings occur over time, and (ii) the exact volume and weight of the shipment are only available at departure. Therefore, the decision to accept or reject a cargo booking can be modeled as a stochastic dynamic program.
[0057] To model the example stochastic dynamic programming, we can first define the state vector x = (x i ,...,x m ). Each x i is the number of items of type i assigned to the flight. As mentioned above, the cargo types are predefined categories, such as fresh food or medicine. The state vector x evolves over time t. Given a flight in state x at time t, the value function VF(x, t) can be defined as the expected revenue from the flight. The departure day can be marked as time t=0, and the booking horizon (e.g., the number of days until the departure day) extends until time t=T. Therefore, time flows in the opposite direction in this stochastic dynamic program. In this example, a single flight is modeled with a volume capacity k v , the volumetric capacity is fixed and known. In other examples, the volumetric capacity of a flight may depend on factors beyond the size of the aircraft, such as for flights that are not strictly cargo flights but also carry passengers. In such an example, the volumetric capacity k v Varies based on the passenger load on a particular flight.
[0058] Returning to the example stochastic dynamic programming, time can also be discretized, and in each time bin t, the probability of receiving the ordered item i is p i,t It can be assumed that, in each time step, only one shipment can arrive for booking. The probability that no booking occurs in time period t can be defined as In fact, when an agent reserves an item of type i, it is accompanied by a reservation volume bkvol i When the item finally arrives for shipment, the volume received is rcsvol i The benefit received from item i is R(rcsvol i), where R() is usually an increasing concave function of volume. For example, the more cargo volume is received, the more payment is received from the customer until the volume capacity of the aircraft is reached. During booking, the airline only knows the booked volume bkvol i , without knowing the received volume rcsvol i Therefore, the decision on whether to accept or reject a reservation can be based on the average volume of type i The value function VF(x, t) can then be defined as a recursive function (Bellman equation) as shown below in Equation 5 to maximize the overall expected return of the flight. The value function VF(x, 0) at departure can be defined as shown below in Equation 6.
[0059]
[0060] where [a] + =max{a,0} (6)
[0061] To further explain the value function, when the state is x at a given time t, then VF(x, t) is the expected return over the entire time horizon of the booking. At time step t, the probability that a shipment of type i arrives is p i,t If the reservation is accepted, the state will transition to x+e i , where e i is a one-hot binary vector where the value at position i is 1. By accepting the reservation, the expected return is However, to maximize revenue, the expected revenue can be maximized only if the expected revenue plus the value of accepting the reservation—e.g. A reservation for item i will only be accepted if VF(x, t-1) is greater than the value of not accepting the reservation and transitioning one step toward the departure date while staying in the same state. This revenue maximizing decision rule D1V for determining whether to accept or reject an incoming shipment of type i can be defined as shown in Equation 7 below. At time t=0 and in state x, VF(x, 0) in Equation 6 captures the unloading cost, which is proportional to the total expected volume. Subtract capacity k v Proportional (e.g., proportional value h v ). For example, if the expected volume is 100 units, and the capacity k v If it is 50 units, the unloading cost is -50h v .
[0062]
[0063] The above prediction model for predicting the volume of goods to be received can be integrated into the decision rule D1V to obtain the decision rule D2V shown in the following equation 8. The prediction model is f θ , so that the booking volume bkvol of a given type i i , then f θ (bkvol i ) is the predicted receiving volume Thus, in some examples, a decision to accept or reject a cargo booking is generated based on the decision rule D2V. For example, the decision generator 224 can be programmed to generate a result of the decision rule D2V. If the expected revenue of the predicted cargo volume plus the value of the predicted cargo volume of accepting the booking - for example, R(f θ (bkvol i ))+VF(x+e i If VF(x, t-1) is determined to be greater than the value of not accepting the reservation and transitioning one step toward the departure date while remaining in the same state, for example, VF(x, t-1), then a decision to accept the cargo reservation is generated. If the opposite is true, a decision to reject the cargo reservation is generated.
[0064] D2V:R(f θ (bkvol i ))+VF(x+e i , t-1)>VF(x, t-1) (8)
[0065] In some aspects, the value function can be modified to help limit or eliminate the effects of the curse of dimensionality in dynamic programming. In this example, for example, suppose there are m items and the number of time periods is T. Then, the size of the state space is exponential in m. For example, the size of the state space is S(T,m), the second Stirling number. An approximate solution to avoid the exponential explosion is to use aggregation This allows the state space to be a maximum-sized, one-dimensional scalar value, rather than a vector value. This state space is bounded by M × T, where M is the maximum possible volume for any type of reservation. This simplifies the construction of the value function VF(x, t). Therefore, in some examples, the decision to accept or reject a cargo reservation is generated based on the decision rule D2S, as shown in Equation 9 below. For example, the decision generator 224 can be programmed to generate the result of the decision rule D2S.
[0066] D2V:R(f θ (bkvol i ))+VF(x+f θ (bkvol i ), t-1)>VF(x, t-1) (9)
[0067] To help illustrate how dynamic programming can be used to form the value equation, an example situation is shown in Table 1 below. Assume that there are two types of cargo: type 1 and type 2. Both types can arrive for booking at any time step with probability 0.4, while the probability of a shipment arriving without any booking is 0.2. The payoff for type 1 is 1 and the payoff for type 2 is 2, while the volume for both types is fixed at 1 unit each. Recall that the times are labeled in reverse order so that the departure time is zero and the booking range extends all the way to time t=4. To calculate the value function VF, we can perform the reverse march for each state x. At this point, the state is a two-dimensional vector x=(x1, x2), where x1 and x2 are the number of bookings for type 1 and type 2, respectively. In this example, since the booking volume is assumed to have the value 1, the vector x can be collapsed to Different values of x are shown as rows in Table 2 below for the cost function according to the conditions shown in Table 1. Table 2 below shows an example calculation of VF(1, 2).
[0068]
[0069] Table 1
[0070] t=0 t=1 t=2 t=3 t=4 x=0 0.0 1.2 2.4 3.1 3.6 x=1 0.0 1.2 1.8 2.2 0.0 x=2 0.0 0.4 0.8 0.0 0.0 x=3 -1.0 -0.6 0.0 0.0 0.0 x=4 -2.0 0.0 0.0 0.0 0.0
[0071] Table 2
[0072] VF(1,2)=0.4max(1+VF(2,1),VF(1,1))+0.4
[0073] *max(2+VF(2,1),VF(1,1)+0.2*VF(1,1))
[0074] =0.4*(1+0.4)+0.4*(2+0.4)+0.2*1.2
[0075] =1.76≈1.8
[0076] In some aspects of the present disclosure, the decision to accept or reject a reservation generated can be a suggestion or an executable decision that an operator (e.g., an airline employee) can consider when a user makes an independent decision to accept or reject a reservation. For example, the decision generator 224 can be programmed to generate a message or executable decision that is displayed on the display 216. The message can be text that notifies the operator of the generated decision. The executable decision can notify the operator of the generated decision and can also enable the operator to execute the generated decision by interacting with the executable decision (e.g., selecting a link or a computer-generated button). In other aspects of the present disclosure, the decision to accept or reject a reservation generated can automatically accept or reject the reservation without further input from the operator. For example, the decision generator 224 can be programmed to automatically accept or reject a specific cargo reservation based on the generated decision. This automatic decision may occur shortly after receiving the specific cargo reservation, or may occur closer to the cargo departure date.
[0077] In at least one example, decision generation can be tuned for various business objectives. For example, predictive modeling and decision generation rules can be designed so that excessive overbooking results in a negative penalty (e.g., unloading), while underbooking does not result in a penalty (e.g., VF(x, 0) is zero when the total volume is less than the flight capacity). In such an example, it may be more beneficial to reduce the risk of unloading by using a predictive model that may over-forecast the volume of cargo to be received, resulting in fewer shipments being accepted. In other examples, predictive modeling can be designed to under-forecast the volume of cargo to be received, resulting in flights being more often at capacity rather than flights being underloaded. Other business objectives may result in similar appropriate adjustments to predictive modeling and decision generation.
[0078] Figure 4 A graph 400 is shown, which displays pseudo-missing values identified based on applying Equations 3 and 4 above to cargo reservation data (e.g., reservation data 214). The graph maps each distinct value from the reservation data to a two-dimensional feature space, allowing for visual determination of predetermined thresholds for g1 and g2. For example, graph 400 can be used to identify DMVs from an initial set of reservation data to populate DMV database 212. Each value that crosses a predetermined threshold is identified as a DMV. For example, values DMV1, DMV2, DMV3, DMV4, and DMV5 are identified as DMVs in graph 400.
[0079] Figure 5A graph 500 is shown, which shows the importance of features that the inventors have discovered that may be included in the above-mentioned prediction model. DAYS is the number of days until the shipment departure date. BKWT refers to the booked cargo weight. PIECES refers to the number of items in the booked cargo volume. BKVOL refers to the booked cargo volume. SHC refers to the shipping code. PRODUCT refers to the product type. DMV refers to whether the booked cargo volume is marked as a DMV. DEST refers to the destination of the cargo. ORIG refers to the origin of the cargo. For categorical features such as product type, the value of the category with the greatest importance is shown in graph 500. The importance of each feature can be considered when weighting the effect of each feature in the prediction model. As shown in graph 500, the inventors have discovered that the number of days until the shipment departure date is the most important feature, with a large difference compared to the differences between the other features.
[0080] Verify data
[0081] To verify the advantages of the currently disclosed cargo revenue management system and method, the inventors tested the system using two years of cargo booking data from airlines. Each booking record consists of several features, including: booking date, source, destination, agent, booking volume (bkvol), cargo type, receiving date, departure date and time, and receiving volume (rcsvol). This dataset is used to detect DMV, and all other features are used to build a machine learning model for predicting rcsvol. Simulated data is used for revenue and unloading cost information to evaluate the decisions generated by the provided system. To create a simulation from a real dataset, the probability p of a product type from the real dataset is calculated for each type i. i , as shown in Equation 10 below.
[0082]
[0083] The associated probabilities for the ten most frequent cargo types are shown in Table 3 below. It is observed that the cargo type frequencies are skewed, with the most frequent cargo type having a probability of 0.856. The booking horizon is split into 60 equal time steps, and the probability of a booking arriving at time step t is calculated using Equation 11 below. Individual probabilities are calculated for six different intervals of time steps, resulting in ten time steps per interval. For each interval, the average of the ten individual time steps belonging to that interval is taken. The results are shown in Table 4 below. Given the probability p of arrival type i at any time, i , and the probability p of getting any type of reservation at time t t , the probability of getting a reservation for product type i at time t is p i,t =P i P t .
[0084]
[0085] Table 3
[0086]
[0087] Time period 1-10 11-20 21-30 31-40 41-50 51-60 <![CDATA[p t ]]> 0.05 0.03 0.009 0.004 0.003 0.005
[0088] Table 4
[0089] The proposed system was first evaluated in terms of revenue benefits and unloading costs. The value function VF(x, t) table was calculated by using the entire dataset and taking the average booking volume at each time step. Then, two different test cases were considered to evaluate the advantages of the proposed system combining predictive modeling with decision making. In the first test case, no predictive modeling was performed. The decision to accept or reject an incoming booking by applying D2S was based on the reported booking cargo volume, i.e., f θ (bv i )=bv i The final unloading cost is then calculated based on the received cargo volume. In the second test case, the incoming bookings are processed to identify the DMV, and the currently disclosed predictive modeling generates a forecast of the cargo volume that can be expected to be received. By applying D2S, the decision to accept or reject the incoming booking is based on the forecast cargo volume.
[0090] At each time step, reservations are extracted from the dataset using the probabilities in Table 3 and applying the decision rule D2S. Figure 6A and Figure 6B Eleven different flight capacities k are shown for a total of 220,000 flights. v and the results for 10,000 flights per flight. In particular, Figure 6A Graph 600A showing comparative data between the utilized booked cargo volume and the utilized forecasted cargo volume with respect to unloading cost at eleven capacities is shown. Graph 600A shows that for various capacity constraints (k v ), unloading costs are reduced by almost a factor of ten and have a lower standard deviation. This shows that using the proposed system’s predictive modeling instead of booking volume not only reduces unloading costs but also adds a significant amount of certainty to the entire air cargo booking process.
[0091] Figure 6BA graph 600B is shown showing comparative data between the utilization of booked cargo volume and the utilization of predicted cargo volume with respect to final revenue at eleven capacity points. It is observed that when the predictive modeling of the provided system is used, revenue increases, indicating that the decision function selects higher-value shipments within the booking timeframe. Furthermore, when using the presently disclosed system, the standard deviation of revenue is lower, providing increased certainty to the air cargo booking process. In this example, the system's predictive model is designed such that it may over-forecast cargo volume, resulting in fewer shipments being accepted.
[0092] The predictive model and decision making of the provided system were then evaluated. To evaluate the predictive model, a three-fold cross validation was performed on a two-year cargo booking dataset. Forecasts were made for each individual booking, and the aggregated flight leg predicted volume was evaluated compared to the leg received volume. Cross validation was implemented so that all bookings from the same flight leg were kept in the same split. Based on the grid search results, the XGBoost regressor was set with a subsample ratio of 0.9 for each split column, 300 estimators, a maximum tree depth of 20, and a learning rate of 0.05. All other parameters were set to default values.
[0093] The mean relative absolute error e shown in Equation 12 below was used on the predictive model of the presented system. The average error across the entire historical data was 7.8%. Figure 7 A scatter plot 700 showing the percentage error of the predicted cargo volume compared to the received cargo volume is shown. The scatter plot 700 shows that the prediction error is below 5% for almost half of the flights, and below 10% for 74.8% of the flights. Figure 7 This data is shown in Table 702. It is observed that by using the provided system's predictive model instead of actual booking volume values, a greater number of flights have smaller errors. It is also noteworthy that the prediction error is lower for flights with higher capacity, where this has the greatest impact.
[0094]
[0095] Table 5 below shows the benefits of the provided system for shipment-level forecasting for the ten most frequent cargo types. Specifically, it shows the percentage reduction in forecast error (predicted RCSvol vs. actual RCSvol) from booking error (original scheduled volume vs. actual RCSvol). For nine of the ten cargo types, the forecast volume showed significant error reduction. Cargo type 9 is a rare cargo type with insufficient data to train a predictive model. Due to its rarity, cargo type 9 does not impact the overall segment volume forecast.
[0096]
[0097] Table 5
[0098] In order to evaluate the decision generation of the presented system separated from the predictive modeling, no predictions were made but based on average values. Make a decision. Determine the uninstallation based on the random number generated by the log-normal distribution, and thus derive the decision rule of D3S: The decision rule D3S is evaluated by comparing it with a first-come, first-served (FCFS) policy. In the FCFS policy, every incoming reservation is accepted until the capacity is exhausted. FCFS is a greedy policy in the sense that it will accept immediate benefits rather than wait for potential reservations that may generate more benefits. In an ideal setting, if the reservation value is equal to the reception value, FCFS will not incur any unloading cost. However, since these two values are rarely the same, the natural advantage of FCFS cannot be achieved, and this is demonstrated experimentally. Based on the average volume μ for each cargo type k of 24 categories, the average volume μ is used. k The simulated data set was created to compare the decision rule D3S and the FCFS strategy. Simulated data were created for 10,000 different simulations. The mean value was used as the booking volume, while the acceptance volume was selected from the set with mean and variance (θμ) equal to the booking volume. k ) 2 is obtained from the lognormal distribution.
[0099] The results in Table 6 below show how the proposed system's decision generation is beneficial not only for expected revenue but also for final revenue after deducting offloading costs. As the variance increases, offloading increases and revenue decreases, indicating that the proposed system can better handle the reservation decision process compared to the FCFS method.
[0100]
[0101] Table 6
[0102] Table 7 below provides the last sixteen steps within the booking horizon for one of the flight simulations in the simulation dataset. Specifically, it shows how the decision rule D3S maintains overbooking if yields are favorable, while rejecting less profitable shipments once capacity is reached. This results in the accumulation of unloading costs, ultimately aiming to maximize revenue.
[0103]
[0104]
[0105] Table 7
[0106] As used herein, "about," "approximately," and "substantially" should be understood to refer to numbers within a numerical range, for example, a range of -10% to +10% of the reference number, preferably -5% to +5% of the reference number, more preferably -1% to +1% of the reference number, and most preferably -0.1% to +0.1% of the reference number.
[0107] In addition, all numerical ranges herein should be understood to include all integers, whole or fractional, within the range. Moreover, these numerical ranges should be interpreted as providing support for claims involving any number or subset of numbers within the range. For example, disclosure of numbers from 1 to 10 should be interpreted as supporting ranges from 1 to 8, from 3 to 7, from 1 to 9, from 3.6 to 4.6, from 3.5 to 9.9, etc.
[0108] As used herein and in the appended claims, words in the singular include the plural unless the context clearly dictates otherwise. Thus, references to "a," "an," and "the" generally include the plural of the respective terms. For example, reference to "an airline" or "a type of cargo" includes a plurality of such "airlines" or "a type of cargo." The term "and / or" used in the context of "X and / or Y" should be interpreted as "X" or "Y" or "X and Y."
[0109] Without further elaboration, it should be believed that those skilled in the art can use the foregoing description to maximize the use of the claimed invention. The examples and aspects disclosed herein should be interpreted as merely illustrative and not limiting the scope of the present disclosure in any way. It will be apparent to those skilled in the art that the details of the above examples may be changed without departing from the underlying principles discussed. In other words, various modifications and improvements of the examples specifically disclosed in the above description are within the scope of the appended claims. For example, any appropriate combination of the features of the various examples described may be envisioned.
Claims
1. A system for managing cargo reservations, the system comprising: Memory; as well as a processor in communication with the memory, the processor being configured to: receiving a cargo reservation including a reserved cargo volume and a reserved cargo weight, wherein the cargo reservation is received a certain number of days until a cargo departure date, Determine whether the booked cargo volume is a pseudo missing value, determining, using a machine learning model, a predicted cargo volume for the cargo booking based on a set of features of the cargo booking, the set of features including at least whether the booked cargo volume is a pseudo-missing value, the booked cargo weight, and the number of days until a departure date of the cargo; and generating a decision to accept or reject the cargo reservation based in part on the predicted cargo volume, wherein the memory stores a database of identified spurious missing values, and wherein determining whether the booked cargo volume is a spurious missing value comprises comparing the booked cargo volume to the database of identified spurious missing values, wherein the processor is further configured to identify a new pseudo-missing value based on a deviation of an average received cargo volume of a specific reserved cargo volume from the specific reserved cargo volume exceeding a first predetermined threshold, Wherein, the deviation g1 is defined by the following equation: in, u i is the specific booked cargo volume, v i,k is the corresponding received cargo volume of the specific booked cargo volume, and n i is the number of received cargo volumes for the specific booked cargo volume, wherein the machine learning model is trained by using previous booking data, the previous booking data comprising previous cargo bookings, a previous booking volume for each of the previous cargo bookings, and a previous receiving volume for each of the previous cargo bookings, The machine learning model is built using one or more gradient boosting machines, wherein the one or more gradient boosting machines are configured to use an ensemble method that builds shallow trees in a sequential manner, where each subsequent tree is trained by using the dependent variable as the residual of the previous tree.
2. The system according to claim 1, wherein: The processor is further configured to: When new pseudo-missing values are identified, the database of pseudo-missing values is updated.
3. The system according to claim 2, wherein: The new pseudo-missing value is further identified based on: an entropy of the received cargo volume for the particular booked cargo volume exceeds a second predetermined threshold, The entropy g2 is defined by the following equation: in, And among them, u i is the specific booked cargo volume, V i is the set of received cargo volumes of the specific reserved cargo volume, K is for V i The number of different elements of V i,k It is V i The kth bucket of n i It is the number of received cargo volumes for the specific reserved cargo volume.
4. A method for managing cargo reservations, the method comprising: receiving a cargo reservation including a reserved cargo volume and a reserved cargo weight, wherein the cargo reservation is received a certain number of days until a cargo departure date, Determine whether the booked cargo volume is a pseudo missing value, determining, using a machine learning model, a predicted cargo volume for the cargo booking based on a set of features of the cargo booking, the set of features including at least whether the booked cargo volume is a pseudo-missing value, the booked cargo weight, and the number of days until a departure date of the cargo; and generating a decision to accept or reject the cargo reservation based in part on the predicted cargo volume, wherein determining whether the booked cargo volume is a pseudo-missing value comprises comparing the booked cargo volume with a database of identified pseudo-missing values; The method further includes identifying a new pseudo-missing value based on a deviation of an average received cargo volume of a specific scheduled cargo volume from the specific scheduled cargo volume exceeding a first predetermined threshold, Wherein, the deviation g1 is defined by the following equation: in, u i is the specific booked cargo volume, v i,k is the corresponding received cargo volume of the specific booked cargo volume, and n i is the number of received cargo volumes for the specific booked cargo volume, wherein the machine learning model is trained by using previous booking data, the previous booking data comprising previous cargo bookings, a previous booking volume for each of the previous cargo bookings, and a previous receiving volume for each of the previous cargo bookings, The machine learning model is built using one or more gradient boosting machines, wherein the one or more gradient boosting machines are configured to use an ensemble method that builds shallow trees in a sequential manner, where each subsequent tree is trained by using the dependent variable as the residual of the previous tree.
5. The method according to claim 4, wherein The set of characteristics further includes one or more of the group consisting of: the number of items in the reserved cargo volume, the reserved cargo volume, a shipping code, a cargo type, a cargo destination, and a cargo origin.
6. The method according to claim 4, wherein: Each feature in the set of features includes an importance factor for determining the predicted cargo volume, and wherein the number of days from receiving the cargo reservation until the cargo departure date has the greatest importance factor.
7. The method according to claim 6, wherein: The planned cargo weight has the second greatest importance factor.
8. The method according to claim 4, wherein: The decision is generated based on maximizing the expected revenue of the total cargo volume including the plurality of cargo reservations.
9. The method according to claim 8, wherein The total cargo volume is a fixed volume.
10. The method according to claim 8, wherein If the sum of the value of accepting the predicted cargo volume and the expected revenue by accepting the predicted cargo volume is greater than the value of rejecting the predicted cargo volume, a decision to accept the cargo booking is generated.
11. The method according to claim 10, wherein: The value of accepting or rejecting the predicted cargo volume is defined by the following recursive function: Where t = 1, 2, ..., T, where x is the state vector (x i ,…,x m ), and among them, t is the number of days remaining until the shipment's departure date, T is the number of days from receipt of the cargo reservation until the cargo departure date, i is the number of cargo types in the total cargo volume, x i is the quantity of each respective goods type in the goods type, is the expected revenue by accepting the predicted cargo volume, p i,t is the probability that cargo type i arrives at time t, e i is a one-hot binary vector with 1 at position i, p 0,t is the probability that no booking occurs in time period t, VF(x,t) is the value that maximizes the total expected revenue of the flight, VF(x+e i ,t-1) is the value of accepting the predicted cargo volume, and VF(x,t-1) is the value of rejecting the predicted cargo volume.
12. The method according to claim 11, wherein The decision is made based on the following relationship: R(f θ (bkvol i ))+VF(x+e i ,t-1)>VF(x,t-1), where, R(f θ (bkvol i )) is the expected revenue by accepting the predicted cargo volume, f θ (bkvol i ) is the predicted cargo volume, VF(x+e i ,t-1) is the value of accepting the predicted cargo volume, and VF(x,t-1) is the value of rejecting the predicted cargo volume.
13. A non-transitory computer-readable medium storing instructions that, when executed by a processor, cause the processor to: Receiving a cargo reservation including a reserved cargo volume and a reserved cargo weight, wherein: The number of days from when the cargo reservation is received until the cargo departure date, Determine whether the booked cargo volume is a pseudo missing value, determining, using a machine learning model, a predicted cargo volume for the cargo booking based on a set of features of the cargo booking, the set of features including at least whether the booked cargo volume is a pseudo-missing value, the booked cargo weight, and the number of days until a departure date of the cargo; and generating a decision to accept or reject the cargo reservation based in part on the predicted cargo volume, wherein determining whether the booked cargo volume is a pseudo-missing value comprises comparing the booked cargo volume with a database of identified pseudo-missing values; wherein the non-transitory computer-readable medium further stores instructions that, when executed by the processor, cause the processor to identify a new pseudo-missing value based on a deviation of an average received cargo volume of a specific reserved cargo volume from the specific reserved cargo volume exceeding a first predetermined threshold; Wherein, the deviation g1 is defined by the following equation: in, u i is the specific booked cargo volume, v i,k is the corresponding received cargo volume of the specific booked cargo volume, and n i is the number of received cargo volumes for the specific booked cargo volume, wherein the machine learning model is trained by using previous booking data, the previous booking data comprising previous cargo bookings, a previous booking volume for each of the previous cargo bookings, and a previous receiving volume for each of the previous cargo bookings, The machine learning model is built using one or more gradient boosting machines, wherein the one or more gradient boosting machines are configured to use an ensemble method that builds shallow trees in a sequential manner, where each subsequent tree is trained by using the dependent variable as the residual of the previous tree.
14. The non-transitory computer-readable medium of claim 13, wherein: Generating the decision includes automatically accepting or rejecting the cargo reservation without further input.
Citation Information
Patent Citations
Preserving the highest shipping price using a logistics management system (LMS)
US20160140483A1