IP Library Granted Patent US 9,996,858
Granted Patent B1
US 9,996,858 · App. 13/669,157 · Granted Jun 12, 2018

Adaptive bidding for networked advertising

Inventors: Crispin Edward Harold Flowerday (San Francisco, CA); Faraaz Aejaz Sareshwala (Pleasanton, CA); Damian John Reeves (Menlo Park, CA)
Assignee: Quantcast Corporation
G06Q30/0275G06Q30/02G06Q30/0255
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,996,858
App. No.
13/669,157
Granted
Jun 12, 2018
Kind
B1
Abstract

An adaptive bidder for networked advertising. A bid request is received from an exchange over a network. Each bid request represents the opportunity to bid on an advertising opportunity. A processing time limit is determined based at least in part on a network latency measurement, an exchange reported timeout and a bid response buffer. The network latency measurement may be required to meet a freshness standard. The bid response buffer represents the time allotted for the adaptive bidding system to generate a response based on one or more partial results. The exchange reported timeout value can be included in the bid request, and can vary from bid request to bid request. The execution of one or more tasks is initiated by the adaptive bidding system, and each task can make a partial result available. In some cases, a partial result is a cumulative result. A response is determined from one or more partial results which are available before the processing time limit expires. The response is provided to the exchange.

Claims (76)

1. A method for adaptive bidding on an advertising exchange under variable conditions, the method comprising:

receiving a bid request from the exchange over a network, wherein the bid request comprises a request to bid on an advertising opportunity;

receiving an exchange-reported timeout value from the exchange;

measuring network latency;

calculating, by a computer, a processing time limit for submitting a response from an adaptive bidding system to the bid request, based at least in part on the measured network latency, the exchange-reported timeout value, and a bid response buffer comprising time allotted to generate a response based on one or more partial results;

assembling, within the processing time limit, a list of tasks applicable to analyzing for a campaign the received bid request, each task having an estimated time required for completion;

selecting, by the computer, tasks from the list of tasks for the campaign responsive to the processing time limit, wherein the selected tasks have an estimated time required for completion within the processing time limit for submitting a response to the bid request;

initiating, by the computer, execution of the selected tasks;

receiving partial results from the execution of some of the selected tasks within the processing time limit, the partial results not including results from at least one of the selected tasks, wherein actual time required for completion of the at least one of the selected tasks exceeded the estimated time required for completion;

generating a response from the partial results during the bid response buffer;

providing the response to the exchange over the network before the processing time limit expires; and

terminating, by the computer, any selected tasks still operating when the processing time limit expires.

2. The method of claim 1 wherein:

the measured network latency comprises measurements taken with respect to at least two different network addresses on the same subnet.

3. The method of claim 1 further wherein:

calculating a processing time limit comprises:

accessing the measured network latency; and

accessing an updated network latency measurement if the measured network latency does not meet a freshness standard.

4. The method of claim 3 wherein:

the freshness standard requires that at least some portion of the measured network latency has been updated within the last minute.

5. The method of claim 1 wherein:

at least one task of the selected one or more tasks updates a partial result.

6. The method of claim 1 wherein:

a partial result of at least one selected task comprises a bid price.

7. The method of claim 1 wherein:

a partial result of at least one selected task comprises an advertising creative selection.

8. A system comprising:

a processor;

a computer readable storage medium storing processor-executable computer program instructions for adaptive bidding on an advertising exchange under variable conditions, the instructions comprising instructions for:

receiving a bid request from the exchange over a network, wherein the bid request comprises a request to bid on an advertising opportunity;

receiving, by the processor, an exchange-reported timeout value from the exchange;

measuring, by the processor, network latency;

calculating, by the processor, a processing time limit for submitting a response from an adaptive bidding system to the bid request, based at least in part on the measured network latency, the exchange-reported timeout value, and a bid response buffer comprising time allotted to generate a response based on one or more partial results;

assembling, by the processor, within the processing time limit, a list of tasks applicable to analyzing for a campaign the received bid request, each task having an estimated time required for completion;

selecting, by the processor, tasks from the list of tasks for the campaign responsive to the processing time limit, wherein the selected tasks have an estimated time required for completion within the processing time limit for submitting a response to the bid request;

initiating, by the processor, execution of the selected tasks;

receiving, by the processor, partial results from the execution of some of the selected tasks within the processing time limit, the partial results not including results from at least one of the selected tasks, wherein actual time required for completion of the at least one of the selected tasks exceeded the estimated time required for completion;

generating, by the processor, a response from the partial results during the bid response buffer;

providing, by the processor, the response to the exchange over the network before the processing time limit expires; and

terminating, by the processor, any selected tasks still operating when the processing time limit expires.

9. The system of claim 8 wherein:

the measured network latency comprises measurements taken with respect to at least two different network addresses on the same subnet.

10. The system of claim 8 wherein:

calculating a processing time limit comprises:

