# Patent

## Title
Bidder-side auction dynamic pricing agent, system, method and computer program product

## Abstract

The present invention sets forth a system, method, and computer program product for automating an interaction between a buyer and an electronic, variable, dynamic pricing online auction service. The method can include receiving a registration of a buyer at an Internet enabled buyer bidding site, a portfolio, and account information. The method can also receive entered information about financial transaction instruments, contact information, and product preferences in an auction profile. The method can receive a search query for a desired product from product auctions of a plurality of auction sites and can use a search agent or a meta-search agent, and can provide returned auctions, including retrieving and presenting current status of product auctions. The method can receive a selection of returned auctions to store in the portfolio for tracking by scan agents and for bidding by bid proxies. The method can receive selections of product auctions of the returned auctions and place the product auctions into the portfolio for use by a cascaded bid proxy. The method can provide auction monitoring by scan agents of temporal progression of product auctions, and can notify someone via a messaging center of any changes in relevant aspects of the status that could prevent an initial bid from being placed by a bid proxy. The method can enable activation of bid proxies as an auction nears completion to begin placing bids until the auction is won or lost by auction closing and can confirm a counter-offer has not out-bid. The method can compute and execute another higher bid if a counter-offer has been made and accepted, higher than the most recent bid detected.

## Background
CROSS REFERENCE TO RELATED APPLICATION
The present application is a U.S. Non-Provisional Patent Application related to U.S. Provisional Patent Application No. 60/235,548 of identical title, filed Sep. 27, 2000 the contents of which are incorporated herein by reference in its entirety.


BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention is related generally to online auctions, and more particularly to buyer side bidding tools.
2. Related Art
One of the first widely popular website types facilitated by widespread user access to the Internet, is the online auction site. Online auctions, initially in the business to consumer (B2C) space, such as, e.g., EBAY, and Yahoo!Auctions enable many consumer clients with a computer and an Internet Service provider (ISP) account, to participate as a buyer (i.e., bidder user, or member), or seller (or biddee) in an auction. With the advent of business to business (B2B) electronic commerce auction sites such as, e.g., Freemarkets, business buyers in a procurement department can similarly bid on, e.g., supplies, parts, and vendor equipment.
Conventionally, online auctions can occur 24 hours per day, seven days per week. Unfortunately, a bidder is not able to monitor the status of an auction continually. It is desirable that tools to automate the bidding process be made available to bidders. Unfortunately, auction sites also continually create countermeasures to make it difficult to automate bidding.
Conventional auctions include bidding rules and bidding parameters. Unfortunately, bidding rules and parameters can change from time to time.
Conventionally, tools designed to automate the bidding process for a bidder (i.e., on the buy side) have been standalone workstation software based and lack various desirable features. Unfortunately, as bidding rules and parameters change and counter measures are added, the standalone software based tools no longer work. Thus, it is desirable that an improved tool be provided that overcomes the shortcomings of conventional solutions.
SUMMARY OF THE INVENTION
The present invention is directed to a system, method and computer program product that automates many of the processes of the buyer-side of a dynamic pricing or auction pricing transaction executed on the Internet. An exemplary embodiment of the present invention is available from Argosy Omnimedia, Inc. of Rockville, Md. U.S.A. The technology developed and commercialized by Argosy, according to the present invention, includes, in an exemplary embodiment, any of several, advantageous, separate components that can be integrated into a convenient program agent that can track performance of a given auction and can conduct a bidding transaction on behalf of the buyer on a specific auction site or sites.
The Buyer can select the targeted auction and auctioned item (product) from a result list. The result list can be created by use of a meta search engine. One or more items, i.e., products, can then be selected from the result list to receive automated bids placed by the buyer's bidding proxy.
An exemplary embodiment of the present invention sets forth a system, method, and computer program product for automating an interaction between a buyer and an electronic, variable, dynamic pricing online auction service is provided. The method can include the steps of: a. receiving a registration of a buyer at an Internet, web-enabled, buyer bidding application site (site) by creating logon credentials that are used to authenticate and authorize the buyer's access to the site, a portfolio of the buyer, and account information of the buyer, wherein the logon credentials are provided by an independent 3rd party through a logon agent using at least one of proxied identification and digital certificates; b. receiving entered information about financial transaction instruments of the buyer, contact information including at least one of a telephone number, an email address, and a physical mail address, and product preferences into an auction profile of the buyer; c. receiving a search query from the buyer for a desired product from the product auctions of a plurality of auction sites including at least one of keywords, model identification, brand identification, synonyms, and unique identification, using at least one of a search agent and a meta-search agent, and providing returned auctions, including retrieving current status of the product auctions and presenting the current status to the buyer; receiving a selection of one or more of the returned auctions to store in the portfolio of the buyer for tracking by one or more scan agents and for bidding by one or more bid proxies; d. receiving selections of a plurality of product auctions of the returned auctions and placing the plurality of product auctions into the portfolio for use by a cascaded bid proxy; e. providing monitoring by the one or more scan agents of temporal progression of the plurality of product auctions, and notifying the Buyer via a messaging center of any changes in relevant aspects of the current status of any of the plurality of product auctions that would prevent an initial bid from being placed by the bid proxy; f. enabling activation of the one or more bid proxies as any completing auction that nears completion of the plurality of product auctions, to begin placing one or more bids until the completing auction is either won or lost by time of auction closing, including enabling interaction between the scan agent and the bid proxy to place the bid of the buyer as close to the time of auction closing as possible and to confirm that a counter-offer has not out-bid a most recent bid of the Buyer; g. computing and executing another valid higher bid that is within the bid parameters, if the counter-offer has been made and accepted by the auction site that is higher than the most recent bid detected by the scan agent.
In one exemplary embodiment, the step (e) can include: 1. notifying the Buyer when a current price of a targeted auction exceeds programmed bid parameters of the bid proxy, comprising at least one of: a. examining with an internal scan agent, bid information stored in the portfolio of the Buyer; and b. sending information to the Buyer using at least one of wired and wireless messaging technologies including at least one of an email, a page, a text page, an instant message, and an other communication, if a programmed bid with invalid bid parameters or other important information is detected.
In one exemplary embodiment, the step (e) can include: 1. notifying the Buyer when an auction has been won using at least one of a bid proxy of the Buyer and a programmed bid, wherein information is sent to the Buyer using at least one of wired and wireless messaging technologies including at least one of an email, a text page, an instant message, a communication, and a hypertext link to bid information stored in the portfolio of the Buyer.
In one exemplary embodiment, the method can further include: h. managing at least one of payment instruments, payment devices, contact, and financial status, of the Buyer through an online, personalizable buyer profile account comprising: 1. presenting registration screens to the Buyer for the collection of contact information including at least one of an email, a physical mail address, a telephone number, a pager, and an alternative contact information, and financial instrument information; 2. creating an account information record in a database of the information and linking the account information record to any activated auction portfolios of the buyer; and 3. providing access for the Buyer to the account information record and modifying the account information record as needed subsequent to buyer authentication.
In one exemplary embodiment, the method can further include: h. accelerating the performance of a bid proxy by using network telemetry and statistical algorithms to improve the win probability of the bid, comprising: 1. testing, using a telemetry agent, the response time of an auction site to periodically ascertain temporal latency for various types of queries and commands; 2. optimizing balance between when to place an initial bid and keeping winning price as low as possible, using information on the response time obtained during response time testing, wherein response time information is stored in an updateable profile for each auction site and is used by the bid proxy, and wherein the telemetry information collected comprises a screen type, and a transaction type including at least one of a query for auction status and a bid command, and a time span from a query to a response.
In one exemplary embodiment, the method can further include: h. receiving one or more persistent search agents that are programmed, persistent and operative to search one or more auction sites for product auctions of a desired product and providing returned auctions that a bid proxy can execute using at least one of a directed programmed bid, and an algorithmically calculated bid, wherein the one or more persistent search agents periodically search a list of a plurality of auction sites for product auctions that correlate with preference information stored in the profile of a buyer, including: 1. creating entries by the Buyer for each kind of product of which the Buyer desires to be notified if a product containing this description becomes available for bidding on any and all auction sites; 2. periodically searching, using the one or more persistent search agents, search services of the plurality of auction sites to see if a matching product can be found in lists of products being auctioned; and 3. sending, to the Buyer, a link to a found product using the message center, if any matches are found; and i. receiving at least one of definitions of programmed bidding parameters of the directed programmed bid to the bid proxy, and authorization of the bid proxy to algorithmically compute a lowest market price based on reviewing prevailing market prices for similar products as determined by information stored in a data warehouse.
In one exemplary embodiment, the method can further include: h. storing product preferences of the Buyer for products, including preference information that can be used by at least one of a persistent search agent, and a bid proxy operating under at least one of directed programmed bidding, and algorithmically calculated bidding parameters.
In another exemplary embodiment of the present invention, a system, method and computer program product for automating a Buyer's online, electronic search agent of specific electronic auctions on a targeted auction site is set forth including: a. providing a programmable search agent, from a server, that searches auction catalogs of a plurality of auction sites and identifies correlations between product parameters of a Buyer that can be at least one of entered and stored, and can include at least one of keywords, product classifications, and price ranges, and products that are listed for sale through dynamic price competitive bidding using a number of electronic auction techniques including at least one of a Dutch, Yankee, and Reverse auction techniques.
In one exemplary embodiment, the method can further include a step: b. providing additional programmable search agents searching said plurality of auction sites simultaneously for one or more products; and c. returning a found set of said one or more products for further review and selection by a Buyer.
In yet another exemplary embodiment of the present invention, a system, method and computer program product for executing one or more programmed bid proxies that are controlled by bid parameters comprising the steps of: a. retrieving, using a scan agent, the current auction status within a time to auction close window (TACW) wherein said TACW spans a range of time beginning at a time calculated by subtracting an absolute time to start proxied bidding from an auction end time, and ending with a time of the auction end time, wherein the TACW defines a period of time when a scan agent and a bid proxy work in tandem to place as many bids as necessary to win an auction; b. determining, by a bid proxy, if parameters of the current auction status fall within a range of acceptable auction status parameters; c. computing, using the bid proxy, a next valid price by adding a minimum valid price increment to a current auction price to compute an offer price, if the current auction price is below a maximum price, using the parameters of the current auction status; d. activating a bid proxy, and placing a bid in accordance with an auction site specific protocol, if the offer price is below the maximum price in the acceptable auction status parameters, wherein the auction site specific protocol varies from site to site, and a basic protocol involves at least one of entering the offer price, and authenticating as the Buyer so the offer price can be correlated with an account of the Buyer on the auction site and entered on behalf of the Buyer; e. retrieving the current auction status, using the scan agent, to verify that a latest bid of the Buyer has been accepted by the auction site; f. repeating steps (b) through (e) until auction end, if the current auction status indicates that the offer price of the Buyer has been rejected or outbid by another bidder; and g. scanning the auction, at the auction end, to determine win/loss status of the auction and storing the win/loss status in portfolio of the Buyer for later reporting to the Buyer through a messaging system.
In one exemplary embodiment, the step (a) can include: 1. computing the TACW based on a value derived from a data warehouse of the site, wherein the value derived is computed based on a minimum absolute time that has been logged for prior successful auctions for a given auction site, wherein the minimum absolute time is a time till close (TTC) value; and 2. computing the TTC value using probability analysis and auction site telemetry information computed based on recent response times and network latencies as determined by the scan agent.
In another exemplary embodiment of the present invention, a system, method and computer program product for providing cascaded bidding including: a. executing a series of cascaded bids for an identical product in temporally sequential auctions according to a programmed set of bid parameters, wherein the bid parameters comprise at least one of the following types: a programmed bid value limit for one or more units of product; an algorithmically calculated bid value limit based on prevailing market prices for similar or identical products monitored by agents and stored in a data warehouse.
In another exemplary embodiment of the present invention, a system, method and computer program product for scanning online auctions using a scan agent, including: a. scanning web pages of a targeted auction site and extracting relevant auction status information including at least one of an open, a close, a maximum bid, a minimum valid bid, a last bidder, and other auction parameters and information using a scan agent that can be used to compute a valid Buyer bid, comprising: 1. retrieving one or more programmed bids, using a scan agent, from one or more portfolios of one or more buyers; 2. extracting auction site identification from programmed bid information; 3. activating the appropriate scan agent based on the auction site identification and domain information of an auction site; 4. retrieving using the scan agent the latest auction site characterization information available for that auction site; 5. retrieving, using the scan agent, auction information from the auction site by at least one of navigating auction information pages of the auction site, and through using an application programming interface (API) that enables programmatic retrieval of the auction information; 6. the current auction parameters are retrieved, analyzed and stored in entry for the auction in the portfolio of the Buyer; and 7. performing further analysis by at least one of one or more site agents and processes.
In one exemplary embodiment, the method can further include: b. scanning status pages of the auction site to track progress and status of a targeted auction prior auction close, the method comprising of the steps of: 1. scanning, using the scan agent, all portfolios of all Buyers for all active auctions in each of the individual portfolios of the Buyers; 2. scanning slowly of the auctions listed in the each of the individual portfolios is performed for those auctions with TTC values that exceed a slow/fast scan threshold (SFST) value, wherein a slow/fast scan window (SFSW) is computed by subtracting the SFST value from each individual auction end time; 3. evaluating auction status information from those auctions that are before the start of the SFSW to determine if the Buyer's bid parameters for a given auction are no longer valid, including messaging the reason for non-validity to the Buyer using the messaging system, if the bid parameters are no longer valid for a given auction; 4. changing status of programmed bid from slow scan to fast scan, if the scan agent determines that a given auction falls within the SFSW; 5. scanning more frequently a programmed bid in fast scan mode in order to determine the current response time or latency of the auction site based on prevailing network traffic conditions; and 6. transitioning the programmed bid into active bid mode, if a bid is within the TACW, and execution of a bid proxy programmed bid that is controlled by bid parameters can be performed.
In another exemplary embodiment, the method can further include: b. distributing one or more scan agents to distributed network nodes including at least one of a server, a workstation, and a peer device) and executing the scanning process (“peer scan agent”) from that node in response to high loading conditions on the master node or counter-measures enabled by the auction site, a method comprising the steps of: 1. distributing and activating on peer servers a copy of the agents involved in the bidding process, if at least one of the scan agent, and any other agent, detects the agent cannot access the auction site because the agent is not receiving a response to inquiries including at least one of a Post and a Get, wherein the peer servers are previously configured as support servers to the site and information about the peer servers is stored in a directory on a master node at the site; 2. distributing, by the master node, bid proxies of auctions from the portfolio of the Buyer and bid parameters to the designated peer server now assigned the task of bidding on a given auction by the master node; 3. executing on the peer server the auction bid proxy as would the master node without control from the master node; and 4. returning to the master node subsequent to auction end, and logging into the portfolio, the resulting win/loss/failed status of the auction.
In one exemplary embodiment, the step (2) can include: i. distributing of the bid proxies to distributed network nodes including at least one of a server, a workstation, and a peer device, and executing a peer bid proxy process initiated from a node responsive to at least one of high loading conditions on another node, and counter-measures enacted by the auction site.
In another exemplary embodiment of the present invention, a system, method and computer program product for adapting to changes in auction site layout and relevant auction site information, including: a. adapting to changes within a plurality of web pages of an auction site and changes across the plurality of web pages, so that one or more scan agents and one or more bid proxies intelligently adapt to format and data type changes in the web pages of the auction site including: 1. alerting by the scan agent of an intelligent process known as the information extractor when old information that is expected to be found on a new page is not found; 2. examining a new page layout by the information extractor and comparing the new page layout data to a stored copy of the old page layout of a known navigable page to determine if the old information is located elsewhere on the new page; 3. modifying the parameters of the scan agent by the information extractor to identify where the old information is now located on the new page, if the old information is found in another location in the new page layout than it was in the old page layout; 4. stepping through one or more previous pages in navigation of pages of the auction site, by the information extractor, and scanning new links to see if the old information has been moved to another page, if the old information is not found in the new page layout; 5. modifying parameters of the scan agent, by the information extractor, to identify the new location of the old information, if the old information is found; and 6. sending an alert to an administrator for the page and resulting navigation path to be retrained by the administrator using at least one of a neural net engine controlling the scan agent and another intelligent engine reprogramming mechanism, if the old information is not found.
In another exemplary embodiment of the present invention, a system, method and computer program product comprising a system comprising a processor and memory and any other computer peripheral components well known to the art, can be used to embody a machine having modules each operative to perform functions analogous to the steps of the disclosed methods.
Further, it is important to note that a computer program product can be provided executable on a computing system further including a removable storage medium that can embody program logic that can include computer readable code means for enabling the computer to provide functions operatively analogous to those disclosed in the disclosed and initially claimed methods as would be apparent to those skilled in the relevant art.
Further features and advantages of the invention, as well as the structure and operation of various exemplary embodiments of the invention, are described in detail below with reference to the accompanying drawings. In the drawings, like reference numbers generally indicate identical, functionally similar, and/or structurally similar elements. The drawing in which an element first appears is indicated by the leftmost digits in the corresponding reference number.



