GENERATING A SETTING RECOMMENDATION FOR A REVENUE MANAGEMENT SYSTEM
Methods, systems, and computer program products for generating a setting recommendation to configure a revenue management system of a travel provider. The setting recommendation may be generated by collecting data from a articles provided by data sources associated with a given market. Each article may be compared to a filter in a set of filters to determine whether the article meets a criterion of the filter. If an article meets the criterion of a filter, the article may be parsed and data may be selectively collected for use in forecasting a future event regarding the given market. A recommended action may be generated based on the future event. Information regarding the recommended action, the filter, the article, and the future event may be provided in a setting recommendation for use in updating a system setting in an effort to address the effect of the future event.
The invention generally relates to computers, databases, and computer systems and, in particular, to methods, systems, and computer program products for generating a setting recommendation for a revenue management system.
BACKGROUNDInventory and revenue management of limited resources of service industries that are, at one moment, lost if not sold, is a challenge in many service industries. For example, in the travel industry, service components such as hotels and airplane flights have limited resources (e.g., a fixed number of hotel rooms or a fixed number of seats), and as such, when a hotel room or a seat on an airplane flight goes unused, that unused resource represents a loss of revenue to a travel provider. Nonetheless, it is often the case that some resources that are booked or purchased by a customer will not be used, e.g., due to a cancellation by the customer or a change in the customer's itinerary. Business customers in particular may be subject to changing circumstances that may require changes in their travel plans. To account for the possibility that some booked resources will go unused, resources may be intentionally overbooked with the goal of optimizing resource usage; however, doing so also comes with the potential detriment to goodwill and increased costs associated with accommodating customers when all customers cannot be accommodated by the available resources.
Inventory and revenue management systems in some service industries, in an attempt to optimize resource usage as well as optimize revenue, employ revenue-driven and technically complex functionality referred to as revenue management or yield management. For example, some inventory management systems incorporate revenue management systems that include forecasting and optimization functionality, with the former used to forecast or predict future demand, and the latter used to optimize availability (e.g., how much of a resource, e.g., a seat on a flight, will be offered at different price points). A component of future demand may be events or situations that arise in the world, and that may affect the underlying business or some component thereof, which changes the demand for booking a fare along a particular flight. However, such events or situations are generally not considered in an automated way in conventional revenue-based demand assessments.
Improved methods, systems, and computer program products for generating a setting recommendation for a revenue management system are needed.
SUMMARYIn an embodiment of the invention, a method is provided for generating a setting recommendation to configure a revenue management system for a travel market of a travel provider. The method includes accessing a data source database to retrieve a plurality of data sources, wherein each data source in the plurality of data sources is associated with the travel market or a market encompassing the travel market in the data source database. The method further includes accessing a filter database to retrieve a filter from among a plurality of filters stored in the filter database, wherein each filter in the plurality of filters includes a filter criterion and a potential market effect and performing an electronic search of the plurality of data sources to retrieve a plurality of articles associated with the plurality of data sources. The method further includes applying the filter to the plurality of articles to extract an information item from an article in the plurality of articles, wherein the article meets the filter criterion of the filter and performing a database access to identify a recommended action associated with the potential market effect of the filter therein. The method further includes generating a setting recommendation based at least in part on the information item, wherein the setting recommendation includes the recommended action.
In another embodiment of the invention, a system is provided for generating a setting recommendation to configure a revenue management system for a travel market of a travel provider. The system comprises a processor and a memory including instructions that, when executed by the processor, cause the system to access a data source database to retrieve a plurality of data sources, wherein each data source in the plurality of data sources is associated with the travel market or a market encompassing the travel market in the data source database. The instructions further cause the system to access a filter database to retrieve a filter from among a plurality of filters stored in the filter database, wherein each filter in the plurality of filters includes a filter criterion and a potential market effect and perform an electronic search of the plurality of data sources to retrieve a plurality of articles associated with the plurality of data sources. The instructions further cause the system to apply the filter to the plurality of articles to extract an information item from an article in the plurality of articles, wherein the article meets the filter criterion of the filter and perform a database access to identify a recommended action associated with the potential market effect of the filter therein. The instructions further cause the system to generate a setting recommendation based at least in part on the information item, wherein the setting recommendation includes the recommended action.
In another embodiment of the invention, a computer program product is provided comprising a non-transitory computer-readable storage medium and instructions stored on the non-transitory computer-readable storage medium that, when executed by a processor, cause a computer to access a data source database to retrieve a plurality of data sources, wherein each data source in the plurality of data sources is associated with the travel market or a market encompassing the travel market in the data source database. The instructions further cause the computer to access a filter database to retrieve a filter from among a plurality of filters stored in the filter database, wherein each filter in the plurality of filters includes a filter criterion and a potential market effect and perform an electronic search of the plurality of data sources to retrieve a plurality of articles associated with the plurality of data sources. The instructions further cause the computer to apply the filter to the plurality of articles to extract an information item from an article in the plurality of articles, wherein the article meets the filter criterion of the filter and perform a database access to identify a recommended action associated with the potential market effect of the filter therein. The instructions further cause the computer to generate a setting recommendation based at least in part on the information item, wherein the setting recommendation includes the recommended action.
The accompanying drawings, that are incorporated in and constitute a part of this specification, illustrate various embodiments of the invention and, together with the general description of the invention given above, and the detailed description of the embodiments given below, serve to explain the embodiments of the invention.
Embodiments of the invention are directed to methods and systems for generating a setting recommendation to configure a revenue management system. Embodiments of the invention may be implemented by one or more networked computers or servers. The networked computers may be operated by a Global Distribution System (GDS) and may provide processing and database functions for travel-related systems and modules.
The revenue management system may be configured to collect information regarding a specified market and to use this information to forecast events which may stimulate changes in the underlying business environment associated with the revenue management system. For example, based on collected information, the revenue management system may predict demand increases, demand decreases, or environmental disruptions. Based on the forecast events, the revenue management system may be configured to provide recommended actions to proactively neutralize or minimize the changes stimulated by the forecast events. Further, the revenue management system may incorporate a historical component into the formation of the recommended action to take previous demand changes or disruptions into consideration to more accurately formulate the appropriate recommended action.
The hereinafter-described embodiments will focus on an airline-oriented application in which a service component is an airplane flight, a travel vehicle is a plane, and the seats on that flight represent limited resources capable of being booked by customers, and potentially subject to no-shows, cancellations, or other itinerary changes that may result in a booked seat going unused by a customer at the time of departure of the flight. As such, the forecasting of the hereinafter-described embodiments attempts to predict the changes in the underlying business environment of an airline. For example, a forecast may relate to changes in demand for seats on a flight or potential cancellation of the flight entirely.
Referring now to
Operating environment 10 may further include a departure control system 16, an inventory system 18, and a reservation system 20. The revenue management system 12, departure control system 16, inventory system 18, and reservation system 20 may communicate with each other through a network 22. Network 22 may include one or more private or public networks (e.g. the Internet) that enable the exchange of data. As such, the operating environment 10 may further include a source of data 24 through network 22, hereinafter referred to as the World Wide Web 24. As shown in
Referring now to
The processor 28 may include one or more devices selected from microprocessors, micro-controllers, digital signal processors, microcomputers, central processing units, field programmable gate arrays, programmable logic devices, state machines, logic circuits, analog circuits, digital circuits, or any other devices that manipulate signals (analog or digital) based on operational instructions that are stored in the memory 30. Memory 30 may include a single memory device or a plurality of memory devices including, but not limited, to read-only memory (ROM), random access memory (RAM), volatile memory, non-volatile memory, static random access memory (SRAM), dynamic random access memory (DRAM), flash memory, cache memory, or any other device capable of storing information. The mass storage memory device 32 may include data storage devices such as a hard drive, optical drive, tape drive, non-volatile solid state device, or any other device capable of storing information.
Processor 28 may operate under the control of an operating system 40 that resides in memory 30. The operating system 40 may manage computer resources so that computer program code embodied as one or more computer software applications, such as an application 42 residing in memory 30, may have instructions executed by the processor 28. In an alternative embodiment, the processor 28 may execute the application 42 directly, in which case the operating system 40 may be omitted. One or more data structures 44 may also reside in memory 30, and may be used by the processor 28, operating system 40, or application 42 to store or manipulate data.
The I/O interface 34 may provide a machine interface that operatively couples the processor 28 to other devices and systems, such as the network 22 or external resource 38. The application 42 may thereby work cooperatively with the network 22 or external resource 38 by communicating via the I/O interface 34 to provide the various features, functions, applications, processes, or modules comprising embodiments of the invention. The application 42 may also have program code that is executed by one or more external resources 38, or otherwise rely on functions or signals provided by other system or network components external to the computer system 26. Indeed, given the nearly endless hardware and software configurations possible, persons having ordinary skill in the art will understand that embodiments of the invention may include applications that are located externally to the computer system 26, distributed among multiple computers or other external resources 38, or provided by computing resources (hardware and software) that are provided as a service over the network 22, such as a cloud computing service.
The HMI 36 may be operatively coupled to the processor 28 of computer system 26 in a known manner to allow a user to interact directly with the computer system 26. The HMI 36 may include video or alphanumeric displays, a touch screen, a speaker, and any other suitable audio and visual indicators capable of providing data to the user. The HMI 36 may also include input devices and controls such as an alphanumeric keyboard, a pointing device, keypads, pushbuttons, control knobs, microphones, etc., capable of accepting commands or input from the user and transmitting the entered input to the processor 28.
A database 46 may reside on the mass storage memory device 32, and may be used to collect and organize data used by the various systems and modules described herein. The database 46 may include data and supporting data structures that store and organize the data. In particular, the database 46 may be arranged with any database organization or structure including, but not limited to, a relational database, a hierarchical database, a network database, or combinations thereof. A database management system in the form of a computer software application executing as instructions on the processor 28 may be used to access the information or data stored in records of the database 46 in response to a query, where a query may be dynamically determined and executed by the operating system 40, other applications 42, or one or more modules. As shown in
Referring now to
In general, the revenue management system 12 is configured to generate a setting recommendation for a revenue management analyst. The setting recommendation is generated by applying a set of filters to a set of data sources to generate pieces or items of information for use in determining the setting recommendation, which may thereafter be reviewed and applied by the revenue management analyst or may be automatically applied. Each piece of information or information item is compared to a set of recommended actions to determine the appropriate recommended action. The recommended action is thereby supplied in a setting recommendation along with data from the piece of information. Each setting recommendation is made with respect to a particular market. For example, a revenue management analyst may request a setting recommendation for the market of a city. The revenue management system 12 thereafter applies a set of filters to a set of data sources to filter out pieces of information associated with the city. These pieces of information are then used to determine a recommended action. Thereafter, the piece of information and the recommended action are compiled into a setting recommendation and provided to the revenue management analyst.
Referring now to
As shown in
Referring to
Inasmuch as each data source 56 is typically a news generating web site or a news aggregation service, the URL field 76 provides the web address of a “root directory” or a primary link to the entire catalog of data provided by the underlying data source 56. For example, data source 56D provides “website4.com” in the URL field 76. However, the revenue management system 12 crawls or navigates through the entire web site by searching through each web page or article residing at the specified domain. Thus, while one web address is provided for each data source 56, the revenue management system 12 compares each article or distinct web page derived from the main URL when filters 61 are applied to data sources 56. For example, inasmuch as “website4.com” is provided in URL field 76D for data source 56D, the revenue management system 12 compares each filter 61 in the set of filters 62 to the information provided at “website4.com”. However, the revenue management system 12 also iterates through all of the web pages at the domain and compares each filter 61 to the information provided in each web page. Distinct web pages at a data source 56 will hereinafter be referred to as articles. For example, the revenue management system 12 compares each filter 61 to a first article located at “website4.com/article_1.html” as well as a second article located at “website4.com/article_2.html”. Depending on the data provided therein, the first article may satisfy the criteria of one filter 61 while the second article may satisfy the criteria of a different filter 61.
As shown in
Referring to
Impact type field 92 of filter table 84 includes information regarding whether a match between a data source 56 and the underlying filter 61 forecasts a positive or good future situation or whether a match forecasts a negative or bad future situation. The information contained in the impact type field 92 is generally expressed from the perspective of the underlying business associated with the revenue management system 12 and is an abstraction of the information contained in the effect field 94. The effect field 94 includes information regarding the potential impact of finding a data source 56 which matches the particular filter 61. For example, if a particular article at data source 56 includes the keyword “Strike”, the article at data source 56 will match filter 61D. The impact type field 92D of filter 61D forecasts a negative impact on the underlying business associated with the revenue management system 12 and that the negative impact is attributable to possible disruptions in the business associated with the revenue management system 12.
Referring to
Referring to
Referring to
A piece of information 64 may also be generated by revenue management system 12 when any article of a data source 56 includes the market 60 in the title of the article or in the body of the article. Thus, regardless of the various filter criterion and keywords required by the set of filters 62, revenue management system 12 may be configured to generate a piece of information 64 for each article which specifically references the market 60. This configuration ensures any articles on a data source 56 which references the market 60 is given further consideration by revenue management system 12 as there may be circumstances where an article provides important information regarding a future event or situation in the market 60 yet may not be captured by a filter 61.
After pieces of information 64 are generated through either data sources 56 or calendar events 65, revenue management system 12 compares each piece of information 64 with one another to determine whether any two or more pieces of information 64 generally forecast the same outcome or situation. Thereafter, revenue management system 12 merges pieces of information 64 two by two iteratively until there are no remaining pieces of information 64 that meet the merge criteria. For example, two different news articles may generate a piece of information 64 on an approaching winter storm in a particular area. While these two articles may provide different date ranges and different text, both articles refer to the same impending winter storm event which will disrupt travel. Once two similar pieces of information 64 are recognized, revenue management system 12 merges the two pieces of information 64 into one piece of information 64. This merged piece of information 64 contains the relevant information from both underlying pieces of information 64, which may have differences such as different data sources 56, different impact periods, or were generated from different filters 61.
Next, the revenue management system 12 compares the matching filter fields 112 and the filter impact type field 114 between the pieces of information 64 to determine whether the filters 61 which generated each piece of information 64 include matching filter types and matching impact types. For example, piece of information 64A was generated by three filters having a filter type of “Weather”, as indicated in matching filter field 112A. These weather filters are all associated with a “Negative” effect on the underlying business, as indicated in filter impact type field 114A. Similarly, piece of information 64B was generated by a filter having the filter type “Weather”, as indicated in matching filter field 112B and the filter is associated with a “Negative” effect, as indicated in filter impact field 114B. Therefore, revenue management system 12 determines piece of information 64A and piece of information 64B are derived from the same news articles about impending event, an approaching winter weather storm. The revenue management system 12 merges piece of information 64A and piece of information 64B into a merged piece of information 64C, as shown in
After all pieces of information 64 are generated and merged, revenue management system 12 generates a setting recommendation 70 for each piece of information 64. Each setting recommendation 70 is provided to the revenue management analyst 58 in response to the original query for setting recommendations 70 based on a given market 60. To build a setting recommendation 70, revenue management system 12 retrieves the effects values in effect field 94 of the underlying filter(s) 61 that generated the piece of information 64 and uses these effect values to retrieve actions stored in action field 99 of a matching recommended action 68. For example, referring to
Revenue management system 12 generates a setting recommendation 70 by entering information from the underlying piece of information 64, relevant filter(s) 61, and recommended action(s) 68 into a layout template. One embodiment of a layout template used by revenue management system 12 is illustrated in
As shown in
Upon generation of a demand-based setting recommendation 70, revenue management system 12 quantifies and computes a forecast change in demand based on historical data and provides this forecast change in demand in the demand change placeholder 148 of the layout template 134. A demand-based setting recommendation 70 is one in which the underlying effect field 98 describes a temporary or permanent demand increase or decrease. For example, recommended action 68A includes the value of “Temporary demand increase” in events field 98A. Any setting recommendation 70 generated based on recommended action 68A is considered a demand-based setting recommendation 70.
Referring to
In the embodiment of the historical demand table 154 illustrated in
Referring to
Inasmuch as the data fields in the historical pieces of information 166 align with the data fields in the pieces of information 64, the values of these matching fields may be used to determine which historical pieces of information 166 match a piece of information 64 currently under consideration for a demand forecast. To find related historical pieces of information 166, revenue management system 12 searches for all historical pieces of information 166 in historical piece of information table 164 that were originally derived from the same filter 61 and associated with the same market 60 as those that generated the piece of information 64 under consideration. For example, if the piece of information 64 under consideration was derived from the “Event: Concert(s)” filter 611 for the market “Munich”, revenue management system 12 searches for all historical pieces of information 166 which were originally derived from the “Event: Concert(s)” filter 611 for the market “Munich”. As shown in
After the revenue management system 12 retrieves all matching historical pieces of information 166, revenue management system 12 cross-references the impact periods 168 associated with the selected historical pieces of information 166 with the departure dates 158 provided in the historical demand table 154 and for airports 160 located in the market 60. For example, historical piece of information 166C provides an impact period of 11 Jun. 2012 to 13 Jun. 2012 for the market of Nice, France. Revenue management system 12 correlates this information with booking summation 156C, booking summation 156D, and booking summation 156E, in the historical demand table 154. These three booking summations 156 provide the sum of all bookings on the impacted dates of the related historical piece of information1 166. As shown in
The overall average demand change 178 may be provided in demand change placeholder 148 of setting recommendation 70 to provide the revenue management analyst 58 with a quantification and forecast of the potential change in demand based on similar historical events. Further, the overall average demand change 178 or any of the intermediate averages or base data regarding sum of booking changes may be modified or statistically processed further to provide relevant demand information to the revenue management analyst 58. Exponential smoothing may be applied to the time series data to assign exponentially decreasing weight to each historical piece of information 166 in an effort to smooth the data for more accurate forecasting. For example, the following function may be applied to assign exponential smoothing to the time series data extracted from historical demand table 154, where a is the smoothing factor and 0<α<1:
With α≦1 calibrated separately.
For example, with respect to
In operation, the revenue management analyst 58 manipulates analyst computing device 14 to thereby provide market 60 to revenue management system 12. Revenue management analyst 58 is tasked to determine whether any settings related to revenue management system 12 may need updating or tweaking to take advantage of or to accommodate any potential future changes in the market 60. The revenue management analyst 58 may be interested in market 60 due to personal knowledge of events happening in the market 60 or market 60 may be one of several markets the revenue management analyst 58 is tasked to administer and analyze on a regular basis. Once revenue management system 12 receives a request for a setting recommendation 70 from revenue management analyst 58 and is provided a market 60, the revenue management system 12 compares market 60 to data contained within market field 80 of data source table 76 to determine whether a particular data source 56 provides information about market 60. In addition, revenue management system 12 may be configured to consider whether a market specified within market field 80 encompasses market 60. For example, if the revenue management analyst 58 provides a market 60 of Nice City, revenue management system 12 retrieves data source 56F, data source 56G, and data source 56H, as all of these data sources 56 include a matching market field 80 of “Nice City”. In addition, revenue management system 12 also retrieves data source 56P as market field 80 includes “France” which encompasses Nice City, as well as data source 56D because market field 80 includes the market of the world.
Once revenue management system 12 retrieves the appropriate data sources 56 based on market 60, revenue management system 12 compares each article found within each data source 56 in the set of refined data sources 57 to each filter 61 contained within filter table 84. Each filter 61 includes a keyword field 88 which provides one or more keywords or filter criterion for use in determining whether particular filter 61 is applicable to the article. For example, data source 56G includes a filter criterion of “strike” or “strikes” in keyword field 88, written as “strike(s)”. If an article located at one of the data sources 56 in the set of refined data sources 57 includes the word “strike” or “strikes”, revenue management system 12 generates a piece of information 64 containing relevant information regarding the article, the filter 61, and the market 60.
In one embodiment of the invention, a subset of the set of filters 62 is applied to a particular data source 56 based on the value in language field 78 of data source 56 as well as the value in language field 90 of the filter table 84. Revenue management system 12 may selectively apply filters 61 where language field 90 matches language field 78. For example, filter 61A includes “English” in language field 98. Filter 61A is therefore not applied to data source 56B, as language field 78B includes the entry “French”.
Each article which satisfies the criteria of a filter 61 generates a piece of information 64. Revenue management system 12 extracts relevant information such as the article title and the particular article URL and encapsulates this information into the piece of information 64. Revenue management system 12 further parses the article to extract date information regarding the article. However, inasmuch as the article may give dates or ranges in a relative format such as “Today, a storm is expected [ . . . ]”, revenue management system 12 maps common relative date keywords into appropriate date ranges for use by revenue management system 12. As exemplified in the Table 1 below, common date keywords may be converted into a date range through a specified mapping. The generated date range is thereafter stored in the associated piece of information 64 for later use by revenue management system 12.
After each data source 56 is compared with each filter 61, one or more pieces of information 64 are generated. Thereafter, revenue management system 12 compares each piece of information 64 with one another to determine whether any two pieces of information 64 should be merged into one piece of information 64. To determine when to merge two pieces of information 64, revenue management system 12 compares the data contained therein, and those pieces of information 64 with overlapping impact date fields 110 and matching filter fields 112 are merged. To create one piece of information 64 from two pieces of information 64, the merging process accumulates the data from each field of each piece of information 64 into the merged piece of information 64.
For each piece of information 64 remaining after the merging routine is completed, revenue management system 12 compares the data located within matching filter 112 of the piece of information 64 and the associated effects field 94 of the filter table 84 to determine which recommended action 68 in actions table 96 is appropriate. Thereafter, the action information located in action field 99 of the associated recommended action 68 is incorporated along with the information contained in the underlying piece of information 64 into a setting recommendation 70. Revenue management system 12 extracts or transfers the information from the underlying piece of information 64 and the recommended action 68 and converts this data into the layout template 134 of setting recommendation 70. The layout template 134 includes various placeholders for receiving information supplied by the underlying piece of information 64 and the associated recommended action 68. If the recommended action 68 includes a demand-based change, revenue management system 12 retrieves matching historical pieces of information 166 from historical piece of information table 164 and compares impacted period field 168 of the extracted historical piece of information 166 to the same dates within historical demand table 154. The sum of all bookings 162 associated with the dates aligning with historical piece of information 166 is extracted and manipulated for use in forecasting a potential demand change with respect to the recommended action 68. After revenue management system 12 calculates this forecasted demand change, the demand change information is supplied within setting recommendation 70 for consideration by the revenue management analyst 58.
Once setting recommendations 70 are constructed based on the generated pieces of information 64, each setting recommendation 70 is transferred to revenue management analyst 58 as a response to the original query for information regarding the market 60. Each setting recommendation 70 appears on the display 15 of the computing device used by revenue management analyst 58 and may include hyperlinks or other mechanisms to allow the revenue management analyst 58 to quickly implement the recommended actions 70 or otherwise act upon the information contained therein. For example, if the setting recommendations 70 includes the recommended action of informing the customers are possible disruptions, the setting recommendation 70 may include a hyperlink which, when actuated, allows revenue management analyst 58 to send a mass e-mail to all the related customers informing the customers of possible disruptions. Further, if the recommended action of the setting recommendation 70 relates to adjusting settings of the inventory system 18 or the reservation system 20, the setting recommendation 70 may include links to a control panel or a setting update screen associated with the inventory system 18 or the reservation system 20. As such, the revenue management analyst 58 may request setting recommendations 70 with respect to the market 60 and may be quickly provided with information collected from numerous disparate sources of data in an easily readable format and with historically derived forecasts for use in implementing the setting recommendation 70.
Referring to
In process step 184, the revenue management system 12 extracts relevant pieces of information from the set of data sources using the set of filters. Process step 184 compares the filter criterion of every filter with each article located at each data sources to determine whether the filter criterion is satisfied by the article. If the underlying article satisfies the filter criterion, the revenue management system 12 generates a piece of information containing information from the article and the filter. The revenue management system 12 iterates through each article located on each data source and applies each filter thereto to determine whether any article on any data source matches the filter criterion of any filter. The resulting pieces of information are references associated with the specified market which have particular characteristics which make the underlying article relevant for use in generating a setting recommendation. Thereafter, process step 184 proceeds to a process step 186. In process step 186, relevant pieces of information are extracted from a set of calendar events by revenue management system 12. The set of calendar events generally relates to any known future event associated with the specified market or a market encompassing the specified market. For example, China celebrates the Lantern Festival on the fifteenth day of the first month of the Chinese calendar each year. This is a known future event which may be relevant for providing a setting recommendation if the specified market is China or a region within the market of China. As such, any relevant calendar event generates a piece of information and process step 186 proceeds to a process step 188.
Process step 188 merges any redundant piece of information into a single piece of information. Inasmuch as every article on every data sources compared to every filter, redundant pieces of information may be numerous. Process step 188 collapses each piece of redundant information into a single piece of information representing a piece of data relevant for generating setting recommendation. Upon completion of process step 188, process step 188 continues to a process step 190. Process step 190 builds setting recommendations for each remaining piece of information. The setting recommendation includes information valuable to the revenue management analyst 58, such as whether a particular situation may have a negative or positive impact, as well as the impact dates.
After process step 190, each setting recommendation constructed via the previous process steps is provided to the revenue management analyst 58 as a response to the original query for setting recommendations. The revenue management analyst 58 may study each provided setting recommendation to determine whether to implement the setting recommendation. In a process step 192, the revenue management analyst 58 implements a setting recommendation by transferring information a selected setting recommendation to revenue management system 12. Revenue management system 12 computes new revenue controls in accordance with the implemented setting recommendation. Thereafter, revenue management system 12 passes the information regarding the updated revenue controls on to inventory system 18. In a process step 194, the inventory system 18 applies the new revenue controls computed in accordance with the implemented setting recommendation and thereafter notifies revenue management analyst 58 of the update.
In general, the routines executed to implement the embodiments of the invention, whether implemented as part of an operating system or a specific application, component, program, object, module or sequence of instructions, or even a subset thereof, may be referred to herein as “computer program code,” or simply “program code.” Program code typically comprises computer readable instructions which are resident at various times in various memory and storage devices in a computer and that, when read and executed by one or more processors in a computer, cause that computer to perform the operations necessary to execute operations and/or elements embodying the various aspects of the embodiments of the invention. Computer readable program instructions for carrying out operations of the embodiments of the invention may be, for example, assembly language or either source code or object code written in any combination of one or more programming languages.
Various program code described herein may be identified based upon the application within which it is implemented in specific embodiments of the invention. However, it should be appreciated that any particular program nomenclature that follows is used merely for convenience, and thus the invention should not be limited to use solely in any specific application identified and/or implied by such nomenclature. Furthermore, given the generally endless number of manners in which computer programs may be organized into routines, procedures, methods, modules, objects, and the like, as well as the various manners in which program functionality may be allocated among various software layers that are resident within a typical computer (e.g., operating systems, libraries, API's, applications, applets, etc.), it should be appreciated that the embodiments of the invention are not limited to the specific organization and allocation of program functionality described herein.
The program code embodied in any of the applications/modules described herein is capable of being individually or collectively distributed as a program product in a variety of different forms. In particular, the program code may be distributed using a computer readable storage medium having computer readable program instructions thereon for causing a processor to carry out aspects of the embodiments of the invention.
Computer readable storage media, which is inherently non-transitory, may include volatile and non-volatile, and removable and non-removable tangible media implemented in any method or technology for storage of information, such as computer-readable instructions, data structures, program modules, or other data. Computer readable storage media may further include RAM, ROM, erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other solid state memory technology, portable compact disc read-only memory (CD-ROM), or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store the desired information and which can be read by a computer. A computer readable storage medium should not be construed as transitory signals per se (e.g., radio waves or other propagating electromagnetic waves, electromagnetic waves propagating through a transmission media such as a waveguide, or electrical signals transmitted through a wire). Computer readable program instructions may be downloaded to a computer, another type of programmable data processing apparatus, or another device from a computer readable storage medium or to an external computer or external storage device via a network.
Computer readable program instructions stored in a computer readable medium may be used to direct a computer, other types of programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions that implement the functions, acts, and/or operations specified in the flowcharts, sequence diagrams, and/or block diagrams. The computer program instructions may be provided to one or more processors of a general purpose computer, a special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the one or more processors, cause a series of computations to be performed to implement the functions, acts, and/or operations specified in the flowcharts, sequence diagrams, and/or block diagrams.
In certain alternative embodiments, the functions, acts, and/or operations specified in the flowcharts, sequence diagrams, and/or block diagrams may be re-ordered, processed serially, and/or processed concurrently consistent with embodiments of the invention. Moreover, any of the flowcharts, sequence diagrams, and/or block diagrams may include more or fewer blocks than those illustrated consistent with embodiments of the invention.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the embodiments of the invention. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. Furthermore, to the extent that the terms “includes”, “having”, “has”, “with”, “comprised of”, or variants thereof are used in either the detailed description or the claims, such terms are intended to be inclusive in a manner similar to the term “comprising”.
While all of the invention has been illustrated by a description of various embodiments and while these embodiments have been described in considerable detail, it is not the intention of the Applicant to restrict or in any way limit the scope of the appended claims to such detail. Additional advantages and modifications will readily appear to those skilled in the art. The invention in its broader aspects is therefore not limited to the specific details, representative apparatus and method, and illustrative examples shown and described. Accordingly, departures may be made from such details without departing from the spirit or scope of the Applicant's general inventive concept.
Claims
1. A method of generating a setting recommendation to configure a revenue management system for a travel market of a travel provider, the method comprising:
- accessing a data source database to retrieve a plurality of data sources, wherein each data source in the plurality of data sources is associated with the travel market or a market encompassing the travel market in the data source database;
- accessing a filter database to retrieve a filter from among a plurality of filters stored in the filter database, wherein each filter in the plurality of filters includes a filter criterion and a potential market effect;
- performing an electronic search of the plurality of data sources to retrieve a plurality of articles associated with the plurality of data sources;
- applying the filter to the plurality of articles to extract an information item from an article in the plurality of articles, wherein the article meets the filter criterion of the filter;
- performing a database access to identify a recommended action associated with the potential market effect of the filter therein; and
- generating a setting recommendation based at least in part on the information item, wherein the setting recommendation includes the recommended action.
2. The method of claim 1 further comprising:
- in the revenue management system, determining an update for a revenue control, wherein the update is determined in accordance with the recommended action of the setting recommendation; and
- in an inventory system, adjusting the revenue control in accordance with the update.
3. The method of claim 2 further comprising:
- receiving an availability request at the inventory system; and
- determining whether to accept or deny the availability request based at least in part on the adjusted revenue control.
4. The method of claim 3 further comprising:
- generating the availability request from a reservation system; and
- communicating the availability request from the reservation system to the inventory system.
5. The method of claim 4 further comprising:
- coordinating communication between the revenue management system, the inventory system, and the reservation system with a global distribution system.
6. The method of claim 1 further comprising:
- determining whether the potential market effect associated with the filter is a demand-based effect;
- if the potential market effect associated with the filter is a demand-based effect, searching a historical demand database for a historical event associated with the travel market, the potential market effect, the applicable filter, or a combination thereof;
- determining a historical demand change associated with the historical event; and
- providing the historical demand change in the setting recommendation.
7. The method of claim 6 further comprising:
- monitoring an actual demand change associated with the information item in the travel market; and
- storing the actual demand change in the historical demand database.
8. The method of claim 6 further comprising:
- monitoring an inventory system to detect booking data associated with the travel market; and
- in the revenue management system, maintaining the historical demand database by historicizing the booking data from the monitoring of the inventory system.
9. The method of claim 6 further comprising:
- monitoring a departure control system to detect departure data associated with the travel market; and
- in the revenue management system, maintaining the historical demand database by historicizing the departure data from the monitoring of the departure control system.
10. The method of claim 1 further comprising:
- deducing an impact period associated with the information item; and
- providing the impact period in the setting recommendation.
11. The method of claim 10 further comprising:
- parsing the article for at least one date keyword pattern in a plurality of date keyword patterns; and
- deducing the impacted period from the at least one date keyword pattern.
12. The method of claim 11 wherein the article is a first article, the filter is a first filter, the information item is a first information item, and the impact period is a first impact period, and wherein each filter in the plurality of filters further includes a filter type, further comprising:
- retrieving a second filter from the filter database;
- applying the second filter to the plurality of articles to extract a second information item from a second article in the plurality of articles, wherein the second article meets the filter criterion of the second filter;
- parsing the second article for at least one date keyword pattern in the plurality of date keyword patterns;
- deducing the second impacted period from the at least one date keyword pattern;
- determining whether the filter type of the first filter and the filter type of the second filter are equivalent;
- determining whether the first impact period and the second impact period overlap;
- if the filter type of the first filter and the filter type of the second filter are equal and the first impact period overlaps the second impact period, merging the first information item and the second information item into a merged information item; and
- providing the merged information item in the setting recommendation.
13. The method of claim 12 further comprising:
- merging the first information item and the second information item by providing the union of the first impact period and the second impact period in the merged information item.
14. The method of claim 12 further comprising:
- merging the first information item and the second information item by providing a reference to the first article and a reference to the second article in the merged information item.
15. The method of claim 14 wherein the reference to the first article is a first web address and the reference to the second article is a second web address.
16. The method of claim 1 further comprising:
- associating each filter in the plurality of filters with a filter language, wherein the filter language is one of a plurality of languages;
- associating each data source in the plurality of data sources with a data source language, wherein the data source language is one of the plurality of languages, and wherein the data source language is communicated by the data source; and
- prior to accessing the plurality of articles associated with the plurality of data sources, limiting the plurality of data sources to data sources associated with the data source language that matches the filter language of the filter.
17. The method of claim 1 wherein the filter criterion comprises at least one filter keyword.
18. The method of claim 1 wherein the filter criterion comprises at least one filter keyword and at least one market keyword.
19. The method of claim 1 further comprising:
- associating each data source in the plurality of data sources with a data source reference; and
- providing the data source reference of the data source associated with the information item in the setting recommendation.
20. The method of claim 19 wherein the data source reference is a web address.
21. The method of claim 1 further comprising:
- associating each article in the plurality of articles with an article reference; and
- providing the article reference of the article associated with the information item in the setting recommendation.
22. The method of claim 21 wherein the article reference is a web address.
23. The method of claim 1 further comprising:
- requesting, by a requestor, generation of the setting recommendation;
- providing the setting recommendation to the requestor; and
- implementing, by the requestor, the recommended action identified by the setting recommendation.
24. The method of claim 23 further comprising:
- requesting, by a requestor, generation of the setting recommendation; and
- implementing, by the revenue management system, the recommended action identified by the setting recommendation.
25. The method of claim 24 further comprising:
- prior to requesting generation of the setting recommendation, configuring, by the requestor, one of the data sources in the plurality of data sources, the filter, or a combination thereof.
26. The method of claim 23 further comprising:
- before implementing the recommended action of the setting recommendation, determining an impacted travel product associated with the recommended action, wherein the impacted travel product is affected by the implementation of the recommended action.
27. The method of claim 26, further comprising:
- providing the impacted travel product to the user.
28. The method of claim 26 further comprising:
- receiving a request to display information relating to the impacted travel product, wherein the request is received by the revenue management system; and
- displaying information relating to the impacted travel product on a display screen.
29. The method of claim 1 further comprising:
- constructing a layout template, wherein the layout template includes a placeholder; and
- providing the setting recommendation in the layout template format on a display screen, wherein the placeholder is replaced with the travel market, the filter, the filter criterion, the potential market effect, the information item, the article, the recommended action, or a combination thereof.
30. The method of claim 1 wherein the information item is a first information item and the filter is a first filter, further comprising:
- accessing the filter database to retrieve a second filter from among the plurality of filters stored in the filter database;
- applying the second filter to the plurality of articles to extract a second information item from the article, wherein the article meets the filter criterion of the second filter;
- comparing the first information item and the second information item to determine whether the first filter or the second filter is a selected filter; and
- performing the database access to identify the recommended action associated with the potential market effect of the selected filter.
31. The method of claim 30 wherein the filter criterion of the first filter comprises a first filter keyword and the filter criterion of the second filter comprises a second filter keyword, further comprising:
- determining whether the first filter keyword or the second filter keyword is referenced a greater number of times in the article, wherein the selected filter is the first filter if the first filter keyword is referenced a greater number of times in the article, and wherein the selected filter is the second filter if the second filter keyword is referenced a greater number of times in the article.
32. The method of claim 1 wherein the filter criterion comprises a filter keyword and a threshold, and the article meets the filter criterion of the filter when the filter keyword is referenced in the article at least the threshold amount.
33. The method of claim 12 further comprising:
- merging the first information item and the second information item by providing the at least one date keyword pattern of the first impact period and the at least one date keyword pattern of the second impact period in the merged information item.
34. The method of claim 12 further comprising:
- merging the first information item and the second information item by providing a first title and a second title in the merged information item, wherein the first title is associated with the first article, and wherein the second title is associated with the second article.
35. The method of claim 12 further comprising:
- merging the first information item and the second information item by providing a first contents and a second contents in the merged information item, wherein the first contents are associated with the first article, and wherein the second contents are associated with the second article.
36. The method of claim 1 further comprising:
- parsing each article in the plurality of articles to determine whether the article includes a reference to the travel market or a market encompassing the travel market; and
- in response to determining the article does not include a reference to the travel market or a market encompassing the travel market, removing the article from the plurality of articles to refine the plurality of articles.
37. The method of claim 1 further comprising:
- for each article in the plurality of articles, determining whether the data source of the article is associated with the travel market or a market encompassing the travel market in the data source database; and
- in response to determining the data source of the article is not associated with the travel market or a market encompassing the travel market in the data source database, removing the article from the plurality of articles to refine the plurality of articles.
38. The method of claim 12 wherein each filter in the plurality of filters further includes an impact type, and further comprising:
- determining whether the impact type of the first filter and the impact type of the second filter are equivalent; and
- if the impact type of the first filter and the impact type of the second filter are equivalent, merging the first information item and the second information item into the merged information item.
39. The method of claim 38 wherein the filter criterion of the first filter includes a first filter keyword and wherein the first filter keyword is referenced in the first article, the filter criterion of the second filter includes a second filter keyword, and the second filter keyword is referenced in the second article, and further comprising:
- determining whether the first filter keyword and the second filter keyword are equivalent; and
- if the first filter keyword and the second filter keyword are equivalent, merging the first information item and the second information item into the merged information item.
40. The method of claim 11 wherein the article is a first article, the information item is a first information item, and the impact period is a first impact period, further comprising:
- applying the filter to the plurality of articles to extract a second information item from a second article in the plurality of articles, wherein the second article meets the filter criterion of the filter;
- parsing the second article for at least one date keyword pattern in the plurality of date keyword patterns;
- deducing the second impacted period from the at least one date keyword pattern;
- determining whether the first impact period and the second impact period overlap;
- if the first impact period overlaps the second impact period, merging the first information item and the second information item into a merged information item; and
- providing the merged information item in the setting recommendation.
41. The method of claim 1 further comprising:
- accessing a calendar events database to retrieve a calendar event from among a plurality of calendar events stored in the calendar events database, wherein the calendar event is associated with the travel market or a market encompassing the travel market in the calendar events database and a potential market calendar effect;
- performing a database access to identify a recommended action associated with the potential market calendar effect;
- generating a setting recommendation based at least in part on the calendar event and the potential market calendar effect.
42. The method of claim 1 wherein the travel market is the world.
43. A system for generating a setting recommendation to configure a revenue management system for a travel market of a travel provider, the system comprising:
- a processor; and
- a memory including instructions that, when executed by the processor, cause the system to:
- access a data source database to retrieve a plurality of data sources, wherein each data source in the plurality of data sources is associated with the travel market or a market encompassing the travel market in the data source database;
- access a filter database to retrieve a filter from among a plurality of filters stored in the filter database, wherein each filter in the plurality of filters includes a filter criterion and a potential market effect;
- perform an electronic search of the plurality of data sources to retrieve a plurality of articles associated with the plurality of data sources;
- apply the filter to the plurality of articles to extract an information item from an article in the plurality of articles, wherein the article meets the filter criterion of the filter;
- perform a database access to identify a recommended action associated with the potential market effect of the filter therein; and
- generate a setting recommendation based at least in part on the information item, wherein the setting recommendation includes the recommended action.
44. A computer program product comprising:
- a non-transitory computer-readable storage medium; and
- instructions stored on the non-transitory computer-readable storage medium that, when executed by a processor, cause a computer to:
- access a data source database to retrieve a plurality of data sources, wherein each data source in the plurality of data sources is associated with the travel market or a market encompassing the travel market in the data source database;
- access a filter database to retrieve a filter from among a plurality of filters stored in the filter database, wherein each filter in the plurality of filters includes a filter criterion and a potential market effect;
- perform an electronic search of the plurality of data sources to retrieve a plurality of articles associated with the plurality of data sources;
- apply the filter to the plurality of articles to extract an information item from an article in the plurality of articles, wherein the article meets the filter criterion of the filter;
- perform a database access to identify a recommended action associated with the potential market effect of the filter therein; and
- generate a setting recommendation based at least in part on the information item, wherein the setting recommendation includes the recommended action.
Type: Application
Filed: Mar 6, 2015
Publication Date: Sep 8, 2016
Inventors: Olivier Quilichini (Golfe Juan), Clement Roux-Clair (Antibes), Paul Garnero (Contes), Jean-Marie Patin (Auribeau sur Siagne), Jean-Michel Sauvage (Cannes), Christophe Haug (Sophia Antipolis)
Application Number: 14/640,613