Scoring system for travel planning

Information

  • Patent Grant
  • 11262203
  • Patent Number
    11,262,203
  • Date Filed
    Tuesday, April 21, 2020
    4 years ago
  • Date Issued
    Tuesday, March 1, 2022
    2 years ago
Abstract
A method for facilitating travel reservations is described. The method may commence with receiving a travel-related query from a user and parsing the travel-related query to derive at least one attribute of the travel-related query. One or more further users may be selected based on comparing the at least one attribute of the user with attributes of the one or more further users. The at least one attribute of the user may be ranked based on preference data of the one or more further users. The method may continue with assigning weights to the at least one attribute based on the ranking to create at least one weighted attribute. Feasible travel itineraries may be searched based on the at least one attribute. The feasible travel itineraries may be scored based on the at least one weighted attribute and travel itineraries selected based on the scoring may be presented.
Description
TECHNICAL FIELD

The present disclosure relates to data processing and, more particularly, to facilitating travel reservations.


BACKGROUND

A travel consumer can conventionally enjoy the benefits of a diversity of choices: a marketplace that is replete with purchase options; numerous information sources that provide travel-related information and advice on everything from destinations to hotels and related points-of-interest; and finally, a reasonable degree of price transparency on a vast array of travel-related goods and services. While consumers derive much utility from this choice environment—enabled by online travel agencies (OTAs) and travel websites—the fact remains that the travel consumer is often encumbered by information abundance and by legacy technology platforms that almost invariably complicate the consumer's choice. For an average consumer, these choice-related challenges take many forms, such as a plurality of travel-related goals and objectives pertaining to all of the relevant facets and phases of the travel planning process; the existence of a large number of viable itinerary options to sort through, evaluate, and ultimately choose from; the existence of disparate and non-homogenous information sources, all of which possess varying degrees of quality, usefulness, and reliability; and the need to consider complex value trade-offs among key choice attributes and objectives (e.g., price vs. suitability of a selected flight for the consumer), together with the existence of often conflicting objectives (e.g., a desire for luxury, constrained by willingness-to-pay).


Empirical studies reveal that travelers are more likely to rely on advice and recommendations of friends, relatives, colleagues, and so forth than other information sources. Conventionally, the traveler can review the recommendations of friends by intentionally searching for them, for example, on a social network page of a friend or on a profile page of the friend on a travel website. However, the conventional OTAs do not take the recommendations of friends of the traveler into consideration when searching and presenting feasible travel itineraries to the traveler.


SUMMARY

This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.


According to one example embodiment of the disclosure, a method for facilitating travel reservations is provided. The method may commence with receiving a travel-related query from a user. The method may continue with parsing the travel-related query to derive at least one attribute related to the travel-related query. The travel-related query may include a natural language query. One or more further users may be selected by comparing the at least one attribute of the user with attributes of the one or more further users. The attributes of the one or more further users may match the at least one attribute of the user. The at least one attribute of the user may be ranked based on preference data of the one or more further users. Weights may be assigned to the at least one attribute based on the ranking to create at least one weighted attribute. The method may continue with searching for feasible travel itineraries based on the at least one attribute. Based on the at least one weighted attribute, the feasible travel itineraries may be scored. At least one travel itinerary selected from the feasible travel itineraries may be presented based on the scoring.


According to another example embodiment of the disclosure, a system for facilitating travel reservations is provided. The system may include a processor, a parser in communication with the processor, and a scheduler in communication with the processor. The processor may be operable to receive a travel-related query from a user. The parser may be operable to parse the travel-related query to derive the at least one attribute related to the travel-related query. The processor may be further operable to select one or more further users by comparing at least one attribute of the user with attributes of the one or more further users. The one or more further users may be selected when the attributes of the one or more further users match the at least one attribute of the user. Upon the selection of the one or more further users, the processor may rank the at least one attribute of the user based on preference data of the one or more further users. The processor may be further operable to assign weights to the at least one attribute based on the ranking to create at least one weighted attribute. The scheduler may be operable to search for the feasible travel itineraries based on the at least one attribute. Upon the search, the processor may be operable to score feasible travel itineraries based on the at least one weighted attribute. The processor may further present at least one travel itinerary selected from the feasible travel itineraries based on the scoring.


Other example embodiments of the disclosure and aspects will become apparent from the following description taken in conjunction with the following drawings.





BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments are illustrated by way of example and not limitation in the figures of the accompanying drawings, in which like references indicate similar elements.



FIG. 1 illustrates an environment within which systems and methods for facilitating travel reservations can be implemented.



FIG. 2 is block diagram showing various modules of a system for facilitating travel reservations.



FIG. 3 is a process flow diagram showing a method for facilitating travel reservations.



FIG. 4 is a schematic diagram of travel itineraries found by a system for facilitating travel reservations.



FIG. 5 shows a diagrammatic representation of a computing device for a machine in the exemplary electronic form of a computer system, within which a set of instructions for causing the machine to perform any one or more of the methodologies discussed herein can be executed.





DETAILED DESCRIPTION

The following detailed description includes references to the accompanying drawings, which form a part of the detailed description. The drawings show illustrations in accordance with exemplary embodiments. These exemplary embodiments, which are also referred to herein as “examples,” are described in enough detail to enable those skilled in the art to practice the present subject matter. The embodiments can be combined, other embodiments can be utilized, or structural, logical, and electrical changes can be made without departing from the scope of what is claimed. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope is defined by the appended claims and their equivalents.


The disclosure relates to facilitating travel reservations by accommodating and managing specific types of preference information, namely, ratings, recommendations, and (more generally) reviews of registered users of their travel experiences. More specifically, upon receiving a travel-related query from a user, a system for facilitating travel reservations may analyze the travel-related query to determine attributes related to the travel-related query. The system may further compare the attributes of the user with attributes of further users of the systems. The further users whose attributes match the attributes of the user may be selected. The system may search for feasible travel itineraries based on the travel-related query. Upon the search, the system may use preference data of the further users related to the travel itineraries, such as ratings, recommendations, and reviews, to score the feasible travel itineraries. The travel itineraries having the highest scores may be presented to the user.



FIG. 1 illustrates an environment 100 within which systems and methods for facilitating travel reservations can be implemented, in accordance with some embodiments. A travel-related query 120 of a user 130 may be received, for example, via a user interface displayed on a user device 140. The travel-related query 120 may include text data. The text data may be obtained as a natural language input by the user, by speech-to-text conversion of an oral exchange with the user, or otherwise. In some embodiments, to motivate the user 130 to provide the travel-related query 120, the user 130 may be asked, orally, one or more motivating questions.