BRIEF DESCRIPTION OF THE DRAWINGS
The foregoing and other features and advantages of the invention will be apparent from the following, more particular description of an exemplary embodiment of the invention, as illustrated in the accompanying drawings.
FIG. 1 depicts an exemplary embodiment of a flow diagram illustrating an AgentProxy main web site page that can provide a central aggregation and launch point for the service according to the present invention;
FIG. 2 depicts an exemplary embodiment of a flow diagram illustrating a Cascaded Bid service that can enable the buyer to select multiple auctions for the same or several different items and can enter them into a linked, bid cascade according to the present invention;
FIG. 3 depicts an exemplary embodiment of a flow diagram illustrating a meta-search engine component that can provide a convenient way for the buyer to search multiple auction sites and aggregate the results into a single, sortable result set according to the present invention;
FIG. 4 depicts an exemplary embodiment of a flow diagram illustrating a meta-registration engine component that can provide a convenient, centralized service that can create registration accounts for the buyer on each of the dynamic pricing or auction sites that are tracked by the product according to the present invention;
FIG. 5 depicts an exemplary embodiment of a flow diagram illustrating a mybid portfolio that can provide a centralized area where active bids of the buyer can be stored and displayed according to the present invention;
FIG. 6 depicts an exemplary embodiment of a flow diagram illustrating a myaccount component that can provide a convenient area for the buyer where the buyer can manage information pertaining to the account of the buyer, according to the present invention;
FIG. 7 depicts an exemplary embodiment of a flow diagram illustrating a bid engine component that can include bid automation business process logic that can manage the agent and proxy functionality, according to the present invention;
FIG. 8 depicts an exemplary embodiment of a flow diagram illustrating a fastscan bid engine component that can be designed to take advantage of “thread pool,” software component based run-time architectures, according to the present invention;
FIG. 9 depicts an exemplary embodiment of a flow diagram illustrating a bidagent component that can perform the actual bidding on behalf of the Buyer/Bidder, according to the present invention;
FIG. 10 depicts an exemplary embodiment of a flow diagram illustrating a proxied peer-to-peer distributed server bid engine of the present invention; and
FIG. 11 depicts an exemplary embodiment of a flow diagram illustrating a monitoring process that tracks a maximum bid value.



