optimization problems in internet advertising

94
Optimization Problems in Internet Advertising Cliff Stein Columbia University Google Research

Upload: vinaya

Post on 25-Feb-2016

45 views

Category:

Documents


0 download

DESCRIPTION

Optimization Problems in Internet Advertising. Cliff Stein Columbia University Google Research. Internet Advertising. Multi-billion dollar business Google purchased DoubleClick for over 3 billion dollars, 2 years ago A new paradigm for advertising - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Optimization Problems in Internet Advertising

Optimization Problems in Internet Advertising

Cliff SteinColumbia University

Google Research

Page 2: Optimization Problems in Internet Advertising

Internet Advertising

Multi-billion dollar business Google purchased DoubleClick for over 3

billion dollars, 2 years ago A new paradigm for advertising Many interesting mathematical, economic,

and computational problems

Page 3: Optimization Problems in Internet Advertising

Some Statistics

Vendor Ad viewersGoogle 1,118DoubleClick 1,079Yahoo 362MSN 309AOL 156Adbrite 73Total 3,087

(millions, one month in 2008)**From Wikipedia

Page 4: Optimization Problems in Internet Advertising

Internet Advertising

2 main types Adwords (right column, auction) Display ads (scattered, matching)

Page 5: Optimization Problems in Internet Advertising

This talk

Overview of some issues in internet advertising

Talk about two particular algorithmic results, one on adwords optimization, one on display ads

No attempt to comprehensively survey the area

Page 6: Optimization Problems in Internet Advertising

Adwords

Advertisers bid to have the right to appear when a user enters a search query

Advertisers are chosen according to some kind of auction mechanism

Ads are displayed for free. Advertiser pays when a user clicks.

Page 7: Optimization Problems in Internet Advertising
Page 8: Optimization Problems in Internet Advertising
Page 9: Optimization Problems in Internet Advertising
Page 10: Optimization Problems in Internet Advertising
Page 11: Optimization Problems in Internet Advertising
Page 12: Optimization Problems in Internet Advertising
Page 13: Optimization Problems in Internet Advertising
Page 14: Optimization Problems in Internet Advertising
Page 15: Optimization Problems in Internet Advertising

New Kind of Auctions Traditional auctions are for one item, or a small

number of items, and are done on a human time scale

Many types of auctions (ascending, sealed-bid, second price …) are well understood mathematically

Adwords auctions are a new type of auction, where a bidder bids on multiple items for many items on a “computer” time scale

Mathematically, it is a whole new ballgame

Page 16: Optimization Problems in Internet Advertising

Technical Challenges Mechanism Design - designing rules of

a game or system to achieve a specific outcome, even though each agent may be self-interested

Technology to implement the auctions Optimization for

Advertiser (maximize clicks, minimize money spent) Internet company (maximize profit, maximize user

happiness, minimize bad publicity/lawsuits)

Page 17: Optimization Problems in Internet Advertising

Basic Mechanism Design

Let’s set up an auction for

Suppose it is worth $20 to me, but $10 to Alex Rodriguez (and these values are private)

We each bid some amount: Who gets the hat? How much do they pay?

Page 18: Optimization Problems in Internet Advertising

Basic Mechanism Design

Auction Mechanism

Private value

2

Private value

1

Bidders

Bid 2

Bid 1

Gives item to someoneCollects payments

Page 19: Optimization Problems in Internet Advertising

Some goals in an auction

Truth revealing (bidders want to bid their values)

Revenue maximizing (auctioneer maximizes profit)

Social welfare (good for bidders)

These goals may be in conflict

Page 20: Optimization Problems in Internet Advertising

First price auctions

Everyone bids, highest bidder gets item for the price he bid, others pay nothing and get nothing.

Bidders Utility = value of item received – payment.

Page 21: Optimization Problems in Internet Advertising

First price auction

My utility = $20 - $20 = 0 Arod utility = $0 - $0 = 0.

Arod $10

Me$20

First PriceAuction Mechanism

Cliff gets it.Cliff pays $20Arod pays $0

Bid 20

Bid 10

Page 22: Optimization Problems in Internet Advertising

Can I do better?

Page 23: Optimization Problems in Internet Advertising

First price auction (2)

My utility = $20 - $15 = 5 Arod utility = $0 - $0 = 0.

Arod $10

Me$20

First PriceAuction Mechanism

Cliff gets it.Cliff pays $15Arod pays $0

Bid 15

Bid 10