accessing the measured network latency; and

accessing an updated network latency measurement if the measured network latency does not meet a freshness standard.

11. The system of claim 8 wherein:

at least one task of the selected one or more tasks updates a partial result.

12. The system of claim 8 wherein:

a partial result of at least one selected task comprises a bid price.

13. The system of claim 8 wherein:

a partial result of at least one selected task comprises an advertising creative selection.

14. A non-transitory computer readable storage medium executing computer program instructions for adaptive bidding on an advertising exchange under variable conditions, the computer program instructions comprising instructions for:

receiving a bid request from the exchange over a network, wherein the bid request comprises a request to bid on an advertising opportunity;

receiving an exchange-reported timeout value from the exchange;

measuring network latency;

calculating, by a computer, a processing time limit for submitting a response from an adaptive bidding system to the bid request, based at least in part on the measured network latency, the exchange reported timeout value, and a bid response buffer comprising time allotted to generate a response based on one or more partial results;

assembling, within the processing time limit, a list of tasks applicable to analyzing for a campaign the received bid request, each task having an estimated time required for completion;

selecting, by the computer, tasks from the list of tasks for the campaign responsive to the processing time limit, wherein the selected tasks have an estimated time required for completion within the processing time limit for submitting a response to the bid request;

initiating, by the computer, execution of the selected tasks;

receiving partial results from the execution of some of the selected tasks within the processing time limit, the partial results not including results from at least one of the selected tasks, wherein actual time required for completion of the at least one of the selected tasks exceeded the estimated time required for completion;

generating a response from one or more partial results during the bid response buffer;

providing the response to the exchange over the network before the processing time limit expires; and

terminating, by the computer, any selected tasks still operating when the processing time limit expires.

15. The medium of claim 14 wherein:

the measured network latency comprises measurements taken with respect to at least two different network addresses on the same subnet.

16. The medium of claim 14 wherein:

calculating a processing time limit comprises:

accessing the measured network latency; and

accessing an updated network latency measurement if the measured network latency does not meet a freshness standard.

17. The medium of claim 14 wherein:

at least one task of the selected one or more tasks updates a partial result.

18. The medium of claim 14 wherein:

a partial result of at least one selected task comprises a bid price.

19. The medium of claim 14 wherein:

a partial result of at least one selected task comprises an advertising creative selection.

Assignments (12)
RELEASE OF SECURITY INTEREST Recorded Jun 21, 2024
From: BANK OF AMERICA, N.A.
To: QUANTCAST CORPORATION
Reel/Frame 067807/0017 →
SECURITY INTEREST Recorded Jun 18, 2024
From: QUANTCAST CORPORATION
To: CRYSTAL FINANCIAL LLC D/B/A SLR CREDIT SOLUTIONS
Reel/Frame 067777/0613 →
SECURITY INTEREST Recorded Dec 5, 2022
From: QUANTCAST CORPORATION
To: VENTURE LENDING & LEASING IX, INC.; WTI FUND X, INC.
Reel/Frame 062066/0265 →
SECURITY INTEREST Recorded Sep 30, 2021
From: QUANTCAST CORPORATION
To: BANK OF AMERICA, N.A., AS AGENT
Reel/Frame 057677/0297 →
RELEASE OF SECURITY INTEREST Recorded Sep 30, 2021
From: WELLS FARGO BANK, NATIONAL ASSOCIATION
To: QUANTCST CORPORATION
Reel/Frame 057678/0832 →
RELEASE OF SECURITY INTEREST Recorded May 6, 2021
From: VENTURE LENDING & LEASING VI, INC.; VENTURE LENDING & LEASING VII, INC.
To: QUANTCAST CORPORATION
Reel/Frame 056159/0702 →
RELEASE OF SECURITY INTEREST Recorded Mar 15, 2021
From: TRIPLEPOINT VENTURE GROWTH BDC CORP.
To: QUANTCAST CORPORATION
Reel/Frame 055599/0282 →
SECURITY INTEREST Recorded Aug 7, 2018
From: QUANTCAST CORPORATION
To: TRIPLEPOINT VENTURE GROWTH BDC CORP.
Reel/Frame 046733/0305 →
PATENT SECURITY AGREEMENT Recorded Jun 26, 2015
From: QUANTCAST CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 036020/0721 →
SECURITY AGREEMENT Recorded Oct 18, 2013
From: QUANTCAST CORPORATION
To: VENTURE LENDING & LEASING VI, INC.; VENTURE LENDING & LEASING VII, INC.
Reel/Frame 031438/0474 →
SECURITY AGREEMENT Recorded Jul 10, 2013
From: QUANTCAST CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 030772/0488 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 5, 2012
From: FLOWERDAY, CRISPIN EDWARD HAROLD; SARESHWALA, FARAAZ AEJAZ; REEVES, DAMIAN JOHN
To: QUANTCAST CORPORATION
Reel/Frame 029242/0735 →