U.S. patent application number 11/423834 was filed with the patent office on 2006-09-28 for method, system and computer program product for facilitating an auction behavior and automatic bidding in an auction.
Invention is credited to James A. Jorasch, Daniel E. Tedesco, Kathleen Van Luchene, Jay S. Walker, Adam Ware.
Application Number | 20060218077 11/423834 |
Document ID | / |
Family ID | 37036360 |
Filed Date | 2006-09-28 |
United States Patent
Application |
20060218077 |
Kind Code |
A1 |
Walker; Jay S. ; et
al. |
September 28, 2006 |
METHOD, SYSTEM AND COMPUTER PROGRAM PRODUCT FOR FACILITATING AN
AUCTION BEHAVIOR AND AUTOMATIC BIDDING IN AN AUCTION
Abstract
One or more proxy bidders is associated with a rule which
determines a time to place a bid. The proxy bidder places a bid at
the determined time, instead of immediately after the bidder's
prior bid is exceeded. Such rules may be selected for all proxy
bidders to encourage a desired auction behavior. By controlling the
placement of bids based on rules associated with the desired
auction behavior, bids may be placed in a manner that seems natural
and competitive to bidders in the auction when, in fact, they are
placed in accordance with the selected rules. The desired auction
behavior may be selected statically for an auction or dynamically
during the auction. Historical auction data maybe analyzed to
characterize the behavior of an auction, such as the average period
of time between bids and the average increment between bids. Rules
may be generated to correspond to a behavior so as to provide the
same average time and increment between bids.
Inventors: |
Walker; Jay S.; (Ridgefield,
CT) ; Tedesco; Daniel E.; (New Canaan, CT) ;
Van Luchene; Kathleen; (Norwalk, CT) ; Jorasch; James
A.; (Stamford, CT) ; Ware; Adam; (Scarsdale,
NY) |
Correspondence
Address: |
WALKER DIGITAL
2 HIGH RIDGE PARK
STAMFORD
CT
06905
US
|
Family ID: |
37036360 |
Appl. No.: |
11/423834 |
Filed: |
June 13, 2006 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
09523653 |
Mar 10, 2000 |
|
|
|
11423834 |
Jun 13, 2006 |
|
|
|
60152119 |
Sep 2, 1999 |
|
|
|
Current U.S.
Class: |
705/37 |
Current CPC
Class: |
G06Q 40/04 20130101;
G06Q 30/08 20130101 |
Class at
Publication: |
705/037 |
International
Class: |
G06Q 40/00 20060101
G06Q040/00 |
Claims
1-58. (canceled)
59. A method, comprising: monitoring an auction for at least one
condition specified by a bidder; and automatically placing a bid
for the bidder if the at least one condition occurs, the bid having
a bid price that is higher than the current high bid by a
predetermined amount.
60. The method of claim 59, wherein the at least one condition
comprises at least one of an amount of time remaining in the
auction and a predetermined time before the end of the auction.
61. The method of claim 59, further comprising automatically
placing a bid for the bidder at least one of: periodically at a
predetermined time after a previous bid; periodically at a
predetermined time after the auction has begun; according to a
frequency of a predetermined number of previous bids; after waiting
a random amount of time after a previous bid is placed; according
to a bid price achieved by the last bid; more or less quickly if
the auction is extended; and after a minimum number of bids is
placed.
62. The method of claim 59, which further comprises automatically
placing the bid according to at least one bidding behavior.
63. The method of claim 62, wherein the at least one bidding
behavior comprises at least one of a maximum bid amount and a
minimum bid increment.
64. A computer readable medium storing instructions configured to
direct a processor to: monitor an auction for at least one
condition specified by a bidder; and automatically place a bid for
the bidder if the at least one condition occurs, the bid having a
bid price that is higher than the current high bid by a
predetermined amount.
65. The computer readable medium of claim 64, which further
comprises instructions configured to direct a processor to monitor
the auction for the occurrence of the at least one condition which
comprises at least one of an amount of time remaining in the
auction and a predetermined time before the end of the auction.
66. The computer readable medium of claim 64, which further
comprises instructions configured to direct a processor to
automatically place a bid for the bidder at least one of:
periodically at a predetermined time after a previous bid;
periodically at a predetermined time after the auction has begun;
according to a frequency of a predetermined number of previous
bids; after waiting a random amount of time after a previous bid is
placed; according to a bid price achieved by the last bid; more or
less quickly if the auction is extended; and after a minimum number
of bids is placed.
67. The computer readable medium of claim 64, which further
comprises instructions configured to direct a processor to
automatically place the bid according to at least one bidding
behavior.
68. The computer readable medium of claim 67, which further
comprises instructions configured to direct a processor to
automatically place the bid when the at least one bidding behavior
comprises at least one of a maximum bid amount and a minimum bid
increment.
69. A system, comprising: means for monitoring an auction for at
least one condition specified by a bidder; and means for
automatically placing a bid for the bidder if the at least one
condition occurs, the bid having a bid price that is higher than
the current high bid by a predetermined amount.
70. The system of claim 69, wherein the means for automatically
placing a bid comprises at least one proxy bidder configured to
place the bid in response to the condition occurring, wherein the
at least one condition comprises at least one of an amount of time
remaining in the auction and a predetermined time before the end of
the auction.
71. The system of claim 69, wherein the means for automatically
placing a bid comprises at least one proxy bidder configured to
automatically place a bid for the bidder at least one of:
periodically at a predetermined time after a previous bid;
periodically at a predetermined time after the auction has begun;
according to a frequency of a predetermined number of previous
bids; after waiting a random amount of time after a previous bid is
placed; according to a bid price achieved by the last bid; more or
less quickly if the auction is extended; and after a minimum number
of bids is placed.
72. The system of claim 69, wherein the means for automatically
placing a bid comprises at least one proxy bidder configured to
automatically place a bid for the bidder according to at least one
bidding behavior.
73. The system of claim 72, wherein the at least one bidding
behavior comprises at least one of a maximum bid amount and a
minimum bid increment.
Description
CROSS-REFERENCES TO RELATED APPLICATIONS
[0001] The present application claims the benefit of provisional
U.S. patent application Ser. No. 60/152,119 filed Sep. 2, 1999. The
entire content of this application is incorporated by reference
herein.
BACKGROUND
[0002] Auctions for items may be held in many different ways.
Bidders may be physically present at one location or may be
dispersed geographically. Bids may be submitted during a specified
time in advance of the auction. Bidders may submit spoken bids,
written bids or electronic bids, for example over a computer or
other communications network. Using such a network, an auction may
be performed entirely online. In an online auction, a bidder may
place bids manually or may use a proxy bidder, which places bids
automatically on behalf of the bidder. An example of an online
auction with a proxy bidder is described in U.S. Pat. No. 5,835,896
to Fisher et al.
[0003] Using a conventional proxy bidder, a bidder in an online
auction specifies how bids should be placed. Typically, a proxy
bidder determines a bid amount and places a bid for the bidder
instantly after the proxy bidder detects that the previous bid is
surpassed. For example, a proxy bidder may use a maximum desired
amount for the item and an increment to add to a previously placed
bid. The proxy bidder places bids in the smallest increment needed
to exceed the previous bid, until reaching the maximum amount
specified by the bidder. In summary, if an auction is performed
with proxy bidders, bidding occurs unnaturally, quickly and
early.
SUMMARY
[0004] The outcome of an auction, such as price and/or speed at
which the item is sold, depends in part on the way that bidders bid
for the item. In particular, the behavior of one or more bidders in
an auction may influence another bidder's perception of the value
of the item. For example, if one or more bidders place bids
aggressively (e.g., bids are placed frequently, subsequent bid
prices increase significantly), perhaps due to the use of proxy
bidders, another bidder's perceived value of the item may be
increased. However, proxy bidders may discourage bidders from
participating in online auctions by making the bids appear
automated and out of human control. Users also may become
frustrated from, for example, being outbid instantly and may become
discouraged from participation in the auction.
[0005] One or more proxy bidders is associated with at least one
rule which determines a time to place a bid. The proxy bidder
places a bid in accordance with the at least one rule at the
determined time, which may be different from the time immediately
after the bidder's prior bid is exceeded by another's bid. Such
rules may be selected for all proxy bidders in an auction to
encourage a desired auction behavior. By controlling the placement
of bids using rules associated with the desired auction behavior,
bids may be placed in a manner that seems natural and competitive
to bidders in the auction even though they are placed in accordance
with selected rules. The desired auction behavior may be selected
statically for an auction or dynamically before and/or during the
auction. In one embodiment, historical auction data, such as the
average period of time between bids and the average increment
between bids, may be analyzed to characterize the behavior of an
auction. Rules may be generated to correspond to a behavior so as
to provide the same average time and increment between bids.
BRIEF DESCRIPTION OF THE DRAWINGS
[0006] FIG. 1 is a dataflow diagram of an example online auction
system;
[0007] FIG. 2 is a diagram of an example auction server;
[0008] FIG. 3 is a diagram of an example table for a database of
bidders;
[0009] FIG. 4 is a diagram of an example table for a database of
sellers;
[0010] FIG. 5 is a diagram of an example table for a database of
items;
[0011] FIG. 6 is a diagram of an example table for a database of
behaviors and associated rules;
[0012] FIG. 7 is a diagram of an example table for a database of
specifications for proxy bidders;
[0013] FIG. 8 is a diagram of an example table for a database of
information about an auction;
[0014] FIG. 9 is a flowchart describing how an auction is performed
in one embodiment;
[0015] FIG. 10 is a flowchart describing how an auction may be
initialized;
[0016] FIG. 11 is a flowchart describing how a desired auction
behavior may be determined;
[0017] FIG. 12 is a flowchart describing how bidders may be
registered for an auction;
[0018] FIG. 13 is a flowchart describing how one or more proxy
bidders may be created;
[0019] FIG. 14 is a flowchart describing how one or more rules may
be assigned to each proxy bidder;
[0020] FIG. 15 is a flowchart describing how bids for manual and
proxy bidders may be processed;
[0021] FIG. 16 is a flowchart describing how behavior of an auction
may be characterized;
[0022] FIG. 17 is a flowchart describing how the rule database may
be developed; and
[0023] FIG. 18 is a block diagram illustrating a relationship
between processes corresponding to the flowchart of FIG. 9 and the
databases of FIGS. 2-8, in one embodiment.
DETAILED DESCRIPTION
[0024] In one aspect of the present invention, a method for
managing an auction involves specifying an auction behavior, and
specifying at least one rule for controlling when a bid may be
placed automatically for a bidder according to the specified
auction behavior. At least one bid for a bidder may be placed
automatically according to the at least one rule and according to
at least one specified bidding behavior. If the highest bid in the
auction is not from the bidder, the bid may be placed automatically
according to the at least one specified bidding behavior at a time
according to the at least one rule. The specified bidding behavior
may be a maximum bid amount and a minimum bid increment. An auction
behavior may be specified by determining the auction behavior
according to information about the auction, which may include
information about an item, information about a seller and/or
information about bidders.
[0025] The auction behavior may be determined by receiving
information about one or more prior auctions, wherein each of the
prior auctions has an associated auction behavior, and identifying
at least one of the prior auctions as similar to the auction based
on the information about the auction and the information about the
one or more prior auctions. One or more of the prior auctions
identified as similar to the auction then may be selected. The
auction behavior associated with the selected one or more prior
auctions may be as the auction behavior. At least one of the prior
auctions similar to the auction may be identified by comparing
information about the auction to the information about the one or
more prior auctions using a metric to obtain a measure, and
comparing the measure to a threshold defining an extent of
similarity. The selected one or more prior auctions may be one
which has a best outcome among the at least one of the prior
auctions identified as similar to the auction. A best outcome may
be a highest price or a fastest sale.
[0026] A rule may be specified by associating at least one rule
with at least one candidate auction behavior from which the auction
behavior is specified, and selecting the at least one rule
associated with the specified auction behavior. At least one rule
may to be associated with each candidate auction behavior by
determining at least one rule that corresponds to each candidate
auction behavior; and storing the at least one rule in a database.
A candidate auction behavior is a behavior of an auction similar to
the current auction. At least one rule which corresponds to each
candidate auction behavior may be determined by characterizing each
candidate auction behavior, and selecting rules corresponding to
the candidate auction behavior.
[0027] In one embodiment, actual auction behavior may be evaluated
according to bids received in the auction. The at least one rule
for controlling when a bid may be placed automatically in the
auction may be modified according to the actual auction behavior.
The actual auction behavior may be evaluated by characterizing the
actual auction behavior according to bids received in the auction,
and comparing the selected auction behavior to the actual auction
behavior. The at least one rule may be modified by selecting at
least one alternative rule corresponding to the actual auction
behavior, for example, by selecting the at least one alternative
rule randomly from among a plurality of rules.
[0028] In another aspect, a computer program product includes a
computer readable medium with computer program instructions stored
thereon, wherein the computer program instructions, when executed
by a computer, direct the computer to perform the aforementioned
method for managing an auction.
[0029] In another aspect, a system for managing an auction
identifies an auction behavior, and identifies at least one rule
for controlling when a bid may be placed automatically for a bidder
in the auction according to the selected auction behavior.
[0030] In another aspect, a system for managing an auction includes
an auction behavior selector and a rule generator. The auction
behavior selector provides an indication of a selected auction
behavior. The rule generator has an input for receiving an
indication of the selected auction behavior and an output for
providing at least one rule for controlling when a bid may be
placed automatically for a bidder in the auction to encourage the
selected auction behavior. The auction behavior selector may
include a comparator and a selector. The comparator has an input
for receiving the information about the at least one prior auction
and information about the auction, and an output for providing an
indication of at least one of the prior auctions similar to the
auction. The selector has an input for receiving the indication of
one or more of the prior auctions identified as similar to the
auction and an output for providing an indication of the auction
behavior associated with a selected one or more of the prior
auctions.
[0031] In another aspect, a method for selecting an auction
behavior for an auction, includes receiving information about the
auction, and matching the information about the auction to an
auction behavior. The information about the auction may be matched
to the auction behavior by receiving information about one or more
prior auctions, wherein each of the prior auctions has an
associated auction behavior. At least one of the prior auctions is
identified as similar to the auction using the information about
the auction and the information about the one or more prior
auctions. One or more of the prior auctions identified as similar
to the auction is then selected. The auction behavior associated
with the selected one or more prior auctions may be selected as the
auction behavior. At least one of the prior auctions may be
identified as similar to the auction by comparing information about
the auction to the information about the one or more prior auctions
using a metric to obtain a measure. This measure may be compared to
a threshold defining an extent of similarity. The selected one or
more prior auctions may be one that has a best outcome among the at
least one of the prior auctions identified as similar to the
auction, for example by having a highest price and a fastest
sale.
[0032] In one embodiment, actual auction behavior may be evaluated
according to bids received in the auction. The at least one rule
for controlling when a bid may be placed automatically in the
auction may be modified according to the actual auction behavior.
The actual auction behavior may be evaluated by characterizing the
actual auction behavior according to bids received in the auction,
and comparing the selected auction behavior to the actual auction
behavior. The at least one rule may be modified by selecting at
least one alternative rule corresponding to the actual auction
behavior, for example, by selecting the at least one alternative
rule randomly from among a plurality of rules.
[0033] FIG. 1 illustrates an example online auction system for
managing an auction. An auction is a public or private sale in
which goods or services of a seller may be sold to a bidder through
a bidding process. There are many kinds of auctions which differ in
the manner in which bids are submitted and in the manner in which a
bid is selected by the seller.
[0034] The online auction system in FIG. 1 includes an auction
manager 100 which receives bids 102, 103 from one or more bidders
participating in one or more auctions. A bid is an offer from or on
behalf of a bidder, and the bid includes an offered price for the
good or service being auctioned. The bid may specify an actual
price or an amount relative to some other price, such as a
predetermined value greater than a previous bid price. The bids may
be received by the auction manager 100 in any of a number of ways,
including, but not limited to, any data discernable by the auction
manager as a bid, such as a message in any format of any computer
communication protocol. To process a bid, the auction server uses
an indication of the auction, the bidder and the bid price. A bid
from a bidder may itself include any one or more of these pieces of
information. Any information that the auction server can infer or
derive need not be included in the bid itself. Thus, a bid
generally includes an indication of one or more of the auction, the
bidder and the bid price. The indication of the bidder may be any
data indicative of an identifier, such as a name, address,
telephone number, email address, security number, credit card
number, or other data that can identify the bidder in the system.
Automatically and manually generated bids may be received by the
auction manager 100. Automatically generated bids may be received
from one or more bid generators 114, also referred to herein as
proxy bidders, described below.
[0035] The auction manager 100 maintains information about current
bidding status 104 for each auction. The information about the
current bidding status typically includes at least the highest bid
price, and optionally an identifier of the highest bidder (the
bidder that submitted the high bid, or on whose behalf the high bid
was submitted). Information describing a bidding time and/or a type
of bidder (e.g., whether manual or automatic) also may be included.
Other information about the auction also may be provided,
including, but not limited to, an identifier of the item, start and
end dates and times of the auction, a number of bidders, and/or a
minimum increment amount for a bid to exceed a previous bid. The
current bidding status 104 is accessible by both manual and proxy
bidders to enable bidders to make another bid. Manual and proxy
bidders may access the current bidding status 104 by requesting
information from the auction manager 100, or by reading the
information from some storage location maintained by the auction
manager, or by the auction manager sending the information to the
bidder, or in any other manner appropriate given the implementation
of the auction manager and/or proxy bidders.
[0036] Each bid generator 114 receives data specifying at least
part of its bidding behavior. The bidding behavior indicates how
the bid generator 114 generates a new bid from a current bid. The
data specifying the bidding behavior may, in one embodiment,
include a maximum bid price 120 and an increment value 122. The
maximum bid price 120 indicates the maximum price which the bidder
associated with the proxy bidder is willing to bid for an item. The
increment value 122 is the amount by which the bid must exceed a
previous bid. The increment value 122 may be defined for all
bidders in the auction through the auction server, for example, by
an individual or by the auction server itself. Alternatively, the
bidder may specify his own increment value to be used by the
corresponding bid generator. Any suitable interface, such as an
HTML form, may be used to permit a bidder to specify the bidding
behavior of the proxy bidder. Using the current bidding status 104,
the bid generator generates the bid 102 according to the specified
bidding behavior. In general, the bid generator adds the increment
value 122 to the bid price of the previous bid to yield the bid
price of the new bid. The bid price of the new bid may not exceed
the maximum bid 120. If the highest bid price received during the
auction exceeds the maximum bid price 120, then no bid is placed
and/or the actual bidder is notified in some manner (e.g., using
electronic mail) that his maximum bid price has been exceeded.
[0037] One or more rules 112 may be applied to determine, for
example, when the bid is to be placed. Accordingly, the bid is not
necessarily placed immediately after the bid generator 114 detects
that a previously submitted bid price has been exceeded by another
bidder. A rule applied by the bid generator 114 may be obtained
from many sources. A rule may be specified by the bidder, by the
auction system, by the seller, or any combination thereof. A rule
may be created or may be selected from a predetermined list.
[0038] A rule specifies at least one condition (also called an
"antecedent" or "predicate") and at least one consequent, which may
include an action to be performed. A rule also may have an
activator (also called a trigger or event), which causes the bid
generator 114 to apply the rule. A rule is applied by determining
whether its condition is true. If the condition is determined to be
true, the consequent occurs, e.g., the specified action is
performed. Typically, the action performed is placing a bid having
a bid price that is higher than the current high bid price by a
specified increment.
[0039] A condition may be specified as, for example, an amount of
time that has passed and/or a number of bids that have been
submitted. Additionally or alternatively, a condition may be
specified using other information about the auction, such as the
current price. A trigger similarly may be specified as, for
example, an amount of time that has passed and/or a number of bids
that have been submitted, or by some other event in the auction,
such as an auction server indicating to the proxy bidder that it
will accept a bid from the proxy bidder.
[0040] Both conditions and triggers may be specified using similar
information; however, a condition is evaluated by a proxy bidder,
whereas a trigger causes the proxy bidder to apply a rule. The
specification of conditions and triggers to define a bidding
behavior depends on implementation of the proxy bidder and
coordination of information exchange between the auction server and
the proxy bidder. Unless otherwise specified herein, therefore, the
term condition encompasses triggers, except for triggers that
specify only that the most recent bid from the proxy bidder is
exceeded by a bid from another bidder or that are only a result of
coordination by the auction server of acceptance of bids from proxy
bidders.
[0041] As noted above, a condition generally may be specified using
information about the auction or time or other information to
determine when a bid may be placed by the proxy bidder. For
example, a condition may be specified by a fixed amount of time or
a variable amount of time. The variable amount of time may be a
function of, for example but not limited to, the amount of time
left in the auction, whether the auction has been extended, the
rate at which bids are placed in the auction, or the current price
of the item. A condition also may be specified by a fixed number of
bids, e.g., one, or a variable number of bids. The variable number
of bids may be a function of, for example, the amount of time left
in the auction, whether the auction has been extended, the rate at
which bids are placed in the auction, or the current high bid price
for the item. A condition also may be specified by a ratio between
a number of bids and an amount of time, which may be fixed or
variable. Conditions also may be specified using any other
information about the auction, such as who placed the last bid,
number of bidders in the auction, etc.
[0042] Some example rules include, but are not limited to, placing
a bid:
[0043] 1. periodically at a predetermined time after a previous bid
is placed, e.g., five minutes after a previous bid is placed;
[0044] 2. periodically at a predetermined time after the auction
has begun, e.g., every five minutes starting from one hour after
the beginning of the auction;
[0045] 3. according to a frequency of a predetermined number of
previous bids, e.g., if the past five bids have occurred within
twenty minutes, the proxy bid is placed within five minutes of the
last bid; if the past five bids have occurred within one hour, the
proxy bid is placed within fifteen minutes of the last bid;
[0046] 4. after waiting a random amount of time after a previous
bid is placed;
[0047] 5. according to a bid price achieved by the last bid, e.g.,
if the high bid price exceeds a predetermined amount, the bid is
placed more (or less) quickly;
[0048] 6. according to an amount of time left in the auction, e.g.,
the bid is placed more (or less) quickly near the end of the
auction;
[0049] 7. at a predetermined time before the end of auction;
[0050] 8. more or less quickly if the auction is going to be
extended;
[0051] 9. after a minimum number of bids is placed previously,
e.g., the bid is placed after three other bids have been
placed.
[0052] Many kinds of rules can be provided, and the invention is
not limited to any particular rules. Rules also may be related to
bidding by manual bidders. For example, the speed at which manual
bids are placed may determine how the proxy bids are placed. Rules
also may be specified at the beginning of an auction, but their
application may be delayed until a specified action has occurred.
One or more rules also may be specified for one or more proxy
bidders to facilitate a desired auction behavior. An auction
behavior is a manner in which bids in an auction are placed, for
example, the times at which they are placed, the frequency with
which they are placed, and the amount by which they exceed any
previous bid. Generally, a desired auction behavior is an auction
behavior that has a likelihood to provide the best beneficial
outcome. The desired auction behavior is selected, by the seller,
by an auctioneer or automatically, so as to improve or optimize the
outcome of the auction, such as price at which and/or speed with
which the item is sold, or other beneficial outcome for a party,
whether seller, bidder or auctioneer.
[0053] An auction behavior selector 106 may be used to select a
desired auction behavior 108. For example, the auction behavior
selector may use one or more of the current bidding status 104,
current information about the current auction 116, and/or
information about past auctions 118. For example, the auction
behavior selector may identify a prior auction that is most similar
to the current auction, and select the auction behavior of that
prior auction as the desired auction behavior. Similarity may be
determined by comparing one or more values associated with the
auctions, using any suitable similarity or distance metric to
obtain a measure of similarity. A measure computed using a
similarity metric generally increases with increased similarity of
the compared items. A measure computed using a distance metric
generally decreases with increased similarity of the compared
items. Many kinds of metrics may be used, including Hamming
distance, correlation, Euclidean distance and other metrics. The
invention is not limited by any particular similarity or distance
metric. One or more thresholds may be defined to which this measure
may be compared to indicate an extent of similarity. An example
implementation of an auction behavior selector 106 is described in
more detail below.
[0054] Given a desired auction behavior, a rule selector 110 may
select one or more rules 112, one or more of which may be applied
to one or more proxy bidders in the manner described above. In
general, the rule generator may associate one or more rules with
each auction behavior, and provide an indication of such rules,
given the desired auction behavior.
[0055] An example implementation of an online auction system will
now be described in connection with FIGS. 2-9.
[0056] The auction behavior selector 106, auction manager 100, rule
generator 110 and one or more bid generators 114 all may be present
and operating on one or more computers or other devices acting as a
server computer for the auction. This server computer, herein
called an auction server, may be accessed by one or more computers
or other devices used by sellers, and one or more computers or
other devices used by bidders in any manner known in the art (e.g.,
via the Internet).
[0057] The auction server 200 may include one or more communication
ports 202, one or more processors 204, an internal data and time
clock 206, and storage 208 which includes one or more computer
programs 222 defining instructions, which when executed, instruct
the computer to perform the operations of the auction behavior
selector, rule generator, auction manager and bid generator. The
storage also may include a bidder database 210, seller database
212, item database 214, rules database 216, proxy bid database 218
and auction database 220. These programs and these databases will
now be described in more detail in connection with FIGS. 3-8.
[0058] FIG. 3 illustrates an example table 300 for a bidder
database, which includes one or more records 302. In general, each
record associates a bidder identifier 304 with a payment identifier
312 and optionally, additional information about the identified
bidder. In this example, each record 302 includes a bidder
identifier 304, name 306, mailing address 308, email address 310
and payment identifier 312. Entries in this database are made as
users register with the auction server as described below. After a
bidder registers for an auction for an item, a list corresponding
items identifiers also may be stored in this entry for a
bidder.
[0059] FIG. 4 illustrates an example table 400 for a seller
database, which includes one or more records 402. In general, each
record associates a seller identifier 404 with one or more
associated item identifiers 412 and optionally, additional
information about the seller. Example additional information about
the seller includes a name 406, an email address 408, and a payment
identifier 410. Entries in this database are made and updated as
sellers register items to be auctioned, as described below.
[0060] Fig. 5 illustrates an example table 500 for an item
database, which includes one or more records 502, with one record
for each item being auctioned. In general, each record associates
an item identifier 504 with an item description 506 and optionally
additional information such as an item category 508. The item
description may be a textual description, list of features or any
other information that serves to describe the item and/or enable a
comparison of the item to other items. A selling price 510 also may
be stored. Each item may have an associated behavior identifier
512, which indicates the auction behavior used for the auction of
that item. A list of registered bidders also may be stored. Entries
in this database are made and updated as sellers register items for
auction, when a behavior is assigned to an auction and when an
auction ends.
[0061] FIG. 6 illustrates an example table 600 for a rule database,
which includes one or more records 602. This rule database may be
used by the rule selector 110 of FIG. 1. Each record 602 in the
rule database relates a behavior identifier 604 with a rule
identifier 606. Each behavior also may have an associated
description 608 that provides a prose description of the behavior.
Similarly, each rule may have an associated description 610 that
provides a prose description of the rule. Although the example
table 600 illustrates one specific rule associated with each
behavior, each behavior may be associated with one or more rules.
The one or more rules may be specific or may include variables that
are assigned different values for different proxy bidders. How
behaviors may be associated with rules is described in more detail
below.
[0062] FIG. 7 illustrates an example table 700 for a proxy bidder
database that stores information about proxy bidders. This table
includes one or more records 702, wherein each record includes a
bidder identifier 704 and an item identifier 706 or other
identifier of the auction. A proxy bidder also may have an
associated rule identifier 708, which refers to a record in the
rule database, and a bid ceiling, or maximum bid 710. This
information enables the auction server to control the operation of
all proxy bidders at a central location.
[0063] FIG. 8 illustrates an example record 800 from an auction
database. This database stores information about present and past
auctions. In the example shown in FIG. 8, a record 800 may include
an item identifier 802, an auction start date and time 804, an
auction end date and time 806, a current number of participating
bidders 808 and a bid increment amount 810. The number of bidders
may be inferred from a list of bidders associated with this item
stored in either field 808 of this table 800 or in the item
database. A list 812 includes one or more entries 814, wherein each
entry associates a bidder 816 with a bid amount 818, a bidding time
820 and a type 822 of the bidder.
[0064] Each database may be any kind of database, including a
relational database, object-oriented database, unstructured
database or other database. Example relational databases include
Oracle 8i from Oracle Corporation of Redwood City, Calif., Informix
Dynamic Server from Informix Software, Inc. of Menlo Park, Calif.,
DB2 from International Business Machines of Yorktown Heights, N.Y.,
and Access from Microsoft Corporation of Redmond, Wash. An example
object-oriented database is ObjectStore from Object Design of
Burlington, Mass. An example unstructured database is Notes from
the Lotus Corporation, of Cambridge, Mass. A database also may be
constructed using a flat file system, for example by using files
with character-delimited fields, such as in early versions of
dBASE, now known as Visual dBASE from Inprise Corp. of Scotts
Valley, Calif., formerly Borland International Corp.
Notwithstanding these possible implementations of the foregoing
databases, the term database as used herein refers to any data that
is collected and stored in any manner accessible by a computer.
[0065] Having now described the databases maintained by the auction
server in this embodiment, the various operations performed by the
auction server will now be described. Referring to FIG. 9, these
operations include, but are not limited to, initializing (900) an
auction by receiving information from a seller about the seller and
the item to be offered for sale, determining (902) a desired
auction behavior for an auction, registering (904) bidders for an
auction, creating (906) a proxy bidder for a registered bidder,
assigning (908) bidding rules to proxy bidders, and processing
(910) bids received from bidders. Optionally, the behavior of the
auction also may be characterized (912). During the auction, the
actual auction behavior and the desired auction behavior are
different, the rules may be updated to effect the desired auction
behavior. The various operations in FIG. 9 need not be performed
sequentially or in the order shown. These various operations will
now be described in more detail.
[0066] Referring to FIG. 10, to initialize an auction, information
about the seller and the item to be auctioned is received (1000)
from the seller by the auction server. Information about the
seller, in an embodiment using the database structure described
above, may include a seller name, email address, and payment
identifier. Information about the item may include a description of
the item and a category. Any conventional registration process and
mechanism may be used to obtain this information from a seller. The
seller information and the item information may be provided
separately and at different times, enabling the seller to register
once, but offer multiple items for auction at different times.
[0067] Records in the seller information database of FIG. 4 and the
item information database of FIG. 5 are created or updated (1002)
using the received information. In particular, the auction server
associates a seller identifier with the seller information and an
item identifier with the item. A record for the seller is created
in the seller database and for the item in the item database,
"linked" by the item identifier. The selling price (510 in FIG. 5)
for the item is set to an arbitrary initial value.
[0068] A table 800 (FIG. 8) for the auction is then created (1004),
which is associated to the item database through the item
identifier (802 in FIG. 8). The auction start time 804 and end time
806 may be specified by the seller or the auction server. The
current number of participating bidders 808 is initially set to
zero. The bid increment amount may be set by the auction server, by
a third party through the auction server, or by the seller. An
initial bid amount also may be provided and stored in an entry 814
in the list 812.
[0069] Referring to FIG. 11, after initializing the auction, a
desired auction behavior may be determined for the auction. The
selection of a desired auction behavior, from which the rules for
proxy bidders may be generated, generally is performed by receiving
information about the auction and matching this information about
the auction to a behavior that is likely to provide the best
beneficial outcome. This matching may be performed in many ways.
For example, matching the auction to a behavior may involve
receiving (1100) information about one or more prior auctions,
wherein each prior auction has an associated auction behavior. At
least one of the prior auctions is identified as similar to the
current auction. For example, the information about the auction,
such as the item description, item category, seller information
and/or information in the auction database (FIG. 8), may be
compared (1102) to the information about the one or more prior
auctions. One or more of the prior auctions identified as similar
to the current auction is then selected (1104). Typically, the
prior auction that is selected is the auction that has the best
beneficial outcome among the prior auctions identified as similar
to the current auction. For example, the auction that is selected
may be the auction with the highest price, or fastest sale, or
other beneficial outcome. Because the selected prior auction is
associated with an auction behavior, for example, through the
database of FIG. 5, the auction behavior of that selected prior
auction now may be used for the current auction. An identifier and
description of the identified behavior is stored (1106) in the
database shown in FIG. 5.
[0070] Referring to FIG. 12, after initializing the auction,
bidders may register to participate in the auction. Bidders may
register prior to a desired auction behavior being selected for the
auction. Information about the bidder is received (1200) by the
auction server. Information about the bidder, in an embodiment
using the database structure described above, may include a name,
mailing address, email address, and/or payment identifier. Any
conventional registration process and mechanism may be used to
obtain this information from a bidder.
[0071] Records in the bidder database of FIG. 3 are created or
updated (1202) using the received information. In particular, the
auction server associates a bidder identifier with the bidder
information, and a record for the bidder is created in the bidder
database. Entries in a bidder database, such as is shown in FIG. 3,
may be created and updated separately for each auction. Bidders
also may register with the auction server separately from
registering to participate in an auction. In this embodiment,
records may be created and updated in the bidder database
independently of the auctions. The bidder's information is
associated (1204) with the auction in any of the ways described
above.
[0072] Referring to FIG. 13, at any time before or during the
auction, and after the selection of the desired auction behavior, a
registered bidder may create and/or modify a proxy bidder.
Information specifying the bidding behavior of the proxy bidder is
received (1300) from the bidder by the auction server. Such
information, in an embodiment using the database structure
described above, may include a maximum bid and an indication of the
item or auction for which the proxy bidder is to be used. The
identity of the bidder may be. determined through any conventional
authentication process or mechanism, possibly using the bidder
database of FIG. 3. A corresponding record is then created or
updated (1302) by the auction server in a proxy bidder database,
such as shown in FIG. 7.
[0073] Referring to FIG. 14, when a proxy bidder is created, the
auction server also associates one or more rules with the proxy
bidder to effect the desired auction behavior. These rules may be
assigned statically or dynamically to the proxy bidder. In an
embodiment using the database structure described above, using the
item identifier, the selected desired auction behavior for the
auction is retrieved (1400) from the item database (FIG. 5).
[0074] A rule identifier associated with the desired auction
behavior is selected (1402) from the rule database in FIG. 6. In
general, the assignment of the bidding rules to proxy bidders is
coordinated so that the desired auction behavior is achieved. A
rule may be selected sequentially or randomly for each proxy bidder
from the rules associated with the desired auction behavior. The
one or more rules may be specified such that the condition includes
a variable that is assigned differently for each proxy bidder. The
variable may have a range of candidate values, from which a
particular value for a rule for a proxy bidder is selected. The
rule generator may take various other information into account to
assign rules. For example, the bid ceiling of each bidder, the
length of the auction and the number of bidders may be used to
select a rule. An implementation for creating the rule database of
FIG. 6 is described in more detail below in connection with FIG.
17. The selected rule identifier is stored (1404) in the proxy
bidder database (708), associated with the identifier of the bidder
who created the proxy bidder and the item identifier.
[0075] Referring to FIG. 15, after registration of a seller, an
item, and bidders, and after initialization of the auction
information, bidding in an auction may commence at or after the
specified auction start time. During the auction, the auction
server receives (1500) both manually and automatically generated
bids. Conflicting bids may be processed in any appropriate manner,
using any conventional process or mechanism. If proxy bidders are
implemented by the auction server, coordination by the auction
server of bids from proxy bidders with the receipt of bids from
manual bidders may be performed using any conventional process or
mechanism, as described below. For each bid that is received, if
the bid complies with the auction rules, as determined at 1502,
entry 814 corresponding to the bid is added (1504) to table 800
(FIG. 8), including the identifier of the bidder, the bid amount,
the time at which the bid was placed and the type of bidder
(whether manual or proxy). A bid that does not comply with the
auction rules may be rejected (1506) by the auction server. After a
bid is processed, if the auction is not over, as determined at 1508
by comparing the current time to the auction end date/time 808
(FIG. 8), more bids may be received (1500). Also, as noted above,
any time during the auction, the behavior of the auction may be
characterized (such as described below in connection with FIG. 16)
and rules associated with the proxy bidders may be modified. If the
auction is over, the selling price maybe stored (1510) in the item
database (510 in FIG. 5).
[0076] The operation of a proxy bidder may be initiated in many
ways, and at many times. For example, each proxy bidder may be
evaluated by the auction server after each bid is placed, or after
each period of time has passed. The auction server may determine
whether each proxy bidder could place a bid, for example, by
determining whether any prior bid was exceeded and whether the
maximum bid was exceeded. If the proxy bidder could place a bid,
its associated rule is applied. If the conditions of the rule are
satisfied, then a new bid is submitted for the proxy bidder to the
auction manager. A bid from each proxy bidder may be computed and
submitted, e.g., in sequence, in parallel, in a round-robin manner
or in any other manner desirable.
[0077] Alternatively, a proxy bidder may be separate program, for
example executed on a client machine, or may be one or more
separate threads of a program executed by the auction server, or
may be an autonomous or semiautonomous agent. If proxy bidders are
not centrally controlled, as in these embodiments, the database of
data shown in FIG. 7 may be omitted. In this embodiment, a bid from
a proxy bidder is handled by the auction server as if it were a
manually submitted bid.
[0078] If proxy bidders are centrally controlled, proxy bidders may
be delayed in submitting proxy bids for long enough to prompt the
manual bidders to create proxy bidders near the end of an auction.
This notification would enable manual bidders to continue
participating in the auction and may help increase the purchase
price of the item.
[0079] After a number of bids has been received in an auction,
whether during or after the auction, the behavior of the auction
may be characterized, as noted at 912 in FIG. 9. Referring to FIG.
16, how such a characterization of the behavior of an auction may
be derived from data about the actual bidding information in the
auction will now be described. For example, the auction behavior
may be characterized using the frequency with which bids were
placed, and amounts by which bids exceeded any previous bids in the
auction. Various mathematical processes may be applied to the data
to determine this and other information that may characterize the
behavior of the auction. For example, in an embodiment using a
database such as shown in FIG. 8, the total number of bids is
computed (1600). The amount of time between the first bid and the
last bid is computed (1602). The difference between the first bid
and the last bid is computed (1604). From this information, an
average frequency and increment may be determined.
[0080] Other historical data which may be used to characterize the
behavior of an auction includes information about the bidders, such
as the bidder's history with the auction server, including, but not
limited to, how many items the bidder has bid for an item, how much
money has been spent by the bidder and the auction behavior that
enticed the bidder to bid aggressively or spend the most amount of
money. The time of the year the auction was conducted also may be
relevant. Auctions also may be compared to determine which
behaviors are associated with the best outcomes among a set of
similar auctions. In this manner, the auction server collects data
about kinds of behaviors that produce the best outcomes in various
auctions.
[0081] If the behavior of the current auction is characterized
during the auction, the behavior of the current auction may be
compared to the desired auction behavior to determine whether the
desired auction behavior is being achieved. The rule assignments
then may be changed dynamically during the auction depending on
whether the desired auction behavior is being achieved. For
example, if the desired auction behavior is to have bids occurring
every five minutes, with and average increment of two dollars, and
the actual behavior has bids occurring every two minutes, the proxy
bidders rules may be changed so as to increase the average amount
of time between proxy bids.
[0082] Referring now to FIG. 17, how a desired auction behavior is
associated to rules, which are selected and assigned to the proxy
bidders, will now be described. In particular, as noted above, one
or more rules may be associated with an auction behavior, which is
defined. A specification of the desired auction behavior is
received (1700), for example, as an average bidding frequency and
average bidding increment. The average bidding frequency and
average bidding increment are used to define (1702) one or more
variables. These variables may have a range of candidate values
defined from actual auction behaviors. A single variable rule may
be specified, with the range of candidate values, and stored in the
rule database, from which specific rules may be derived as rules
are assigned to proxy bidders. Alternatively, multiple specific
rules may be specified (1704). The defined rules, whether general
or specific, are stored in the rule database, associated with the
desired auction behavior.
[0083] Referring now to FIG. 18, a block diagram of the activities
described in FIGS. 9-17 and how they interact with the databases of
FIGS. 3-8 will now be described. As indicated at 1800,
initialization of the auction uses the seller database 1802, item
database 1804 and auction database 1806. Selection 1808 of a
desired auction behavior uses at least the item database 1804 and
the auction database 1806. Registration 1810 of the bidder uses the
bidder database 1812, and optionally the item database 1804 or the
auction database 1806 to associate the bidder with the auction.
Creation or modification 1814 of a proxy bidder for a bidder uses
the proxy bidder database 1816. The bidder database 1812 and item
database 1804 may be used for verification purposes. Assignment
1818 of rules uses the item database 1804, rule database 1820 and
the proxy bidder database 1816. Processing 1822 of bids uses the
proxy bidder database 1816, item database 1804 and auction database
1806. Characterization 1824 of an auction uses the auction database
1806 and may use the rules database 1820. Creation 1826 of the
rules database 1820 uses the auction database 1806, and other
information as desired.
[0084] A computer system with which the various elements of the
auction system of FIG. 1 and/or FIG. 18 may be implemented either
individually or in combination typically includes at least one main
unit connected to both an output device which displays information
to a user and an input device which receives input from a user. The
main unit may include a processor connected to a memory system via
an interconnection mechanism. The input device and output device
also are connected to the processor and memory system via the
interconnection mechanism.
[0085] One or more output devices may be connected to the computer
system. Example output devices include cathode ray tubes (CRT)
display, liquid crystal displays (LCD) and other video output
devices, printers, communication devices such as a modem, storage
devices such as a disk or tape, and audio output. One or more input
devices may be connected to the computer system. Example input
devices include a keyboard, keypad, track ball, mouse, pen and
tablet, communication device, and data input devices such as audio
and video capture devices. The invention is not limited to the
particular input or output devices used in combination with the
computer system or to those described herein.
[0086] The computer system may be a general purpose computer system
which is programmable using a computer programming language, such
as C, C++, Java, or other language, such as a scripting language or
even assembly language. The computer system may also be specially
programmed, special purpose hardware, or an application specific
integrated circuit (ASIC). The bidder's device also may be a pager,
telephone, personal digital assistant or other electronic data
communication device.
[0087] In a general purpose computer system, the processor is
typically a commercially available processor, of which the series
x86 and Pentium series processors, available from Intel, and
similar devices from AMD and Cyrix, the 680X0 series
microprocessors available from Motorola, the PowerPC microprocessor
from IBM and the Alpha-series processors from the former Digital
Equipment Corporation, and the MIPS microprocessor from MIPS
Technologies are examples. Many other processors are available.
Such a microprocessor executes a program called an operating
system, of which WindowsNT, Windows 95 or 98, IRIX, UNIX, Linux,
DOS, VMS, MacOS and OS8 are examples, which controls the execution
of other computer programs and provides scheduling, debugging,
input/output control, accounting, compilation, storage assignment,
data management and memory management, and communication control
and related services. The processor and operating system defines
computer platform for which application programs in high-level
programming languages are written.
[0088] A memory system typically includes a computer readable and
writeable nonvolatile recording medium, of which a magnetic disk, a
flash memory, and tape are examples. The disk may be removable,
known as a floppy disk, or permanent, known as a hard drive. A disk
has a number of tracks in which signals are stored, typically in
binary form, i.e., a form interpreted as a sequence of one and
zeros. Such signals may define an application program to be
executed by the microprocessor, or information stored on the disk
to be processed by the application program. Typically, in
operation, the processor causes data to be read from the
nonvolatile recording medium into an integrated circuit memory
element, which is typically a volatile, random access memory such
as a dynamic random access memory (DRAM) or static memory (SRAM).
The integrated circuit memory element allows for faster access to
the information by the processor than does the disk. The processor
generally manipulates the data within the integrated circuit memory
and then copies the data to the disk after processing is completed.
A variety of mechanisms are known for managing data movement
between the disk and the integrated circuit memory element, and the
invention is not limited thereto. The invention is not limited to a
particular memory system.
[0089] Such a system may be implemented in software or hardware or
firmware, or any combination thereof. The various elements of the
system, either individually or in combination may be implemented as
a computer program product tangibly embodied in a machine-readable
storage device for execution by a computer processor. Various steps
of the process may be performed by a computer processor executing a
program tangibly embodied on a computer-readable medium to perform
functions by operating on input and generating output. Computer
programming languages suitable for implementing such a system
include procedural programming languages, object-oriented
programming languages, and combinations of the two.
[0090] The invention is not limited to a particular computer
platform, particular processor, or particular high-level
programming language. Additionally, the computer system may be a
multiprocessor computer system or may include multiple computers
connected over a computer network. Various possible configurations
of computers in a network permit many users to participate in an
auction, even if they are dispersed geographically.
[0091] Each module or step shown in the accompanying figures and
the substeps or subparts shown in the remaining figures may
correspond to separate modules of a computer program, or may be
separate computer programs. Such modules may be operable on
separate computers or other devices. The data produced by these
components may be stored in a memory system or transmitted between
computer systems or devices. The plurality of computers or devices
may be interconnected by a communication network, such as a public
switched telephone network or other circuit switched network, or a
packet switched network such as an Internet protocol (IP) network.
The network may be wired or wireless, and may be public or
private.
[0092] Having now described a few embodiments, it should be
apparent to those skilled in the art that the foregoing is merely
illustrative and not limiting, having been presented by way of
example only. Numerous modifications and other embodiments may be
made. For example, rules may be applied in order to test their
effect when placed at specific times during an auction. Rules to be
applied to proxy bids also may be specified by the bidder of the
item. Such capability may provide the bidder influence on how other
bidders behave in the auction, and provide more feeling of control.
A bidder may be required to pay for this service. In addition, when
proxy bidders are bidding in the last moments of an auction against
manual bidders, the auction server could delay submitting proxy
bids for long enough to prompt the manual bidders to submit bid
ceilings so that they have a chance of remaining in the auction.
This notification would enable manual bidders to continue
participating in the auction and may help the item be purchased for
a higher price, thus benefiting the auctioneer and the seller of
the item. The notification may be available only for an additional
cost if desired.
* * * * *