Page 24: Optimization Problems in Internet Advertising

First Price AuctionsSuppose I bid $15, Arod bids $10.

I get item for $15, Arod gets nothing for nothing. My utility = 20- 15 = 5 Arod utility = 0-0 = 0

I am happier I am not telling the “truth” anymore My bid needs to be a function of everyone else’s bid (in

addition to my value) Auctioneer makes less money

Page 25: Optimization Problems in Internet Advertising

Second Price Auctions

Everyone bids. Item goes to the highest bidder, who pays the bid of the second-highest bidder.

Bidders Utility = value of item received – payment

Page 26: Optimization Problems in Internet Advertising

Second price auction

My utility = $20 - $10 = 10 Arod utility = $0 - $0 = 0.

Arod $10

Me$20

Second PriceAuction Mechanism

Cliff gets it.Cliff pays $10Arod pays $0

Bid 20

Bid 10

Page 27: Optimization Problems in Internet Advertising

Second Price Auctions

Theorem: In a second-price auction, no bidder has any incentive to lie.

Proof: I don’t lie. If I lie any amount >= 10, nothing changes. If I lie < 10, I lose the auction and my utility

is 0. Therefore I don’t want to lie.

Page 28: Optimization Problems in Internet Advertising

Second Price Auctions

Theorem: In a second-price auction, noone has any incentive to lie.

Proof: Arod doesn’t lie. If he lies any amount < 20, nothing

changes for him. If he lies at x > 20, he wins for $20, but

his utility is 20 –x which is negative, so he is worse off.

Page 29: Optimization Problems in Internet Advertising

Notes on Second Price Auctions

Everyone tells the truth May yield less revenue than first-price

auctions Note: we assume that I get no benefit from

seeing you pay more money.

Page 30: Optimization Problems in Internet Advertising

Back to internet auctions We are not auctioning off baseball hats, or

paintings, or cars that were used in the commission of a crime….

We are auctioning off slots on a web page There are:

Multiple slots Advertisers bidding on many keywords Many auctions going on during the course of

a day

Page 31: Optimization Problems in Internet Advertising

Multiple Slots: Generalized Second Price Auctions

Users are bidding for slots, where slot i is more valuable than slot i+1.

Higher slots tend to get more clicks, and therefore cost more (cost per click)

Sort bids, i’th bid gets slot i and pays bid of slot i+1.

Page 32: Optimization Problems in Internet Advertising

Example of GSP Auction

Bids: $1, $0.50, $2.25, $1.20, $0.10, $2.50, $1.25

5 slots

Page 33: Optimization Problems in Internet Advertising

Example 2 of GSP Auction Bids: $1,

$0.50, $2.25, $1.20, $0.10, $2.50, $1.25

5 slots

Slot Bid Payment

1 $2.50 $2.25

2 $2.25 $1.25

3 $1.25 $1.20

4 $1.20 $1.00

5 $1.00 $0.50

Page 34: Optimization Problems in Internet Advertising

Some Complications from GSP We are bidding one amount, but don’t

know which slot we will win. Different advertisers have different

preferences/beliefs about slots You actually might have some incentives

to lie.

In “reality” (google), your bid is actually modified by the “quality” of your ad.

Page 35: Optimization Problems in Internet Advertising

Advertisers bidding on many keywords

An advertiser sets up a campaign in which they advertise on many keywords

Each time a user issues a query that matches one of their keywords, the ad for that keyword enters the auction.

Depending on their bid (and other factors), they may get a slot in the auction

If someone clicks on their ad, they are charged

Page 36: Optimization Problems in Internet Advertising

Question?

How does the advertiser control the total amount that they are charged?

They specify a budget on how much they want to spend in a day

Page 37: Optimization Problems in Internet Advertising

Budgets

Advertiser specifies a daily budget B. They participate in an auction as long as

the daily budget is not spent.

Page 38: Optimization Problems in Internet Advertising

Example

Advertiser Bid on “skiing”

Bid on“hiking”

Daily Budget

Joe’s outdoor store

$0.50 $1.00 $2.00

Campmor $1.00 $0.75 $3.00

Page 39: Optimization Problems in Internet Advertising

Example Auction 1: Hiking. Joe wins. When click

happens, he pays $0.75

Advertiser Bid on “skiing”

Bid on“hiking”

Daily Budget Remaining Budget

Joe’s outdoor store

$0.50 $1.00 $2.00 $2.00

Campmor $1.00 $0.75 $3.00 $3.00