DETAILED DESCRIPTION OF AN EXEMPLARY EMBODIMENT
A preferred embodiment of the invention is discussed in detail below. While specific implementations are discussed, it should be understood that this is done for illustration purposes only. A person skilled in the relevant art will recognize that other components and configurations may be used without parting from the spirit and scope of the invention.
The present invention is directed to a system, method and computer program product including several inter-working components that are designed to provide a convenient, programmable product for selecting targeted products on dynamic pricing or auction sites, entering the bidding parameters and then allowing the software driven, server based agent to proxy the buyer's bidding transactions in order to win an auction on a given product or products at the lowest possible price with minimal manual intervention on the part of the buyer user.
The components of the invention can include, in an exemplary embodiment:

    
    
        AgentProxy Main Site Page;
        Cascaded Bid;
        Meta-Search Engine;
        Meta-Registration Engine;
        MyBid Portfolio;
        MyAccount;
        Bid Engine;
        FastScan Bid Engine;
        Proxied Peer-to-Peer Distributed Server Bid Engine; and
        Maximum Bid Monitoring Process.
    
    


Each component is described below with reference to the attached FIGS. 1-11. A buyer or buyer user is another term for a member regardless of whether a subscription or transaction fee is charged or not.
FIG. 1 depicts an exemplary embodiment of a flow diagram 100 illustrating an AgentProxy main web site page that can provide a central aggregation and launch point for the service. The page can provide links to the services or components within the site and can provide access to the authentication and authorization service that can identify a user as a registered member or can provide a link to a registration page where a user can become a registered member by, e.g., entering contact information, preferences and profile information into the AgentProxy site.
Specifically, flow diagram 100 depicts process thread 102, agent proxy 104, agent proxy 106 and AgentProxy homepage 110. Further depicted are process thread 158, agent proxy 160, and bid engine scheduled event 162 leading to bid engine 164. Further depicted are process thread 166, agent proxy 168, and current bid monitor 170 leading to current bid monitor 172.
From the AgentProxy homepage 110, decision step 112 determines whether my bid portfolio is selected. If yes, decision step 114 determines whether the user is logged in. If the user is logged in, flow proceeds to my bid portfolio 116. If the user is not logged in at step 114, authentication credentials are obtained in step 134. Then the member database is searched for the user ID in step 136. Using information obtained from stored member account 138, decision step 140 determines whether the user ID is recognized. If user ID is not recognized, flow proceeds to member registration step 146. If user ID is recognized, the profile is retrieved and the cookie session is set in step 142. Flow then proceeds to What's New 144.
If my bid portfolio in step 112 is not selected, decision step 118 determines if my account is selected. If yes, decision step 120 determines whether the user is logged in. If the user is logged in, flow proceeds to my account 122. If the user is not logged in in step 120, flow proceeds to get authentication credentials step 134 as described above.
If my account in step 118 is not selected, decision step 124 determines if auction search is selected. If yes, flow proceeds to meta-search 126. If no, decision step 128 determines if meta-registration is selected. If yes, flow proceeds to meta-register 130. If no, decision step 132 determines whether LogIn is selected. If yes, flow proceeds to get authentication credentials step 134 as described above. If no, decision step 148 determines if supporting page links is selected. If yes, flow proceeds to page links 150. If no, service promotions are presented in step 152. Next, banner ads are presented in step 154. The process ends at step 156.
FIG. 2 depicts an exemplary embodiment of a flow diagram 200 illustrating a cascaded bid service that can enable the buyer to select multiple auctions for the same or several different items and can enter them into a linked, bid cascade (“cascade”). The cascade can be a list of auctions that close at different times. The cascaded bid of FIG. 2 can service and can track the proxied bidding of each item in a cascade. The bid parameters and prioritization of bid placements can be a function of the sequentially temporal nature of the auction close events and the application of statistical algorithms can evaluate win probability based on, e.g., current price, time to auction close and relative differential price as a function of, e.g., the average market price for the same or similar item. As bids on cascaded auctions are sequentially executed, the cascade can continue to proxy bids until one auction in the cascade is won. Once an auction in the cascade is won, in an exemplary embodiment, all subsequent auctions can be cancelled.
Specifically, flow diagram 200 depicts a flow proceeding from cascade bid 202. In step 204, the cascaded bid list is prepared. Next, in step 206, it is verified that the cascaded closes are staggered in time. Then cascaded bid parameters 208 are checked to determine, in step 210, whether a cascade is to be deleted. If a cascade is deleted, the cascaded mode is removed, along with items from the portfolio, in step 212. Then, if a cascade is not deleted, and after cascaded mode and portfolio items are removed, it is verified that the parameters satisfy cascade boundary conditions in step 214. Then, the AP statistical win assessment algorithm is applied to the cascade item bid priority in step 216. Violations and log exceptions are computed next in step 218. The exception conditions and boundary violations are displayed in step 220 and are stored in step 224. Decision step 222 determines whether there are exception or violations. If yes, flow proceeds back to checking cascaded bid parameters 208 for deletion in step 210. If no, then the active bids are loaded or reloaded with cascade mode and bid priority in step 226 and are stored as portfolio 230. Finally, flow proceeds to bid portfolio 228.
FIG. 3 depicts an exemplary embodiment of a flow diagram 300 illustrating a meta-search engine component that can provide a convenient way for the buyer to search multiple auction sites and aggregate the results into a single, sortable result set. The buyer can enter in parameters such as the brand name or the model number of a particular item. The meta-search engine can then proxy this request to the various auction site specific search engines. The results can then be aggregated, sorted and displayed to the user as one integrated result list identifying which auction site is conducting auctions for each item. The buyer can then click on a particular item's identification code or description in order to link to the auction site to obtain more information on the item prior to entering it into the Bid Portfolio of the buyer user.
Specifically, flow diagram 300 depicts meta-search 126 where a keyword search is entered in step 302. Then auction sites to be searched are selected in step 304. After the search, a found set is generated in step 306. The hypertext-link enabled found set or auction items resulting from the search are displayed in step 308. The found set can be used to select an item from the list to link to the auction's site in step 312. Selecting an item in step 312 leads to the target auction site in step 314. Alternatively, the hypertext-link enabled list of found items 308 can be used to select auction items to add to a portfolio in step 310. Decision step 316 determines whether a single auction item is selected. If no, decision step 320 determines if a cascade bid is selected. If a cascade bid is selected, flow proceeds to cascade bid 202. If not, the multiple auction items are loaded into a bid portfolio 230 in step 322. If a single auction item is selected in step 316, then the bid portfolio 230 is loaded in step 318. Then flow proceeds to bid portfolio 324.
FIG. 4 depicts an exemplary embodiment of a flow diagram 400 illustrating a meta-registration engine component that can provide a convenient, centralized service that can create registration accounts for the buyer on each of the dynamic pricing or auction sites that are tracked by the product. The meta-registration engine component can collect a super-set of the information necessary to register on all of the sites and then can programmatically navigate through the registration process of each site as the agent of the buyer and can enter the necessary information into each one of the auction sites. Any exception conditions can be logged and displayed to the buyer. The buyer can then resolve any of these exception conditions manually or programmatically as needed.
Specifically, flow diagram 400 depicts the meta-register 130. Using the inputs of member selections for auction sites to register 402 and the user's meta-registration information 404, site user agreements are displayed in step 406. Then, the user's acceptance of the site user agreements is recorded in step 408. The user is next registered on the auction site in step 410. Any exception conditions are handled in step 412. If there are more auction sites to register in step 414, the flow repeats starting from step 408. If there are no more auction sites to register, the auction site registration information is stored in step 416. The registration complete status is displayed in step 418. Then flow proceeds to agent proxy 104.
FIG. 5 depicts an exemplary embodiment of a flow diagram 500 illustrating a MyBid portfolio that can provide a centralized area where the buyer's active bids can be stored and displayed. The buyer can enter bid automation parameters into each bid's record by, e.g., clicking on the auctioned item's informational record, or updating the information directly on the portfolio summary page. The buyer can also edit and modify parameters on active bids by increasing or decreasing maximum bids, time to close activation and other bid or item related parameters. The buyer can also delete items in the portfolio regardless of whether bids have already been placed or not.
Specifically, flow diagram 500, depicts getting a session cookie for one or more my bid portfolios 116, 324, 228 in step 502. Then the member's bid portfolio is displayed in step 504. Next, an item is selected on which to enter or edit a programmed bid, in step 506. If individual mode is selected in step 508, or if neither individual mode nor a cascaded bid mode item in step 510 is selected, bid parameters are retrieved in step 512. If individual mode is not selected but there is a cascaded bid mode item selected, then bid parameters for all items in the cascade are retrieved in step 514. Step 514 is followed by step 516 where the integrity of the cascaded item set is verified. Then steps 512 and 516 both proceed to step 518, where the maximum bid is entered or edited. Next, the bid countdown is entered or edited in step 520. Bid parameters are verified in step 522. If the bid items fail verification in step 524, the exception list is displayed in step 526, and the exception conditions are stored in step 528. If the items are verified, the active bids are loaded or reloaded in step 530. The portfolio is stored in step 230, and is redisplayed in step 504, where the process repeats.
FIG. 6 depicts an exemplary embodiment of a flow diagram 600 illustrating a MyAccount component that can provide a convenient area for the buyer where the buyer can manage information pertaining to the account of the buyer. Subscription levels can be modified or selected in the MyAccount component. The buyer can also update preferences and profile information such as contact email address. Links to bid history on earlier auctions as well as current auctions can also be accessed through the MyAccount area.
Specifically, flow diagram 600 shows that information from stored member account 138 is displayed in step 602. Then, the personal profile is created, read, updated or deleted in step 604. The resulting modifications are again stored in member account 138. A subscription is then modified or entered in step 606, and the subscription is also stored in member account 138. The current transaction history, along with transaction history stored in 610 are then displayed in step 608. Next, if home is selected in step 612, flow proceeds to agent proxy 106. Otherwise, if support is selected in step 614, flow proceeds to customer support 616. If support is not selected, the account information is redisplayed at step 602 and the process repeats from there.
FIG. 7 depicts an exemplary embodiment of a flow diagram 700 illustrating a bid engine component that can include bid automation business process logic that can manage the agent and proxy functionality. The bid engine can scan the active bids for all buyers and can determine which bids are ready to execute based on their time to close activation parameter. The bid engine can then scan the targeted auction site to determine the current high bid and bidder. If the bidder is not the buyer, then the bid engine can prepare a bid based on computing the minimum incremental amount plus the current bid. If the computed bid is below the maximum bid parameter set by the buyer, then the engine can turn over the bid to the fastscan bid engine for processing. The bid engine can retrieve the Site Characterization information so that the fastscan bid engine can know how to navigate the site in order to execute the bid on behalf of the buyer. The bid engine can also retrieve all relevant buyer information for this account so that the proxied bid can be entered under the account of the buyer.
Specifically, flow diagram 700 shows that for any bid engine 164, 702, 732, the database is scanned for an active bid in step 704 using stored portfolio 230. Then the list of bids to execute is created or updated in step 706. If the bid is not within the time to auction close (TAC) window in step 708, the list of bids to execute is updated in step 706. Otherwise, the auction site characterization is obtained in step 710. Next the item's current price is obtained in step 712. The bid is calculated then in step 714. If the proposed bid is less than the maximum bid in step 716, then a bid is entered in step 718 using the site characterization. The bid confirmation is logged in step 720. The bid and the auction site are added to the fast scan list in step 722 and flow proceeds to fast scan 724. If the proposed bid exceeds the maximum bid in step 716, the item is logged as a lost bid in step 726. The item is then set to inactive in the bid portfolio in step 728 and flow proceeds to agent proxy 160. Alternatively, flow from bid engine 730 can proceed to step 726.
FIG. 8 depicts an exemplary embodiment of a flow diagram 800 illustrating a fast scan bid engine component that can be designed to take advantage of a “thread pool,” software component based run-time architecture. Once a bid object is turned over to the fast scan bid engine, the object can persist in fast access random access memory (DRAM) until the bid closes or until a later time if the close time is delayed as a counter-measure response. Site Characterization information can include, e.g., the data set that can define the unique navigational model, keywords, and name/value pairs that can describe to the Fast Scan and the Bid Agent how to inter-operate with the site in order to access the bid information and to emulate the buyer's interaction with the site as an agent for the buyer.
Specifically, flow diagram 800 shows flows proceeding to a fast scan 724 or 802 where first a fast scan item is obtained in step 804. Next in step 806, fast scan site characterization is obtained and auction site characterization is stored in step 808. Next, site performance parameters are calibrated in step 810. Then in step 812, the item's current price and bidder is obtained. If the current price is from AP users proxied bid, at decision step 814, and if the bid is not closed at step 820, flow proceeds to fast scan 724. If the bid is closed at step 820, then the bid history and win status are logged at step 828 and stored in a transaction history 610. If the current price is not from AP users proxied bid in step 814, and if the bid is closed at step 816, then the bid history and loss status are logged at step 830 and stored in a transaction history 610. After storing the transaction history, decision step 832 determines if the bid was in a cascade. If yes, the remaining cascade items are deleted in step 834. If not, then flow proceeds to bid engine 702.
If the bid is not closed at step 816, a bid is then calculated in step 818. If the proposed bid is less than the maximum bid, in step 822, the bid agent is accessed in step 824 and flow proceeds to bid agent 826. If the proposed bid is higher than the maximum bid, flow proceeds to bid engine 730.
FIG. 9 depicts an exemplary embodiment of a flow diagram 900 illustrating a bid agent component that can perform the actual bidding on behalf of the buyer/bidder. The bid agent software can use information contained in the site characterization to emulate the interaction of the buyer/bidder. The bid agent can use the buyer's personal account information for the targeted auction site to authenticate, place and confirm bids that are automatically entered by the bid agent for the targeted auction. The bid agent can also use information contained in the auction site characterization data set to determine how to programmatically navigate the pages of the site, identify which information is expected to confirm receipt of the correct page and what information needs to be input for each page. The internal state machine can progress through each state as the bid is entered and any exception conditions can be logged and handled at each of these states. The design of the bid agent can also support distribution of a bid object to another server (see proxied peer-to-peer distributed server bid engine described further below with reference to FIG. 10) as a means of responding to an IP Block countermeasure and can also facilitate traffic management by load balancing the activated bid objects across a collection of federated or clustered servers. Bid agent can provide a counter-measure detection capability that can interpret specific kinds of response codes/pages and can then take actions to complete the bids through one of several alternatives such as, e.g., Time to Close Delay rescheduling and proxied server bid engine (see FIG. 10 below) responses.
Specifically, flow diagram 900 shows a bid agent state machine initialized at step 902 from a flow proceeding from bid agent 826. The initialization can include information from stored auction site characterization 808. If the state sequence is completed at step 904, the bid is then confirmed in step 906. If the bid is then accepted in step 908, flow proceeds to fast scan 802. If the state sequence is at state s1, a bid page/form is requested based on site characterization, at step 910. The state sequence then proceeds to the next state. If the state sequence is at state s2, the buyer/bidder authentication is entered at step 912. The state sequence then proceeds to the next state. In state s3, the bidder's bid is entered at step 914. The state sequence is then complete.
If the bid is not accepted at step 908, counter measures are detected in step 918. If a delay close counter measures is detected at step 920, the item close is adjusted to the new time in step 922. If delay counter measures are not detected, but block IP counter measures are detected in step 924, the bid is distributed to a proxied peer server in step 926. After these or other counter measures are detected, the counter measures are logged in step 928. Next, the item is moved to a list of bids to execute in step 930. Flow then proceeds to proxied bid engine 932.
FIG. 10 depicts an exemplary embodiment of a flow diagram 1000 illustrating a proxied peer-to-peer distributed server bid engine component that can support the distributed processing of a collection of activated bid objects across, e.g., multiple, federated, peer-to-peer servers. The distribution of activated bid objects across these servers can be managed by a distributed and periodically updated list of least recently used servers (LRUS). If a bid object is passed to the local server's proxied server bid engine, then the proxied peer-to-peer distributed server bid engine component (“proxied server”) process can look at a local copy of the LRUS table to select the most available, active server. A request can then be sent to this server to accept and process the bid object. The server can proactively acknowledge the receipt of this object or can respond to a request for confirmation after some time has expired. If a destination server denies receipt of the object, then the proxied server process can go to the next server on the list and can repeat the process until an acceptable server has been found.
From proxied bid engine 932, an available server is selected from the least used algorithm in step 1002. The peer-to-peer distributed server list is stored at step 1004. The list is also updated with an upload of available server statistics in step 1006. Next, the bid object is sent to the server at step 1008. In step 1010, an acknowledgement is requested from the peer-to-peer server. If the bid object is received and activated at step 1012, flow proceeds to bid engine 732. If not, the server is pushed to the bottom of the queue in step 1014. The process repeats starting at step 1002.
FIG. 11 depicts an exemplary embodiment of a flow diagram 1100 illustrating a monitoring process that tracks the buyer/bidder's maximum value as compared to the current high bid for every activated bid object in the portfolio. In an exemplary embodiment, if the current bid is greater than the maximum bid value in the bid object, a notification can be sent via, e.g., email or through a wireless distribution system to alert the buyer/bidder of the fact that the maximum bid value of the buyer/bidder has been exceeded.
From a current bid monitor 172, the active bids in the meta-portfolio are iterated through starting at step 1102. Next, the current item price is compared to the bidder's maximum price in step 1104. If the current price is greater than the bidder's maximum at step 1006, an email is sent to the bidder alerting him that his maximum has been exceeded, in step 1110. If the current price is lower than the bidder's maximum, then if all active bids have been scanned in step 1108, flow proceeds to agent proxy 168. Other wise, another iteration begins at step 1102.
A system comprising a processor and memory can be used to embody a machine having modules each operative to perform functions analogous to the steps of the disclosed methods.
Further, it is important to note that a computer program product can be provided executable on a computing system further including a removable storage medium that can embody program logic that can include computer readable code means for enabling the computer to provide functions operatively analogous to those disclosed in the disclosed and initially claimed methods as would be apparent to those skilled in the relevant art.
While various exemplary embodiments of the present invention have been described above, it should be understood that they have been presented by way of example only, and not limitation. Thus, the breadth and scope of the present invention should not be limited by any of the above-described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.

