U.S. patent application number 14/325902 was filed with the patent office on 2014-10-30 for method and system for determining an optimal low fare for a trip.
The applicant listed for this patent is AMADEUS S.A.S.. Invention is credited to Thierry Dufresne, Marc Patoureaux, David Pauchet.
Application Number | 20140324550 14/325902 |
Document ID | / |
Family ID | 41168479 |
Filed Date | 2014-10-30 |
United States Patent
Application |
20140324550 |
Kind Code |
A1 |
Patoureaux; Marc ; et
al. |
October 30, 2014 |
METHOD AND SYSTEM FOR DETERMINING AN OPTIMAL LOW FARE FOR A
TRIP
Abstract
A method, system and computer program product assist an airline
in determining if a lower fare exists for a trip among fares
already proposed by the airline or other airlines. A set of tables,
each associated with particular departure and arrival locations,
may be created in an encompassing request database based upon
results identified for requests sent from one or more clients,
travel agents or airlines to a production traffic engine. The
encompassing request database may then be queried by an airline to
determine whether a lower fare exists for the trip.
Inventors: |
Patoureaux; Marc; (Grasse,
FR) ; Dufresne; Thierry; (Opio, FR) ; Pauchet;
David; (Mougins, FR) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
AMADEUS S.A.S. |
Sophia Antipolis |
|
FR |
|
|
Family ID: |
41168479 |
Appl. No.: |
14/325902 |
Filed: |
July 8, 2014 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
13647095 |
Oct 8, 2012 |
8799184 |
|
|
14325902 |
|
|
|
|
12562116 |
Sep 17, 2009 |
8311859 |
|
|
13647095 |
|
|
|
|
Current U.S.
Class: |
705/7.35 |
Current CPC
Class: |
G06Q 50/14 20130101;
G06Q 10/02 20130101; G06Q 30/0206 20130101; G06Q 50/30 20130101;
G06Q 30/02 20130101 |
Class at
Publication: |
705/7.35 |
International
Class: |
G06Q 30/02 20060101
G06Q030/02; G06Q 50/30 20060101 G06Q050/30 |
Foreign Application Data
Date |
Code |
Application Number |
May 18, 2009 |
EP |
09305452.6 |
Claims
1. A method for an airline to determine if a lower fare exists for
a trip among fares already proposed by the airline or other
airlines, the method comprising: identifying, for each of a
plurality of first type requests sent from one or more clients,
travel agents or airlines to a production traffic engine, a
corresponding result from the production traffic engine; creating a
plurality of tables in an encompassing request database based upon
the corresponding results identified for the plurality of first
type requests, wherein each table is specific to a departure
location and an arrival location, and each table indicates the
first type requests having identified corresponding results that
include the departure location and the arrival location specific to
such table; and upon the encompassing request database receiving a
second type request comprising a departure location and an arrival
location of the trip, searching among the indicated first type
requests having identified corresponding results that include the
departure location and the arrival location of the second type
request for one or more first type requests to be used in the
determination of whether the lower fare exists for the trip,
wherein the second type request is based on an airline request that
defines the trip and is sent by the airline.
2. The method of claim 1, wherein at least one table of the
encompassing request database indicates a first type request having
an identified corresponding result that includes a combination of
flights, a flight among the combination of flights being from the
departure location specific to the at least one table to the
arrival location specific to the at least one table.
3. The method of claim 2, wherein the arrival location specific to
the at least one table is a first arrival location for the
combination of flights, and wherein the combination of flights
includes a second flight from the first arrival location to a
second arrival location such that the first arrival location is a
connection location for the combination of flights.
4. The method of claim 3, wherein the airline request comprises a
fare for the trip, the one or more first type requests to be used
in the determination of whether the lower fare exists for the trip
comprises the first type request having the identified
corresponding result that includes the combination of flights, and
the method further comprises: calculating a fare for an alternative
request based on the first type request having the identified
corresponding result that includes the combination of flights;
comparing the fare for the alternative request with fare of the
airline request; and if the fare of the airline request is greater
than the fare of the alternative request, lowering the fare of the
trip defined by the airline request.
5. The method of claim 3, wherein the combination of flights
defines a round trip from the destination location specific to the
at least one table to the arrival location specific to the least
one table.
6. The method of claim 1, wherein each of the identified
corresponding results comprises a fare, and searching among the
indicated first type requests having identified corresponding
results that include the departure location and the arrival
location of the second type request for the one or more first type
requests comprises: retrieving a predetermined number of indicated
first type requests having identified corresponding results that
include the departure location and the arrival location of the
second type request based on the fares of the identified
corresponding results that include the departure location and the
arrival location of the second type request, the predetermined
number being specified in the encompassing request database.
7. The method of claim 1, wherein the corresponding result from the
production traffic engine identified for each first type request
comprises a lowest fare found by the production traffic engine for
such first type request.
8. The method of claim 1, wherein the airline request further
comprises a fare for the trip, and the method further comprises:
calculating a fare for each of one or more alternative requests
that are based on the one or more first type requests to be used in
the determination of whether the lower fare exists for the trip;
and comparing each of the fares for the one or more alternative
requests with the fare of the airline request.
9. The method of claim 8, further comprising: if the fare of the
airline request is greater than the fare of an alternative request
that is associated with the airline, increasing the fare of a trip
corresponding to the alternative request associated with the
airline.
10. The method of claim 8, further comprising: if the fare of the
airline request is greater than the fare of any of the one or more
alternative requests, lowering the fare for the trip defined by the
airline request.
11. The method of claim 1, further comprising: if the airline
request comprises multiple origins and destinations: building a
plurality of second type requests, each second type request being
associated with an origin and destination pair of the airline
request; and sending the plurality of second type requests to the
encompassing request database.
12. A system for an airline to determine if a lower fare exists for
a trip among fares already proposed by the airline or other
airlines, the system comprising: at least one processor; and a
memory storing instructions that, when executed by the at least one
processor, cause the system to: identify, for each of a plurality
of first type requests sent from one or more clients, travel agents
or airlines to a production traffic engine, a corresponding result
from the production traffic engine; create a plurality of tables in
an encompassing request database based upon the corresponding
results identified for the plurality of first type requests,
wherein each table is specific to a departure location and an
arrival location, and each table indicates the first type requests
having identified corresponding results that include the departure
location and the arrival location specific to such table; and upon
the encompassing request database receiving a second type request
comprising a departure location and an arrival location of the
trip, search among the indicated first type requests having
identified corresponding results that include the departure
location and the arrival location of the second type request for
one or more first type requests to be used in the determination of
whether the lower fare exists for the trip, wherein the second type
request is based on an airline request that defines the trip and is
sent by the airline.
13. The system of claim 12, wherein at least one table of the
encompassing request database indicates a first type request having
an identified corresponding result that includes a combination of
flights, a flight among the combination of flights being from the
departure location specific to the at least one table to the
arrival location specific to the at least one table.
14. The system of claim 13, wherein the arrival location specific
to the at least one table is a first arrival location for the
combination of flights, and wherein the combination of flights
includes a second flight from the first arrival location to a
second arrival location such that the first arrival location is a
connection location for the combination of flights.
15. The system of claim 14, wherein the airline request comprises a
fare for the trip, the one or more first type requests to be used
in the determination of whether the lower fare exists for the trip
comprises the first type request having the identified
corresponding result that includes the combination of flights, and
the instructions further cause the system to: calculate a fare for
an alternative request based on the first type request having the
identified corresponding result that includes the combination of
flights; compare the fare for the alternative request with fare of
the airline request; and if the fare of the airline request is
greater than the fare of the alternative request, lower the fare of
the trip defined by the airline request.
16. The system of claim 14, wherein the combination of flights
defines a round trip from the destination location specific to the
at least one table to the arrival location specific to the least
one table.
17. The system of claim 12, wherein each of the identified
corresponding results comprises a fare, and wherein the
instructions configured to cause the system to search among the
indicated first type requests having identified corresponding
results that include the departure location and the arrival
location of the second type request for the one or more first type
requests comprises instructions that further cause the system to:
retrieve a predetermined number of indicated first type requests
having identified corresponding results that include the departure
location and the arrival location of the second type request based
on the fares of the identified corresponding results that include
the departure location and the arrival location of the second type
request, the predetermined number being specified in the
encompassing request database.
18. The system of claim 12, wherein the airline request further
comprises a fare for the trip, and the instructions further cause
the system to: calculate a fare for each of one or more alternative
requests that are based on the one or more first type requests to
be used in the determination of whether the lower fare exists for
the trip; and compare each of the fares for the one or more
alternative requests with the fare of the airline request.
19. The system of claim 18, wherein the instructions further cause
the system to: if the fare of the airline request is greater than
the fare of an alternative request that is associated with the
airline, increase the fare of a trip corresponding to the
alternative request associated with the airline.
20. A computer program product comprising: a non-transitory
computer readable medium; and instructions stored on the computer
readable medium and configured, upon execution by at least one
processor, to cause the at least one processor to: identify, for
each of a plurality of first type requests sent from one or more
clients, travel agents or airlines to a production traffic engine,
a corresponding result from the production traffic engine; create a
plurality of tables in an encompassing request database based upon
the corresponding results identified for the plurality of first
type requests, wherein each table is specific to a departure
location and an arrival location, and each table indicates the
first type requests having identified corresponding results that
include the departure location and the arrival location specific to
such table; and upon the encompassing request database receiving a
second type request comprising a departure location and an arrival
location of the trip, search among the indicated first type
requests having identified corresponding results that include the
departure location and the arrival location of the second type
request for one or more first type requests to be used in the
determination of whether the lower fare exists for the trip,
wherein the second type request is based on an airline request that
defines the trip and is sent by the airline.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application is a continuation of application Ser. No.
13/647,095, filed Oct. 8, 2012, which is a continuation of
application Ser. No. 12/562,116, filed Sep. 17, 2009 (Issued as
U.S. Pat. No. 8,311,859), which claims the benefit of European
Patent Application No. EP09305452.6 filed May 18, 2009. The
disclosure of each of these patent documents is hereby incorporated
by reference herein in its entirety.
FIELD OF THE INVENTION
[0002] The present invention relates to a method and system for
determining an optimal fare for a specific trip, particularly but
not exclusively in the travel industry domain.
BACKGROUND OF THE INVENTION
[0003] Nowadays, when a user wants to search for and book a trip
comprising an airline flight, the user can request fares through a
specific process. Thus, the user can search for fares in airlines
databases which comprise such fares. The user may alternatively use
on an airline website or an online travel agency. Before booking,
the user can then compare the different fares displayed on each
website for a specific flight from a departure point A to an
arrival point C. Often, for the same airline, a fare for a direct
flight from a point A to a point C is higher than a fare for a
flight from a point A to a connection C and from the connection C
to the point B. Therefore, when the user wants to fly from A to C
only, the user books the cheapest flight which is the one from A to
B comprising the connection C. Of course, the user only flies from
A to C and does not use the flight from C to B. Thus, the airline
books one seat on each flight for the user whereas the user only
uses one seat for the flight from A to C. The airline notices the
non-use of the seat for the flight from C to B only at the time of
the flight. The airline cannot anticipate such a situation.
Therefore, the airline cannot generally resell the non-used seat to
another user before the flight from C to B departs. This type of
situation happens regularly and airlines may wish to change these
uncertain circumstances. Typically this situation is brought about
by incorrect management of travel fares rules from airlines.
Inconsistencies may arise when the airlines add new fares. The new
fares are not always compared with previous fares relating to the
same city pair or to other city pairs in combination with the
requested trip.
[0004] Therefore, as previously mentioned, a combination of two
indirect flights from A to C and from C to B is often cheaper than
a direct flight from A to C. As a consequence, the user may wish to
choose the A-C-B trip i.e. the cheapest one rather than the more
expensive A-C flight. When a substantial number of users choose
this cheapest solution, the number of no-shows on the C-B flight
increases, which induces an important economic negative impact for
the corresponding airline(s).
SUMMARY OF THE INVENTION
[0005] An object of the present invention is to alleviate at least
some of the problems associated with the prior art systems.
[0006] According to one aspect of the present invention, an airline
may determine if a lower fare exists for a trip among fares already
proposed by the airline or other airlines. More particularly, for
each of a plurality of first type requests sent from one or more
clients, travel agents or airlines to a production traffic engine,
a corresponding result from the production traffic engine may be
identified. A set of tables may be created in an encompassing
request database based upon the corresponding results identified
for the plurality of first type requests, where each table is
specific to a departure location and an arrival location, and
indicates the first type requests having identified corresponding
results that include the departure location and the arrival
location specific to such table. Upon the encompassing request
database receiving a second type request that includes a departure
location and an arrival location of the trip in question, the
indicated first type requests having identified corresponding
results that include the departure location and the arrival
location of the second type request may be searched for one or more
first type requests to be used in the determination of whether the
lower fare exists for the trip. The second type request may be
based on an airline request that defines the trip and is sent by
the airline making the determination.
BRIEF DESCRIPTION OF DRAWINGS
[0007] Reference will now be made, by way of example, to the
accompanying drawings, in which:
[0008] FIG. 1 is a diagram of the process for determining an
optimal fare for a trip by way of example, in accordance with one
embodiment of the present invention;
[0009] FIG. 2 is a diagram of a table from a learning entity module
in FIG. 1 by way of example, in accordance with one embodiment of
the present invention;
[0010] FIG. 3 is a diagram of another table from a learning entity
module in FIG. 1 by way of example, in accordance with one
embodiment of the present invention;
[0011] FIG. 4 is a flow chart of the method steps of a part 1 of
the process of the FIG. 1 by way of example, in accordance with one
embodiment of the present invention;
[0012] FIG. 5 is a flow chart of the method steps of another part 2
of the process of the FIG. 1 by way of example, in accordance with
one embodiment of the present invention.
DETAILED DESCRIPTION OF THE EMBODIMENTS
[0013] FIG. 1 shows a production traffic database 90 which relates
to one or more airlines. This database 90 stores data relating to
trips such as flights or routes, for example. The database 90
comprises a first database relating to fares and associated rules
for each airline. A fare refers to the price of one or more flights
including fees and taxes such as airport taxes and insurance fees.
The database 90 also comprises a second database relating to the
flights and their corresponding availabilities, for each airline.
The first and the second databases provide data which include
criteria such as a departure location and/or an arrival location
and corresponding fare information where appropriate. The database
90 is connected to a production traffic engine 100. The production
traffic engine 100 may support one or many travel suppliers or
vendors. As shown in FIG. 1, users such as travelers, travel agents
or airlines can send a first type request 80 to the production
traffic engine 100 in order to find the lowest fare for a specific
trip. Thus, the production traffic engine 100 regularly downloads
data from the production traffic database 90 in order to find the
lowest matching fares for a specific trip request. Thus, the
production traffic engine 100 handles a significant amount of data
relating to flights and fares.
[0014] Each first type request 80 comprises several criteria for a
trip such as at least one departure location and arrival location.
The result from the production traffic engine 100 comprises one
flight or a combination of flights in order to identify the lowest
available fare for the first type request.
[0015] When the result is one flight, this means that the lowest
fare found by the production traffic engine 100 refers to a direct
flight. When the result is a combination of flights, the combined
flight resulting from the combination of the flights must have the
same departure location and the same arrival location as these
indicated in the request. In the situation where the result is a
combination of flights, the combination of flights provides the
lowest fare for the requested trip. Thus, the corresponding fare
associated with the combined flight is lower than the fare
associated with the direct flight.
[0016] In the example where the first type request 80 refers to a
direct flight from a location A to a location B, the optimal result
may relate to a combination of flights such as a flight from the
location A to the location C and then another flight from the
location C to the location B. In this case, this means that the
combined flight comprising both flights from A to C and from C to B
is cheaper than the direct flight from A to B.
[0017] As shown in FIG. 1, the production traffic engine 100 is
connected to a learning entity module 102. The module 102 analyses
and parses the results of the production traffic engine 100. The
module 102 identifies each first type request from users and the
corresponding result from the production traffic engine 100 in
order to create specific tables for associating each first type
request with a corresponding result.
[0018] As indicated in FIG. 2, each table 200 and 300 relates to a
first type request, the possible corresponding result, which each
comprises one flight or a combination of flights and a
corresponding fare for the flight or the combined flight.
[0019] In addition, the first type request comprises elements which
refer to a specific departure location, a specific arrival location
and the corresponding fares at a specific date. Thus, for example
in FIG. 2, the table relates to the departure location A and the
arrival location B. The table 200 gathers possible first type
requests and results as found in the production traffic engine 100.
The table 200 does not only provide the lowest fare for the first
type request for A to B but also indicates a number of possible
first type requests for which the result includes a flight from A
to B. The possible results in this example are: a round trip A to
B; a combination of flights from A to B and from B to C to obtain a
combined flight from A to C or a direct flight as requested from A
to B. Each possible result is stored with its associated fare and
its associated first type request.
[0020] The module 102 of FIG. 1 comprises a table for each
departure location and arrival location encountered in the results
of the production traffic engine 100. Thus, the module 102 also
comprises another table 300 as indicated in FIG. 3 for example. The
table 300 relates to another first type request of departure
location B and arrival location C. The table 300 indicates two
possible results: a direct flight from B to C; or a combination of
flights from A to B and from B to C which includes the flight from
B to C.
[0021] Returning to FIG. 1, the module 102 is connected to an
encompassing request database 104. The module 102 stores the tables
in the database 104. For example, the tables 200 and 300 are stored
in database 104.
[0022] The encompassing request database 104 is connected to an
encompassing request search module 106. The database 104 and the
search module 106 can communicate with each other, i.e., the search
module 106 can send a request to database 104 which can send
additional requests 109 back to the search module 106. An airline
company (not shown) can send an airline request 105 to the
encompassing request search module 106. The airline request 105 is
the input request which is required for the process to take place
in accordance with the present invention. The airline request 105
comprises a trip including a departure location, an arrival
location and a corresponding fare such as for example a departure
location A, an arrival location C and a fare of C=200. The function
of the search module 106 is to determine the lowest alternative
requests associated with the trip as indicated in the airline
request 105 from the airline company. Thus, the search module 106
has to launch a second type request 107 to the encompassing request
database 104. The second type request 107 only comprises the
indication of the departure location and the arrival location from
the airline request 105. The database 104 broadens the second type
request 107 to search among the stored first type request and their
corresponding results and fares for all the possibilities matching
the second type request 107. Then, the database 104 returns the
additional requests with expected fares and results to the search
module 106.
[0023] In case the trip from the airline request 105 is made of
several departure and arrival locations, then the encompassing
request search module 106 builds a list of alternative requests by
assembling together additional requests from each couple of
departure location and arrival location from the airline
request.
[0024] The encompassing request search module 106 is connected to
an encompassing engine 108. The engine 108 calculates in real time
the optimal fares associated with each alternative request received
from the encompassing request search module 106. The engine 108
also compares the fare indicated in the airline request 105 from
the airline and the resulting fares as calculated for the
alternative requests found from the encompassing request search
module 106.
[0025] Thus the engine 108 determines the optimal fare between the
fares indicated in the airline request 105 and the fares found from
the alternative requests.
[0026] The method of the system as described above will be now
explained by the following steps. As shown in FIG. 4, in the step
400, the production traffic engine 100 receives first type requests
from clients, travel agents or airlines. Then, in a step 402, the
learning entity module 102 sorts and analyses the first type
requests and the corresponding first type results stored in the
production traffic engine 100. The learning entity module 102
creates tables in order to associate each first type request with a
corresponding first type result and fare. Then, in a step 404, the
database stores the first type results and the corresponding fare
as selected from the learning entity module 102 for each first type
request.
[0027] The process steps then continue as shown in FIG. 5. In step
500 the airline sends an airline request 105 to the encompassing
request search module 106. The airline request 105 relates to a
trip and comprises a departure location and an arrival location
with a corresponding fare. For example, an airline request 105 may
occur when the airline has determined that the flights for a
specific trip were consistently under booked over recent months. In
this situation, the airline may wish to determine if such a
decrease in the bookings is caused by the fare being more costly
than other fares found from an encompassing request. As a result,
the airline may launch a request to determine if a lower fare
exists among the fares already proposed by the same or other
airlines.
[0028] In step 502, the encompassing request search module 106 then
modifies the content of the airline request 105 in order to provide
a second type request 107. The modification comprises the removal
of the or each fare from the request 105. Thus, the second type
request 107 does not comprise the fare or fares as indicated in the
first type request 105. In case of multiple origins and
destinations in the airline request, the step 502 will build
several second type request associated to each pair of origin and
destination. In step 504, the encompassing request database
launches the second type request 107 to the encompassing request
database 104. In step 506, the encompassing request database 104
uses the stored first type results in order to encompass the second
type request 107. The use of the first type results provides one or
more additional requests which may form at least a part of the
second type request 107. Thus, the encompassing request database
104 builds one or more additional requests whose result comprises
the departure location and arrival location of the second type
request 107. The encompassing request database 104 retrieves only a
predetermined number (n) of the optimal first type requests and
associated result. The predetermined number (n) can be specified in
the encompassing request database 104.
[0029] The encompassing request database 104 then sends additional
requests to the encompassing request search module 106. In Step
507, the encompassing request search module builds alternative
requests 110 by combining the additional requests 109 received from
encompassing request database 104. The encompassing request search
module 106 sends both request 105 and alternative requests to the
encompassing engine 108 in step 508. In step 510, the encompassing
engine 108 calculates in real time the fares associated with the
alternative requests. Subsequently in step 512, the encompassing
engine 108 compares fares and determines the optimal fare and the
corresponding trip. The corresponding trip can be more expensive
than the fare specified in request 105 which means that the airline
presently provides the lowest price for this trip. Alternatively,
the corresponding trip can be cheaper than the fare specified in
the request 105 which means that the airline provides a less
favourable fare for the requested trip. In order to solve the
inconsistency, the airline can for example lower the fare of the
requested trip or increase the fare of the alternative trip. Thus,
users will preferably book the trip of the airline request.
[0030] The modification of the request 105 can be calculated in an
exhaustive manner For example, in a situation where the airline
request deals with a direct flight, the calculation for the
broadening of the airline request to obtain the possible
corresponding round trips or combined trips will deal with many
possible results. This calculation does not take into account the
comparison of fares for each possible and may result in at least 1
million separate requests. This number of requests represents a
significant amount of computing time. The present invention
provides a broadening of the request by using a predetermined
database which stores the possible additional requests with their
corresponding lowest fares. Thus, in the present invention, the
broadening of the airline requests only deals with possible first
type results which are already relevant in terms of the fare level,
destination etc. Therefore, the present invention provides a search
in an improved manner by significantly reducing the computing
time.
[0031] It will be appreciated that various combinations of method
steps in combination of alone may be carried out for different
elements of the overall process. The various combinations are not
limited to those described above. It will be appreciated that this
invention may be varied, in many different ways and still remained
with the entirely scope and spirit of the invention. Furthermore,
the person skilled in the art will understand that some or all of
the functional entities as well as the processes themselves may be
embodied in software or one or more software enable to modules
and/or devices.
* * * * *