Page 40: Optimization Problems in Internet Advertising

Example Auction 1: Hiking. Joe wins. When click

happens, he pays $0.75

Advertiser Bid on “skiing”

Bid on“hiking”

Daily Budget Remaining Budget

Joe’s outdoor store

$0.50 $1.00 $2.00 $1.25

Campmor $1.00 $0.75 $3.00 $3.00

Page 41: Optimization Problems in Internet Advertising

Example Auction 2: Skiing. Campmor. When click

happens, he pays $0.50

Advertiser Bid on “skiing”

Bid on“hiking”

Daily Budget Remaining Budget

Joe’s outdoor store

$0.50 $1.00 $2.00 $1.25

Campmor $1.00 $0.75 $3.00 $3.00

Page 42: Optimization Problems in Internet Advertising

Example Auction 2: Skiing. Campmor. When click

happens, he pays $0.50

Advertiser Bid on “skiing”

Bid on“hiking”

Daily Budget Remaining Budget

Joe’s outdoor store

$0.50 $1.00 $2.00 $1.25

Campmor $1.00 $0.75 $3.00 $2.50

Page 43: Optimization Problems in Internet Advertising

Example Auction 3: Hiking. Joe wins. When click

happens, he pays $0.75

Advertiser Bid on “skiing”

Bid on“hiking”

Daily Budget Remaining Budget

Joe’s outdoor store

$0.50 $1.00 $2.00 $1.25

Campmor $1.00 $0.75 $3.00 $2.50

Page 44: Optimization Problems in Internet Advertising

Example Auction 3: Hiking. Joe wins. When click

happens, he pays $0.75

Advertiser Bid on “skiing”

Bid on“hiking”

Daily Budget Remaining Budget

Joe’s outdoor store

$0.50 $1.00 $2.00 $0.50

Campmor $1.00 $0.75 $3.00 $2.50

Page 45: Optimization Problems in Internet Advertising

Example Auction 4: Hiking. Joe should win. But he

doesn’t have enough budget, so Campmor wins. Pays some amount < 0.75 (depends on other bidders and system minimums).

Advertiser Bid on “skiing”

Bid on“hiking”

Daily Budget Remaining Budget

Joe’s outdoor store

$0.50 $1.00 $2.00 $0.50

Campmor $1.00 $0.75 $3.00 $2.50

Page 46: Optimization Problems in Internet Advertising

Lessons

Auction is not always won by the highest bidder.

Bidders may engage in strategic behavior, allow others to win at a high price so as to exhaust their budget and be removed from competition (bid jamming)

Page 47: Optimization Problems in Internet Advertising

What about the advertiser?

Suppose you are an advertiser You want to bid on many keywords How should you allocate your budget

among multiple keywords?

Page 48: Optimization Problems in Internet Advertising

Example: Asics Keywords:Shoe, sneaker, running shoe, gel kayano,

gel nimbus, pronating, marathon shoe, race shoe, reebok, I hate asics, sporting goods, footware, racing attire, race, wicked fast, air jordan, laces, shin splints, white sneakers, …

Budget: $100 What to bid on each one?

Page 49: Optimization Problems in Internet Advertising

Who advertises adwords?

Page 50: Optimization Problems in Internet Advertising

Optimization Problem Suppose that I knew

Everyone else’s bids Exactly how many times each keyword will come up The number of clicks associated with each position Google’s exact advertising mechanism

How should I bid?(Note: Think of bid as cost-per-click (cpc))

Page 51: Optimization Problems in Internet Advertising
Page 52: Optimization Problems in Internet Advertising

Queries vs. Keywords

asics

Gel kayano

I hateasics

Red running shoes

shoe

asics

I hate peanut butter

Red asics

Asics gel nimbush

Running shoes

Page 53: Optimization Problems in Internet Advertising

Bidding Problem Bidding on multiple keywords is an NP-hard

problem (knapsack)

Knapsack: Given a set of items with sizes and values and a knapsack of size B, choose a maximum value set of objects that fit in the knapsack.

Proof of difficulty is also demonstrated by the amount that people are willing to pay to solve the problem.

Page 54: Optimization Problems in Internet Advertising

How do we evaluate a bidding strategy

Objective: maximize number of clicks, subject to budget

