Travel services search

Information

  • Patent Grant
  • 9870540
  • Patent Number
    9,870,540
  • Date Filed
    Tuesday, August 9, 2016
    7 years ago
  • Date Issued
    Tuesday, January 16, 2018
    6 years ago
Abstract
A system and method for searching travel services. A server computer receives a travel request from a client device operated by a user. The server computer identifies travel options according to the travel request. The server computer classifies the travel options into predefined groups, the classifying based on at least one of past transactions, input from domain experts, input from semantic analysts, analytics data, user preferences, and company policies. The server computer presents the options via presentation of the predefined groups.
Description
FIELD OF THE INVENTION

The present disclosure relates to traveling, and more specifically to searching for flights, hotels, and other travel services.


BACKGROUND OF THE INVENTION

Searching for flights, hotels, and other travel services is highly cumbersome today. The process inherently involves making a series of complicated decisions and tradeoffs and most tools today simply offload that burden entirely to the user. Tools today do not enable a user to trade-off between traveling attributes.


BRIEF SUMMARY OF THE INVENTION

Additionally, tools that provide recommendations relating to travel services to users are not personalized to the user.


In one aspect, a server computer receives a travel request from a client device operated by a user. The server computer identifies travel options according to the travel request. The server computer classifies the travel options into predefined groups, the classifying based on at least one of past transactions, input from domain experts, input from semantic analysts, analytics data, user preferences, and company policies. The server computer presents the options via presentation of the predefined groups.


In one embodiment, the presenting of the options further includes presenting options personalized for the user. In one embodiment, the server computer defines groups, and the defining can be personalized for the user. In one embodiment, the classifying of the travel options into the predefined groups includes defining, by the user, a function to classify an option. In one embodiment, the defining of the function includes defining the function via one or more up/down votes. A first group can be classified, and the classifying can be based on a model function of the first group. The classifying of the first group can be based on attributes associated with the travel options.


In one embodiment, the server computer determines buckets specifically for the user. In one embodiment, the server computer provides, to the client device, the plurality of buckets as recommendations for the user based on the travel request. The determining of the buckets can include determining buckets that are personalized to a user's search behavior and/or based on the user's social connections.


These and other aspects and embodiments will be apparent to those of ordinary skill in the art by reference to the following detailed description and the accompanying drawings.





BRIEF DESCRIPTION OF THE DRAWINGS

In the drawing figures, which are not to scale, and where like reference numerals indicate like elements throughout the several views:



FIG. 1 is a user interface associated with a web site existing in the prior art;



FIG. 2 is another user interface associated with a web site existing in the prior art;



FIG. 3 is a block diagram illustrating a server computer in communication with a client computer over a network in accordance with an embodiment of the present disclosure;



FIG. 4 is a system architecture to provide personalized recommendations to a user in accordance with an embodiment of the present disclosure;



FIG. 5 is a flowchart illustrating operations performed by the server computer to provide recommendations to a user in accordance with an embodiment of the present disclosure;



FIG. 6 is a user interface provided by the server computer that displays personalized recommendations to a user in accordance with an embodiment of the present disclosure;



FIG. 7 is a schematic diagram illustrating a client device in accordance with an embodiment of the present disclosure; and



FIG. 8 is a block diagram of an internal architecture of a computing device in accordance with an embodiment of the present disclosure.





DESCRIPTION OF EMBODIMENTS

Embodiments are now discussed in more detail referring to the drawings that accompany the present application. In the accompanying drawings, like and/or corresponding elements are referred to by like reference numbers.


Various embodiments are disclosed herein; however, it is to be understood that the disclosed embodiments are merely illustrative of the disclosure that can be embodied in various forms. In addition, each of the examples given in connection with the various embodiments is intended to be illustrative, and not restrictive. Further, the figures are not necessarily to scale, some features may be exaggerated to show details of particular components (and any size, material and similar details shown in the figures are intended to be illustrative and not restrictive). Therefore, specific structural and functional details disclosed herein are not to be interpreted as limiting, but merely as a representative basis for teaching one skilled in the art to variously employ the disclosed embodiments.


The present disclosure is described below with reference to block diagrams and operational illustrations of methods and devices. It is understood that each block of the block diagrams or operational illustrations, and combinations of blocks in the block diagrams or operational illustrations, can be implemented by means of analog or digital hardware and computer program instructions. These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, ASIC, or other programmable data processing apparatus, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, implements the functions/acts specified in the block diagrams or operational block or blocks.


In some alternate implementations, the functions/acts noted in the blocks can occur out of the order noted in the operational illustrations. For example, two blocks shown in succession can in fact be executed substantially concurrently or the blocks can sometimes be executed in the reverse order, depending upon the functionality/acts involved. Furthermore, the embodiments of methods presented and described as flowcharts in this disclosure are provided by way of example in order to provide a more complete understanding of the technology. The disclosed methods are not limited to the operations and logical flow presented herein. Alternative embodiments are contemplated in which the order of the various operations is altered and in which sub-operations described as being part of a larger operation are performed independently.


Throughout the specification and claims, terms may have nuanced meanings suggested or implied in context beyond an explicitly stated meaning. Likewise, the phrase “in one embodiment” as used herein does not necessarily refer to the same embodiment and the phrase “in another embodiment” as used herein does not necessarily refer to a different embodiment. It is intended, for example, that claimed subject matter include combinations of example embodiments in whole or in part.


In general, terminology may be understood at least in part from usage in context. Fore example, terms, such as “and”, “or”, or “and/or,” as used herein may include a variety of meanings that may depend at least in part upon the context in which such terms are used. Typically, “or” if used to associate a list, such as A, B, or C, is intended to mean A, B, and C, here used in the inclusive sense, as well as A, B, or C, here used in the exclusive sense. In addition, the term “one or more” as used herein, depending at least in part upon context, may be used to describe any feature, structure, or characteristic in a singular sense or may be used to describe combinations of features, structures or characteristics in a plural sense. Similarly, terms, such as “a,” “an,” or “the,” again, may be understood to convey a singular usage or to convey a plural usage, depending at least in part upon context. In addition, the term “based on” may be understood as not necessarily intended to convey an exclusive set of factors and may, instead, allow for existence of additional factors not necessarily expressly described, again, depending at least in part on context.



FIG. 1 is an example of a user interface 100 associated with a web site (mobisimmo.com) existing in the prior art. The user interface 100 includes a first recommendation 105 and a second recommendation 110. The first recommendation 105 is a recommendation of a lowest fare available for alternate dates of a flight. The second recommendation 110 is a recommendation of the cheapest non-stop flight. The recommendations 105, 110 do not allow the user to trade-off between any two travel attributes (such as flight time and flight price). Further, the recommendations 105, 110 do not take into account user preferences.



FIG. 2 is another example of a user interface 200 associated with a web site (hipmunk.com) existing in the prior art. The user interface 200 introduces an Agony score to help users rank flights. The criteria used to build the Agony store is time, duration, and number of stops of the flight solution. The user interface 200 does not, however, attempt to provide recommendations. Further, the user interface 200 does not attempt to personalize any recommendations to the user.



FIG. 3 is a block diagram of an embodiment of a client computer 305 (also referred to as a client device 305) communicating with a server computer 310 over a network 315 such as the Internet. A user uses a web browser 320 on the client computer 305 to access the Internet. In one embodiment, server computer 310 transmits a web page 325 via the network 315 to the client computer 305 for display by the web browser 320 in a web page 330.


For purposes of this disclosure, a computer such as the client computer 305 includes a processor and memory for storing and executing program code, data and software. Computers can be provided with operating systems that allow the execution of software applications in order to manipulate data. Client computer 305 can be any device that can display a website and that can be used by a user. Personal computers, servers, personal digital assistants (PDAs), wireless devices, smartphones, cellular telephones, tablet computers, internet appliances, media players, home theater systems, and media centers are several non-limiting examples of computers.