The travel-related query 120 may be transmitted to a system 200 for facilitating travel reservations via a network 110. The network 110 may include the Internet or any other network capable of communicating data between devices. Suitable networks may include or interface with any one or more of, for instance, a local intranet, a Personal Area Network, a Local Area Network (LAN), a Wide Area Network (WAN), a Metropolitan Area Network, a virtual private network, a storage area network, a frame relay connection, an Advanced Intelligent Network connection, a synchronous optical network connection, a digital T1, T3, E1 or E3 line, Digital Data Service connection, Digital Subscriber Line connection, an Ethernet connection, an Integrated Services Digital Network line, a dial-up port such as a V.90, V.34 or V.34b is analog modem connection, a cable modem, an Asynchronous Transfer Mode connection, or a Fiber Distributed Data Interface or Copper Distributed Data Interface connection. Furthermore, communications may also include links to any of a variety of wireless networks, including Wireless Application Protocol, General Packet Radio Service, Global System for Mobile Communication, Code Division Multiple Access or Time Division Multiple Access, cellular phone networks, Global Positioning System, cellular digital packet data, Research in Motion, Limited duplex paging network, BLUETOOTH radio, or an IEEE 802.11-based radio frequency network. The network 110 can further include or interface with any one or more of an RS-232 serial connection, an IEEE-1394 (Firewire) connection, a Fiber Channel connection, an IrDA (infrared) port, a Small Computer Systems Interface connection, a Universal Serial Bus connection or other wired or wireless, digital or analog interface or connection, mesh or Digi® networking. The network 110 may be a network of data processing nodes that are interconnected for the purpose of data communication. The network 110 may include any suitable number and type of devices (e.g., routers and switches) for forwarding commands, content, and/or web object requests from each user and responses back to the users.


The user device 140, in some example embodiments, may include a Graphical User Interface for displaying the user interface associated with the system 200. The user device 140 may include a mobile telephone, a personal computer (PC), a laptop, a smart phone, a tablet PC, and so forth. The system 200 may include a server-based distributed application; thus, the system 200 may include a central component residing on a server and one or more client applications residing on one or more user devices, such as the user device 140, and communicating with the central component via the network 110. The user 130 may communicate with the system 200 via a client application available through the user device 140.


Travel itineraries available, for example, from a database 190 may be analyzed based on preference data of the one or more further users. The system 200 may use preference data of the further users related to the travel itineraries, such as ratings 160, reviews 170, and recommendations 180, to score feasible travel itineraries found for the user 130 based on the travel-related query 120. Based on the scoring, at least one travel itinerary 150 may be presented to the user 130 by displaying the travel itinerary 150 via the user interface on a screen of the user device 140.



FIG. 2 is a block diagram showing various modules of a system 200 for facilitating travel reservations, in accordance with certain embodiments. The system 200 may comprise a processor 210, a parser 220, a scheduler 230, and an optional database 240. The processor 210 may include a programmable processor, such as a microcontroller, central processing unit (CPU), and so forth. In other embodiments, the processor 210 may include an application-specific integrated circuit or programmable logic array, such as a field programmable gate array, designed to implement the functions performed by the system 200.


The processor 210 may be operable to receive a travel related query. The travel related query may be provided by a user, also referred to as a traveler. Moreover, the travel related query may be provided using a natural language, a typed text, a selection of preexisting options, and so forth. The system 200 may be both goal and preference driven. At a foundational level, consumer strategic intent may lie at the center of all travel planning actions and travel-related consumption. Accordingly, the system 200 may be designed to understand the travel-related query (stated in natural language, via voice or text) in terms of the determinate goals and objectives of a traveler, and to schedule travel itineraries—comprised of flights, hotel accommodations, car rental reservations, and so forth—that are both feasible and sensible. In order to achieve this functionality, the system 200 may require, for example, three informational elements, such as an understanding of origin(s) and desired destination(s) for respective travelers; desired date(s) and time(s) of travel; and consideration of relevant preferences (pertaining to, e.g., flight-related preferences, hotel-related preferences, and so forth). The third element—the consideration of relevant consumer preferences—may factor into how travel-related queries are serviced and customized within the system 200. Therefore, the parser 220 of the system 200 may be operable to parse the travel-related query to derive at least one attribute related to the travel-related query. The attribute sets may include, for example, an origin city, a destination city, a date of travel, time of travel, a hotel, a car reservation, and so forth.


The system 200 may incorporate a choice architecture (CA) provided to customize the itinerary creation and selection process, and to provide the traveler with the best possible travel buying experience. The construction of a requisite CA requires an awareness and understanding of the factors that drive or otherwise influence traveler choice in the travel space. At a foundational level, preferences and desires are what ultimately drive these choices, and the system 200 may therefore incorporate a number of preference representations and preference learning elements.


Much of how preferences are both modeled and managed in the system 200 may be predicated on a specific set of views as to the nature of travel-related preferences. The central preference-related tenets of the system 200 can be summarized as follows:

    • Travel preferences are constructed as opposed to revealed;
    • Travel preferences are context-dependent, and choices among travel-related options are also context-dependent;
    • The relative value of a travel option depends not just on the characteristics of that option, but also on the characteristics of the other options in the choice set;
    • Travel consumers often bring a plurality of goals and objectives to their purchase decisions.


Ratings and recommendations of travelers may constitute an important class of preference-based information that is both captured and utilized within the system 200. More specifically, since the system 200 may be a fully functioning e-commerce platform, the system 200 may have a wealth of transactional data that may be accumulated from use of the system 200 by registered travelers to book travel itineraries. Within the system 200, each transaction may be logged, together with the travel-related query (and the instantiated attributes for each travel-related query) that gave rise to the itinerary purchase decision. Any relevant feedback from the users in the form of ratings or recommendations may be conjoined with each transaction data log.


The processor 210 may be operable to compare at least one attribute of the user with attributes of the one or more further users. If a match of the attributes of the one or more further users and the at least one attribute of the user is found, the processor 210 may select one or more further users.


In a further example embodiment, the processor 210 may be further operable to combine the one or more further users into a subset based on the attributes of the one or more further users. In this case, the user may select the subset of users, from which the one or more further users are to be selected. Therefore, in this embodiment, the selection of the one or more further users may include selection of the one or more further users from the subset. In an example embodiment, within the system 200, users can avail themselves of ratings information and/or recommendations that are community-based, drawn from relevant pools or subsets of the registered user-base for the platform. Each registered user can define one or more “communities” from which to draw ratings/recommendation information. The user can construct “communities” (or even “meta-” or “hybrid-communities” that combine two or more predefined community groups, using aggregation methods whose parameters are customizable by the user) that are comprised of individuals that share similar socio-demographic identifiers (e.g., age, gender, education, and so forth), interests, destinations, hobbies, and so forth.


Additionally, the system 200 can enable users to identify some users of the system 200 as “friends.” Ratings/recommendations of users marked as “friends” may factor into itinerary creation and selection process for the user.