## Claims

1. A method of automating an interaction between a bidder and an electronic, dynamic pricing online auction hosting service comprising:
a. receiving a registration of a bidder at an online, computer-implemented, Internet-based, bidder-centric bidding automation services application site, wherein said bidder-centric bidding automation services application site is separate from any online auction hosting services site, by creating logon credentials that are used to at least one of authenticate and/or authorize the bidder's use of services of the bidder-centric bidding automation services application site; and receiving at least one auction hosting services site account associated with the bidder;
b. receiving financial transaction instrument information of the bidder to fund said bidder-centric bidding automation services application site;
c. receiving at least one auction and one of said at least one online auction hosting services sites associated with said at least one auction, and storing said at least one auction in a bid portfolio of the bidder for acquiring data using at least one scan agent and/or at least one bid proxy;
d. providing monitoring, by the at least one scan agent, of temporal progression of the at least one auction, and notifying the bidder and/or the at least one bid proxy of any changes affecting the bidder's programmed bid parameters of the at least one auction, wherein said monitoring by the at least one scan agent is performed at least within a time of auction closing window (TACW), wherein TACW is a function of at least one of: a current bid, a relative differential bid value, a minimum valid bid increment, auction hosting services site performance parameters, auction site telemetry information computed based on recent response times and network latencies as determined by the scan agent, and/or delay close counter measures;
e. enabling activating of the at least one bid proxy to programmatically bid on said at least one auction of said one of said at least one online auction hosting services site, by emulating the bidder's input, including navigation and command input, to said at least one online auction hosting services site, the at least one bid proxy placing at least one bid, driven by said programmed bid parameters, until said at least one auction is either won or lost by a time of auction close (TAC) of said at least one auction, wherein said bidding by the at least one bid proxy begins at a start of said TACW and ends at TAC, and wherein said at least one scan agent determines whether or not a competitive bid has outbid a most recent bid of the bidder; and
f. activating the at least one bid proxy to programmatically place at least one counter bid by the emulating of the input of the bidder for said at least one online auction hosting services site, if said competitive bid is determined to have been placed and detected before the time of auction closing of said at least one auction, wherein said at least one counter bid comprises computing and executing a valid higher bid for a forward auction or a lower bid for a reverse auction, that is within said programmed bid parameters, if said competitive bid has been made and accepted by the auction site that is higher for the forward auction or lower for the reverse auction than the most recent bid detected by the at least one scan agent.