For the purposes of this disclosure, the term “server” should be understood to refer to a service point which provides processing, database, and communication facilities. By way of example, and not limitation, the term “server” can refer to a single, physical processor with associated communications and data storage and database facilities, or it can refer to a networked or clustered complex of processors and associated network and storage devices, as well as operating software and one or more database systems and applications software which support the services provided by the server. A number of program modules and data files can be stored on a computer readable medium of the server. They can include an operating system suitable for controlling the operation of a networked server computer, such as the WINDOWS 7, WINDOWS VISTA, or WINDOWS XP operating system published by Microsoft Corporation of Redmond, Wash., or the Ubuntu operating system distributed by Canonical Ltd. of Douglas, Isle of Man. In one embodiment, the server computer 310 is a group of servers (e.g., a server farm).


In one embodiment, the user of the client device 305 logs into the web page 330. The user submits travel criteria 340 in the web page 330, such as the dates and times of flights that the user would like to be on, a hotel that the user would like to stay at, price range that the user would like to pay for the flight or hotel, and/or any other travel criteria associated with a user's trip. In one embodiment, the client device 305 transmits this user travel criteria 340 to the server computer 310. As described in more detail below, the server computer 310 analyzes the user travel criteria 340 in light of data received from multiple sources (e.g., user reviews, past transaction history of the user on the site, data from other sites about a particular traveling service, etc.) to determine one or more personalized recommendations for the user. The server computer 310 transmits the travel recommendations 350 to the client device 305. The client device 305 displays the personalized travel recommendations 350 to the user, such as a first personalized recommendation 355 and a second personalized recommendation 360.


Although described as the server computer 310 performing the processing, in another embodiment the client computer 305 performs some or all of the processing to determine the personalized travel recommendations 350 to the user. Further, although the description below uses a flight as the travel, any type of travel service can be used in the system, such as hotel reservations and/or hotel amenities.



FIG. 4 shows an embodiment of a system architecture 400 to provide personalized recommendations to a user. In one embodiment, the client computer 305 performs the processing shown in FIG. 4. In another embodiment, the server computer 310 performs the processing shown in FIG. 4. In yet another embodiment, the client computer 305 performs some of the processing shown in FIG. 4 and the server computer 310 performs some of the processing shown in FIG. 4.


A user 405 submits a travel search 410 to the web page 330. The system 400 receives the travel search 410 and determines a package context 415 for the travel search. The system 400 performs search context analysis 417 to determine the package context 415. As described in more detail below, the package context 415 can include, for example, a combination of the user's query, user's past transaction history, his personal preferences and/or any other relevant environmental context. Next, a bucket selection 420 occurs to determine which specific buckets to include in the recommendation for the user. In one embodiment, the bucket selection 420 communicates with a bucket orchestration module 423. The bucket orchestration module 423 is used to perform the bucket selection 420. The data is then transmitted to the recommendation user experience (UX) module 425. A transaction 430 is then generated. The package context 415, bucket selection 420, recommendation user experience module 425 data, and transaction data is transmitted to an analytics module 440 for analysis.