The system 200 can implement a number of algorithms and analytic frameworks that can enable the ratings and recommendations to be used for both predictive and prescriptive analytic purposes. Central in this regard are knowledge-based methods that invoke domain knowledge and expertise about how platform-based content may potentially meet the explicit (or implicit or inferred) needs/preferences of the consumer. Natural language examples of these types of search queries include:

    • “I am going to Vegas; where do people like me usually stay?”
    • “Where do my friends stay when they go to Malibu?”
    • “I am looking for hotels in NYC with a nearby park to run in . . . ”


Upon the selection of the one or more further users, whose attributes match the at least one attribute of the user, the processor 210 may be operable to rank the at least one attribute of the user based on preference data of the one or more further users. The preference data of the one or more further users may include one or more of the following: ratings associated with travel itineraries, recommendations associated with travel itineraries, reviews associated with travel itineraries, and so forth. The preference data of the one or more further users may be received from the optional database 240. The processor 210 may be operable to assign weights to the at least one attribute of the user based on the ranking to create at least one weighted attribute.


In an example embodiment, to the extent that a user wants to utilize ratings/reviews/recommendations from information sources that are external to the system 200 (e.g., from a third-party organization), the system 200 may enable the user to construct composite scores or indices for the ratings/reviews/recommendations from third-party organizations, which can also be brought into the itinerary search, evaluation, and booking process. More specifically, the scheduler 230 may be operable to search for feasible travel itineraries based on the at least one attribute. When the feasible travel itineraries are found by the scheduler 230, the processor 210 may be operable to score the feasible travel itineraries based on the at least one weighted attribute. In an example embodiment, within the CA, scoring can be based, in part, on the users who actually booked a stay at a particular hotel via the system 200, or flew a particular route on a particular airline.


Upon scoring, the processor 210 may select at least one travel itinerary from the feasible travel itineraries based on the scoring and present a selected travel itinerary to the user on the user device.


Moreover, the users may be able to assign their own (subjectively assigned) measures of “trust” or “confidence” in each individual information source (e.g., “my confidence in the ratings from HOTELS.COM is 70%, whereas for TRIPADVISOR.COM, my confidence is only 30%”). Additionally, the processor 210 may be further configured to receive a setting of a trust level for the one or more further users from the user. In this case, the ranking of the at least one attribute of the user may be further based on the trust level of the one or more further users. More specifically, the results of the itinerary creation and selection process for the user can be further refined by specifying trust/credence/veracity levels for members of a group or sub-group (for example, members of the subset).


In an example embodiment, the processor 210 may be further operable to receive a selection of one or more identifiers from the user. The one or more identifiers may include one or more of the following: a gender, an age, an education, interests, a hobby, and so forth. Based on the one or more identifiers, the processor 210 may combine the one or more further users into a subset.


In a further example embodiment, the processor 210 may be further configured to receive a selection of at least one further user marked as a friend from the user. In this embodiment, the ranking of the at least one attribute of the user may be further based on preference data of the at least one further user.


Additionally, the processor 210 may be further operable to receive a feedback associated with the at least one travel itinerary from the user. The feedback may include one or more of the following: a rating associated with the at least one travel itinerary, a recommendation associated with the at least one travel itinerary, a review associated with the at least one travel itinerary, and so forth. The user may provide the feedback after the user has actually booked a stay at a particular hotel, flew a particular route on a particular airline, and the like.


In an example embodiment, all users of the system 200 may be provided with the instrumental means by which the users may convey their preferences and needs. Moreover, the users may be allowed to customize how their ratings are encoded/represented (with concomitant trade-offs regarding assessment effort versus information content/quality), and how the information is utilized within the CA for customizing travel itineraries. More broadly, the users of the system 200 may have an option of specifying how their behavioral usage data (e.g., browsing/search patterns and so forth) are utilized within the system 200 as a whole. More specifically, the behavioral usage data, travel-related queries, and instantiated attributes associated with the travel-related queries may be stored in the optional database 240. In an example embodiment, the user can choose a privacy mode of interaction with the system 200 where no behavioral usage data may be stored to the optional database 240 or used by the system 200 for customizing travel itineraries.



FIG. 3 is a process flow diagram showing a method 300 for facilitating travel reservations within the environment described with reference to FIG. 1. The method 300 may commence with receiving a travel-related query from a user at operation 310. In an example embodiment, the travel-related query may include one or more of the following: a natural language query, a typed text query, a selection of preexisting options, and so forth. The method 300 may continue with parsing the travel-related query to derive at least one attribute related to the travel-related query at operation 320. At operation 330, one or more further users may be selected by comparing the at least one attribute of the user with attributes of the one or more further users. The attributes of the one or more further users may match the at least one attribute of the user. The at least one attribute of the user may be ranked based on preference data of the one or more further users at operation 340. In some embodiments, the preference data of the one or more further users may include one or more of the following: ratings associated with travel itineraries, recommendations associated with travel itineraries, reviews associated with travel itineraries, and so forth.


At operation 350, weights may be assigned to the at least one attribute based on the ranking to create at least one weighted attribute. The method 300 may continue with operation 360, at which feasible travel itineraries may be searched based on the least one attribute. Based on the at least one weighted attribute, the feasible travel itineraries may be scored at operation 370. The method 300 may further include presenting at least one travel itinerary to the user at operation 380. The at least one travel itinerary presented to the user may be selected from the feasible travel itineraries based on the scoring.


The method 300 may further optionally include receiving a feedback associated with at least one travel itinerary from the user. The feedback may include one or more of the following: a rating associated with the at least one travel itinerary, a recommendation associated with the at least one travel itinerary, a review associated with the at least one travel itinerary, and so forth. The feedback may be stored to a database and used for selection of travel itinerates in response to further travel-related queries.


In a further example embodiment, the method 300 may optionally include combining the one or more further users into a subset based on the attributes of the one or more further users. A selection of the subset may be received from the user. In this embodiment, the selection of the one or more further users may include selecting the one or more further users from the subset.


The method 300 may further optionally include receiving a selection of one or more identifiers from the user and combining the one or more further users into a subset based on the one or more identifiers. The one or more identifiers include one or more of the following: a gender, an age, an education, interests, a hobby, and so forth.


In a further example embodiment, the method 300 may optionally include receiving from the user a selection of at least one further user marked as a friend. In this embodiment, the ranking may include ranking of the at least one attribute of the user based on preference data of the at least one further user marked as a friend.


The method 300 may further optionally include receiving, from the user a setting of a trust level for the one or more further users. In this embodiment, the ranking of the at least one attribute of the user may be further based on the trust level of the one or more further users.



FIG. 4 shows a schematic diagram 400 of travel itineraries found by a scheduler of the system for facilitating travel reservations. In particular, the scheduler may perform the search in feasible travel itineraries 402. As a result of the search, travel itineraries 1-7 shown as travel itineraries 404 may be found. Each of the travel itineraries 404 may have weights 406 assigned based on preference data of one or more further users.



