Patent ID: 8805710

Claim:
A computer program product tangibly embodied in a non-transitory computer readable medium, the computer program product including instructions that, when executed, perform operations for selecting accommodations during a travel provision, the operations comprising: storing, in a computer-readable memory, generic software objects, each generic software object being configurable to represent a travel accommodation of a plurality of different travel accommodations and being associated with configurable attributes, wherein each configurable attribute is customizable with a plurality of properties; receiving, at a software application during run-time, input from a provider, the input comprising one or more properties that customize the configurable attributes of one or more of the generic software objects to provide software travel objects that represent respective accommodations used to transport passengers, the one or more properties being associated with respective pricing debits or credits, such that the respective pricing debits or credits can be aggregated with base prices of the respective accommodations to provide adjusted prices of the respective accommodations; determining that a customer has not provided criteria specifying preferences that relate to a physical trait of the one or more respective accommodations that affect a customer experience during travel; receiving the criteria from a customer profile in response to determining that the customer has not provided the criteria; determining that the customer has not provided an initial ranking of the criteria; receiving the initial ranking of the criteria from the customer profile in response to determining that the customer has not provided the initial ranking; determining that no available accommodations satisfy the initial ranking of the criteria using an optimization function that compares ranked criteria with the one or more properties associated with the configurable attributes; automatically re-ranking the initial ranking of the criteria one or more times based on determining that no accommodations satisfy the initial ranking; determining that the initial ranking has been automatically re-ranked a threshold number of times; determining, using the optimization function, that no available accommodations satisfy the criteria once the criteria is re-ranked the threshold number of times; in response to determining that no available accommodations satisfy the criteria once the criteria has been re-ranked the threshold number of times: selecting the one or more of the respective accommodations from one or more reserved accommodations that have previously been reserved for use by one or more other customers, reassigning the one or more other customers to one or more different unreserved accommodations, and automatically upgrading the one or more different unreserved accommodations for the one or more other customers; and outputting a representation of selected accommodations such that a first accommodation for a first payload is selectable by the customer.