We compare the performance of our (simple) strategy to the performance of an arbitrarily complicated strategy of an adversary, take the ratio, and minimize over all inputs

))(/)((min iOPTiAI

Page 55: Optimization Problems in Internet Advertising

Simple Strategies are pretty good

Feldman, Pal, Muthukrishnan, Stein There exists one amount b, and if I bid b

on every keyword, I will get at least ½ the clicks of any strategy

There exists two numbers b1 and and b2, and if I bid either b1 or b2 on every keyword, I will get at least 63% (e/(e-1))of the clicks of any strategy

Page 56: Optimization Problems in Internet Advertising
Page 57: Optimization Problems in Internet Advertising
Page 58: Optimization Problems in Internet Advertising
Page 59: Optimization Problems in Internet Advertising
Page 60: Optimization Problems in Internet Advertising
Page 61: Optimization Problems in Internet Advertising
Page 62: Optimization Problems in Internet Advertising
Page 63: Optimization Problems in Internet Advertising
Page 64: Optimization Problems in Internet Advertising
Page 65: Optimization Problems in Internet Advertising
Page 66: Optimization Problems in Internet Advertising
Page 67: Optimization Problems in Internet Advertising

Theorem is pessimistic

Page 68: Optimization Problems in Internet Advertising

Display advertising

From ALENEX 2009, with Cosmin Negruseri, Mircea Pasio, Barbara Stanley, Cristian Strat

Page 69: Optimization Problems in Internet Advertising

Display Ads Publishers (e.g. newspapers, travel

agents) make on-line “real estate” available for ads

Advertisers purchase impressions (e.g. 100 appearances on CNN money page on 5/3/2009)

Users visit pages, see advertisements Market manager (e.g. google) has to

decide which ad is displayed for each user

Page 70: Optimization Problems in Internet Advertising
Page 71: Optimization Problems in Internet Advertising
Page 72: Optimization Problems in Internet Advertising
Page 73: Optimization Problems in Internet Advertising

Optimization Problem

Publisher is offering certain types of unsold “inventory” (views on pages with certain demographics)

Advertiser is looking to buy some amount of inventory

Market manager needs to quickly decide if advertisers demand can be satisfied.

Page 74: Optimization Problems in Internet Advertising
Page 75: Optimization Problems in Internet Advertising
Page 76: Optimization Problems in Internet Advertising
Page 77: Optimization Problems in Internet Advertising
Page 78: Optimization Problems in Internet Advertising
Page 79: Optimization Problems in Internet Advertising
Page 80: Optimization Problems in Internet Advertising
Page 81: Optimization Problems in Internet Advertising
Page 82: Optimization Problems in Internet Advertising

Algorithmic Ideas

Push/relabel algorithms work by pushing flow over on edge at a time (pushing downhill)

Excess accumulates at vertices Vertices are relabeled, pulling them uphill. Flow is pushed over eligible edges

(pointing downhill, have residual capacity)

Page 83: Optimization Problems in Internet Advertising
Page 84: Optimization Problems in Internet Advertising
Page 85: Optimization Problems in Internet Advertising

Previous experimental work

None that we are aware of

Page 86: Optimization Problems in Internet Advertising
Page 87: Optimization Problems in Internet Advertising
Page 88: Optimization Problems in Internet Advertising
Page 89: Optimization Problems in Internet Advertising

Synthetic Distributions Uniform Random High-Lo (chosen flow with additional edges) Rope (long paths plus some useless edges) Zipf (edge between i and j with probability

proportional to 1/(ij). Said to model real-world web graphs

First three are modifications of generators from [CG97

Page 90: Optimization Problems in Internet Advertising

Experimental Questions

Can we efficiently solve the real problems we have?

On bipartite graphs, do the specialize algorithms help?

Which variants are best? Which heuristics are needed? Do these conclusions generalize to other

data?

Page 91: Optimization Problems in Internet Advertising

Typical results (hi-lo)

Page 92: Optimization Problems in Internet Advertising

Typical results (hi-lo)

Page 93: Optimization Problems in Internet Advertising

Conclusions for display ads

Bipartite flow algorithms are worth using in practice

FIFO is usually the best variant, and rarely the worst

Heuristics (gap relabelling, exact label updates) are helpful

Data is publicly available

Page 94: Optimization Problems in Internet Advertising

General Conclusions Internet advertising is an important area Interesting algorithmic and game-theoretic

problems need to be solved. There are problems for the advertiser and

for the auction maker and for the user Ongoing work – studying the online

problem of matching impressions with advertisers (e.g. Feldman, Korula, Muthukrishnan, Makroni 09)