FIG. 5 shows a diagrammatic representation of a computing device for a machine in the exemplary electronic form of a computer system 500, within which a set of instructions for causing the machine to perform any one or more of the methodologies discussed herein can be executed. In various exemplary embodiments, the machine operates as a standalone device or can be connected (e.g., networked) to other machines. In a networked deployment, the machine can operate in the capacity of a server or a client machine in a server-client network environment, or as a peer machine in a peer-to-peer (or distributed) network environment. The machine can be a PC, a tablet PC, a set-top box, a cellular telephone, a digital camera, a portable music player (e.g., a portable hard drive audio device, such as an Moving Picture Experts Group Audio Layer 3 player), a web appliance, a network router, a switch, a bridge, or any machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine. Further, while only a single machine is illustrated, the term “machine” shall also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein.


The computer system 500 includes a processor or multiple processors 502, a hard disk drive 504, a main memory 506, and a static memory 508, which communicate with each other via a bus 510. The computer system 500 may also include a network interface device 512. The hard disk drive 504 may include a computer-readable medium 520, which stores one or more sets of instructions 522 embodying or utilized by any one or more of the methodologies or functions described herein. The instructions 522 can also reside, completely or at least partially, within the main memory 506 and/or within the processors 502 during execution thereof by the computer system 500. The main memory 506 and the processors 502 also constitute machine-readable media.


While the computer-readable medium 520 is shown in an exemplary embodiment to be a single medium, the term “computer-readable medium” should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more sets of instructions. The term “computer-readable medium” shall also be taken to include any medium that is capable of storing, encoding, or carrying a set of instructions for execution by the machine and that causes the machine to perform any one or more of the methodologies of the present application, or that is capable of storing, encoding, or carrying data structures utilized by or associated with such a set of instructions. The term “computer-readable medium” shall accordingly be taken to include, but not be limited to, solid-state memories, optical and magnetic media. Such media can also include, without limitation, hard disks, floppy disks, NAND or NOR flash memory, digital video disks, Random Access Memory (RAM), Read-Only Memory (ROM), and the like.


The exemplary embodiments described herein can be implemented in an operating environment comprising computer-executable instructions (e.g., software) installed on a computer, in hardware, or in a combination of software and hardware. The computer-executable instructions can be written in a computer programming language or can be embodied in firmware logic. If written in a programming language conforming to a recognized standard, such instructions can be executed on a variety of hardware platforms and for interfaces to a variety of operating systems.


In some embodiments, the computer system 500 may be implemented as a cloud-based computing environment, such as a virtual machine operating within a computing cloud. In other embodiments, the computer system 500 may itself include a cloud-based computing environment, where the functionalities of the computer system 500 are executed in a distributed fashion. Thus, the computer system 500, when configured as a computing cloud, may include pluralities of computing devices in various forms, as will be described in greater detail below.


In general, a cloud-based computing environment is a resource that typically combines the computational power of a large grouping of processors (such as within web servers) and/or that combines the storage capacity of a large grouping of computer memories or storage devices. Systems that provide cloud-based resources may be utilized exclusively by their owners, or such systems may be accessible to outside users who deploy applications within the computing infrastructure to obtain the benefit of large computational or storage resources.


The cloud may be formed, for example, by a network of web servers that comprise a plurality of computing devices, such as a client device, with each server (or at least a plurality thereof) providing processor and/or storage resources. These servers may manage workloads provided by multiple users (e.g., cloud resource consumers or other users). Typically, each user places workload demands upon the cloud that vary in real-time, sometimes dramatically. The nature and extent of these variations typically depends on the type of business associated with the user.


It is noteworthy that any hardware platform suitable for performing the processing described herein is suitable for use with the technology. The terms “computer-readable storage medium” and “computer-readable storage media” as used herein refer to any medium or media that participate in providing instructions to a CPU for execution. Such media can take many forms, including, but not limited to, non-volatile media, volatile media and transmission media. Non-volatile media include, for example, optical or magnetic disks, such as a fixed disk. Volatile media include dynamic memory, such as a system RAM. Transmission media include coaxial cables, copper wire, and fiber optics, among others, including the wires that comprise one embodiment of a bus. Transmission media can also take the form of acoustic or light waves, such as those generated during radio frequency (RF) and infrared (IR) data communications. Common forms of computer-readable media include, for example, a floppy disk, a flexible disk, a hard disk, magnetic tape, any other magnetic medium, a Compact Disc Read-Only Memory disk, a digital video disk, any other optical medium, any other physical medium with patterns of marks or holes, a RAM, a Programmable Read-Only Memory, an Erasable Programmable Read-Only Memory (EPROM), an Electrically Erasable Programmable Read-Only Memory, a FlashEPROM, any other memory chip or data exchange adapter, a carrier wave, or any other medium from which a computer can read.


Various forms of computer-readable media may be involved in carrying one or more sequences of one or more instructions to a CPU for execution. A bus carries the data to a system RAM, from which the CPU retrieves and executes the instructions. The instructions received by the system RAM can optionally be stored on a fixed disk either before or after execution by the CPU.


Computer program code for carrying out operations for aspects of the present technology may be written in any combination of one or more programming languages, including an object oriented programming language such as JAVA, SMALLTALK, C++ or the like and conventional procedural programming languages, such as the “C” programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a LAN or a WAN, or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).


The corresponding structures, materials, acts, and equivalents of all means or steps plus function elements in the claims below are intended to include any structure, material, or act for performing the function in combination with other claimed elements as specifically claimed. The description of the present technology has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the disclosure. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the disclosure. Exemplary embodiments were chosen and described in order to best explain the principles of the present technology and its practical application, and to enable others of ordinary skill in the art to understand the disclosure for various embodiments with various modifications as are suited to the particular use contemplated.


Aspects of the present technology are described above with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the disclosure. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. These computer program instructions may also be stored in a computer readable medium that can direct a computer, other 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 which implement the function/act specified in the flowchart and/or block diagram block or blocks.


Thus, computer-implemented methods and systems for managing interactions between a user and applications are described. Although embodiments have been described with reference to specific exemplary embodiments, it will be evident that various modifications and changes can be made to these exemplary embodiments without departing from the broader spirit and scope of the present application. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.

