Travel booking platform with multiattribute portfolio evaluation
Systems and methods for optimization-based travel itinerary planning utilizing a multiattribute travel booking platform are described herein. The system has a database, a scheduler, a parser, and a processor. The database stores a travel lexicon having attribute names, a travel taxonomy having look-up tables, and user preferences for a user related to travel attributes. The scheduler instantiates the travel attributes in terms of the travel lexicon and indexes them, searches for feasible travel itineraries, and transmits an optimal travel itinerary. The parser parses the travel-related query and ascertains a relevant attribute set, which produces attribute values. The processor receives a travel-related query from a user device, receives the user preferences from the database, ranks and weights the attribute values, associates values to the feasible travel itineraries, scores the feasible travel itineraries, and selects the optimal travel itinerary.
1 . A system for evaluating travel itineraries, the system comprising:
a scheduler in communication with a processor and operable to:
instantiate at least two travel attributes in terms of a travel lexicon, thereby generating at least two instantiated travel attributes;
a parser in communication with the processor and operable to:
parse a natural language travel-related query received via a user interface displayed on a user device to derive at least one constraint related to the set of feasible itineraries and to derive a vector function comprising at least two instantiated attribute values;
the processor in communication with the scheduler and the parser, the processor operable to:
receive the travel lexicon having attribute names and related values for flights, hotels, origins, and destinations;
receive a travel taxonomy comprising logical relations and predicates;
receive the set of feasible itineraries;
evaluate a utility value for each feasible itinerary in the set of feasible itineraries by:
ranking the at least two instantiated attribute values based on encoded preference information derived from a set of user preferences, thereby generating a ranking that represents a relative importance of each of the instantiated travel attributes; and
assigning weights to each of the at least two instantiated attribute values based on the ranking to create the at least two attribute weights;
associate the utility value to each of the feasible travel itineraries based on the at least two attribute weights and a value score corresponding to a performance of the feasible travel itinerary under each of the instantiated travel attributes;
evaluate the feasible travel itineraries based at least in part on the at least two attribute weights for each of the feasible travel itineraries; and
generate a visual representation for display on the user device, the visual representation showing the value scores for the feasible travel itineraries across a range of the at least one constraint;
wherein the processor is further configured to select, from the set of feasible travel itineraries, based on the at least one constraint, an optimal travel itinerary to be provided to the user.
2 . The system of claim 1 , wherein the instantiating the at least two travel attributes comprises ascertaining at least one relevant attribute set of the query, the at least one relevant attribute set comprising at least two attribute values selected from the plurality of travel attributes based on a context of the travel-related query in the travel taxonomy.
3 . The system of claim 2 , wherein the scheduler is further operable to index the plurality of instantiated travel attributes, thereby generating an attribute index comprising a plurality of indexed travel attributes in terms of the travel lexicon, and wherein the associating the utility value to each of the feasible travel itineraries is further based on the attribute index.
4 . The system of claim 1 , wherein the associating the utility value to each of the feasible travel itineraries based on the at least two weighted attributes further comprises indexing the plurality of instantiated travel attributes, thereby generating an attribute index comprising a plurality of indexed travel attributes in terms of the travel lexicon.
5 . The system of claim 1 , wherein the set of user preferences comprises relative importances assigned to at least one of the travel attributes.
6 . The system of claim 1 , wherein the processor is further operable to associate cost data with at least one of the at least two attribute weights and evaluating the set of feasible travel itineraries is further based on the cost data associated with at least one of the at least two attribute weights.
7 . The system of claim 1 , wherein the processor is further configured to adjust the evaluation of the feasible travel itineraries based on forecasted weather conditions at a time of travel.
8 . The system of claim 1 , wherein the set of user preferences comprises preferences for a plurality of different users.
9 . The system of claim 1 , wherein at least one user preference in the set of user preferences is determined based on one or more of the following: preexisting selections of the user and preexisting selections of one or more further users.
10 . A method for evaluating travel itineraries, the method comprising:
receiving (a) a travel lexicon having attribute names and related attribute values for flights, hotels, origins, and destinations, and (b) a travel taxonomy comprising logical relations and predicates;
receiving a set of feasible itineraries;
instantiating at least two travel attributes in terms of the travel lexicon, thereby generating at least two instantiated travel attributes;
parsing a natural language travel-related query received via a user interface displayed on a user device to derive at least one constraint related to the set of feasible itineraries and to derive a vector function comprising the at least two instantiated attribute values;
evaluating a utility value for each feasible itinerary in the set of feasible itineraries by:
ranking the at least two instantiated attribute values based on encoded preference information derived from a set of user preferences, thereby generating a ranking that represents a relative importance of each of the instantiated travel attributes; and
assigning weights to each of the at least two instantiated attribute values based on the ranking to create at least two attribute weights; and
generating a visual representation for display on the user device, the visual representation showing the value scores for the feasible travel itineraries across a range of the at least one constraint;
associating the utility value to each of the feasible travel itineraries based on the at least two attribute weights and a value score corresponding to a performance of the feasible travel itinerary under each of the instantiated travel attributes; and
evaluating, by a computing system, the feasible travel itineraries based at least in part on the at least two attribute weights for each of the feasible travel itineraries; and
selecting, from the set of feasible travel itineraries, based on the at least one constraint, an optimal travel itinerary to be provided to the user.
11 . The method of claim 10 , wherein the instantiating the at least two travel attributes comprises ascertaining at least one relevant attribute set, the at least one relevant attribute set comprising at least two attribute values selected from the plurality of travel attributes based on a context of the travel-related query in the travel taxonomy.
12 . The method of claim 11 , wherein the at least one relevant attribute set comprises at least two relevant attribute sets.
13 . The method of claim 10 , further comprising indexing the plurality of instantiated travel attributes, thereby generating an attribute index comprising a plurality of indexed travel attributes in terms of the travel lexicon, and wherein the associating the utility value to each of the feasible travel itineraries is further based on the attribute index.
14 . The method of claim 10 , wherein the set of user preferences comprises relative importances assigned to at least one of the travel attributes.
15 . The method of claim 10 , further comprising associating cost data with at least one of the at least two attribute weights and evaluating the set of feasible travel itineraries is further based on the cost data associated with at least one of the at least two attribute weights.
16 . The method of claim 10 , further comprising adjusting the evaluation of the feasible travel itineraries based on forecasted weather conditions at a time of travel.
17 . The method of claim 10 , wherein the set of user preferences comprises preferences for a plurality of different users.
18 . The method of claim 10 , wherein at least one user preference in the set of user preferences is determined based on one or more of the following: preexisting selections of the user and preexisting selections of one or more further users.