Patent ID: 8438118

Claim:
A method in a computing system comprising a central processing unit for determining one or more routes for transporting items in a computationally efficient manner, the method comprising: receiving multiple orders to transport items from an origination stop to a destination stop, wherein each order has: an associated time attribute; and an associated physical attribute; generating, by the central processing unit, one or more consolidations, wherein each consolidation is associated with two or more orders having: common origination stops; common destination stops; and compatible time attributes, and wherein each consolidation includes: a vehicle attribute; an origination stop corresponding to the common origination stops of the two or more associated orders; a destination stop corresponding to the common destination stops of the two or more associated orders; a physical attribute corresponding to the physical attributes of the two or more associated orders; and a time attribute compatible with the time attributes of the two or more associated orders; generating one or more shipments, wherein each shipment includes: a selected consolidation that meets at least one shipment parameter, or a single order; generating one or more routes with an ordered sequence of stops, each route being associated with one or more shipments; selecting one or more routes based on one or more route parameters; and performing, by the central processing unit, at least one heuristic for increasing computational efficiency wherein, for the heuristic, selecting one or more routes based on one or more route parameters includes: for each of a plurality of orders, determining an appearance number of the order by counting the number of routes associated with the order; for each of a plurality of routes, calculating the versatility of the route by: if the route is associated with one order, using the appearance number of the one order, and if the route is associated with multiple orders, summing the appearance numbers of the multiple orders associated with the route; selecting a first portion of routes based on the versatility associated with each route, wherein the portion of routes with the lowest versatility is selected; after each portion of routes is selected, eliminating all unselected routes associated with any order associated with a route in the selected portion; and repeating the portion selecting and route eliminating steps for a second portion of routes, without considering any previously selected or eliminated route.