Simulation von Preisverhandlungen: Kombinatorische Auktionen Michael Schwind Doktorandenseminar Simulation von Preisverhandlungen: CA 1 Ausgangspunkt • Annahme: Potentialfaktoren zur (Re)Produktion einer Information – – – – Prozessorleistung (CPU) Hauptspeicher (RAM) Netzwerkressourcen (BB) menschliche Ressourcen • Allokationsproblem: deckungsbeitragsmaximierende Zuweisung von Zeitscheiben der Ressourcen • möglicher Allokationsmechanismus: Auktion Simulation von Preisverhandlungen: CA 2 Ermittlung der Zahlungsbereitschaft • Alle 4 Potentialfaktoren sind zur Reproduktion und Übermittlung der Informationsleistung notwendig • Es bestehen starke Synergieeffekte für den Nachfrager, d.h. der Preis, den ein Bieter für eine Ressource bereit ist zu zahlen, hängt oftmals auf komplexe Weise von den anderen Ressourcen, die er zugeteilt bekommt, ab. • Wie lassen sich diese Synergieeffekte aus Sicht des Nachfragers ausdrücken? Simulation von Preisverhandlungen: CA 3 Preisfindungsprozess für Dienstleistungen Preis Nachfrage Absage Zusage Anfrage Anfrage Anfrage Dienstleistung t0 Simulation von Preisverhandlungen: CA t 4 Auktionen Preis Anfrage Anfrage Anfrage Dienstleistung t0 Simulation von Preisverhandlungen: CA t 5 Generalisierung: Kombinatorische Auktionen Preis Dienstleistung t0 Simulation von Preisverhandlungen: CA t 6 4 Ressourcen10 Perioden-Problem 1 2 3 4 5 6 7 8 9 10 A(5) B(6) RS 1 C(7) D(4) RS 2 E(7) F(3) RS 3 G(3) H(3) RS 4 I(7) J(9) Simulation von Preisverhandlungen: CA 7 Zeitabhängige Zahlungsbereitschaft als Gebotsfunktion Willingness to pay A I C G E J D H B F Bidding time Simulation von Preisverhandlungen: CA 8 Grundlagen der kombinatorischen Auktionen Was sind Kombinatorische Auktionen (CA)? Kombinatorische Auktionen sind solche Auktionen, in denen ein Bieter nicht nur für ein einzelnes Gut bieten bzw. mehrere Gebote für unterschiedliche Güter einreichen kann, sondern in einem einzigen Gebot für mehrere Güter (d.h. ein Güterbündel) gleichzeitig bieten kann. Simulation von Preisverhandlungen: CA 9 Warum CA? • notwendig, da ein Preis, den ein Bieter für ein Gut bereit ist zu zahlen, oftmals auf komplexe Weise von anderen Gütern, die er erhält, abhängt (Synergieeffekte). • Vorteil, dass ein Bieter solche Synergieeffekte bereits in seinen Geboten ausdrücken kann. • ebenso geeignet, um mehrere Einheiten eines Gutes simultan zu versteigern. Simulation von Preisverhandlungen: CA 10 Substitutionalität • es gilt: v(A) + v(B) > v(A+B) Subadditivät • im Extremfall: V(A+B)=max[V(A), V(B)] • z.B. Bieter möchte ein neues T-Shirt Gebot für rotes T-Shirt (Gut A) 10 € Gebot für blaues T-Shirt (Gut B) 10 € Gebot für beide T-Shirts zusammen (A+B) 15 € Simulation von Preisverhandlungen: CA 11 Komplementarität • es gilt: v(A) + v(B) < v(A+B) Superadditivität • im Extremfall: V(A)=V(B)=0, aber V(A+B)>0 • z.B. Bieter benötig 1 Einheit Prozessorleistung, 1 Einheit Arbeitsspeicher und 1 Einheit Bandbreite. • nur das Bündel dieser drei Güter hat einen echten Wert für ihn. Sobald er nicht alle drei Ressourcen zugeteilt bekommt, ist sein Nutzen = 0. Simulation von Preisverhandlungen: CA 12 Probleme • Formulierung der Gebote, die sämtliche Synergieeffekte enthalten, gestaltet sich sehr schwierig • Optimale Zuteilung der einzelnen Gebote ist NP-vollständig • Offenlegen der wahren Zahlungsbereitschaft Simulation von Preisverhandlungen: CA 13 Formale Darstellung des CA Problems N Menge der Bieter M Menge der Potentialfaktoren m ein Potentialfaktor der Menge M S Bündel von Potentialfaktoren bj(S) Gebot von Bieter j für Bündel S b(S) maximales Gebot für Bündel S Annahme: von jedem Potentialfaktor m ist nur eines vorhanden Simulation von Preisverhandlungen: CA 14 Formale Darstellung des CA Problems max b( S ) x s S M Maximiere die Summe aller maximalen Gebote für die einzelnen Bündel SM unter Beachtung der Restriktionen x 1 s i M iS kein Objekt aus M kann zu mehr als einem Bieter zugeordnet werden und xs 0,1 S M xs = 1, falls Gebot zugeteilt xs = 0, sonst Simulation von Preisverhandlungen: CA 15 Formale Darstellung des CA Problems (CAP1) max b( S ) x s S M unter Beachtung der Restriktionen x 1 s i M iS und xs 0,1 S M Dilemma: Formulierung ist nur korrekt für den Fall, dass alle Gebotsfunktionen bj subadditiv sind. Bei Komplementarität kann das Gebot eines Bieters für zwei Güter A und B zusammen höher sein, als für beide Güter getrennt. Dies wird jedoch bei dieser Formulierung nicht berücksichtigt. Ausweg: Einführung von Dummy-Gütern Simulation von Preisverhandlungen: CA 16 Greedy-Allokation als Näherungslösung Ablauf des Greedy-Schemas 1. Schritt • Gebote werden anhand eines beliebigen Kriteriums sortiert • Sortierung der Liste in auf- oder absteigender Reihenfolge 2. • • • Schritt Durchführung der Allokation erstes Gebot der Liste wird angenommen Im weiteren Verlauf untersucht der Algorithmus der Reihe nach jedes weitere Gebot und nimmt ein weiteres Gebot an, sofern es nicht mit vorherigen Geboten auf der Liste in Konflikt steht Simulation von Preisverhandlungen: CA 17 Beispiel Greedy-Schema Beispiel für 2 Bieter (1 und 2) und 2 Güter (A und B) Es liegen folgende Gebote vor: b1(A)=6 b2(A)=8 b1(B)=20 b2(B)=18 b1(A,B)=28 b2(A,B)=30 Kriterium: durchschnittlicher Gebotspreis je Gut Sortierung: absteigende Reihenfolge Simulation von Preisverhandlungen: CA 18 Beispiel Greedy-Schema Beispiel für 2 Bieter (1 und 2) und 2 Güter (A und B) Es liegen folgende Gebote vor: b1(A)=6 (6) b1(B)=20 (20) b1(A,B)=28 (14) b2(A)=8 (8) b2(B)=18 (18) b2(A,B)=30 (15) Kriterium: durchschnittlicher Gebotspreis je Gut Sortierung: absteigende Reihenfolge Simulation von Preisverhandlungen: CA 19 Beispiel Greedy-Schema Beispiel für 2 Bieter (1 und 2) und 2 Güter (A und B) Es liegen folgende Gebote vor: b1(A)=6 (6) b1(B)=20 (20) b1(A,B)=28 (14) b2(A)=8 (8) b2(B)=18 (18) b2(A,B)=30 (15) Kriterium: durchschnittlicher Gebotspreis je Gut Sortierung: absteigende Reihenfolge es ergibt sich folgende Liste 1. b1(B)=20 Bieter 1 erhält B 2. b2(B)=18 Konflikt 3. b2(A,B)=30 Konflikt 4. b1(A,B)=28 Konflikt 5. b2(A)=8 6. b1(A)=6 Simulation von Preisverhandlungen: CA Bieter 2 erhält A 20 Beurteilung des Greedy-Schemas • sehr zielgerichtetes Verfahren • sehr schnelles Verfahren • Aufwand (n log n)n • Effizienz hängt sehr stark von gewähltem Kriterium ab • ungeeignetes Kriterium wäre z.B. „Höhe des Gebotes“ Simulation von Preisverhandlungen: CA 21 Entwurf einer Ontologie für CAs Simulation von Preisverhandlungen: CA 22 aUML Sequenzdiagramm der CA FIPA Konformität des Auktionsprotokolls Simulation von Preisverhandlungen: CA 23 Kommunikationssequenzen der CA in JADE Simulation von Preisverhandlungen: CA 24 Greedy Combinatorial Auction Algorithm (GCAA) 1 2 R1 . . . 4 3 R4 1 3 2 5 A T O M I C Bid 4 5 6 3 1 2 1 1 7 8 9 10 t = Time-Slots 5 2 3 1 1 1 R max = 5 1. Nehme alle Gebote an 2. Entferne sukzessive die Gebote, welche die Restriktionen verletzen, bis die Kapazität reicht um alle Gebote zu erfüllen. Die Reihenfolge wird dabei durch den Quotienten aus der Höhe der Restriktionsverletzung und dem Gebotspreis festgelegt (absteigend). 3. Versuche eliminierte Gebote wieder hinzuzufügen Simulation von Preisverhandlungen: CA 25 Evaluation der Allokationsqualität des Greedy-CAA R= Anzahl der Ressourcen B= Anzahl der bietenden Agenten S= Anzahl der Time-Slots V= Wert der der angenommenen Gebote j= Bieterindex i= Ressourcenindex t= Time-Slot Index r ij = Auslastung zur Zeit t für Ressource i P j = Preis eines Gebotsbündels von Agent j P V Simulation von Preisverhandlungen: CA B j j S R t 1 i 1 it r 26 Evaluation der Allokationsqualität des Greedy-CAA Allokationsqualität 2 1,5 1 0,5 R3 0 1 2 3 4 R1 5 Bieter (10,15,20) 6 Time-Slots (10-40) Simulation von Preisverhandlungen: CA 27