2. The method according to claim 1, wherein (d) comprises:
notifying the bidder when a current bid of a targeted auction exceeds programmed bid parameters of the bid proxy, comprising at least one of:
a. examining with an internal scan agent, bid information stored in the portfolio of the bidder; and
b. sending information to the bidder using at least one of wired and/or wireless messaging technologies including at least one of an email, a page, a text page, an instant message, a short message system (SMS) message, a multimedia message system (MMS) message, and/or a communication, if a programmed bid with invalid bid parameters and/or other important information is detected.

3. The method according to claim 1, wherein (d) comprises:
notifying the bidder when an auction has been won using at least one of a bid proxy of the bidder and/or a programmed bid, wherein information is sent to the bidder using at least one of wired and/or wireless messaging technologies including at least one of an email, a page, a text page, an instant message, a short message system (SMS) message, a multimedia message system (MMS) message, a communication, and a hypertext link to bid information stored in the portfolio of the bidder.

4. The method according to claim 1, wherein (b) comprises:
managing at least one of payment instruments, payment devices, contact, and/or financial status, of the bidder through an online, personalizable bidder profile account for auction win settlement comprising:
a. presenting registration content to the bidder for the collection of contact information including at least one of an email, a physical mail address, a telephone number, a pager, and/or an alternative contact information, and/or financial instrument information;
b. creating an account information record in a database of the information and linking the account information record to any activated auction portfolios of the bidder; and
c. providing access for the bidder to access the account information record and/or modify the account information record as needed subsequent to bidder authentication.

