The present application is directed to a computerized method for allocating items, and in particular, to computerized method for allocating vehicles among a number of vehicle auction sites to maximize profits from vehicle auction sales.
Auctions are often used as a means for selling significant inventories of items held by a seller. For example, a typical manufacturer of vehicles such as a major automobile manufacturer may over time accumulate a large number of excess vehicles, including fleet vehicles, retail vehicles, company vehicles, off-lease vehicles, and the like. The manufacturer may seek to sell many of these excess vehicles at an auction, with the objective to maximize profit.
Manufacturers will wish to allocate vehicles to particular auction sites which can generate a high sales price while minimizing costs. For instance, vehicles with 4-wheel drive may command better prices in snow regions than in non-snow regions. Costs may include vehicle transportation costs (which can depend, for example, on the number of vehicles being transported to an auction site and whether the transporting vehicle's capacity is full), and depreciation and capital costs (for example, as a function of time lost when the vehicle is being transported and time lost until the vehicle is auctioned).
Two complications arise, however, in determining the proper vehicle allocation:
Typically, decisions to allocate vehicles are based on human judgments; however, these judgments are often made devoid of any reliable means to estimate price for vehicles according to auction site location and according to vehicle inventory at the auction site location. These circumstances may for example cause the seller to lose potential profit in allocating vehicles to the wrong auction sites and/or failing to allocate vehicles at all. Accordingly, there is a need for a method and computer program product that can solve the above problems.
The present invention is directed to a computer method for allocating items (for example, vehicles) to be sold at auction among a plurality of auction sites to maximize profit. In accordance with this method, an inventory database stores information uniquely identifying a plurality of items and associating each of the items with one of the plurality of available auction sites or another holding site as a current location. Constraints relating to the movement of the items to other available auction sites are stored in a constraints database. Items are identified which are available to be moved from a current location to one of the auction sites. A profit value is estimated for each available move. A move is identified for one item as having a highest estimated profit above an identified threshold and meeting related constraints. This move is selected, and profits are reestimated for remaining items to be moved. The selection steps are repeated until no remaining available moves are feasible according to the threshold and constraints. Once all feasible moves have been selected, information associated with the items and moves is transmitted to a client device.
The invention will become more readily apparent from the Detailed Description of the Invention, which proceeds with reference to the drawings, in which:
a shows an illustrative vehicle inventory file according to the method of
b shows an illustrative constraints file according to the method of
c illustrates an illustrative shipping file according to the method of
d shows an illustrative allocation file according to the method of
Reference will now be made in detail to exemplary embodiments of the invention. Examples of these exemplary embodiments are illustrated in the accompanying drawings. While the invention is described in conjunction with these embodiments, it will be understood that it is not intended to limit the invention to the described embodiments. Rather, the invention is also intended to cover alternatives, modifications, and equivalents as may be included within the spirit and scope of the invention as defined by the appended claims.
In the following description, specific details are set forth in order to provide a thorough understanding of the present invention. The present invention may be practiced without some or all of these specific details. In other instances, well-known aspects have not been described in detail in order not to unnecessarily obscure the present invention.
In this specification and the appended claims, the singular forms “a,” “an,” and “the” include plural references unless the context clearly dictates otherwise. Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood to one of ordinary skill in the art to which this invention belongs.
Before discussing the exemplary embodiments in
The goal is to maximize the following objective function with {0, 1} variables:
where, xij is the variable to indicate vehicle i is shipped to auction site j, pij is the price differential for vehicle i between auction sites a and j, rj is the truck load rate from auction site a to site j, ceil(x) (which is called ceiling function) is the smallest integer not less than x, and si is the size of vehicle i.
In this manner, the profit may be calculated as the price difference minus the costs for each allocation or move. The costs (e.g., shipping costs and capital cost such as vehicles sitting in inventory) are relatively straightforward to estimate. However, there are several challenges to solving this optimization problem with regard to the price. Generally, an auction pricing model can accurately price the vehicle to about twenty days into the future. Pricing accuracy degrades the further out in the future the sale may occur. For the allocation problem, vehicles may sit on the auction lot for up to 3 months before being put up for sale to clear out existing inventory at some locations. Hence, price is preferably modified to factor in vehicle depreciation during this waiting time.
Further, due to the price elasticity of demand, the expected price (and hence profit) also varies with the inventory at each location. For example, a greater number of the same vehicles at the same auction site will tend to reduce prices. The price estimate should take into account this elasticity, but as allocation changes the inventory (thus changes the price and accordingly the profit), the optimization solution has to be dynamic, that is, adjust the price at a particular auction site based on vehicles being allocated to that location.
To address these challenges, the optimization problem should be sequentially solved (i.e., sequentially allocating the vehicle with the largest profit, and dynamically adjusting the price and profit of prior allocations before the next auction site move). This method finds a good global maximum approximation.
A set of business constraints to be satisfied are provided during optimization. The business rules can set maximum and minimum quotas to be shipped to specific locations. In the present case, the constraints are shown as below:
where bk and ck are the maximum and minimum quotas for auction k, and
is the membership function.
With the sequential optimization method, these constraints can be easily checked and satisfied. In practice, a vehicle manufacturer allocates a number of days for assigning the vehicles to their target location, so they have enough time to ship full or almost full loads. Hence the ceiling function can be relaxed to an identity function.
For the purpose of illustrating the present invention, exemplary embodiments, which described the specifics of the modeling solution, will be described with reference to
Exemplary Vehicle Allocation Method
Profit=Expected PriceD−Expected PriceO (1)
The expected price at the destination is a function of the expected sales date, which is the allocation date (e.g., when the vehicle would be transported to the destination auction site) plus any waiting times as shown in equation (2) below. The expected price at the origin site may be previously determined, or in the case of a holding site where the vehicle cannot be sold, may be deemed as having a de minimis or zero value.
Expected Sales Date=Allocation Date+Waiting Times (2)
The waiting times in equation (2) may include or be based on the following:
Further in accordance with an embodiment of the present invention, once the expected sales date is determined, each vehicle at the destination location can be priced (the expected price for the destination discussed above) using equation (3) below.
|PT=Po×Fd×Fs (3)
where the price estimate for each vehicle at each potential destination auction site at the current time is denoted as Po, depreciation is denoted as Fd┐ (e.g., vehicle depreciation as time passes), seasonality (e.g., vehicle prices rise and fall seasonally throughout the calendar year) is denoted as Fs┘, and each vehicle's adjusted price is denoted as PT┘.
The first variable, Po, which may also be referenced herein as a “fair market price” or a “floor price,” may be calculated for example using a market-based vehicle pricing model described further herein in the section entitled “EXEMPLARY METHOD FOR CALCULATING MARKET-BASED PRICE P0.”
Depreciation (
F
d=(1−0.0125)#months| (4)
Seasonality (|Fs) may, for example, be determined based on empirical data (see, e.g.,
After determining the expected vehicle price at the destination site, costs are calculated in order to arrive at a profit. For example, in allocating a car to another auction site, shipping costs will be incurred. These costs may likely be determined (if not actually billed) as a function of vehicle size and the distance between the origin site and destination auction site. In addition, capital costs (e.g., costs incurred while holding vehicles in inventory prior to sale) may for example be determined using a simple interest rate calculation (e.g., 0.375% per annum). In a preferred embodiment, the capital costs are absorbed into the price depreciation equation (4) discussed above.
Based on the above vehicle calculations, if it is determined that no profit exists at step 102b of
If movement to one or more auction sites satisfies the constraints and have sufficient profits, the move with the highest profit is chosen at step 106. After allocating the vehicle (whether to its current location or by movement another location based on profit and constraints), it is determined whether there are any vehicles left. If yes, at steps 109, 110, the process returns to step 101 as described above to dynamically update the prices Po and recalculate the potential profits for each possible move.
As a part of the process of dynamically updating the price due to the allocation (or stay) of a vehicle 110, price elasticity may preferably be modeled as a price drop of y % per vehicle resulting from the allocation of the vehicle to a particular location having other similar vehicles (e.g., with the same year-model and drivetrain). For example, and assuming that y %=0.25, then let |n| be the number of vehicles (e.g., the same year-model and drive train) that are currently allocated to one location, and ┌PT be the price as determined above. The updated price as a function of price elasticity for a particular auction site from adding a particular vehicle is then calculated as
P
n=(1−0.25)nPT
This value Pn is the new price for a particular vehicle at a particular auction site. For example, if a 2005 Honda Accords 2.4 LX 4dr is allocated to an auction site in Atlanta having another 2005 Honda Accords 2.4 LX 4dr in it's inventory, the unallocated price, Po, in equation (3) for the additional 2005 Honda Accords 2.4 LX 4dr is calculated by inserting the value Pn for Po in equation (3). The value Pn may be further adjusted for various external factors that influence price including, for example, anticipating the price effects of planned new launch of a similar vehicle, planned manufacture incentive programs for similar vehicles, and the like. The value Pn may also be further adjusted to account for differences in quality between the allocated vehicle and similar vehicles at the auction site such as based on, for example, condition grade and/or vehicle damage.
These processes of vehicle allocation and price updating continue until it is determined that there are no more vehicles to process at step 111. At steps 112, 114, the allocation result are checked against “minimum” constraints. For example, the auction sites could be required to maintain a minimum number of vehicles in order to carry out an effective auction. If the allocation fails to satisfy the minimum constraints at step 112, potential allocations are evaluated at step 113 (in accordance with the process of step 101) to identify highest profit allocations that satisfy the minimum constraints. When the minimum constraints are fully satisfied, the algorithm completes at step 114.
Exemplary Vehicle Allocation System
Exemplary Data Files
a shows an illustrative inventory file 400a as described in
b shows an illustrative constraint file 400b as described in
c illustrates an illustrative shipping information file 400c as described in
d shows an illustrative allocation results file 400d as described with reference to
Exemplary Computer System
Computer system 500 includes a processor 510, a memory 520, a storage device 530 and input/output devices 540. One of the input/output devices 540 may include a display 545. Some or all of the components 510, 520, 530 and 540 may be interconnected by a system bus 550. Processor 510 may be single or multi-threaded, and may have one or more cores. Processor 510 executes instructions which in the disclosed embodiments of the present invention comprise steps described in one or more of
The memory 520 may store information and may be a computer-readable medium, such as volatile or non-volatile memory. The storage device 530 may provide storage for the computer system 500 including for the example, the previously described database, and may be a computer-readable medium. In various aspects, the storage device 530 may be a flash memory device, a floppy disk drive, a hard disk device, and optical disk device, or a tape device. Input devices 540 may provide input/output operations for the computer system 500.
Input/output devices 540 may include a keyboard, pointing device, and microphone. Input/output devices 540 may further include a display unit for displaying graphical user interfaces, a speaker and a printer. As shown, each computer system 500 may be implemented in a desktop computer, or in a laptop computer, or in a server, typically in communication with the Internet via a local area network (“LAN,” not illustrated). Alternatively, for example and with particular reference to the client devices 308 of
Exemplary Method for Calculating Market-Based Price P0
General Considerations for Determining the Floor Price of a Vehicle
Developing an accurate prediction of the floor price of a vehicle is non-trivial problem, as many varied factors may influence the floor price. At a high level, these factors may for example include:
By way of example, Table I provides a preferred list of factors to be considered in modeling reserve price for a vehicle, including an associated data type (“factor type) indicating a data storage mode. This list was assembled, for example, based on (1) vehicle data available for collection and (2) expert judgment. The list was further refined through experimentation and re-evaluation:
Typically, the seller of a vehicle will be able to directly observe and/or control the vehicle specific factors, while the non-vehicle specific factors, being unrelated to any specific vehicle, may be uncontrollable, unobservable and/or unknown.
In a floor or reserve price model developed in accordance with principles of the present invention, it is assumed that two identical vehicles (in terms of their vehicle specific factors) should effectively share the same fair market value. With this premise in mind, a model developed in accordance with principles of the present invention estimates the difference in price between two vehicles as a function of the price differences attributable to the differences in the features of the vehicles, plus some random fluctuation (noise). Assuming that the actual sale price of a first one of the two vehicles is a suitable proxy for its fair market value, the fair market value of a second vehicle can be determined as a function of the actual sale price of the first vehicle and the functional differences between the two vehicles. Significantly, and as further illustrated below, the effects of relevant non-vehicle specific factors may be implicitly captured in the differences measured among the vehicle-specific factors.
By way of example, consider fuel price as a non-vehicle specific factor which can affect the value of a vehicle. Although fuel price is a factor admittedly not significantly influenced by characteristics of a particular vehicle, an effect of fuel price may never-the-less influence a financial impact for a vehicle-specific feature (for example, a price difference according to fuel performance in mpg).
By comparing the market value of two vehicles having a common value for a vehicle-specific factor (e.g., mpg) that is related to a common non-vehicle factor (e.g., fuel price), the non-vehicle factor can essentially be “normalized” in the sense that it presents no effect on price difference for the two vehicles sharing a common value for the related vehicle-specific feature. Therefore, by comparing sufficiently similar vehicles (at least with respect to vehicle-specific features that are related to non-vehicle specific features), the effects of the non-vehicle specific features can be normalized (or otherwise minimized) such that they have essentially no effect on the operation of the model. As the effects for many non-vehicle specific features may be unknown or otherwise difficult to estimate, this aspect of the present invention is significant.
According to principles of the present invention, a fair market value price model as disclosed herein predicts that “identical” vehicles will have the same fair market value. In order to qualify as being identical, inter alia, the time and location of sale for each vehicle must be coincident. Since no two vehicles can be sold at precisely the same time in the same place, no two vehicles will ever be completely identical. This limitation, however, does not prevent effective application of the fair market value price model.
Applicants note that when the volume of vehicle sales is large (for example, at or above 1000 vehicles per month) and vehicles are sold on a daily, hourly or even per minute basis, vehicles can be compared with each other within a reasonably short time period (for example, within a 50-day window) so long as the final sale prices are available. A comparison however may be reasonably made based on only one other comparable sale during the time period. This is possible for the following reason.
Non-vehicle specific factors are most often economic factors that change at a much slower rate than the rate at which vehicle are sold. Therefore, by comparing the vehicle to be sold with previously-sold vehicles all sold recently (for example, within the 50-day window), the changes due to these non-vehicle specific factors are negligible, and as a result, the effects can readily be normalized. Even if there is an abrupt change in value for a non-vehicle specific factors that significantly affects fair market value, Applicants observe that the change can be quickly normalized by limiting comparisons of the vehicle to be sold to the most recent vehicle sales occurring after the abrupt change, because these most recent sales will have incorporated the abrupt changes implicitly.
Applicants further observe that the function of differences between vehicles is in general non-linear. For example, for two randomly-selected vehicles having varying trim options, mileage, vehicle condition, other options, color, and location of sale, the varying factors may interact in ways that are not accurately modeled as an independent linear sum of the apparent differences. However, by restricting the analysis to a comparison of “most” similar vehicles (as described further herein), Applicants have determined that the analysis can be transformed into a domain where the differences are nevertheless reasonably linear. A key therefore to the analysis carried out in accordance with principles of the present invention is in the selection of substantially similar vehicles (both in features and in time) for comparison, so that non-linear interactions among factors are minimized or otherwise muted, and so that the analysis, in essence, is “linearized.”
Model for Determining the Floor Price of a Vehicle
At step 702 of
At step 704, appropriate vehicle-specific features are identified and selected for determining the differences in value between vehicles. This step is further depicted in
At step 706, a linear dynamical system (LDS) model is created to express a state of the system for evaluating the fair market value of the vehicle. This step is further depicted in
For purposes of further illustrating principles of the present invention, an exemplary LDS model is now disclosed. The model is used to compute a fair market value Vab for a vehicle “a” as compared to a value expressed by a recent sale of a vehicle “b” In this model, Faj, indicates the value of a feature j with reference to the vehicle a, and xj is a state variable providing a measure of an associated monetary value for the feature (dollars ($)/Fj). The feature “vehicle value,” is set to 0 for vehicle “a”, while the vehicle value of “b” is set at an actual sale price for the vehicle “b.” The associated monetary value for feature “vehicle value” is fixed at 1. In this case, the model effectively makes corrections to the actual sale price of vehicle “b” based on the differences between features of the vehicles. Mathematically, the price is expressed as:
At step 708 of the process 700 of
Several related parameters may preferably be used in conjunction with the distance metric to select the K nearest neighbors. For example, a distance threshold (“Kmax”) may be empirically determined to ensure a reasonable distribution of similar vehicles are used in the pricing calculation, and applied so that those vehicles having a distance from vehicle “a” above the threshold Kmax are not considered. Alternatively, Kmax may be set to define a maximum number of vehicles, so that only the Kmax most similar vehicles are selected. Kmax may be determined empirically to be sufficiently large to ensure accurate calculations without requiring inordinate processing times. As yet another alternative, a minimum Kmin may be set (for example, at 8 vehicles) so that, if there are fewer than Kmin vehicles kept as a result of applying the distance threshold, then the distance threshold is ignored and the Kmin most similar vehicles are used as neighbors.
A unique and beneficial property of this model is that the distance metric is dynamic, because it is a function of current estimates xj of the states of the system. As the estimates xj over time provide increasingly accurate predictions for fair market value of specific vehicle attributes, the distance metrics used in the K-NN selection algorithm also improve to more accurately select the most similar vehicles to the vehicle “a,” thereby further “linearizing” the model as earlier described for improved accuracy.
Once the distances Dab are computed, a weighted sum of K predicted values is prepared to calculate a fair market value Pa for the vehicle “a” (steps 710 and 712 of
Specifically, the computation of Wb may take the following form:
The fair market value Pa may then be used as an improved estimate of fair market value and a floor price for selling the vehicle “a” at auction.
An exemplary process 800 for updating the model used to compute the fair market price according to the process 700 of
The process 800 of
As step 802 of the process 800 depicted in
x
k
=x
k−1
+w
k−1
z
ak
=F
ak
x
k
+v
k (11, 12)
In this case, xk represents a vector of the parameter value states of the system in view of the kth set of observations, and wk−1 represents a process noise vector, or state uncertainty, acting on the system state in view of a previous set of observations. The noise vector wk−1 is preferably modeled as normally distributed with zero mean and covariance (i.e., (wk−1˜N(0,Qk−1))). Qk is preferably constructed as a diagonal matrix, with each element qjk representing the “certainty” of the parameter xjk in the state. If qjk=0, then the certainty of the system state is 100%, so that the parameter xjk is unchanging. If qjk is non-zero, the system state is uncertain, at which point the Kalman filter update will adjust the system state for xjk in proportion to the uncertainty and error in the value measurement.
With reference to equation [12] above and steps 804, 806 of the process 800 of
It should be noted that the difference matrix Fak need not be maintained at a single, fixed size, but may be reduced in size to include only those columns containing non-zero distance values with reference to the K-NN selected vehicles. This reduction serves to prevent the formation of a rank-deficient matrix as would occur with a “zero column,” and reduces associated processing and computation efforts required. As Applicants' experience suggests that the difference matrix Fak prior to such reduction in practice may be quite large and quite sparse, the benefits from size reduction are often significant.
R may be defined as a diagonal matrix, where each diagonal element of R represents a measure of the certainty with which the measured sale price reflects the true value of the vehicle. Typically, the matrix R is defined as R=rI, so that the sale of car “a” has the same uncertainty for all its K-NN comparisons. In the present example, “r” may be set to r=1000.
At steps 808 and 810 of
P
k
−
=P
k−1
+Q
k
K
k
=P
k
−
F
k
T(FkPk−FkT+Rk)−1
x
k
new
=x
k
+K
k(zk−Fkxk)
P
k=(I−KkFk)Pk− (13-16)
where:
Pk− represents an estimated process covariance for the kth set of observations,
Kk represents an optimal Kalman gain for the kth set of observations,
FkT is a transverse matrix corresponding to the difference matrix Fk for the kth set of observations,
Xknew represents the updated state estimate based on the kth set of observations, and
Pk represents the updated process covariance estimate based on the kth set of observations.
Xknew is may then be used as the current state estimate for calculating the floor price for a next vehicle to be sold in an associated vehicle segment.
Implementation of Method for Setting Floor Price
The disclosed method for developing the accounts collection program is particularly suitable for implementation using a computer or computer system as described in more detail below.
In addition, one or more web servers 923 may be provided as part of the interface component 920 to access data from the database 913 and prepare summary reports for display on one of the client devices 930.
At this point, while we have presented this disclosure using some specific examples, those skilled in the art will recognize that our teachings are not so limited. Accordingly, this disclosure should be only limited by the scope of the claims attached hereto.
This application is a continuation in part of U.S. application Ser. No. 13/048,402, filed Mar. 15, 2011, entitled “Computer-Based Method and Computer Program Product for Setting Floor Prices for Items Sold at Auction”, which is hereby incorporated by reference in its entirety herein.
Number | Date | Country | |
---|---|---|---|
Parent | 13048402 | Mar 2011 | US |
Child | 13586504 | US |