US 6263323 B1 Abstract A technique for producing constructed fares that include an arbitrary added to a published fare is described. The techniques determine interior cities that appear with gateway cities in arbitraries for the airline and searches for gateway cities corresponding to the determined interior cities appearing in the arbitraries. The technique applies an arbitrary corresponding to one of the interior cities to a published fare involving one of the gateway cities to produce the constructed fare.
Claims(5) 1. A method of evaluating constructed fares against construction tables comprises:
forming a query to obtain a record from a construction table to evaluate the validity of a constructed fare;
determining whether the query has been stored in a store of past queries and associated answers;
if the query has been stored, retrieving the answer from the store to evaluate the constructed fare, otherwise retrieving the record from a remote database;
evaluating the constructed fare against the record; and
storing an answer from evaluating the constructed fare for future references.
2. The method of claim
1 wherein the store is a memoization store.3. The method of claim
1 wherein once the answer for a certain query has been stored, the procedure does not need to be run again on that query unless the record changes.4. The method of claim
1 wherein the construction table is a so called ATPCO P02 table.5. The method of claim
1 wherein the construction table 2 is a so called ATPCO P04 table.Description
This invention relates to a process for producing constructed fares. Airlines publish fares for various markets. A market is a city pair such as NYC-PAR (New York-Paris). For markets involving major cities like the NYC-PAR market, airlines provide published fares, that is, stated prices for travel between the two cities. For markets involving minor cities, however, the airlines rely on a process called fare construction to produce fares that are sometimes called “constructed fares.” Fare construction is particularly used for minor markets involving international travel. In the NYC-PAR market there may be hundreds of published fares with corresponding rules to combine the fares. However, there are too many markets for airlines to actually publish fares for every single market. For example, for the OME-NCE (Nome, Ak./Nice, France) market, there may not be a published fare because the Nome-Nice market may be too small for airlines to actually publish fares. Nevertheless, the airlines need to be able to offer some price for an OME-NCE ticket. The fare construction process solves this problem by providing a mechanism to “extend” a published fare with add-ons also called arbitraries, in order to derive prices to minor cities. An arbitrary, like a published fare, lists two cities. However, unlike cities in a published fare (which establish a bidirectional market), the cities in an arbitrary are ordered: the first is the gateway (or major) city, and the second is the interior (or minor) city. Constructed fares can be either two-component constructed fares, i.e., one arbitrary combined with one published fare or three-component constructed fares, i.e., two arbitraries combined with one published fare. Examples of two-component constructed fares include
As the examples show, the arbitrary can be added to either end of the published fare. A three-component constructed fare is shown below, where arbitraries are added to both sides of the published fare
In general, two-component constructed fares provide prices between a minor city and a major city, while three-component constructed fares provide prices between two minor cities. One approach used to fare construction is to use a list of constructed fares called “The Unpublished Fares Product” that is available from Airline Tariff Publishing Company (ATPCO). ATPCO is an intermediary that maintains fares published by airlines and resellers. With “The Unpublished Fares Product” a cross-product of all arbitraries and all base fares is determined and provided into a list. That list can contain millions of constructed fares. In addition, there are rules that govern the fare construction process, many of which date back to times when fare construction was performed by hand on paper. In particular, not all arbitraries can combine with all fares; various table-driven compatibility checks are performed to verify that a particular combination is acceptable. According to an aspect of the present invention, a method of producing constructed fares that includes an arbitrary added to a published fare is provided. The method is executed in a computer system and the method includes determining interior cities that appear with gateway cities in arbitraries for the airline, searching for gateway cities corresponding to the determined interior cities appearing in the arbitraries and applying an arbitrary corresponding to one of the interior cities to a published fare involving one of the gateway cities to produce the constructed fare. According to a further aspect of the present invention, a method of producing a set of constructed international fares for an airline is executed in a computer system and includes determining interior cities that appear with gateway cities in arbitraries for the airline, searching for gateway cities corresponding to the determined interior cities appearing in the arbitraries and applying each arbitrary corresponding to each of the determined interior cities to published fares involving the gateway cities to produce the set of constructed fares. According to a further aspect of the present invention, a computer program product resides on a computer readable medium for producing constructed fares that includes an arbitrary added to a published fare. The computer program product includes instructions for causing a computer system to determine interior cities that appear with gateway cities in arbitraries for the airline, search for gateway cities corresponding to the determined interior cities appearing in the arbitraries and apply an arbitrary corresponding to one of the interior cities to a published fare involving one of the gateway cities to produce the constructed fare. According to a further aspect of the present invention, a computer program product for producing a set of constructed international fares for an airline resides on a computer readable medium and includes instructions that cause a computer to determine interior cities that appear with gateway cities in arbitraries for the airline, search for gateway cities corresponding to the determined interior cities appearing in the arbitraries and apply each arbitrary corresponding to each of the determined interior cities to published fares involving the gateway cities to produce the set of constructed fares. According to a further aspect of the present invention, a computer system includes a processor and a memory for storing instructions executed by the processor. The system also includes a storage medium storing a computer program product for producing a set of constructed international fares for an airline. The computer program product includes instructions that cause the processor to determine interior cities that appear with gateway cities in arbitraries for the airline, and search for gateway cities corresponding to the determined interior cities appearing in the arbitraries. The program also includes instructions that cause the processor to apply each arbitrary corresponding to each of the determined interior cities to published fares involving the gateway cities to produce the set of constructed fares. One or more of the following advantages may be provided from one or more aspects of the invention. The fare construction process produces “constructed fares” in a computational efficient manner. The fare construction process dynamically produces constructed fares. That is, because of the efficiency of the algorithm the fare construction process can produce constructed fares on an “as needed basis”, using the most current information such as currency conversion factors, prices, fares, and fare construction tables. The fare construction process produces two and three component constructed fares. The fare construction process produces the fares efficiently, since although the process is quadruple-nested, branching factors at each loop level are generally small, because there are relatively few gateway cities for a given interior city. The foregoing features and other aspects of the invention will be described in further detail by the accompanying drawings, in which: FIG. 1 is a block diagram of a computer system having a fare construction process to produce constructed fares. FIGS. 2A-2D are block diagrams showing use of hash tables used to store data for use by the fare construction process. FIGS. 3A-3B are flow charts showing a fare construction process used in the system of FIG. 1 to produce two component constructed fares. FIGS. 4A-4C are flow charts showing a fare construction process used in the system of FIG. 1 to produce two and three component constructed fares. FIG. 5 is a flow chart showing use of a memoization process for rule retrieval. Referring now to FIG. 1, a computer system The computer system The fare construction process One approach to produce a large number of constructed fares can generate a list, and generally a complete list, of all possible constructed fares. This process could be based on an algorithm that forms all legal combinations of all arbitraries with all published fares and stores them in a table of fares. One way of doing this would use an algorithm that loops for each airline for each of four cities as shown below. loop: for each airline a, loop: for each city, c loop: for each city, c loop: for each city, c loop: for each city, c This process is not efficient because there are far too many cities to make this a practical approach. Assume there are 1000 cities with airports, (there are actually far more than that), then the running time of this process is proportional to 1000 Referring now to FIGS. 2A-2D, preprocessing The first hash table The second hash table The third hash table Producing the hash tables is quite efficient. The process that produces the hash tables can run in a time that is proportional to the number of arbitraries for the first table Referring now to FIGS. 3A-3B, a fare construction process This fare construction process Pseudocode for the fare construction process loop: for each airline a, loop: for each city, c loop: for each city, c loop: for each city, c The fare construction process The fare construction process The fare construction process If all C Referring now to FIGS. 4A-4C, a fare construction process Pseudocode for the fare construction process loop: for each airline a, loop: for each city, c loop: for each city, c loop: for each city, c loop: for each city, c The fare construction process The fare construction process A valid constructed, international fare can have either one or two arbitraries. Current ATPCO rules permit one arbitrary and one base fare or two arbitraries and a base fare. The ATPCO rules do not permit more than two arbitraries. The fare construction process For any city, there is a manageable number of arbitraries, e.g., 0.1 to 10s for example. Therefore, given such a set there is a manageable number of cities that are involved in an arbitrary. The fare construction process Trying to construct a fare for a city combination involves evaluating the constructed fares against fare rules. Although, these rules are extensive, the process described herein makes use of several approaches that speed up aspects of the rule evaluation process. The fare construction process The PO When the airline fare construction process Referring to FIG. 5, in determining whether or not a fare can combine with an arbitrary To save time when constructing large numbers of fares, a PO The answer from the remote database is stored For subsequent calls for the record, the output from the memoization store The construction tables also include so-called PO The fare construction process loop: for each airline a, if (a=R) loop: for each city, c . . . where “R” is a code for a specific airline. The modification will produce only fares for the airline specified by “R”. The other loops can be similarly conditioned. In general, the process can be modified to produce fares matching this pattern:
where any combination of these elements can be allowed to vary, and where “cxr” is an airline code, “interior
will produce all United Airlines constructed fares from Nome to Nice via any gateways, with any fare basis, and with any number of components (two or three). Pseudocode for the algorithm modified to support these options follows. loop: for each airline a, if cxr=<any>, or cxr=a then loop: for each city, c if interior loop: for each city, c if gateway loop: for each city, c if gateway if fare-basis/=<any>then remove fares from X not matching fare-basis if components=<any>or components=2 then emit fares remaining in X if components=<any>, or components=3 then loop: for each city, c if interior if fare-basis/=<any>then remove fares from Y not matching fare-basis emit fares remaining in Y It is to be understood that while the invention has been described in conjunction with the detailed description thereof, the foregoing description is intended to illustrate and not limit the scope of the invention, which is defined by the scope of the appended claims. Other aspects, advantages, and modifications are within the scope of the following claims. Patent Citations
Non-Patent Citations
Referenced by
Classifications
Legal Events
Rotate |