5. The method of claim 1, wherein (e) comprises:
executing one or more programmed bid proxies that are controlled by bid parameters comprising:
accelerating the performance of the bid proxy by using network telemetry and/or statistical algorithms to improve the win probability of the bid, comprising:
a. testing, using a telemetry agent, the response time of an auction site to periodically ascertain temporal latency for various types of queries and/or commands;
b. optimizing balance between when to place an initial bid and when to win the auction at a best market bid, using information on the response time obtained during response time testing, wherein response time information is stored in an updateable profile for each auction site and is used by the bid proxy, and wherein the telemetry information collected comprises at least one of a content type, and/or a transaction type including at least one of a query for auction status and/or a bid command, and/or a time span from a query to a response.

6. The method according to claim 1, further comprising:
wherein a self-contained auction site comprises at least one of one or more auction services, one or more search agents, one or more scan agents, and/or one or more bid proxies within the same at least one of owner-operated infrastructure, marketing brand, and/or network domain.

7. The method according to claim 1, wherein (a) comprises:
registering a new bidder on multiple auction sites through the use of a registration proxy that mimics the registration steps for each auction site using the master profile data of the bidder, comprising:
a. receiving a bidder registration including a super-set of the information needed by multiple auction sites for proper registration of the bidder's information for a valid account on any given auction site;
b. mimicking the actions of the bidder by a registration agent by navigating through the auction site's registration content and entering the appropriate contact and/or financial instrument information for the bidder; and
c. prompting the bidder for manual entry for any validation steps using the bidder's email account and/or authentication credentials that cannot be performed though the auction site's content.