The data from the analytics module 440 is transmitted to a bucket configuration module 450. The bucket configuration module 450 receives input from semantic analysts and/or domain experts 455 to determine a bucket algorithm 460 and a bucket context 465. The bucket orchestration module 423 is configured or trained via the adjusting of the bucket configuration 450. The semantic analysts and/or domain experts 455 can be one or more people or one or more machines. In one embodiment, the bucket configuration module 450 receives past transaction analysis 470. In one embodiment, the bucket configuration 450 is based on past transaction analysis 470 and the analytics of the data recording operations 415, 420, 425, and 430 (current operations as a feedback to the system to fine tune the bucket configuration for future “bucketing”.


A bucket/recommendation is a predefined characterization of travel options (e.g., “best for productivity”, “company value”, “cheapest”, “fastest”, etc.). Instead of presenting the list of travel options to the user to ask the user to understand the value trade-off among different travel attributes of a travel option (e.g., a flight), the system 400 analyzes the trade-off and assigns the travel options to buckets, each having a name (e.g., “best for productivity”) that indicates the value trade-off made in the bucket. For example, if the user is interested in “best for productivity”, in one embodiment there is no need to look at the travel options placed in other buckets. Each bucket may be presented with certain characteristics of the options in the respective buckets, such as the lowest price of the options in the bucket. Each bucket may have only one top option, representing the recommended option for the optimization goal suggested by the name of the respective bucket. The server may classify all search results into the buckets, or only the top candidates for each of the buckets (and thus filtering out other results).


To seed the system 400, in one embodiment a set of domain experts and/or semantic analysts 455 define a set of buckets. Each bucket is modeled as a function over a set of travel attributes (e.g., price of flight, duration of flight, stopcount, inflightwifi, aircraft type, user loyalty information, comfort information). In one embodiment, attributes take different weights depending on, for example, the bucket being defined and/or the user for whom the bucket is being defined for. In one embodiment, the attribute weighting is defined by performing a rigorous analysis of past transaction data (e.g., stored in a database in communication with the server computer 310). Once again, to seed the system, domain experts and/or semantic analysis influence the weighting. Eventually, new transaction data as well as user engagement data is used to train the system.


For example, the price of a flight attribute for a flight may be more heavily weighted than the comfort information of a flight for a user who has selected the cheapest flight option in the past and has never selected the comfort option. Thus, in one embodiment a feedback loop exists—data associated with a trip from multiple sources is analyzed, and this data includes user preferences and past actions. This data is then used to provide future recommendations to the user.


In one embodiment, the process of defining and refining a bucket is a continuous one. The system 400 is an experimentation platform that enables the defining of buckets on the fly and enables the buckets to be surfaced to a select set of users by running an experiment. In one embodiment, the results of the experiment determine the future viability and/or the design of the bucket. Buckets that are defined get added to a pool of available buckets which are available to be offered to the user.


In one embodiment, each bucket corresponds to a model or function that generates a score (e.g., a score for “best for productivity”) for each travel option, based on flight/travel attributes of each travel option and/or the user preferences, context, history, etc. The score/model/function implemented in the bucket orchestration module ranks the travel options for classification into different buckets.


In more detail, when a user performs a travel query (e.g., submits a travel search 410/travel criteria 340), in one embodiment user context (a combination of the user's query, user's past transaction history, his personal preferences and/or any other relevant environmental context) is packaged by the package context module 415. A bucket selection 420 occurs and is offered (e.g., transmitted) to bucket orchestration module 423. The bucket orchestration module 423 uses the context to decide the subset of buckets as well as the order of buckets that should be surfaced (presented) to the user. In one embodiment, to seed the system, a uniform set of buckets is used that are surfaced to all the users. As the system 400 gains experience/confidence, the orchestration module 423 gets more aggressive in making these determinations.


The system 400 then renders the appropriate set of buckets to the user 405. In one embodiment, the buckets are presented to the user 405 in increasing order of decision making complexity. For example and as shown in FIG. 5, the cheapest bucket 505 is shown before the fastest bucket 510. This allows the user 405 to immediately understand the premium that he is paying for flying faster. Thus, users can not only abstract away complexities behind these buckets but also can determine the tradeoff between one bucket and another bucket. Furthermore, in one embodiment the system 400 is highly transparent in how the recommendations are made by explaining to the user the dominant attributes that constitute a single bucket.


A user may interact with the bucket by voting up or down attributes that have been identified as dominant attributes for a particular bucket. By allowing the user 405 to participate in the bucket definition process, the bucket definition will be trained towards the “correct” weights faster than without user participation. This recommendation system 400 is further strengthened by analytics module 440 that collects engagement & transaction data at every stage of the transaction funnel (operations 415, 420, 425, and 430) and uses that analytics data to influence bucket orchestration and/or the design of the bucket itself


In one embodiment, a bucket can be defined (e.g., by the user 405) that captures a sub-goal in travel solution selection. A bucket can also be defined as a function of one or more attributes, based on analysis of past transactions (e.g., regression analysis), based on semantic knowledge, and/or based on analytical data and user behavior (e.g., on the site and/or on other sites). In one embodiment, analytics influence the fine-tuning of bucket attribute weights. In one embodiment, the experimentation platform enables the system to determine the correct set of buckets for a specific user. The buckets can be personalized to a user's company policy, personalized to a user's specific preferences, personalized to a user's past and present search behavior, and/or personalized to a user's frequent flyer account standing. As stated above, the bucket definitions are transparent and may be fine tuned by the user or a company for a set of users. In one embodiment, a company (or user) can define a custom narrative for each bucket option, can define what buckets are viewed based on a set of bucket options, and/or can define the order of buckets that are viewed.



FIG. 5 is a flowchart showing an embodiment of the operations performed to provide these recommendations. The server computer 310 (or client computer 305) receives travel criteria 340 (e.g., from the client computer 305) (Operation 505). The server computer 310 then retrieves or obtains travel data associated with the travel criteria from multiple sources (e.g., from the web, from a database, from other computers, from memory, etc.) (Operation 510). The data can be retrieved or obtained by the server computer 310 continuously, periodically, at various times, etc. The server computer 310 analyzes the travel data and, in one embodiment, applies various weights to the travel data (Operation 515). As stated above, the analysis of the travel data can include adjusting one or more weights based on the user's past interaction(s) with the web site. In one embodiment, the user 405 can tailor the analysis by specifying or adjusting particular weights that the user wants applied to different travel data. The server computer 310 then provides one or more personal travel recommendations to the user based on the analysis of the travel data (Operation 520).


In one embodiment, the analysis of the travel data includes analyzing data associated with and/or recommendations provided to the user's social networking connections. For example, suppose the user 405 is connected to person B on a social networking site such as Facebook® or LinkedIn®. In one embodiment, the server computer 310 determines that person B is connected to user 405 via a social networking site and person B has always selected flights on a specific airline. In one embodiment, the server computer 310 utilizes this information in its personalized recommendation to the user 405. For example, the personalized recommendation can indicate that user 405′s friend person B has previously selected flights on the particular airline. A recommendation associated with a user's “friend” or social connection may be beneficial to the user 405 (e.g., may provide more weight to the recommendation). Thus, in one embodiment, the personalized recommendations provided by the server computer 310 are tailored based on recommendations provided to or selections made by the user's social connections on a social networking site.


In one embodiment, the web site displaying the personalized recommendations include advertisements. In one embodiment, the advertisements are related to the personalized recommendations. The advertisements may be provided by the server computer 310 and/or by a third party advertisement server.



FIG. 6 is an embodiment of a user interface 600 showing personalized recommendations for user 405. In one embodiment, the buckets selected and displayed include company value 615, lowest cost 605, fastest flights 610, and comfort and ease 620. If, for example, the user 405 never selects the comfort and ease recommendation 620, in one embodiment the system will adjust based on the user's past transactions and not provide this recommendation in the future. In one embodiment, the user interface 600 includes a summary 630 of your travel criteria and/or additional information 640 associated with an option. The buckets/recommendations can include, for example, company value, best value, best for loyalty, best for productivity, fastest flights, lowest cost, comfort and ease (e.g., reclining seats, most space, most leg room, etc.), best technology (e.g., video screens available for each seat), best fitness center (in a hotel), best service, best meals, availability of wifi, availability of restaurants nearby, most entertainment available (e.g., shows playing near hotel), best facilities (e.g., swimming pool in hotel), etc. In one embodiment, the buckets presented as recommendations are based on a user profile for the user 405. This user profile can be created by the user (e.g., when creating an account, at login, etc.) or can be determined based on previous user interactions with the web site.



FIG. 7 shows one example of a schematic diagram illustrating a client device 705 (e.g., client device 305). Client device 705 may include a computing device capable of sending or receiving signals, such as via a wired or wireless network. A client device 705 may, for example, include a desktop computer or a portable device, such as a cellular telephone, a smartphone, a display pager, a radio frequency (RF) device, an infrared (IR) device, a Personal Digital Assistant (PDA), a handheld computer, a tablet computer, a laptop computer, a digital camera, a set top box, a wearable computer, an integrated device combining various features, such as features of the foregoing devices, or the like.


The client device 705 may vary in terms of capabilities or features. Claimed subject matter is intended to cover a wide range of potential variations. For example, a cell phone may include a numeric keypad or a display of limited functionality, such as a monochrome liquid crystal display (LCD) for displaying text, pictures, etc. In contrast, however, as another example, a web-enabled client device may include one or more physical or virtual keyboards, mass storage, one or more accelerometers, one or more gyroscopes, global positioning system (GPS) or other location-identifying type capability, of a display with a high degree of functionality, such as a touch-sensitive color 2D or 3D display, for example.


A client device 705 may include or may execute a variety of operating systems, including a personal computer operating system, such as a Windows, iOS or Linux, or a mobile operating system, such as iOS, Android, or Windows Mobile, or the like. A client device may include or may execute a variety of possible applications, such as a client software application enabling communication with other devices, such as communicating one or more messages, such as via email, short message service (SMS), or multimedia message service (MMS), including via a network, such as a social network, including, for example, Facebook®, LinkedIn®, Twitter®, Flickr®, or Google+®, to provide only a few possible examples. A client device may also include or execute an application to communicate content, such as, for example, textual content, multimedia content, or the like. A client device may also include or execute an application to perform a variety of possible tasks, such as browsing, searching, playing various forms of content, including locally stored or streamed video, or games (such as fantasy sports leagues). The foregoing is provided to illustrate that claimed subject matter is intended to include a wide range of possible features or capabilities.


As shown in the example of FIG. 7, client device 705 may include one or more processing units (also referred to herein as CPUs) 722, which interface with at least one computer bus 725. A memory 730 can be persistent storage and interfaces with the computer bus 725. The memory 730 includes RAM 732 and ROM 734. ROM 734 includes a BIOS 740. Memory 730 interfaces with computer bus 725 so as to provide information stored in memory 730 to CPU 722 during execution of software programs such as an operating system 741, application programs 742, device drivers, and software modules 743, 745 that comprise program code, and/or computer-executable process operations, incorporating functionality described herein, e.g., one or more of process flows described herein. CPU 722 first loads computer-executable process operations from storage, e.g., memory 732, data storage medium/media 744, removable media drive, and/or other storage device. CPU 722 can then execute the stored process operations in order to execute the loaded computer-executable process operations. Stored data, e.g., data stored by a storage device, can be accessed by CPU 722 during the execution of computer-executable process operations.


Persistent storage medium/media 744 is a computer readable storage medium(s) that can be used to store software and data, e.g., an operating system and one or more application programs. Persistent storage medium/media 744 can also be used to store device drivers, such as one or more of a digital camera driver, monitor driver, printer driver, scanner driver, or other device drivers, web pages, content files, playlists and other files. Persistent storage medium/media 706 can further include program modules and data files used to implement one or more embodiments of the present disclosure.


For the purposes of this disclosure a computer readable medium stores computer data, which data can include computer program code that is executable by a computer, in machine readable form. By way of example, and not limitation, a computer readable medium may comprise computer readable storage media, for tangible or fixed storage of data, or communication media for transient interpretation of code-containing signals. Computer readable storage media, as used herein, refers to physical or tangible storage (as opposed to signals) and includes without limitation volatile and non-volatile, removable and non-removable media implemented in any method or technology for the tangible storage of information such as computer-readable instructions, data structures, program modules or other data. Computer readable storage media includes, but is not limited to, RAM, ROM, EPROM, EEPROM, flash memory or other solid state memory technology, CD-ROM, DVD, or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other physical or material medium which can be used to tangibly store the desired information or data or instructions and which can be accessed by a computer or processor.


Client device 705 can also include one or more of a power supply 726, network interface 750, audio interface 752, a display 754 (e.g., a monitor or screen), keypad 756, illuminator 758, I/O interface 760, a haptic interface 762, a GPS 764, and/or a microphone 766.


For the purposes of this disclosure a module is a software, hardware, or firmware (or combinations thereof) system, process or functionality, or component thereof, that performs or facilitates the processes, features, and/or functions described herein (with or without human interaction or augmentation). A module can include sub-modules. Software components of a module may be stored on a computer readable medium. Modules may be integral to one or more servers, or be loaded and executed by one or more servers. One or more modules may be grouped into an engine or an application.



FIG. 8 is a block diagram illustrating an internal architecture of an example of a computer, such as server computer 110 and/or client computer 105, in accordance with one or more embodiments of the present disclosure. A computer as referred to herein refers to any device with a processor capable of executing logic or coded instructions, and could be a server, personal computer, set top box, smart phone, pad computer or media device, to name a few such devices. As shown in the example of FIG. 8, internal architecture 800 includes one or more processing units (also referred to herein as CPUs) 812, which interface with at least one computer bus 802. Also interfacing with computer bus 802 are persistent storage medium/media 806, network interface 814, memory 804, e.g., random access memory (RAM), run-time transient memory, read only memory (ROM), etc., media disk drive interface 808 as an interface for a drive that can read and/or write to media including removable media such as floppy, CD-ROM, DVD, etc. media, display interface 810 as interface for a monitor or other display device, keyboard interface 816 as interface for a keyboard, pointing device interface 818 as an interface for a mouse or other pointing device, and miscellaneous other interfaces not shown individually, such as parallel and serial port interfaces, a universal serial bus (USB) interface, and the like.


Memory 804 interfaces with computer bus 802 so as to provide information stored in memory 804 to CPU 812 during execution of software programs such as an operating system, application programs, device drivers, and software modules that comprise program code, and/or computer-executable process operations, incorporating functionality described herein, e.g., one or more of process flows described herein. CPU 812 first loads computer-executable process operations from storage, e.g., memory 804, storage medium/media 806, removable media drive, and/or other storage device. CPU 812 can then execute the stored process operations in order to execute the loaded computer-executable process operations. Stored data, e.g., data stored by a storage device, can be accessed by CPU 812 during the execution of computer-executable process operations.


Persistent storage medium/media 806 is a computer readable storage medium(s) that can be used to store software and data, e.g., an operating system and one or more application programs. Persistent storage medium/media 806 can also be used to store device drivers, such as one or more of a digital camera driver, monitor driver, printer driver, scanner driver, or other device drivers, web pages, content files, playlists and other files. Persistent storage medium/media 806 can further include program modules and data files used to implement one or more embodiments of the present disclosure.


For the purposes of this disclosure a computer readable medium stores computer data, which data can include computer program code that is executable by a computer, in machine readable form. By way of example, and not limitation, a computer readable medium may comprise computer readable storage media, for tangible or fixed storage of data, or communication media for transient interpretation of code-containing signals. Computer readable storage media, as used herein, refers to physical or tangible storage (as opposed to signals) and includes without limitation volatile and non-volatile, removable and non-removable media implemented in any method or technology for the tangible storage of information such as computer-readable instructions, data structures, program modules or other data. Computer readable storage media includes, but is not limited to, RAM, ROM, EPROM, EEPROM, flash memory or other solid state memory technology, CD-ROM, DVD, or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other physical or material medium which can be used to tangibly store the desired information or data or instructions and which can be accessed by a computer or processor.


For the purposes of this disclosure a module is a software, hardware, or firmware (or combinations thereof) system, process or functionality, or component thereof, that performs or facilitates the processes, features, and/or functions described herein (with or without human interaction or augmentation). A module can include sub-modules. Software components of a module may be stored on a computer readable medium. Modules may be integral to one or more servers, or be loaded and executed by one or more servers. One or more modules may be grouped into an engine or an application.


Those skilled in the art will recognize that the methods and systems of the present disclosure may be implemented in many manners and as such are not to be limited by the foregoing exemplary embodiments and examples. In other words, functional elements being performed by single or multiple components, in various combinations of hardware and software or firmware, and individual functions, may be distributed among software applications at either the user device or server or both. In this regard, any number of the features of the different embodiments described herein may be combined into single or multiple embodiments, and alternate embodiments having fewer than, or more than, all of the features described herein are possible. Functionality may also be, in whole or in part, distributed among multiple components, in manners now known or to become known. Thus, myriad software/hardware/firmware combinations are possible in achieving the functions, features, interfaces and preferences described herein. Moreover, the scope of the present disclosure covers conventionally known manners for carrying out the described features and functions and interfaces, as well as those variations and modifications that may be made to the hardware or software or firmware components described herein as would be understood by those skilled in the art now and hereafter.


While the system and method have been described in terms of one or more embodiments, it is to be understood that the disclosure need not be limited to the disclosed embodiments. It is intended to cover various modifications and similar arrangements included within the spirit and scope of the claims, the scope of which should be accorded the broadest interpretation so as to encompass all such modifications and similar structures. The present disclosure includes any and all embodiments of the following claims.

Claims
  • 1. A method comprising: receiving, by a server computer from a client device operated by a user, a travel request;identifying, by the server computer, travel options according to the travel request;ranking, by the server computer, each travel option in the identified travel options, the ranking based on travel attributes of each travel option and user preferences;classifying, by the server computer, the ranked travel options into predefined buckets, wherein each bucket of the predefined buckets is associated with a plurality of weighted travel attributes;classifying, by the server computer, a first bucket, the classifying based on a model function of the first bucket, wherein the classifying of the first bucket is further based on attributes associated with the travel options;filtering, by the server computer, the ranked travel options in the predefined buckets;communicating, by the server computer to the client device, the filtered classified ranked travel options in the corresponding predefined buckets for display, the filtered classified ranked travel options in the corresponding predefined buckets displayed at the client device in an order associated with the user;receiving, by the server computer from the client device, interactions from the user with one or more of the displayed predefined buckets, the interactions comprising a voting of the travel options in the bucket; andin response to receiving the interactions from the user with the one or more of the displayed predefined buckets, using, the interactions for future classifying.
  • 2. The method of claim 1, wherein the communicating of the options is personalized for the user.
  • 3. The method of claim 1, wherein the classifying of the travel options into the predefined buckets further comprises defining, by the user, a function to classify an option.
  • 4. The method of claim 3, wherein the defining, by the user, of the function further comprises defining the function via one or more votes.
  • 5. The method of claim 1, further comprising determining, by the server computer, a plurality of buckets specifically for the user.
  • 6. The method of claim 5, further comprising providing, by the server computer to the client device, the plurality of buckets as recommendations for the user based on the travel request.
  • 7. The method of claim 5, wherein the determining of the plurality of buckets further comprises determining buckets that are one or more of personalized to a user's search behavior and personalized based on social connections.
  • 8. A system comprising: a processor; andmemory storing instructions configured to instruct the processor to: receive from a client device operated by a user, a travel request;identify travel options according to the travel request;rank each travel option in the identified travel options, the ranking based on travel attributes of each travel option and user preferences;classify the ranked travel options into predefined buckets, wherein each bucket of the predefined buckets is associated with a plurality of weighted travel attributes;classify a first bucket, the classifying based on a model function of the first bucket, wherein the classifying of the first bucket is further based on attributes associated with the travel options;filter the ranked travel options in the predefined buckets;communicate the filtered classified ranked travel options in the corresponding predefined buckets for display, the filtered classified ranked travel options in the corresponding predefined buckets displayed at the client device in an order associated with the user;receive interactions from the user with one or more of the displayed predefined buckets, the interactions comprising a voting of the travel options in the bucket; andin response to receiving the interactions from the user with the one or more of the displayed predefined buckets, use the interactions for future classifying.
  • 9. The system of claim 8, wherein the instructions to communicate the options further comprises instructions to communicate that are personalized for the user.
  • 10. The system of claim 8, wherein the instructions to classify the travel options into the predefined buckets further comprises instructions to enable the user to define a function to classify an option.
  • 11. The system of claim 10, wherein the instructions to enable the user to define the function further comprises instructions to enable the user to define the function via one or more votes.
  • 12. The system of claim 8, further comprising instructions to determine a plurality of buckets specifically for the user.
  • 13. The system of claim 12, further comprising instructions to provide, to the client device, the plurality of buckets as recommendations for the user based on the travel request.
  • 14. The system of claim 12, wherein the instructions to determine the plurality of buckets further comprises instructions to determine buckets that are one or more of personalized to a user's search behavior and personalized based on social connections.
  • 15. a non-transitory computer readable storage medium storing computer program instructions configured to instruct a computer processor to at least: receive from a client device operated by a user, a travel request;identify travel options according to the travel request;rank each travel option in the identified travel options, the ranking based on travel attributes of each travel option and user preferences;classify the ranked travel options into predefined buckets, wherein each bucket of the predefined buckets is associated with a plurality of weighted travel attributes;classify a first bucket, the classifying based on a model function of the first bucket, wherein the classifying of the first bucket is further based on attributes associated with the travel options;filter the ranked travel options in the predefined buckets;communicate the filtered classified ranked travel options in the corresponding predefined buckets for display, the filtered classified ranked travel options in the corresponding predefined buckets displayed at the client device in an order associated with the user;receive interactions from the user with one or more of the displayed predefined buckets, the interactions comprising a voting of the travel options in the bucket; and in response to receiving the interactions from the user with the one or more of the displayed predefined buckets, use the interactions for future classifying.
RELATED APPLICATIONS

The present application is a continuation application of U.S. patent application Ser. No. 13/476,900, filed May 21, 2012 and entitled “TRAVEL SERVICES SEARCH”, which claims the benefit of the filing date of U.S. Provisional Patent Application No. 61/488,567 filed on May 20, 2011 and entitled “Personalized Flight Search/Smart Flight Search”, the entire disclosures of which applications are hereby incorporated herein by reference.

US Referenced Citations (522)
Number Name Date Kind
4812843 Champion, III et al. Mar 1989 A
4969136 Chamberlin et al. Nov 1990 A
5021953 Webber et al. Jun 1991 A
5237499 Garback Aug 1993 A
5289531 Levine Feb 1994 A
5331546 Webber et al. Jul 1994 A
5404291 Kerr et al. Apr 1995 A
5422816 Sprague et al. Jun 1995 A
5459859 Senda Oct 1995 A
5513126 Harkins et al. Apr 1996 A
5548515 Piney et al. Aug 1996 A
5559707 DeLorme et al. Sep 1996 A
5615121 Babayev et al. Mar 1997 A
5623404 Collins et al. Apr 1997 A
5655081 Bonnell et al. Aug 1997 A
5754953 Briancon et al. May 1998 A
5765140 Knudson et al. Jun 1998 A
5790974 Tognazzini Aug 1998 A
5802492 DeLorme et al. Sep 1998 A
5809250 Kisor Sep 1998 A
5812844 Jones et al. Sep 1998 A
5832451 Flake et al. Nov 1998 A
5832453 O'Brien Nov 1998 A
5839114 Lynch et al. Nov 1998 A
5850433 Rondeau Dec 1998 A
5862490 Sasuta et al. Jan 1999 A
5875436 Kikinis Feb 1999 A
5901352 St-Pierre et al. May 1999 A
5933485 Chang et al. Aug 1999 A
5943652 Sisley et al. Aug 1999 A
5948040 DeLorme et al. Sep 1999 A
5953706 Patel Sep 1999 A
5963861 Hanson Oct 1999 A
5963913 Henneuse et al. Oct 1999 A
5966658 Kennedy, III et al. Oct 1999 A
5987377 Westerlage et al. Nov 1999 A
6011976 Michaels et al. Jan 2000 A
6016478 Zhang et al. Jan 2000 A
6018715 Lynch et al. Jan 2000 A
6023679 Acebo et al. Feb 2000 A
6023722 Colyer Feb 2000 A
6035332 Ingrassia, Jr. et al. Mar 2000 A
6038542 Ruckdashel Mar 2000 A
6041305 Sakurai Mar 2000 A
6044257 Boling et al. Mar 2000 A
6047327 Tso et al. Apr 2000 A
6052563 Macko Apr 2000 A
6058179 Shaffer et al. May 2000 A
6076108 Courts et al. Jun 2000 A
6085166 Beckhardt et al. Jul 2000 A
6091956 Hollenberg Jul 2000 A
6094681 Shaffer et al. Jul 2000 A
6101480 Conmy et al. Aug 2000 A
6104788 Shaffer et al. Aug 2000 A
6119094 Lynch et al. Sep 2000 A
6134534 Walker et al. Oct 2000 A
6144942 Ruckdashel Nov 2000 A
6148261 Obradovich et al. Nov 2000 A
6157945 Balma et al. Dec 2000 A
6163748 Guenther Dec 2000 A
6169955 Fultz Jan 2001 B1
6173279 Levin et al. Jan 2001 B1
6177905 Welch Jan 2001 B1
6188905 Rudrapatna et al. Feb 2001 B1
6189003 Leal Feb 2001 B1
6202062 Cameron et al. Mar 2001 B1
6216227 Goldstein et al. Apr 2001 B1
6240396 Walker et al. May 2001 B1
6249252 Dupray Jun 2001 B1
6286046 Bryant Sep 2001 B1
6292783 Rohler et al. Sep 2001 B1
6292830 Taylor et al. Sep 2001 B1
6295521 DeMarcken et al. Sep 2001 B1
6298352 Kannan et al. Oct 2001 B1
6301533 Markow Oct 2001 B1
6304850 Keller et al. Oct 2001 B1
6317686 Ran Nov 2001 B1
6321158 DeLorme et al. Nov 2001 B1
6327359 Kang et al. Dec 2001 B1
6334109 Kanevsky et al. Dec 2001 B1
6336072 Takayama et al. Jan 2002 B1
6349238 Gabbita et al. Feb 2002 B1
6360205 Iyengar et al. Mar 2002 B1
6370566 Discolo et al. Apr 2002 B2
6381578 DeMarcken Apr 2002 B1
6381640 Beck et al. Apr 2002 B1
6389454 Ralston et al. May 2002 B1
6392669 Matoba et al. May 2002 B1
6396920 Cox et al. May 2002 B1
6414635 Stewart et al. Jul 2002 B1
6418471 Shelton et al. Jul 2002 B1
6421705 Northrup Jul 2002 B1
6442526 Vance et al. Aug 2002 B1
6456207 Yen Sep 2002 B1
6456709 Cox et al. Sep 2002 B1
6457045 Hanson et al. Sep 2002 B1
6457062 Pivowar et al. Sep 2002 B1
6457132 Borgendale et al. Sep 2002 B1
6466161 Turetzky et al. Oct 2002 B2
6477503 Mankes Nov 2002 B1
6480830 Ford et al. Nov 2002 B1
6484033 Murray Nov 2002 B2
6496568 Nelson Dec 2002 B1
6501421 Dutta et al. Dec 2002 B1
6519571 Guheen et al. Feb 2003 B1
6529136 Cao et al. Mar 2003 B2
6549939 Ford et al. Apr 2003 B1
6553346 Walker et al. Apr 2003 B1
6560456 Lohtia et al. May 2003 B1
6571213 Altendahl et al. May 2003 B1
6574329 Takeuchi et al. Jun 2003 B2
6578005 Lesaint et al. Jun 2003 B1
6580914 Smith Jun 2003 B1
6584489 Jones et al. Jun 2003 B1
6587827 Hennig et al. Jul 2003 B1
6591263 Becker et al. Jul 2003 B1
6618668 Laird Sep 2003 B1
6631363 Brown et al. Oct 2003 B1
6640230 Alexander et al. Oct 2003 B1
6643622 Stuart et al. Nov 2003 B2
6643639 Biebesheimer et al. Nov 2003 B2
6650902 Richton Nov 2003 B1
6658093 Langseth et al. Dec 2003 B1
6662016 Buckham et al. Dec 2003 B1
6675151 Thompson et al. Jan 2004 B1
6687678 Yorimatsu et al. Feb 2004 B1
6691029 Hughes et al. Feb 2004 B2
6691153 Hanson et al. Feb 2004 B1
6700535 Gilkes et al. Mar 2004 B2
6701311 Biebesheimer et al. Mar 2004 B2
6714916 Robertson et al. Mar 2004 B1
6714918 Hillmer et al. Mar 2004 B2
6732080 Blants May 2004 B1
6732103 Strick et al. May 2004 B1
6741969 Chen et al. May 2004 B1
6757689 Battas et al. Jun 2004 B2
6766363 Rothschild Jul 2004 B1
6769009 Reisman Jul 2004 B1
6775371 Elsey et al. Aug 2004 B2
6788946 Winchell et al. Sep 2004 B2
6801226 Daughtrey Oct 2004 B1
6801763 Elsey et al. Oct 2004 B2
6802005 Berson Oct 2004 B1
6826473 Burch et al. Nov 2004 B1
6836537 Zirngibl et al. Dec 2004 B1
6842737 Stiles et al. Jan 2005 B1
6845370 Burkey et al. Jan 2005 B2
6847988 Toyouchi et al. Jan 2005 B2
6857017 Faour et al. Feb 2005 B1
6901438 Davis et al. May 2005 B1
6907119 Case et al. Jun 2005 B2
6909903 Wang Jun 2005 B2
6934684 Alpdemir et al. Aug 2005 B2
6937991 Zompa et al. Aug 2005 B1
6944273 Huna Sep 2005 B2
6944447 Portman et al. Sep 2005 B2
6944479 Andaker et al. Sep 2005 B2
6958692 Ratschunas Oct 2005 B1
6970871 Rayburn Nov 2005 B1
6980993 Horvitz et al. Dec 2005 B2
6985939 Fletcher et al. Jan 2006 B2
6993503 Heissenbuttel et al. Jan 2006 B1
6993554 O'Donnell Jan 2006 B2
7013149 Vetro et al. Mar 2006 B2
7024205 Hose Apr 2006 B1
7031945 Donner Apr 2006 B1
7031998 Archbold Apr 2006 B2
7050986 Vance et al. May 2006 B1
7050987 Lettovsky et al. May 2006 B2
7054939 Koch et al. May 2006 B2
7071842 Brady, Jr. Jul 2006 B1
7072666 Kullman et al. Jul 2006 B1
7072886 Salmenkaita et al. Jul 2006 B2
7076431 Kurganov et al. Jul 2006 B2
7076451 Coupland et al. Jul 2006 B1
7080019 Hurzeler Jul 2006 B1
7080021 McCulloch Jul 2006 B1
7092892 Sobalvarro et al. Aug 2006 B1
7099236 Yamagishi Aug 2006 B2
7099855 Nelken et al. Aug 2006 B1
7103572 Kawaguchi et al. Sep 2006 B1
7123141 Contestabile Oct 2006 B2
7124024 Adelaide et al. Oct 2006 B1
7124087 Rodriguez et al. Oct 2006 B1
7124089 Cornwell Oct 2006 B2
7130885 Chandra et al. Oct 2006 B2
7136821 Kohavi et al. Nov 2006 B1
7137099 Knight et al. Nov 2006 B2
7139718 Jeyachandran et al. Nov 2006 B2
7152038 Murashita et al. Dec 2006 B2
7154621 Rodriguez et al. Dec 2006 B2
7161497 Gueziec Jan 2007 B2
7162254 Smith Jan 2007 B1
7171369 Bertram et al. Jan 2007 B1
7188073 Tam et al. Mar 2007 B1
7213048 Parupudi et al. May 2007 B1
7222334 Casati et al. May 2007 B2
7233955 Machida et al. Jun 2007 B2
7236942 Walker et al. Jun 2007 B1
RE39717 Yates et al. Jul 2007 E
7263506 Lee et al. Aug 2007 B2
7263664 Daughtrey Aug 2007 B1
7277923 Rensin et al. Oct 2007 B2
7280823 Ternullo et al. Oct 2007 B2
7284002 Doss et al. Oct 2007 B2
7287093 Lynch et al. Oct 2007 B2
7289812 Roberts et al. Oct 2007 B1
7299286 Ramsayer et al. Nov 2007 B2
7300346 Lydon et al. Nov 2007 B2
7305356 Rodon Dec 2007 B2
7305454 Reese et al. Dec 2007 B2
7328406 Kalinoski et al. Feb 2008 B2
7330112 Emigh et al. Feb 2008 B1
7337125 Kraft et al. Feb 2008 B2
7340048 Stern et al. Mar 2008 B2
7340402 DeMarcken Mar 2008 B1
7340403 DeMarcken Mar 2008 B1
7343165 Obradovich Mar 2008 B2
7343338 Etkin Mar 2008 B2
7353182 Missinhoun et al. Apr 2008 B1
7367491 Cheng et al. May 2008 B2
7376662 Caparas et al. May 2008 B2
7383225 Hallihan Jun 2008 B2
7418409 Goel Aug 2008 B1
7428302 Zirngibl et al. Sep 2008 B2
7430724 Othmer Sep 2008 B2
7441203 Othmer et al. Oct 2008 B2
7451134 Krakowiecki et al. Nov 2008 B2
7506805 Chakravarthy Mar 2009 B1
7561963 Brice et al. Jul 2009 B2
7565331 Cutler et al. Jul 2009 B2
7599847 Block et al. Oct 2009 B2
7599858 Grady et al. Oct 2009 B1
7681786 Chakravarthy Mar 2010 B1
7706808 Aggarwal et al. Apr 2010 B1
7742954 Handel et al. Jun 2010 B1
7761386 Teicher Jul 2010 B2
7806328 Chakravarthy Oct 2010 B2
7925540 Orttung et al. Apr 2011 B1
7970666 Handel Jun 2011 B1
8117073 Orttung et al. Feb 2012 B1
8180796 Mah et al. May 2012 B1
8898184 Garman Nov 2014 B1
8972434 English et al. Mar 2015 B2
9449288 Swann et al. Sep 2016 B2
20010014866 Conmy et al. Aug 2001 A1
20010014867 Conmy Aug 2001 A1
20010021928 Ludwig et al. Sep 2001 A1
20010025314 Matsumoto et al. Sep 2001 A1
20010029425 Myr Oct 2001 A1
20010044748 Maier Nov 2001 A1
20010047316 Hallihan Nov 2001 A1
20010049637 Tso Dec 2001 A1
20010051876 Seigel et al. Dec 2001 A1
20010056354 Feit et al. Dec 2001 A1
20020000930 Crowson et al. Jan 2002 A1
20020007327 Steury et al. Jan 2002 A1
20020010604 Block Jan 2002 A1
20020010664 Rabideau et al. Jan 2002 A1
20020013729 Kida Jan 2002 A1
20020016723 Matsui et al. Feb 2002 A1
20020023132 Tornabene et al. Feb 2002 A1
20020026336 Eizenburg et al. Feb 2002 A1
20020029178 Wiederin et al. Mar 2002 A1
20020032591 Mahaffy et al. Mar 2002 A1
20020032597 Chanos Mar 2002 A1
20020035474 Alpdemir Mar 2002 A1
20020046076 Baillargeon et al. Apr 2002 A1
20020046301 Shannon et al. Apr 2002 A1
20020049644 Kargman Apr 2002 A1
20020055906 Katz et al. May 2002 A1
20020057212 Hamilton et al. May 2002 A1
20020065688 Charlton et al. May 2002 A1
20020067308 Robertson Jun 2002 A1
20020069093 Stanfield Jun 2002 A1
20020072938 Black et al. Jun 2002 A1
20020073088 Beckmann et al. Jun 2002 A1
20020077122 Yule Jun 2002 A1
20020077871 Udelhoven et al. Jun 2002 A1
20020082978 Ghouri et al. Jun 2002 A1
20020087367 Azani Jul 2002 A1
20020087384 Neifeld Jul 2002 A1
20020087706 Ogawa Jul 2002 A1
20020095454 Reed et al. Jul 2002 A1
20020099613 Swart et al. Jul 2002 A1
20020103746 Moffett, Jr. Aug 2002 A1
20020107027 O'Neil Aug 2002 A1
20020111845 Chong Aug 2002 A1
20020111848 White Aug 2002 A1
20020115430 Hall Aug 2002 A1
20020116235 Grimm et al. Aug 2002 A1
20020118118 Myllymaki et al. Aug 2002 A1
20020120519 Martin et al. Aug 2002 A1
20020120548 Etkin Aug 2002 A1
20020123280 Saiz Sep 2002 A1
20020128903 Kernahan Sep 2002 A1
20020131565 Scheuring et al. Sep 2002 A1
20020143655 Elston et al. Oct 2002 A1
20020143819 Han et al. Oct 2002 A1
20020151321 Winchell et al. Oct 2002 A1
20020152190 Biebesheimer et al. Oct 2002 A1
20020156659 Walker et al. Oct 2002 A1
20020156731 Seki et al. Oct 2002 A1
20020156839 Peterson et al. Oct 2002 A1
20020161611 Price et al. Oct 2002 A1
20020161701 Warmack Oct 2002 A1
20020165732 Ezzeddine et al. Nov 2002 A1
20020165903 Zargham et al. Nov 2002 A1
20020178034 Gardner et al. Nov 2002 A1
20020178226 Anderson et al. Nov 2002 A1
20020184302 Prueitt et al. Dec 2002 A1
20020194037 Creed et al. Dec 2002 A1
20020194119 Wright et al. Dec 2002 A1
20020194262 Jorgenson Dec 2002 A1
20020198747 Boyer et al. Dec 2002 A1
20030004762 Banerjee et al. Jan 2003 A1
20030013438 Darby Jan 2003 A1
20030018499 Miller et al. Jan 2003 A1
20030018551 Hanson et al. Jan 2003 A1
20030018808 Brouk et al. Jan 2003 A1
20030023463 Dombroski et al. Jan 2003 A1
20030028390 Stern et al. Feb 2003 A1
20030033179 Katz et al. Feb 2003 A1
20030036917 Hite et al. Feb 2003 A1
20030036928 Kenigsberg et al. Feb 2003 A1
20030040944 Hileman Feb 2003 A1
20030041178 Brouk et al. Feb 2003 A1
20030050964 Debaty et al. Mar 2003 A1
20030053459 Brouk et al. Mar 2003 A1
20030053611 Lee Mar 2003 A1
20030055689 Block et al. Mar 2003 A1
20030055723 English Mar 2003 A1
20030058842 Bud Mar 2003 A1
20030061145 Norrid Mar 2003 A1
20030065556 Takanashi et al. Apr 2003 A1
20030065805 Barnes, Jr. Apr 2003 A1
20030087648 Mezhvinsky et al. May 2003 A1
20030100315 Rankin May 2003 A1
20030109266 Rafiah et al. Jun 2003 A1
20030110070 De Goeij Jun 2003 A1
20030110091 Inaba et al. Jun 2003 A1
20030120526 Altman et al. Jun 2003 A1
20030120530 Casati et al. Jun 2003 A1
20030120593 Bansal et al. Jun 2003 A1
20030126095 Allen Jul 2003 A1
20030126250 Jhanji Jul 2003 A1
20030140172 Woods et al. Jul 2003 A1
20030149641 Kouketsu et al. Aug 2003 A1
20030149781 Yared et al. Aug 2003 A1
20030154116 Lofton Aug 2003 A1
20030158493 Goor et al. Aug 2003 A1
20030158776 Landesmann Aug 2003 A1
20030158784 Shaver et al. Aug 2003 A1
20030158847 Wissner et al. Aug 2003 A1
20030163251 Obradovich et al. Aug 2003 A1
20030165223 Timmins et al. Sep 2003 A1
20030171944 Fine et al. Sep 2003 A1
20030171973 Wilce et al. Sep 2003 A1
20030172020 Davies et al. Sep 2003 A1
20030177020 Okamura Sep 2003 A1
20030177045 Fitzgerald et al. Sep 2003 A1
20030182413 Allen et al. Sep 2003 A1
20030187743 Kumaran et al. Oct 2003 A1
20030195811 Hayes, Jr. et al. Oct 2003 A1
20030204622 Blizniak et al. Oct 2003 A1
20030212486 Hughes et al. Nov 2003 A1
20030212800 Jones et al. Nov 2003 A1
20030217044 Zhang et al. Nov 2003 A1
20030220835 Barnes, Jr. Nov 2003 A1
20030225600 Slivka et al. Dec 2003 A1
20030229900 Reisman Dec 2003 A1
20030233278 Marshall Dec 2003 A1
20040002876 Sommers et al. Jan 2004 A1
20040014457 Stevens Jan 2004 A1
20040015380 Timmins Jan 2004 A1
20040019606 Ackerman et al. Jan 2004 A1
20040030568 Kocznar et al. Feb 2004 A1
20040039613 Maycotte et al. Feb 2004 A1
20040045004 Cheenath Mar 2004 A1
20040054569 Pombo et al. Mar 2004 A1
20040054574 Kaufman et al. Mar 2004 A1
20040064355 Dorenbosch et al. Apr 2004 A1
20040064445 Pfleging et al. Apr 2004 A1
20040064503 Karakashian et al. Apr 2004 A1
20040064585 Doss et al. Apr 2004 A1
20040073615 Darling Apr 2004 A1
20040076280 Ando et al. Apr 2004 A1
20040078247 Rowe et al. Apr 2004 A1
20040078373 Ghoneimy et al. Apr 2004 A1
20040088107 Seligmann May 2004 A1
20040088392 Barrett et al. May 2004 A1
20040093290 Doss et al. May 2004 A1
20040098269 Wise et al. May 2004 A1
20040102979 Robertson et al. May 2004 A1
20040128173 Salonen Jul 2004 A1
20040133438 Zeisset et al. Jul 2004 A1
20040139151 Flurry et al. Jul 2004 A1
20040148207 Smith et al. Jul 2004 A1
20040153350 Kim et al. Aug 2004 A1
20040158493 Nicholson Aug 2004 A1
20040161097 Henry Aug 2004 A1
20040181572 Lee et al. Sep 2004 A1
20040184593 Elsey et al. Sep 2004 A1
20040186891 Panec et al. Sep 2004 A1
20040193457 Shogren Sep 2004 A1
20040199411 Bertram et al. Oct 2004 A1
20040203909 Koster Oct 2004 A1
20040220847 Ogushi et al. Nov 2004 A1
20040220854 Postrel Nov 2004 A1
20040224703 Takaki et al. Nov 2004 A1
20040236616 Daughtrey Nov 2004 A1
20040248551 Rowitch et al. Dec 2004 A1
20040249568 Endo et al. Dec 2004 A1
20040249758 Sukeda et al. Dec 2004 A1
20040267611 Hoerenz Dec 2004 A1
20050004819 Etzioni et al. Jan 2005 A1
20050010472 Quatse et al. Jan 2005 A1
20050015316 Salluzzo Jan 2005 A1
20050027570 Maier et al. Feb 2005 A1
20050033614 Lettovsky et al. Feb 2005 A1
20050033615 Nguyen et al. Feb 2005 A1
20050033616 Vavul et al. Feb 2005 A1
20050033670 Cheng et al. Feb 2005 A1
20050040944 Contestabile Feb 2005 A1
20050053220 Helbling et al. Mar 2005 A1
20050060210 Levi et al. Mar 2005 A1
20050075913 Brugger et al. Apr 2005 A1
20050086098 Fulton et al. Apr 2005 A1
20050091005 Huard Apr 2005 A1
20050101335 Kelly et al. May 2005 A1
20050125265 Bramnick et al. Jun 2005 A1
20050125439 Nourbakhsh et al. Jun 2005 A1
20050125804 Dievendorff et al. Jun 2005 A1
20050131761 Trika et al. Jun 2005 A1
20050143064 Pines et al. Jun 2005 A1
20050149385 Trively Jul 2005 A1
20050187703 Seligmann Aug 2005 A1
20050209772 Yoshikawa et al. Sep 2005 A1
20050209902 Iwasaki et al. Sep 2005 A1
20050215247 Kobylarz Sep 2005 A1
20050216301 Brown Sep 2005 A1
20050227712 Estevez et al. Oct 2005 A1
20050234928 Shkvarchuk et al. Oct 2005 A1
20050255861 Wilson et al. Nov 2005 A1
20050288948 Devulapalli et al. Dec 2005 A1
20060004511 Yoshikawa et al. Jan 2006 A1
20060004590 Khoo Jan 2006 A1
20060009987 Wang Jan 2006 A1
20060010206 Apacible et al. Jan 2006 A1
20060036586 Krakowiecki et al. Feb 2006 A1
20060041586 Nassef, Jr. Feb 2006 A1
20060059023 Mashinsky Mar 2006 A1
20060059024 Bailey et al. Mar 2006 A1
20060059107 Elmore et al. Mar 2006 A1
20060068787 Deshpande et al. Mar 2006 A1
20060080257 Vaughan et al. Apr 2006 A1
20060080321 Horn et al. Apr 2006 A1
20060085512 Handel et al. Apr 2006 A1
20060095329 Kim May 2006 A1
20060106655 Lettovsky et al. May 2006 A1
20060109106 Braun May 2006 A1
20060111955 Winter et al. May 2006 A1
20060129438 Robinson Jun 2006 A1
20060178932 Lang Aug 2006 A1
20060178949 McGrath Aug 2006 A1
20060190287 Forshaw et al. Aug 2006 A1
20060206363 Gove Sep 2006 A1
20060220374 Dorn et al. Oct 2006 A1
20060239295 Rao et al. Oct 2006 A1
20060241983 Viale et al. Oct 2006 A1
20060259353 Gutmann Nov 2006 A1
20060287897 Sobalvarro et al. Dec 2006 A1
20070011034 Jones et al. Jan 2007 A1
20070016439 Stiles et al. Jan 2007 A1
20070060099 Ramer et al. Mar 2007 A1
20070066397 Nammi et al. Mar 2007 A1
20070083327 Brice et al. Apr 2007 A1
20070123280 McGary et al. May 2007 A1
20070150349 Handel et al. Jun 2007 A1
20070174438 Johnson et al. Jul 2007 A9
20070198432 Pitroda et al. Aug 2007 A1
20070208604 Purohit et al. Sep 2007 A1
20070260989 Vakil et al. Nov 2007 A1
20080004917 Mortimore Jan 2008 A1
20080004918 Orttung et al. Jan 2008 A1
20080004919 Stubbs Jan 2008 A1
20080004921 Orttung et al. Jan 2008 A1
20080004980 Hernandez Jan 2008 A1
20080010100 Orttung et al. Jan 2008 A1
20080040188 Klausmeier Feb 2008 A1
20080046298 Ben-Yehuda et al. Feb 2008 A1
20080052159 Balakrishnan et al. Feb 2008 A1
20080065509 Williams Mar 2008 A1
20080072067 Koretz Mar 2008 A1
20080086564 Putman et al. Apr 2008 A1
20080091342 Assael Apr 2008 A1
20080091445 Mihic Apr 2008 A1
20080091477 Mortimore Apr 2008 A1
20080091478 Messa Apr 2008 A1
20080091479 Mortimore Apr 2008 A1
20080103842 Johnson May 2008 A1
20080126143 Altman et al. May 2008 A1
20080147450 Mortimore Jun 2008 A1
20080155470 Khedouri et al. Jun 2008 A1
20080167912 De Marcken Jul 2008 A1
20080201197 Orttung et al. Aug 2008 A1
20080201432 Orttung et al. Aug 2008 A1
20080256036 Falk et al. Oct 2008 A1
20090006143 Orttung et al. Jan 2009 A1
20090030609 Orttung et al. Jan 2009 A1
20090030742 Orttung et al. Jan 2009 A1
20090030769 Orttung et al. Jan 2009 A1
20090106077 Bhogal et al. Apr 2009 A1
20090150343 English et al. Jun 2009 A1
20090210261 Mortimore, Jr. Aug 2009 A1
20090234564 Onishi et al. Sep 2009 A1
20090248457 Munter et al. Oct 2009 A1
20100153192 Hamilton, II et al. Jun 2010 A1
20100211419 Nickolayev et al. Aug 2010 A1
20110213787 Cerny Sep 2011 A1
20130041902 Swann et al. Feb 2013 A1
20150161527 English et al. Jun 2015 A1
Foreign Referenced Citations (2)
Number Date Country
2002334115 Nov 2002 JP
2004334409 Nov 2004 JP
Non-Patent Literature Citations (20)
Entry
Sung-Won Jung et al., intelligent integration of information on the internet for travellers on demand, 2001, IEEE, 338-342.
Alag, Satnam et al., U.S. Appl. No. 11/067,537, entitled “Platform for Multi-service Procurement,” filed Feb. 24, 2005, all pages.
Amendment and Response to Non-Final Office Action filed at the US Patent & Trademark Office on Oct. 27, 2008, for U.S. Appl. No. 11/388,360, all pages.
Baker, Michael B., “Selecting a Corporate Payment System,” Business Travel News, vol. 23, Issue 7, p. 89, Apr. 24, 2006.
Chakravarthy, Sriam et al.,U.S. Appl. No. 11/178,107, entitled “Asynchronous, Location-Independent Web Service Invocation”, filed Jul. 7, 2005, all pages.
Grady, Patrick et al., U.S. Appl. No. 10/338,363, entitled “Automatic Services Exchange”, filed Jan. 7, 2003, all pages.
Grady, Patrick et al., U.S. Appl. No. 10/855,269, entitled “Coordination for Group Procurement of Services”, filed May 26, 2004, all pages.
Handel, Sean et al., U.S. Appl. No. 11/321,769, entitled “Method and System for Prediction and Delivery of Time and Context Sensitive Services”, filed Dec. 28, 2005, all pages.
Handel, Sean et al., U.S. Appl. No. 11/388,360, entitled “Method and System for Traffic Tracking and Conversion Tracking”, filed Mar. 23, 2006, all pages.
Handel, Sean et al., U.S. Appl. No. 11/388,540, entitled “Method and System for Resource Planning for Service Provider”, filed Mar. 23, 2006, all pages.
Handel, Sean et al., U.S. Appl. No. 11/395,413, entitled “Method and System for Viral Distribution of Short-term Location Orientated Offers”, filed Mar. 30, 2006, all pages.
Hernandez, Rick et al., U.S. Appl. No. 11/323,766, entitled “Method and System for Transferring of Stateful Screen in a Stateless Session”, filed Dec. 30, 2005, all pages.
Hwang, Yong Ho et al., “An efficient revocation scheme for stateless receievers,” Editors: Katsikas-S-K, Gritzalis-S, Lopez-J, Jun. 2004, pp. 1-2.
Orttung, Mark et al., U.S. Appl. No. 11/178,007, entitled “System for Travel Services Resource Sharing,” filed Jul. 7, 2005, all pages.
Paranadi, Shiva et al., U.S. Appl. No. 11/315,421, entitled “Method and System for Interacting Via Messages with a Travel Services System”, filed Dec. 21, 2005, all pages.
Patwardhan, Shantau et al., U.S. Appl. No. 11/121,861, entitled “Method and System for Reporting Work Hours by Phone or Other E-Media”, filed May 3, 2005, all pages.
Patwardhan, Shantau et al., U.S. Appl. No. 11/178,032, entitled “Method and System for Booking an Open Return Ticket Online”, filed Jul. 7, 2005, all pages.
Reed, Dan et al., “More people find ways to squeeze fun into work trips; for many business travelers, taking family or friends on a trip at relatively low cost has become a handy job perk,” USA Today, McLean VA, May 20, 2003, p. E12.
Sharkey, Joe, “Leisure activities are increasingly being fitted in to help make life on the road less of a grind,” The New York Times, New York, N.Y., Apr. 18, 2001, p. C6, .all pages.
Sung-Won Jung et al., Intelligent Integration of Information on the Internet for Travelers on Demand, 2001, IEEE, 338-342.
Related Publications (1)
Number Date Country
20160350681 A1 Dec 2016 US
Provisional Applications (1)
Number Date Country
61488567 May 2011 US
Continuations (1)
Number Date Country
Parent 13476900 May 2012 US
Child 15232662 US