Claims
  • 1. A system for facilitating travel reservations, the system comprising: a database configured with available travel itineraries and travel preferences for one or more users;a parser in communication with a processor and operable to: parse a travel-related query to derive at least one attribute related to the travel preferences for a user and a context from the travel-related query;the processor in communication with the database and operable to: receive the travel-related query from the user via a user device;receive the travel preferences for one or more further users from the database;construct a set of travel preferences for the user based on at least two of: the available travel itineraries in the database, the context from the travel-related query, and the travel preferences for the one or more further users;a scheduler in communication with the processor and operable to: search for a plurality of feasible travel itineraries based on the set of travel preferences;score each feasible travel itinerary of the plurality of feasible travel itineraries based on the set of travel preferences; andselect at least one travel itinerary from the plurality of feasible travel itineraries based on the scoring.
  • 2. The system of claim 1, wherein the travel related query includes one or more of: a natural language query, a typed text query, and a selection of preexisting options.
  • 3. The system of claim 1, further comprising the travel preferences being responsive to the travel related query.
  • 4. The system of claim 3, wherein the travel preferences comprise a preference learning element.
  • 5. The system of claim 3, wherein the travel preferences comprise a preference representation.
  • 6. The system of claim 1, further comprising the database configured to receive a rating and a recommendation of a traveler.
  • 7. The system of claim 1, wherein the processor is further operable to: receive a feedback associated with the at least one travel itinerary from the user, wherein the feedback includes one or more of: a rating associated with the at least one travel itinerary, a recommendation associated with the at least one travel itinerary, and a review associated with the at least one travel itinerary; andupdate the travel preferences in the database with one or more of: the travel-related query and the feedback.
  • 8. A method for facilitating travel reservations, the method comprising: configuring a database with available travel itineraries and travel preferences for one or more users;establishing a parser in communication with a processor and operable to: parse the travel-related query to derive at least one attribute related to the travel preferences for a user and a context from a travel-related query;receiving the travel-related query from the user via a user device;receiving the travel preferences for one or more further users from the database;constructing a set of travel preferences for the user based on at least two of: the available travel itineraries in the database, the context from the travel-related query, and the travel preferences for the one or more further users;searching for a plurality of feasible travel itineraries based on the set of travel preferences;scoring each feasible travel itinerary of the plurality of feasible travel itineraries based on the set of travel preferences; andselecting at least one travel itinerary from the feasible travel itineraries based on the scoring.
  • 9. The method of claim 8, wherein the travel related query includes one or more of: a natural language query, a typed text query, and a selection of preexisting options.
  • 10. The method of claim 8, further comprising the travel preferences being responsive to the travel related query.
  • 11. The method of claim 10, further comprising configuring establishing a preference learning element.
  • 12. The method of claim 10, further comprising configuring establishing a preference representation.
  • 13. The method of claim 12, further comprising configuring the database to receive a rating and a recommendation of a traveler.
  • 14. The method of claim 8, further comprising: receiving, by the processor, a feedback associated with the at least one travel itinerary from the user, wherein the feedback includes one or more of: a rating associated with the at least one travel itinerary, a recommendation associated with the at least one travel itinerary, and a review associated with the at least one travel itinerary; andupdating, by the processor, the travel preferences in the database with one or more of: the travel-related query and the feedback.
  • 15. A system for facilitating travel reservations, the system comprising: a database configured with available travel itineraries and travel preferences for one or more users;a parser in communication with a processor and operable to: parse a travel-related query to derive at least one attribute related to the travel preferences for a user and a context from the travel-related query;the processor in communication with the database and operable to: receive the travel-related query from the user via a user device, the travel-related query including at least a natural language query;receive a selection of one or more identifiers from the user, wherein the one or more identifiers include one or more of: a gender, an age, an education, interests, and a hobby;receive the travel preferences for one or more further users from the database;construct a set of travel preferences for the user based on at least two of: the available travel itineraries in the database, the context for the travel-related query, and the travel preferences for the one or more further users;receive a feedback associated with at least one travel itinerary from the user, wherein the feedback includes one or more of: a rating associated with the at least one travel itinerary, a recommendation associated with the at least one travel itinerary, and a review associated with the at least one travel itinerary;a scheduler in communication with the processor and operable to: search for a plurality of feasible travel itineraries based on the set of travel preferences;score each feasible travel itineraries of a plurality of feasible travel itineraries based on the set of travel preferences; andselect the at least one travel itinerary from the feasible travel itineraries based on the scoring.
  • 16. The system of claim 15, further comprising the processor being operable to update the travel preferences in the database with one or more of: the travel-related query and the feedback.
CROSS-REFERENCE TO RELATED APPLICATION

The present utility patent application is a continuation of, and claims the priority benefit of U.S. patent application Ser. No. 16/055,767 filed on Aug. 6, 2018 and entitled “Scoring System for Travel Planning,” which is a continuation of, and claims the priority benefit of U.S. patent application Ser. No. 15/178,453 filed on Jun. 9, 2016 and entitled “Scoring System for Travel Planning”. U.S. patent application Ser. No. 15/178,453 in turn claims the priority benefit of U.S. Provisional Application No. 62/181,664, filed on Jun. 18, 2015, and entitled “Scoring System for Travel Planning.” The disclosures of the above-referenced applications are incorporated herein by reference for all purposes to the extent that such subject matter is not inconsistent herewith or limiting thereof.

