Kompetitive Analyse versusMarkovsche Entscheidungsprobleme
Iana Kouris Kompetitive Analyse vs. MDP
Inhalt
I Einleitung: Optimierungsprobleme und Losungsmethoden
I Kompetitive Analyse
I Markov Decision Problems
Iana Kouris Kompetitive Analyse vs. MDP
Historische Entwicklung
I Der Anfang der Forschung in den Bereichen Operations Research, Optimierung
und insbesondere sequentielle Entscheidungsprobleme liegt in den 1940er
Jahren. Wald und Bellman zahlen zu den Vatern der Dynamischen
Programmierung (vgl. Wald (1947), Bellman (1954)).
I Weitere Entwicklungen in den 1950-60er Jahren brachten sehr viele neue Ideen,
sowohl im angewandten als auch im theoretischen OR. Auch die Erfindung des
Computers ubte einen Einfluss auf die Praxis der Optimierung aus (vgl.
Nemhauser (1994)). Schließlich haben die Bucher Bellman (1957) und Howard
(1960) maßgeblich zu der Popularisierung der sequentiellen Optimierung
beigetragen.
I Fur die Analyse der Qualitat von verschiedenen Algorithmen sind zunachst
Worst-case-Betrachtungen eingesetzt worden. In vielen Fallen besteht das
Problem der Worst-case-Analyse darin, dass alle Algorithmen im schlimmsten
Fall gleich schlecht abschneiden. Deswegen ist man dann zu einer
Average-case-Analyse ubergegangen und anschließend zur kompetitiven Analyse.
Iana Kouris Kompetitive Analyse vs. MDP
Arten von Optimierungsproblemen
I Probleme mit gegeben vollstandigen Informationen uber die Zukunft (offline
Probleme)
I Probleme mit stochastischen Informationen uber die Zukunft
I Probleme ohne Informationen uber die Zukunft (online Probleme)
Iana Kouris Kompetitive Analyse vs. MDP
Problemlosungsmethoden
I Worst-case Analyse
I Average-case Analyse
I Kompetitive Analyse
I Comparative Analyse
I Vertretbare Belastung
I A-posteriori Analyse
I Simulation
I Erwartungskostenminimierung (DP)
Iana Kouris Kompetitive Analyse vs. MDP
Problem-Methode-Matching
I Es ist nicht vorgegeben, welche Probleme mit Hilfe von welchen Methoden zu
losen sind
I No-Free-Lunch Theorem (Wolpert und Macready, 1996), was bedeutet, dass alle
Optimierungsverfahren uber alle Probleme hinweg gesehen gleich gut sind.
I Daher sollten wir uns daruber Gedanken machen, was die Gemeinsamkeiten und
Unterschiede zwischen verschiedenen Problemen sind und welche
Losungsmethoden fur welche Problemen am besten passen.
Iana Kouris Kompetitive Analyse vs. MDP
Kompetitive Analyse: Definition
I Die kompetitive Analyse ist eine Methode, um die Qualitat eines
Online-Algorithmus zu bewerten. Hierzu wird der Online-Algorithmus ALG mit
einem optimalen Offline-Algorithmus OPT verglichen, der zum Zeitpunkt null
bereits die vollstandige Anfragefolge kennt.
I Bei dieser Analyse werden keinerlei Beschrankungen uber die Rechenzeit des
Online-Algorithmus gemacht. Die knappe Ressource eines Online-Algorithmus
ist allein die Information uber die zukunftigen Anfragen.
Iana Kouris Kompetitive Analyse vs. MDP
c-Kompetitiver Algorithmus
I Ein (deterministischer) Online-Algorithmus ist c-kompetitiv, wenn es eine
Konstante gibt, s.d. fur alle (endlichen) Eingabefolgen gilt:
ALG(σ) ≤ c · OPT(σ) + α
I Kann α = 0 gewahlt werden, so nennt man ALG strikt c-kompetitiv.
Iana Kouris Kompetitive Analyse vs. MDP
Deterministische und randomisierte Online Algorithmen
I Ein deterministischer Algorithmus legt im Voraus fest, wie auf eine beliebige
Eingabesequenz reagiert wird.
I Ein randomisierter Online-Algorithmus ist ein Algorithmus, der
Zufallsentscheidungen in die Menge der Antworten einbezieht. Die
kompetitivitatsbedingung fur den randomisierten Algorithmus sieht dann
folgendermaßen aus:
E[ALG(σ)− c · ADV(σ)] ≤ α
Iana Kouris Kompetitive Analyse vs. MDP
Beispiel fur die Kompetitive Analyse: Skifahrerproblem
I Eine Sportlerin geht das erste Mal in ihrem Leben zum Skifahren. Sie fragt sich,
ob sie Ski leihen oder kaufen soll. Man kann fur 1 GE pro Tag ein Paar Skier
leihen, andererseits aber auch fur B GE ein Paar kaufen.
I Frage: Wie ist die kostengunstigste Strategie?
I Schwierigkeit: Die Dame weiß nicht, wie oft sie in der Zukunft zum Skifahren
gehen wird.
Iana Kouris Kompetitive Analyse vs. MDP
Bsp. fur die Kompetitive Analyse: Skifahrerproblem -
Deterministischer Algorithmus
I Offline Losung: bei n Tagen Skier leihen, falls n < B gilt, ansonsten fur B
kaufen. Also: OPT(r1, ..., rn) = min(n, B).
I Online Losung: fur n ≤ B − 1 ist ALG(σ) = n = OPT(σ),
fur n > B − 1 gilt: ALG(σ)OPT(σ)
= B−1+BB
= 2− 1B
. Eine bessere Kompetitivitat lasst
sich nicht erreichen.
I Probleme der deterministischen Algorithmen: Bei deterministischen
Online-Algorithmen besitzt der Gegner vollstandige Information uber der
Online-Spieler. Er kann dieses Wissen benutzen, um eine fur den Online-Spieler
moglichst schlechte und fur ihn moglichst gute Eingabefolge zu konstruieren.
Iana Kouris Kompetitive Analyse vs. MDP
Bspeispiel fur die Kompetitive Analyse: Skifahrerproblem -
Randomisierter Algorithmus
I RANDSKI wahlt zufallig eine Zahl i ∈ 0, 1, ..., B − 1, die Wahrscheinlichkeit pi ,
dass die Zahl i gewahlt wird:
pi = αρi , fur i = 0, ..., B − 1, wobei ρ =B
B − 1und α =
ρ− 1
ρB − 1.
I RANDSKI trifft nur eine Zufallsentscheidung - er wahlt den Tag, an dem Skier
gekauft werden. Der Vorteil von RANDSKI gegenuber einem deterministischen
Algorithmus besteht darin, dass der Gegner nicht weiß, wie diese
Zufallsentscheidung ausgefallen ist und nur mit einer gewissen
Wahrscheinlichkeit die allerschlimmste Sequenz wahlen kann.
Iana Kouris Kompetitive Analyse vs. MDP
MDP: Definition
I Kostenbehaftetes sequentielles Entscheiden bei ungewisser Zukunft, fur die wir
Modelle mit einer Reihe von Gemeinsamkeiten formulieren. Diese
Gemeinsamkeiten werden dann durch den Begriff des Markovschen
Entscheidungsproblems formalisiert.
Iana Kouris Kompetitive Analyse vs. MDP
MDP: Formale Definition
Ein Markovsches Entscheidungsproblem mit endlichem Horizont ist ein Tupel
(N, S , C , U, D, f , g , M) mit folgender Bedeutung:
I N ist der Horizont
I S ist ein Raum von moglichen Zustanden
I C ist ein Raum der moglichen Steuerungen
I U sind die Steuerbeschrankungen
I D ist ein Raum der moglichen stochastischen Storungen, die stochastisch
unabhangig sein mussen
I f ist die Systemdynamik
I g ist eine Folge von Kostenfunktionen
I M ist das Ziel des MDPs (hier Minimierung der Erwarteten Gesamtkosten)
I Die Kosten von π bei Anfangszustand x0 sind definiert als
Jπ(x0) := E[gN(xN) +
N−1Xk=0
g(xk , µk (xk ), wk )]
.
Iana Kouris Kompetitive Analyse vs. MDP
MDP: Beispiel Lagerhaltung
I Problembeschreibung: Die Nachfrage nach dem Produkt in unserem Lager ist
fur verschiedene Tage stochastisch unabhangig (Storung), wobei die
Nachbestellung uber Nacht moglich ist (Steuerung). Kosten entstehen fur
gelagerte Ware, verspatete Lieferung und Nachbestellung. Dann
r(x) seien die Lagerkosten pro Tag fur x
Sei c der Preis fur eine Einheit des Gutes x . Dann betragen die Gesamtkosten
am Tag k: r(xk ) + cuk , k = 0, 1, ..., N − 1
Die Terminalkosten R(xN) ergeben sich aus dem Lagerbestand xN am Tag N
Dann sind die erwarteten Gesamtkosten gegeben durch
Ewk [R(xN) +
N−1Xk=0
(r(xk ) + cuk )]
.
I Wir betrachten das Lagerhaltungsproblem mit dem Ziel, die Gesamtkosten, die
aus den Produkt-, Lager- und Lieferkosten bestehen, zu minimieren.
Iana Kouris Kompetitive Analyse vs. MDP
Bellmannsches Optimalitatsprinzip
I Ist π? = (µ?0 , µ?
1 , ..., µ?N−1) eine optimale Politik fur ein N-stufiges MDP und sei
xi ein Zustand, der durch π? mit positiver Wahrscheinlichkeit erreicht wird,
dann ist die abgeschnittene Politik π? = (µ?i , µ?
i+1, ..., µ?N−1) fur alle
i = 0, 1, ..., N − 1 ist die optimale Politik fur das (N − i)-stufige Teilproblem des
MDP mit Start in xi .
Iana Kouris Kompetitive Analyse vs. MDP
Dynamisches Programmieren
I Idee: Betrachte zunachst die Stufe N. Fur das 0-stufige Teilproblem ist die
Optimalkostenfunktion gleich der Terminalkostenfunktion. Dann betrachte Stufe
N − 1 und balanciere die Kosten fur erwartete Zustandsubergange mit den
Optimalkosten in dem erreichten Zustand. So bekommt man die Kosten der
billigsten Steuerung, die von diesem Zustand ausgeht. Zusammengesetzt erhalt
man die Optimalkostenfunktion fur das 1-stufige Teilproblem. So arbeitet man
weiter bis zum N-stufigen Teilproblem, dem Originalproblem.
Iana Kouris Kompetitive Analyse vs. MDP
Dynamisches Programmieren
I Mathematische Formulierung: Sei (N, S , C , U, D, f , g) ein MDP mit
Optimalkostenfunktion J?. Dann lassen sich die Optimalkostenfunktionen J?i
der N − 1-stufiger Teilprobleme mit folgender Rekursion berechnen:
J?N = gN
J?i (xi ) = inf
ui∈U(xi )E[gi (xi , ui , wi ) + J?
i+1(fi (xi , ui , wi ))]
J? = J?0
Iana Kouris Kompetitive Analyse vs. MDP
Beispiel MDP: Lagerhaltung
I Das zentrale Ergebnis ist der Satz uber die Existenz eines optimalen
Lagerbestandes und dementsprechend einer optimalen Politik - der
Schwellenwertpolitik.
I Mathematische Formulierung: Fur alle k = 0, 1, ..., N − 1 existiert ein
Lagerbestand y?k ∈ R, s.d. folgende Politik optimal ist fur die Stufe k fur das
obige Lagerhaltungsproblem:
µ?k (xk ) :=
8<:y?k − xk , falls xk < y?
k
0 sonst
.
Iana Kouris Kompetitive Analyse vs. MDP
Gegenuberstellung von KA und MDP
I MDP: Stochastische Informationen mussen gegeben sein - KA: keine
Informationen uber die Zukunft sind vorhanden
I MDP: Erwartungswert der Kostenfunktion - KA: Kostenfunktion
I MDP: absolut - KA: vergleichend
I Daher klare Unterschiede in Verwendung: MDP fur sich wiederholende
Ereignisse, KA dagegen fur einmalige, seltene oder zum ersten Mal stattfindende
Ereignisse
Iana Kouris Kompetitive Analyse vs. MDP
Literatur
I Bellmann, R.E. (1954):”The Theory of Dynamic Programming“, Bull. Amer.
Math. Soc. 60, 503-516
I Bellmann, R.E. (1957):”Dynamic Programming“, Princeton University Press,
Princeton, New York
I Howard, R.A. (1960):”Dynamic Programming and Markov Processes“, MIT
Press, Cambridge, MA
I Nemhauser, G.L. (1994):”The age of optimization: Solving large-scale
real-world problems“ Operations Research; Jan/Feb 1994; 42, 1; ABI/INFORM
Global, 5-13
I Puterman, M.L. (2005):”Markov Decision Processes. Discrete Stochastic
Dynamic Programming“, John Wiley and Sons, Inc., Hoboken, New Jersey
I Rambau, J./ Krumke, S.O. (2005):”Online Optimierung“
I Wald, A. (1947):”Sequential Anlysis“, Wiley, New York
Iana Kouris Kompetitive Analyse vs. MDP
Optimierungsproblem
I Optimierungsproblem ist ein Quadrupel (I,F , C,M) mit folgenden
Bedeutungen: I ⊆ Σ ist die Menge von Eingabe-Instanzen (Inputs); F(I ) ⊆ Σ
ist die Menge zulassiger Losungen (Ouptputs) fur die Instanz (I ) ∈ I;
C : I × Σ → R≥0 ist die Zielfunktion, d.h. C(I , O) bezeichnet die Kosten der
Losung O bei Eingabe von I . Der Wert C(I , O) ist nur dann definiert, wenn
O ∈ F(I ); M ∈ min,max gibt an, ob es sich bei dem Problem um ein
Minimierungsproblem oder ein Maximierungsproblem handelt.
Iana Kouris Kompetitive Analyse vs. MDP
Frage-Antwort-Spiel
I Ein Frage-Antwort-Spiel (R,A, C) besteht aus einer Anfragemenge R, einer
Folge von nichtleeren Antwortmengen A = A1, A2, ... und einer Folge von
Kostenfunktionen C = C1, C2, ..., wobei Cj : R j × A1 × ...× Aj → R≥0 ∪+∞.
Iana Kouris Kompetitive Analyse vs. MDP
Beispiel fur KA: Skifahrerproblem - Randomisierter
Algorithmus
I RANDSKI wahlt zufallig eine Zahl i ∈ 0, 1, ..., B − 1, die Wahrscheinlichkeit pi ,
dass die Zahl i gewahlt wird:
pi = αρi , fur i = 0, ..., B − 1, wobei ρ =B
B − 1und α =
ρ− 1
ρB − 1.
Iana Kouris Kompetitive Analyse vs. MDP
Beispiel fur KA: Skifahrerproblem - Randomisierter
Algorithmus
E[RANDSKI(σ)] =
n−1Xi=0
pi (i + B) +
B−1Xi=n
pin
=
n−1Xi=0
αρi (i + B) +
B−1Xi=n
αρin
= α
n−1Xi=0
ρi i + αB
n−1Xi=0
ρi + αn
B−1Xi=n
ρi
= α(n − 1)ρn+1 − nρn + ρ
(ρ− 1)2+ αB
ρn − 1
ρ− 1+ αn
ρB − ρn
ρ− 1
Iana Kouris Kompetitive Analyse vs. MDP
Beispiel fur KA: Skifahrerproblem - Randomisierter
Algorithmus
=α
(ρ− 1)2((n − 1)ρn+1 − nρn + ρ + ρn − 1 + n(ρ− 1)(ρB − ρn))
=α
(ρ− 1)2(nρB+1 − nρB − ρn+1 + ρn + ρ− 1)
=α
(ρ− 1)2(nρB(ρ− 1)− (ρ− 1)(−ρn + 1)
=α
ρ− 1(nρB − ρn + 1)
≤α
ρ− 1(nρB)( da ρ ≥ 1)
=ρB
ρB − 1n
=ρB
ρB − 1OPT (σ).
Iana Kouris Kompetitive Analyse vs. MDP
Beispiel fur KA: Skifahrerproblem - Randomisierter
Algorithmus
Somit haben wir gezeigt, dass RANDSKI gegen OBS cB -kompetitiv ist mit
cB =ρB
ρB − 1=
(fracB + 1B)B
(B+1B
)B − 1
B→∞→e
e − 1≈ 1.58
Iana Kouris Kompetitive Analyse vs. MDP
MDP: Definition
I Formale Definition: Ein Markovsches Entscheidungsproblem mit endlichem
Horizont ist ein Tupel (N, S , C , U, D, f , g , M) mit folgender Bedeutung:
N ∈ N ist der Horizont, die Anzahl von Stufen, uber die wir die Erwartung
betrachten wollen.
S =SN−1
k=0 Sk ist ein Raum von moglichen Zustanden xk ∈ Sk in Stufe
k = 0, 1, ..., N − 1; zusatzlich ist der Raum SN der Terminalzustande definiert.
C =SN−1
k=0 Ck ist ein Raum der moglichen Steuerungen uk ∈ Uk in der Stufe
k = 0, 1, ..., N − 1.
U ist eine Familie von Funktionen Uk : Sk → 2Ck , die Steuerbeschrankungen.
D =SN−1
k=0 Dk ist ein Raum der moglichen stochastischen Storungen wk ∈ Dk ,
die von xk ∈ S und von uk ∈ Ck abhangen konnen, die aber von den wi mit
i 6= k unabhangig sein mussen.
f ist die Folge der Abbildungen fk : Sk × Ck × Dk → Sk+1 mit
k = 0, 1, ..., N − 1, die Systemdynamik.
Iana Kouris Kompetitive Analyse vs. MDP
MDP: Definition
g ist eine Folge von Kostenfunktionen gk : Sk × Ck × Dk → R mit k = 0, 1, ..., N − 1,
die Stufenkosten; zusatzlich ist eine Funktion gN : SN → R definiert, die
Terminalkostenfunktion.
M ist das Ziel des MDPs (hier Minimierung der Erwarteten Gesamtkosten).
Eine (deterministische) Politik ist eine Folge π = (µ0, µ1, ..., µN − 1) von Funktionen
µk :
8<:Sk → Ck
xk → µk (xk )
Die Kosten von π bei Anfangszustand x0 sind definiert als
Jπ(x0) := E[gN(xN) +
N−1Xk=0
g(xk , µk (xk ), wk )]
Iana Kouris Kompetitive Analyse vs. MDP
MDP: Beispiel Lagerhaltung
I Wir betrachten das Lagerhaltungsproblem mit dem Ziel, die Gesamtkosten, die
aus den Produkt-, Lager- und Lieferkosten bestehen, zu minimieren.
Problembeschreibung: Die Nachfrage nach dem Produkt in unserem Lager ist
fur verschiedene Tage stochastisch unabhangig (Storung), wobei die
Nachbestellung uber Nacht moglich ist (Steuerung). Kosten entstehen fur
gelagerte Ware, verspatete Lieferung und Nachbestellung. Dann
xk := Lagerbestand am Tag k vor dem Verkauf
wk := Nachfrage am Tag k
uk := Liefermenge am Tag k vor dem Verkauf
Systemdynamik ergibt sich dann wie folgt: xk+1 = xk + uk − wk ,
k = 0, 1, ..., N − 1
r(x) seien die Lagerkosten pro Tag fur x
Sei c der Preis fur eine Einheit des Gutes x . Dann betragen die Gesamtkosten
am Tag k: r(xk ) + cuk , k = 0, 1, ..., N − 1
Die Terminalkosten R(xN) ergeben sich aus dem Lagerbestand xN am Tag N
Dann sind die erwarteten Gesamtkosten gegeben durch
Ewk [R(xN) +
N−1Xk=0
(r(xk ) + cuk )]
.Iana Kouris Kompetitive Analyse vs. MDP