8. The method according to claim 1, wherein the logon credentials are provided by an independent 3rd party through a logon agent using at least one of proxied identification and/or digital certificates.

9. The method of claim 1, further comprising:
g. receiving a search query from the bidder for a desired product from said at least one auction from a plurality of said at least one online auction hosting services sites including at least one of keywords, model identification, brand identification, synonyms, and/or unique identification, using at least one of a search agent, a persistent search agent, and/or a meta-search agent, and providing returned auctions, including retrieving current status of the product auctions and presenting the current status to the bidder.

10. The method according to claim 9, further comprising:
h. receiving one or more persistent search agents that are programmed, persistent and operative to search one or more auction sites for product auctions of a desired product and providing returned auctions that a bid proxy can execute using at least one of a directed programmed bid, and/or an algorithmically calculated bid, wherein the one or more persistent search agents periodically search a list of a plurality of auction sites for product auctions that correlate with preference information stored in the portfolio of the bidder, comprising:
creating entries by the bidder for each kind of product of which the bidder desires to be notified if an auction for a product containing this description becomes available for bidding on any and all auction sites;
periodically searching, using the one or more persistent search agents, search services of the plurality of auction sites to see if a matching product can be found in listed auctions; and
sending, to the bidder, a link to a found auction communicated using at least one of wired and/or wireless messaging technology, if any matches are found; and
i. receiving at least one of definitions of programmed bidding parameters of the directed programmed bid to the bid proxy, and/or authorization of the bid proxy to algorithmically compute a lowest market bid based on reviewing prevailing market bids for similar products as determined by information stored in a data warehouse.

11. The method according to claim 9, further comprising:
h. storing product preferences of the bidder for products, including preference information that can be used by at least one of a persistent search agent, and/or a bid proxy operating under at least one of directed programmed bidding, and/or algorithmically calculated bidding parameters.

12. A computer readable medium embodying program logic which when executed performs the method of claim 1.

13. A system for automating an interaction between a bidder and an electronic, variable, dynamic pricing online auction hosting service comprising:
means for receiving a registration of a bidder at an online, computer-implemented, Internet-based, web-enabled, bidder-centric bidding automation services application site, said bidder-centric bidding automation services application site being separate from any online auction hosting services site, by creating logon credentials that are used to authenticate and authorize the bidder's use of services of the bidder-centric bidding automation services application site, and for receiving at least one auction hosting services site account associated with the bidder;
means for receiving financial transaction instrument information of the bidder to fund said bidder-centric bidding automation services application site;
means for receiving at least one auction and one of said at least one online auction hosting services sites associated with said at least one auction and for storing said at least one auction in a bid portfolio of the bidder for acquiring data using at least one scan agent and/or at least one bid proxy;
means for providing monitoring, by the at least one scan agent, of temporal progression of the at least one auction, and notifying the bidder and/or the at least one bid proxy of any changes affecting the bidder's programmed bid parameters of the at least one auction, wherein said monitoring by the at least one scan agent is performed at least within a time of auction closing window (TACW), wherein TACW is a function of at least one of: a current bid, a relative differential bid, a minimum valid bid increment, auction hosting services site performance parameters, auction site telemetry information computed based on recent response times and network latencies as determined by the scan agent, and/or delay close counter measures;
means for enabling activating of the at least one bid proxy to programmatically bid on said at least one auction of said auction hosting services site by emulating the bidder's input, including navigation and command input, to said at least one online auction hosting services site, the at least one bid proxy placing at least one bid driven by said programmed bidding parameters until said at least one auction is either won or lost by time of auction close (TAC) of said at least one auction, wherein said bidding by the at least one bid proxy begins at a start of said TACW and ends at TAC, and wherein said at least one scan agent determines whether or not a competitive bid has outbid a most recent bid of the bidder; and
means for activating the at least one bid proxy to programmatically place at least one counter bid by the emulating of the input of the bidder for said at least one online auction hosting services site, if said competitive bid is determined to have been placed and detected before the time of auction closing of said at least one auction, wherein said at least one counter bid comprises means for computing and executing a valid higher bid for a forward auction or lower bid for a reverse auction, that is within said programmed bidding parameters, if said competitive has been made and accepted by the auction site that is higher for the forward auction or lower for the reverse auction than the most recent bid detected by the at least one scan agent.