https://www.researchgate.net/profile/Niklas-Karlsson-11/publication/352523808_Adaptive_Bid_Shading_Optimization_of_First-Price_Ad_Inventory/links/611195c3169a1a0103ec2b37/Adaptive-Bid-Shading-Optimization-of-First-Price-Ad-Inventory.pdf

Wykorzystanie feedback controllera do bid-shadingu przy założeniu, że nie znamy ceny, która wygrała.

Cały system podzielony jest na 3 niezależne podsystemy:

  1. estymujący wartość bid requesta , czyli wartość oczekiwaną przychodu,
  2. system maksymalizujący total value przy ograniczeniu na budżet kampanii
  3. bid-shading, będący systemem maksymalizującym surplus
Ad. 1.

Projektowanie tego systemu jest poza zakresem publikacji.

Ad. 2.

Zakładamy, że mamy biddera, który ma za zadanie zmaksymalizować value (value maximizer) z pojedynczym ograniczeniem na koszt (budżet). Pomysł taki sam jak w Feedback Control in Programmatic Advertising The Frontier of Optimization in Real-Time Bidding, czyli wykorzystanie mnożników Lagrange’a - rozwiązanie daje nam pojedynczy control signal , który jest ustalany przez mechanizm feedback controllera. Wartość bid requesta mnożymy przez dostając adjusted value .

Ten sam problem poruszany w Optimization in Online Advertising via Simultaneous Adaptive Rate and Price Feedback Control

Ad. 3.

Wartość, która jest optymalizowana w bid-shadingu to surplus. Rozważamy aukcję typu first-price. Założenie w publikacji jest takie, że nie znamy rozkładu prawdopodobieństwa nad ceną, która wygra aukcję.

Uwaga: mimo, że autorzy posługują się wszędzie pojęciem adjusted value oznaczanym , to dla prostoty poniżej zamieniam to po prostu na value, , bo nie ma to znaczenia dla zrozumienia sposobu na bid-shading.

Najpierw autorzy zakładają relację między a biddem , w postaci konkretnej funkcji sterowanej przez dwa parametry , (równanie (9)). Ta funkcja jest wklęsła, monotoniczna i zapewniająca że .

Następnie podają metodę na znalezienie takich i , które optymalizują surplus , czyli . Ale pomijają modelowanie bo optymalizują surplus na historycznych realizacjach, tzn. prawdziwych wartościach , (faktycznie poniesionym koszcie) zakładając, że gdy przegraliśmy to .

Estimator: Obserwujemy płynące z produkcji kolejne wartości w pewnych przedziałach czasowych, np. 5 minutowych. to średni surplus przez cały okres trwania (nie w pojedynczym przedziale). W pierwszych 5 minutach były wartości . W kolejnych 5 minutach były wartości , itd. Na serii obserwacji tego typu trenujemy model postaci gdzie a to wektor 6 parametrów (wag). Przy czym im starsze obserwacje tym mają mniejszą wagę. Wzór optymalizacyjny zawarty w (11). Do znalezienia wag używany jest model Recursive Least Squares algorithm, który minimalizuje błąd średniokwadratowy, ale w sposób online i w dodatku tak, że im starsza obserwacja tym ma mniejszą wagę.

Optimizer: W tym kroku bierzemy wyestymowane i używamy go do zmiany obecnych w takim kierunku, który maksymalizuje surplus. Kierunek w jakim zmienić można sobie wyliczyć na podstawie gradientu funkcji . O ile zmienić jest ustawiane ręcznie.

W dodatku po każdym updatecie do dodają jakiś losową wartość, żeby zachować excitation, czyli eksplorację.

W Bid shading by win-rate estimation and surplus maximization wytykają problemy z zaproponowanym tutaj rozwiązaniem: zrobienie dobrych segmentów jest trudne, informacje nie są wymieniane między segmentami, liczba segmentów szybko może eksplodować.


Praca wspomniana w A Survey on Bid Optimization in Real-Time Bidding Display Advertising.