US Referenced Citations (218)
Number Name Date Kind
5557524 Maki Sep 1996 A
5797127 Walker et al. Aug 1998 A
5832452 Schneider et al. Nov 1998 A
5948040 DeLorme et al. Sep 1999 A
6059724 Campell et al. May 2000 A
6275808 DeMarcken Aug 2001 B1
6307572 DeMarcken et al. Oct 2001 B1
6477520 Malaviya et al. Nov 2002 B1
6553310 Lopke Apr 2003 B1
6795710 Creemer Sep 2004 B1
7092892 Sobalvarro et al. Aug 2006 B1
7219073 Taylor et al. May 2007 B1
7286998 Sauser et al. Oct 2007 B2
7302398 Ban et al. Nov 2007 B2
7680777 Poston et al. Mar 2010 B2
7860808 Peters Dec 2010 B2
7912734 Kil Mar 2011 B2
7979457 Garman Jul 2011 B1
7983956 Goel Jul 2011 B1
8005685 Bird Aug 2011 B1
8035511 Weaver et al. Oct 2011 B2
8165920 Goel Apr 2012 B2
8224665 Morris Jul 2012 B2
8332247 Bailey et al. Dec 2012 B1
8510133 Peak et al. Aug 2013 B2
8600784 Ivey Dec 2013 B1
8600830 Hoffberg Dec 2013 B2
8631007 Blandford et al. Jan 2014 B1
8762160 Lulla Jun 2014 B2
9031853 Bartfeld et al. May 2015 B2
9043151 Cai et al. May 2015 B2
9286629 Miller et al. Mar 2016 B2
9449151 Etchegoyen Sep 2016 B2
9659099 Miller et al. May 2017 B2
9946839 Wilson et al. Apr 2018 B1
10041803 Miller Aug 2018 B2
10078855 Miller et al. Sep 2018 B2
10210270 Miller et al. Feb 2019 B2
10275810 Miller et al. Apr 2019 B2
10282797 Valverde, Jr. et al. May 2019 B2
10634508 Valverde, Jr. Apr 2020 B2
20010044788 Demir et al. Nov 2001 A1
20020069133 Currie et al. Jun 2002 A1
20020082877 Schiff et al. Jun 2002 A1
20020147619 Floss et al. Oct 2002 A1
20020173978 Boies et al. Nov 2002 A1
20020178034 Gardner et al. Nov 2002 A1
20030018499 Miller et al. Jan 2003 A1
20030023463 Dombroski et al. Jan 2003 A1
20030050846 Rodon Mar 2003 A1
20030055690 Garback Mar 2003 A1
20030055772 Goldstein Mar 2003 A1
20030135458 Tadano et al. Jul 2003 A1
20030177044 Sokel et al. Sep 2003 A1
20030217052 Rubenczyk et al. Nov 2003 A1
20040002876 Sommers et al. Jan 2004 A1
20040044516 Kennewick et al. Mar 2004 A1
20040078213 Brice et al. Apr 2004 A1
20040111255 Huerta et al. Jun 2004 A1
20040220854 Postrel Nov 2004 A1
20040249680 Liew et al. Dec 2004 A1
20050033614 Lettovsky et al. Feb 2005 A1
20050038644 Napper et al. Feb 2005 A1
20050043940 Elder Feb 2005 A1
20050108068 Marcken et al. May 2005 A1
20050220278 Zirngibl et al. Oct 2005 A1
20050267651 Arango et al. Dec 2005 A1
20050288973 Taylor et al. Dec 2005 A1
20060106655 Lettovsky et al. May 2006 A1
20060178931 Horn Aug 2006 A1
20060241983 Viale et al. Oct 2006 A1
20060247954 Hunt Nov 2006 A1
20060265508 Angel et al. Nov 2006 A1
20060271277 Hu et al. Nov 2006 A1
20060285662 Yin et al. Dec 2006 A1
20060293930 Rodgers et al. Dec 2006 A1
20070073562 Brice et al. Mar 2007 A1
20070073563 Dourthe et al. Mar 2007 A1
20070100962 Barth et al. May 2007 A1
20070106497 Ramsey et al. May 2007 A1
20070106536 Moore May 2007 A1
20070143154 Ashby et al. Jun 2007 A1
20070156469 Bird et al. Jul 2007 A1
20070168245 de Marcken et al. Jul 2007 A1
20070174350 Pell et al. Jul 2007 A1
20070185744 Robertson Aug 2007 A1
20070192186 Greene et al. Aug 2007 A1
20070198442 Horn Aug 2007 A1
20070203735 Ashton Aug 2007 A1
20070208503 Harnsberger Sep 2007 A1
20070260495 Mace et al. Nov 2007 A1
20070276595 Lewinson et al. Nov 2007 A1
20070294149 Lu et al. Dec 2007 A1
20080021748 Bay et al. Jan 2008 A1
20080046274 Geelen et al. Feb 2008 A1
20080052217 Etkin Feb 2008 A1
20080059454 Andrieu Mar 2008 A1
20080091525 Kretz Apr 2008 A1
20080091557 Cella et al. Apr 2008 A1
20080103949 Lobana et al. May 2008 A1
20080109232 Musgrove et al. May 2008 A1
20080114623 Berthaud et al. May 2008 A1
20080120306 Panabaker et al. May 2008 A1
20080201178 Vizitei Aug 2008 A1
20080319803 Heyraud et al. Dec 2008 A1
20090005650 Angell et al. Jan 2009 A1
20090006143 Orttung et al. Jan 2009 A1
20090048876 Bonissone et al. Feb 2009 A1
20090063359 Connors Mar 2009 A1
20090070322 Salvetti et al. Mar 2009 A1
20090112639 Robinson Apr 2009 A1
20090157312 Black Jun 2009 A1
20090157664 Wen Jun 2009 A1
20090177651 Takamatsu et al. Jul 2009 A1
20090210262 Rines et al. Aug 2009 A1
20090216633 Whitsett et al. Aug 2009 A1
20090234681 Champernowne Sep 2009 A1
20090240517 Pelter Sep 2009 A1
20090313055 Martin et al. Dec 2009 A1
20090319305 Weissert et al. Dec 2009 A1
20090327148 Kamar et al. Dec 2009 A1
20100010841 Cooper et al. Jan 2010 A1
20100010978 Carapella et al. Jan 2010 A1
20100030594 Swart Feb 2010 A1
20100082241 Trivedi Apr 2010 A1
20100153292 Zheng et al. Jun 2010 A1
20100217680 Fusz et al. Aug 2010 A1
20100217723 Sauerwein, Jr. et al. Aug 2010 A1
20100317420 Hoffberg Dec 2010 A1
20100318386 Vaughan et al. Dec 2010 A1
20100324927 Tinsley Dec 2010 A1
20110046989 Crean et al. Feb 2011 A1
20110093361 Morales Apr 2011 A1
20110125578 Alspector et al. May 2011 A1
20110137766 Rasmussen et al. Jun 2011 A1
20110153373 Dantzig et al. Jun 2011 A1
20110167003 Nice et al. Jul 2011 A1
20110231182 Weider et al. Sep 2011 A1
20110246246 Johnson Oct 2011 A1
20110295692 Zivkovic et al. Dec 2011 A1
20110307241 Waibel et al. Dec 2011 A1
20110307280 Mandelbaum Dec 2011 A1
20110312870 Beatty Dec 2011 A1
20120036158 Cahill et al. Feb 2012 A1
20120054001 Zivkovic et al. Mar 2012 A1
20120059679 de Marcken et al. Mar 2012 A1
20120209517 Li et al. Aug 2012 A1
20120233207 Mohajer Sep 2012 A1
20120239440 Miller et al. Sep 2012 A1
20120239443 Miller et al. Sep 2012 A1
20120239455 Crean et al. Sep 2012 A1
20120239584 Yariv et al. Sep 2012 A1
20120239669 Miller et al. Sep 2012 A1
20120259667 Pelissier et al. Oct 2012 A1
20120265598 Krone Oct 2012 A1
20120330982 Arnaud et al. Dec 2012 A1
20130166329 Arnoux-Prost et al. Jan 2013 A1
20130041696 Richard Feb 2013 A1
20130041902 Swann et al. Feb 2013 A1
20130054375 Sy et al. Feb 2013 A1
20130073323 Zacharia et al. Mar 2013 A1
20130073325 Ross Mar 2013 A1
20130090959 Kvamme et al. Apr 2013 A1
20130096965 Pappas et al. Apr 2013 A1
20130132129 Fox et al. May 2013 A1
20130151291 Salway Jun 2013 A1
20130158821 Ricci Jun 2013 A1
20130159023 Srinivas et al. Jun 2013 A1
20130198036 Pappas et al. Aug 2013 A1
20130261957 Mahapatro et al. Oct 2013 A1
20130304349 Davidson Nov 2013 A1
20130339105 Russell et al. Dec 2013 A1
20140012659 Yan Jan 2014 A1
20140019176 Mandelbaum Jan 2014 A1
20140025540 Hendrickson Jan 2014 A1
20140074746 Wang Mar 2014 A1
20140081793 Hoffberg Mar 2014 A1
20140089020 Murphy Mar 2014 A1
20140089036 Chidlovskii Mar 2014 A1
20140089101 Meller Mar 2014 A1
20140114705 Bashvitz Apr 2014 A1
20140156411 Murgai Jun 2014 A1
20140229102 Bapna Aug 2014 A1
20140257949 Gishen Sep 2014 A1
20140279196 Wilson Sep 2014 A1
20140304014 Lee et al. Oct 2014 A1
20140330605 Connolly et al. Nov 2014 A1
20140330606 Paget et al. Nov 2014 A1
20140330621 Nichols et al. Nov 2014 A1
20140337063 Nelson et al. Nov 2014 A1
20150012309 Buchheim et al. Jan 2015 A1
20150012467 Greystoke et al. Jan 2015 A1
20150046201 Miller et al. Feb 2015 A1
20150066594 Li et al. Mar 2015 A1
20150066830 Wilson et al. Mar 2015 A1
20150168169 Caceres et al. Jun 2015 A1
20150193583 McNair et al. Jul 2015 A1
20150227633 Shapira Aug 2015 A1
20150235478 Blandin et al. Aug 2015 A1
20150242927 Will et al. Aug 2015 A1
20150278970 Valverde, Jr. et al. Oct 2015 A1
20150356262 Liebovitz et al. Dec 2015 A1
20160048928 Davis et al. Feb 2016 A1
20160125559 Shekou May 2016 A1
20160162871 Lee Jun 2016 A1
20160196271 Miller et al. Jul 2016 A1
20160202073 Claycomb et al. Jul 2016 A1
20160203422 Demarchi et al. Jul 2016 A1
20160232626 Geraci et al. Aug 2016 A1
20160258767 Nevrekar et al. Sep 2016 A1
20160364815 Miller et al. Dec 2016 A1
20160371799 Miller et al. Dec 2016 A1
20170316103 Miller et al. Nov 2017 A1
20190012712 Miller et al. Jan 2019 A1
20190179863 Miller et al. Jun 2019 A1
20190251643 Valverde, Jr. et al. Aug 2019 A1
20190332921 Rodriguez Oct 2019 A1
20200027039 Miller et al. Jan 2020 A1
Non-Patent Literature Citations (71)
Entry
Non-Final Office Action and Notice of References Cited dated Sep. 26, 2017 in U.S. Appl. No. 15/178,453 (12 pages).
Non-Final Office Action and Notice of References Cited dated Sep. 16, 2019 in U.S. Appl. No. 16/055,767 (7 pages).
Final Office Action and Notice of References Cited dated Apr. 18, 2017 in U.S. Appl. No. 14/453,420 (27 pages).
Non-Final Office Action dated Mar. 9, 2018 in U.S. Appl. No. 14/453,420 (38 pages).
Final Office Action and Notice of References Cited dated Aug. 27, 2018 in U.S. Appl. No. 14/453,420 (45 pages).
Non-Final Office Action and Notice of References Cited dated Jan. 7, 2019 in U.S. Appl. No. 14/453,420 (47 pages).
Final Office Action and Notice of References Cited dated Mar. 29, 2019 in U.S. Appl. No. 14/453,420 (44 pages).
Non-Final Office Action and Notice of References Cited dated Jul. 12, 2018 in U.S. Appl. No. 15/183,620 (14 pages).
Non-Final Office Action and Notice of References Cited dated Nov. 29, 2018 in U.S. Appl. No. 15/183,620 (17 pages).
Non-Final Office Action and Notice of References Cited dated May 22, 2019 in U.S. Appl. No. 15/183,620 (16 pages).
Non-Final Office Action and Notice of References Cited dated Apr. 17, 2019 in U.S. Appl. No. 15/482,619 (42 pages).
Non-Final Office Action and Notice of References Cited dated Apr. 14, 2020 in U.S. Appl. No. 15/979,275 (14 pages).
Non-Final Office Action and Notice of References Cited dated May 28, 2020 in U.S. Appl. No. 16/142,834 (33 pages).
Examiner's Report dated Feb. 26, 2016 in CA Patent Application No. 2,830,228 (3 pages).
Notice of Allowance dated Jan. 12, 2017 in CA Patent Application No. 2,830,228 (1 page).
Notice of Allowance dated May 4, 2017 in CA Patent Application No. 2,830,224 (1 page).
Final Office Action and Notice of References Cited dated Jun. 10, 2020 in U.S. Appl. No. 15/178,064 (42 pages).
Final Office Action and Notice of References Cited dated Oct. 23, 2020 in U.S. Appl. No. 14/750,841 (21 pages).
Notice of Allowance and References Cited in U.S. Appl. No. 14/750,841, dated Mar. 23, 2021 (12 pages).
PR Newswire, “GetGoing Launches Multi-Supplier Hotel Merchandising Platform: BCD Travel Signs Multi-Year Agreement to Streamline Hotel Booking for Travel Management Companies”, New York, PR Newswire Association LLC, Sep. 23, 2014 (2-3 pages).
International Search Report and Written Opinion dated Jun. 15, 2012 in International Patent Application No. PCT/US2012/029121 (8 pages).
International Search Report and Written Opinion dated Jun. 7, 2012 in International Patent Application No. PCT/US2012/029098 (6 pages).
International Search Report and Written Opinion dated Mar. 14, 2013 in International Patent Application No. PCT/US2012/029112 (6 pages).
International Search Report and Written Opinion dated Nov. 24, 2014 in International Patent Application No. PCT/US2014/049979 (8 pages).
United Hub, “FareLock: An Opportunity to Lock in Your Ticket Price for up to Seven Days”, Jul. 28, 2012 <https://web.archive.org/web/20120728071904/https://www.united.com/CMS/en-US/praducts/travelproducts/Pages/FareLock.aspx>, Aug. 17, 2012 <https://hub.united.com/en-us/news/products-services/pages/farelock-lets-you-lock-in-your-ticket-price.aspx> (3 pages).
MacKenzie, “Two Services Help You Lock in a Good Deal on Airfare”, Hack My Trip, Apr. 2014 <http://hackmytrip.com/2014/04/two-services-help-lock-good-deal-airfare> (9 pages).
Boardman, “Options Away”, Vimeo, May 24, 2013 <http://vimeo.com/66936261> (2 pages).
International Search Report and Written Opinion dated Jul. 2, 2015 in International Patent Application No. PCT/US2015/023901 (8 pages).
Examiner's Report dated May 18, 2016 in CA Patent Application No. 2,830,224 (6 pages).
Examiner's Report dated May 19, 2016 in CA Patent Application No. 2,830,229 (4 pages).
International Search Report and Written Opinion dated Jul. 11, 2016 in International Patent Application No. PCT/US2016/037555 (12 pages).
International Search Report and Written Opinion dated Sep. 1, 2016 in International Patent Application No. PCT/US2016/036760 (8 pages).
International Search Report and Written Opinion dated Sep. 9, 2016 in International Patent Application No. PCT/US2016/037503 (6 pages).
International Search Report and Written Opinion dated Sep. 27, 2016 in International Patent Application No. PCT/US2016/036749 (6 pages).
Examiner's Report dated Apr. 28, 2017 in CA Patent Application No. 2,830,229 (4 pages).
International Search Report and Written Opinion dated Jul. 7, 2017 in International Patent Application No. PCT/US2017/026708 (8 pages).
Mayerowitz, “Latest Airline Fee: $9 to Lock in Airfare”, ABC News [online], Dec. 13, 2010 <http://web.archive.org/web/20110122133909/http://abcnews.go.com/Travel/airline-fees-forget-checked-bags-pay-lock-airfare/story?id=12385126> (p. 1) and Dec. 18, 2010 <http://web.archive.org/web/20101218074131/http://abcnews.go.com:80/Travel/airline-fees-forget-checked-bags-pay-lock-airfare/story?id=12385126&page=2 (p. 2), total 8 pages.
Examiner's Report dated Mar. 16, 2018 in CA Patent Application No. 2,830,229 (5 pages).
Goddeau, et al., “Galaxy: A Human-Language Interface to On-Line Travel Information”, 3rd International Conference on Spoken Language Processing (ICSLP94), Yokohama, Japan, Sep. 18-22, 1994, pp. 707-710.
Subramoni, “Topology-Aware MPI Communication and Scheduling for High Performance Computing Systems”, Ohio State University, 2013, 151 pages.
Tablan et al., “A Natural Language Query Interface to Structured Information”, The Semantic Web: Research and Applications, ESWC 2008: Lecture Notes in Computer Science, vol. 5021, pp. 361-375.
United Airlines, “FareLock”, webpage, Jul. 28, 2012 <https://www.united.com/CMS/en-US/products/travel/products/Pages/FareLock.aspx> (4 pages).
Federal Trade Commission, “Using Layaway Plans”, webpage, Dec. 19, 2012 <http://web.archive.org/web/20121219044435/https://www.consumer.ftc.gov/articles/0128-using-layaway-plans> (2 pages).
Examiner's Report dated Feb. 27, 2019 in CA Patent Application No. 2,944,652 (5 pages).
Examiner's Report dated Mar. 1, 2019 in CA Patent Application No. 2,830,229 (3 pages).
Examiner's Report dated Jun. 3, 2019 in CA Patent Application No. 3,021,147 (5 pages).
Examiner's Report dated Jul. 26, 2019 in CA Patent Application No. 2,989,325 (6 pages).
Non-Final Office Action and Notice of References Cited dated Jun. 5, 2018 in U.S. Appl. No. 15/595,795 (14 pages).
Non-Final Office Action and Notice of References Cited dated Mar. 11, 2015 in U.S. Appl. No. 13/420,433 (9 pages).
Non-Final Office Action and Notice of References Cited dated Feb. 26, 2016 in U.S. Appl. No. 13/420,433 (11 pages).
Non-Final Office Action and Notice of References Cited dated Dec. 16, 2013 in U.S. Appl. No. 13/419,989 (16 pages).
Non-Final Office Action and Notice of References Cited dated Dec. 5, 2014 in U.S. Appl. No. 13/419,989 (14 pages).
Notices of Allowance and References Cited dated Dec. 18, 2015 in U.S. Appl. No. 13/419,989 (15 pages).
Non-final Office Action and Notice of References Cited dated Oct. 21, 2014 in U.S. Appl. No. 13/420,179 (10 pages).
Non-final Office Action and Notice of References Cited dated Aug. 12, 2015 in U.S. Appl. No. 14/750,841 (15 pages).
Non-final Office Action and Notice of References Cited dated Aug. 14, 2015 in U.S. Appl. No. 14/676,302 (19 pages).
Final Office Action and Notice of References Cited dated Apr. 6, 2016 in U.S. Appl. No. 14/676,302 (26 pages).
Final Office Action and Notice of References Cited dated Jul. 11, 2016 in U.S. Appl. No. 13/420,433 (12 pages).
Non-final Office Action and Notice of References Cited dated Sep. 20, 2016 in U.S. Appl. No. 14/453,420 (29 pages).
Non-final Office Action and Notice of References Cited dated Nov. 30, 2016 in U.S. Appl. No. 14/676,302 (20 pages).
Non-final Office Action and Notice of References Cited dated Dec. 29, 2016 in U.S. Appl. No. 14/750,841 (16 pages).
Non-final Office Action and Notice of References Cited dated Jul. 13, 2016 in U.S. Appl. No. 15/069,791 (12 pages).
Non-final Office Action and Notice of References Cited dated Jun. 22, 2016 in U.S. Appl. No. 13/420,179 (13 pages).
Notices of Allowance and References Cited dated Dec. 27, 2018 in U.S. Appl. No. 13/420,179 (13 pages).
Non-final Office Action and Notice of References Cited dated Apr. 24, 2018 in U.S. Appl. No. 14/676,302 (26 pages).
Non-final Office Action and Notice of References Cited dated Feb. 7, 2019 in U.S. Appl. No. 14/750,841 (18 pages).
Non-final Office Action and Notice of References Cited dated Mar. 13, 2020 in U.S. Appl. No. 14/750,841 (25 pages).
Non-final Office Action and Notice of References Cited dated Aug. 24, 2018 in U.S. Appl. No. 15/178,064 (30 pages).
Final Office Action and Notice of References Cited dated Feb. 19, 2019 in U.S. Appl. No. 15/178,064 (33 pages).
Non-final Office Action and Notice of References Cited dated Oct. 7, 2019 in U.S. Appl. No. 15/178,064 (44 pages).
Notices of Allowance and References Cited dated Jul. 9, 2021 in U.S. Appl. No. 16/275,133 (12 pages).
Related Publications (1)
Number Date Country
20200249034 A1 Aug 2020 US
Provisional Applications (1)
Number Date Country
62181664 Jun 2015 US
Continuations (2)
Number Date Country
Parent 16055767 Aug 2018 US
Child 16854753 US
Parent 15178453 Jun 2016 US
Child 16055767 US