• Keine Ergebnisse gefunden

Topics in Algorithmic Game Theory and Economics

N/A
N/A
Protected

Academic year: 2021

Aktie "Topics in Algorithmic Game Theory and Economics"

Copied!
179
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Topics in Algorithmic Game Theory and Economics

Pieter Kleer

Max Planck Institute for Informatics (D1) Saarland Informatics Campus

January 20, 2020

Lecture 9

Online Bipartite Matching

1 / 26

(2)

Offline bipartite matching

2 / 26

(3)

Offline bipartite matching

Given bipartite graph B = (Y ∪ Z , E ) with E = {{y, z} : y ∈ Y , z ∈ Z }.

Edge weight function w : E → R ≥0 . Example

Y

Z

y

1

y

2

y

3

y

4

z

1

z

2

z

3

z

4

1 3

3 1

5 6

1

Matching M ⊆ E is set of edges where every node is incident to at most one edge from M: |{e ∈ M : e ∩ {v }}| ≤ 1 ∀v ∈ Y ∪ Z .

Weight of matching M is given by w(M ) = X

e∈M

w e .

Goal: Compute maximum weight matching in bipartite graph B.

3 / 26

(4)

Offline bipartite matching

Given bipartite graph B = (Y ∪ Z , E ) with E = {{y, z} : y ∈ Y , z ∈ Z }.

Edge weight function w : E → R ≥0 .

Example

Y

Z

y

1

y

2

y

3

y

4

z

1

z

2

z

3

z

4

1 3

3 1

5 6

1

Matching M ⊆ E is set of edges where every node is incident to at most one edge from M: |{e ∈ M : e ∩ {v }}| ≤ 1 ∀v ∈ Y ∪ Z .

Weight of matching M is given by w(M ) = X

e∈M

w e .

Goal: Compute maximum weight matching in bipartite graph B.

3 / 26

(5)

Offline bipartite matching

Given bipartite graph B = (Y ∪ Z , E ) with E = {{y, z} : y ∈ Y , z ∈ Z }.

Edge weight function w : E → R ≥0 . Example

Y

Z

y

1

y

2

y

3

y

4

z

1

z

2

z

3

z

4

1 3

3 1

5 6

1

Matching M ⊆ E is set of edges where every node is incident to at most one edge from M: |{e ∈ M : e ∩ {v }}| ≤ 1 ∀v ∈ Y ∪ Z .

Weight of matching M is given by w(M ) = X

e∈M

w e .

Goal: Compute maximum weight matching in bipartite graph B.

3 / 26

(6)

Offline bipartite matching

Given bipartite graph B = (Y ∪ Z , E ) with E = {{y, z} : y ∈ Y , z ∈ Z }.

Edge weight function w : E → R ≥0 . Example

Y

Z

y

1

y

2

y

3

y

4

z

1

z

2

z

3

z

4

1 3

3 1

5 6

1

Matching M ⊆ E is set of edges where every node is incident to at most one edge from M:

|{e ∈ M : e ∩ {v }}| ≤ 1 ∀v ∈ Y ∪ Z . Weight of matching M is given by

w(M ) = X

e∈M

w e .

Goal: Compute maximum weight matching in bipartite graph B.

3 / 26

(7)

Offline bipartite matching

Given bipartite graph B = (Y ∪ Z , E ) with E = {{y, z} : y ∈ Y , z ∈ Z }.

Edge weight function w : E → R ≥0 . Example

Y

Z

y

1

y

2

y

3

y

4

z

1

z

2

z

3

z

4

1 3

3 1

5 6

1

1 3 6

Matching M ⊆ E is set of edges where every node is incident to at most one edge from M: |{e ∈ M : e ∩ {v }}| ≤ 1 ∀v ∈ Y ∪ Z .

Weight of matching M is given by w(M ) = X

e∈M

w e .

Goal: Compute maximum weight matching in bipartite graph B.

3 / 26

(8)

Offline bipartite matching

Given bipartite graph B = (Y ∪ Z , E ) with E = {{y, z} : y ∈ Y , z ∈ Z }.

Edge weight function w : E → R ≥0 . Example

Y

Z

y

1

y

2

y

3

y

4

z

1

z

2

z

3

z

4

1 3

3 1

5 6

1

1 3 6

Matching M ⊆ E is set of edges where every node is incident to at most one edge from M: |{e ∈ M : e ∩ {v }}| ≤ 1 ∀v ∈ Y ∪ Z .

Weight of matching M is given by w(M ) = X

e∈M

w e .

Goal: Compute maximum weight matching in bipartite graph B.

3 / 26

(9)

Offline bipartite matching

Given bipartite graph B = (Y ∪ Z , E ) with E = {{y, z} : y ∈ Y , z ∈ Z }.

Edge weight function w : E → R ≥0 . Example

Y

Z

y

1

y

2

y

3

y

4

z

1

z

2

z

3

z

4

1 3

3 1

5 6

1

1 3 6

Matching M ⊆ E is set of edges where every node is incident to at most one edge from M: |{e ∈ M : e ∩ {v }}| ≤ 1 ∀v ∈ Y ∪ Z .

Weight of matching M is given by w(M ) = X

e∈M

w e .

Goal: Compute maximum weight matching in bipartite graph B.

3 / 26

(10)

Goal: Compute maximum weight matching in bipartite graph B.

Many algorithms known for solving this in polynomial time, e.g.: Linear programming.

Hungarian method.

The important thing to remember is the following. Theorem (Offline bipartite matching)

There is a poly(n, m)-time algorithm for solving the (offline) maximum weight bipartite matching problem, where n = |Z | and m = |Y |.

Parameters n and m are used interchangeably. You may assume that m = n (essentially w.l.o.g.).

4 / 26

(11)

Goal: Compute maximum weight matching in bipartite graph B.

Many algorithms known for solving this in polynomial time, e.g.:

Linear programming. Hungarian method.

The important thing to remember is the following. Theorem (Offline bipartite matching)

There is a poly(n, m)-time algorithm for solving the (offline) maximum weight bipartite matching problem, where n = |Z | and m = |Y |.

Parameters n and m are used interchangeably. You may assume that m = n (essentially w.l.o.g.).

4 / 26

(12)

Goal: Compute maximum weight matching in bipartite graph B.

Many algorithms known for solving this in polynomial time, e.g.:

Linear programming.

Hungarian method.

The important thing to remember is the following. Theorem (Offline bipartite matching)

There is a poly(n, m)-time algorithm for solving the (offline) maximum weight bipartite matching problem, where n = |Z | and m = |Y |.

Parameters n and m are used interchangeably. You may assume that m = n (essentially w.l.o.g.).

4 / 26

(13)

Goal: Compute maximum weight matching in bipartite graph B.

Many algorithms known for solving this in polynomial time, e.g.:

Linear programming.

Hungarian method.

The important thing to remember is the following. Theorem (Offline bipartite matching)

There is a poly(n, m)-time algorithm for solving the (offline) maximum weight bipartite matching problem, where n = |Z | and m = |Y |.

Parameters n and m are used interchangeably. You may assume that m = n (essentially w.l.o.g.).

4 / 26

(14)

Goal: Compute maximum weight matching in bipartite graph B.

Many algorithms known for solving this in polynomial time, e.g.:

Linear programming.

Hungarian method.

The important thing to remember is the following.

Theorem (Offline bipartite matching)

There is a poly(n, m)-time algorithm for solving the (offline) maximum weight bipartite matching problem, where n = |Z | and m = |Y |.

Parameters n and m are used interchangeably. You may assume that m = n (essentially w.l.o.g.).

4 / 26

(15)

Goal: Compute maximum weight matching in bipartite graph B.

Many algorithms known for solving this in polynomial time, e.g.:

Linear programming.

Hungarian method.

The important thing to remember is the following.

Theorem (Offline bipartite matching)

There is a poly(n, m)-time algorithm for solving the (offline) maximum weight bipartite matching problem, where n = |Z | and m = |Y |.

Parameters n and m are used interchangeably. You may assume that m = n (essentially w.l.o.g.).

4 / 26

(16)

Goal: Compute maximum weight matching in bipartite graph B.

Many algorithms known for solving this in polynomial time, e.g.:

Linear programming.

Hungarian method.

The important thing to remember is the following.

Theorem (Offline bipartite matching)

There is a poly(n, m)-time algorithm for solving the (offline) maximum weight bipartite matching problem, where n = |Z | and m = |Y |.

Parameters n and m are used interchangeably.

You may assume that m = n (essentially w.l.o.g.).

4 / 26

(17)

Goal: Compute maximum weight matching in bipartite graph B.

Many algorithms known for solving this in polynomial time, e.g.:

Linear programming.

Hungarian method.

The important thing to remember is the following.

Theorem (Offline bipartite matching)

There is a poly(n, m)-time algorithm for solving the (offline) maximum weight bipartite matching problem, where n = |Z | and m = |Y |.

Parameters n and m are used interchangeably.

You may assume that m = n (essentially w.l.o.g.).

4 / 26

(18)

Online bipartite matching

5 / 26

(19)

Vertex arrival model

We consider the following (semi)-online model:

Nodes in Y are the offline nodes, which are given.

Nodes in Z arrive in (unknown) uniform random arrival order σ. When node z ∈ Z arrives, edge weights w zy for y ∈ Y are revealed. Decide (irrevocably) whether to match up z with some y ∈ Y , or not. Goal: Select maximum weight matching (online).

Example

Missing edges have weight w xy = 0. Suppose σ = (2, 1, 4, 3).

Y

Z

y

1

y

2

y

3

y

4

6 / 26

(20)

Vertex arrival model

We consider the following (semi)-online model:

Nodes in Y are the offline nodes, which are given.

Nodes in Z arrive in (unknown) uniform random arrival order σ. When node z ∈ Z arrives, edge weights w zy for y ∈ Y are revealed. Decide (irrevocably) whether to match up z with some y ∈ Y , or not. Goal: Select maximum weight matching (online).

Example

Missing edges have weight w xy = 0. Suppose σ = (2, 1, 4, 3).

Y

Z

y

1

y

2

y

3

y

4

6 / 26

(21)

Vertex arrival model

We consider the following (semi)-online model:

Nodes in Y are the offline nodes, which are given.

Nodes in Z arrive in (unknown) uniform random arrival order σ. When node z ∈ Z arrives, edge weights w zy for y ∈ Y are revealed. Decide (irrevocably) whether to match up z with some y ∈ Y , or not. Goal: Select maximum weight matching (online).

Example

Missing edges have weight w xy = 0. Suppose σ = (2, 1, 4, 3).

Y

Z

y

1

y

2

y

3

y

4

6 / 26

(22)

Vertex arrival model

We consider the following (semi)-online model:

Nodes in Y are the offline nodes, which are given.

Nodes in Z arrive in (unknown) uniform random arrival order σ.

When node z ∈ Z arrives, edge weights w zy for y ∈ Y are revealed. Decide (irrevocably) whether to match up z with some y ∈ Y , or not. Goal: Select maximum weight matching (online).

Example

Missing edges have weight w xy = 0. Suppose σ = (2, 1, 4, 3).

Y

Z

y

1

y

2

y

3

y

4

6 / 26

(23)

Vertex arrival model

We consider the following (semi)-online model:

Nodes in Y are the offline nodes, which are given.

Nodes in Z arrive in (unknown) uniform random arrival order σ.

When node z ∈ Z arrives, edge weights w zy for y ∈ Y are revealed.

Decide (irrevocably) whether to match up z with some y ∈ Y , or not. Goal: Select maximum weight matching (online).

Example

Missing edges have weight w xy = 0. Suppose σ = (2, 1, 4, 3).

Y

Z

y

1

y

2

y

3

y

4

6 / 26

(24)

Vertex arrival model

We consider the following (semi)-online model:

Nodes in Y are the offline nodes, which are given.

Nodes in Z arrive in (unknown) uniform random arrival order σ.

When node z ∈ Z arrives, edge weights w zy for y ∈ Y are revealed.

Decide (irrevocably) whether to match up z with some y ∈ Y , or not.

Goal: Select maximum weight matching (online).

Example

Missing edges have weight w xy = 0. Suppose σ = (2, 1, 4, 3).

Y

Z

y

1

y

2

y

3

y

4

6 / 26

(25)

Vertex arrival model

We consider the following (semi)-online model:

Nodes in Y are the offline nodes, which are given.

Nodes in Z arrive in (unknown) uniform random arrival order σ.

When node z ∈ Z arrives, edge weights w zy for y ∈ Y are revealed.

Decide (irrevocably) whether to match up z with some y ∈ Y , or not.

Goal: Select maximum weight matching (online).

Example

Missing edges have weight w xy = 0. Suppose σ = (2, 1, 4, 3).

Y

Z

y

1

y

2

y

3

y

4

6 / 26

(26)

Vertex arrival model

We consider the following (semi)-online model:

Nodes in Y are the offline nodes, which are given.

Nodes in Z arrive in (unknown) uniform random arrival order σ.

When node z ∈ Z arrives, edge weights w zy for y ∈ Y are revealed.

Decide (irrevocably) whether to match up z with some y ∈ Y , or not.

Goal: Select maximum weight matching (online).

Example

Missing edges have weight w xy = 0. Suppose σ = (2, 1, 4, 3).

Y

Z

y

1

y

2

y

3

y

4

6 / 26

(27)

Vertex arrival model

We consider the following (semi)-online model:

Nodes in Y are the offline nodes, which are given.

Nodes in Z arrive in (unknown) uniform random arrival order σ.

When node z ∈ Z arrives, edge weights w zy for y ∈ Y are revealed.

Decide (irrevocably) whether to match up z with some y ∈ Y , or not.

Goal: Select maximum weight matching (online).

Example

Missing edges have weight w xy = 0. Suppose σ = (2, 1, 4, 3).

Y

Z

y

1

y

2

y

3

y

4

z

2

3 3

6 / 26

(28)

Vertex arrival model

We consider the following (semi)-online model:

Nodes in Y are the offline nodes, which are given.

Nodes in Z arrive in (unknown) uniform random arrival order σ.

When node z ∈ Z arrives, edge weights w zy for y ∈ Y are revealed.

Decide (irrevocably) whether to match up z with some y ∈ Y , or not.

Goal: Select maximum weight matching (online).

Example

Missing edges have weight w xy = 0. Suppose σ = (2, 1, 4, 3).

Y

Z

y

1

y

2

y

3

y

4

z

2

3 3

3

6 / 26

(29)

Vertex arrival model

We consider the following (semi)-online model:

Nodes in Y are the offline nodes, which are given.

Nodes in Z arrive in (unknown) uniform random arrival order σ.

When node z ∈ Z arrives, edge weights w zy for y ∈ Y are revealed.

Decide (irrevocably) whether to match up z with some y ∈ Y , or not.

Goal: Select maximum weight matching (online).

Example

Missing edges have weight w xy = 0. Suppose σ = (2, 1, 4, 3).

Y

Z

y

1

y

2

y

3

y

4

z

1 4

z

2

3 3

3

6 / 26

(30)

Vertex arrival model

We consider the following (semi)-online model:

Nodes in Y are the offline nodes, which are given.

Nodes in Z arrive in (unknown) uniform random arrival order σ.

When node z ∈ Z arrives, edge weights w zy for y ∈ Y are revealed.

Decide (irrevocably) whether to match up z with some y ∈ Y , or not.

Goal: Select maximum weight matching (online).

Example

Missing edges have weight w xy = 0. Suppose σ = (2, 1, 4, 3).

Y

Z

y

1

y

2

y

3

y

4

z

1 4

z

2

3 3

3

z

4

5 6

1

6 / 26

(31)

Vertex arrival model

We consider the following (semi)-online model:

Nodes in Y are the offline nodes, which are given.

Nodes in Z arrive in (unknown) uniform random arrival order σ.

When node z ∈ Z arrives, edge weights w zy for y ∈ Y are revealed.

Decide (irrevocably) whether to match up z with some y ∈ Y , or not.

Goal: Select maximum weight matching (online).

Example

Missing edges have weight w xy = 0. Suppose σ = (2, 1, 4, 3).

Y

Z

y

1

y

2

y

3

y

4

z

1 4

z

2

3 3

3

z

4

5 6

6 1

6 / 26

(32)

Vertex arrival model

We consider the following (semi)-online model:

Nodes in Y are the offline nodes, which are given.

Nodes in Z arrive in (unknown) uniform random arrival order σ.

When node z ∈ Z arrives, edge weights w zy for y ∈ Y are revealed.

Decide (irrevocably) whether to match up z with some y ∈ Y , or not.

Goal: Select maximum weight matching (online).

Example

Missing edges have weight w xy = 0. Suppose σ = (2, 1, 4, 3).

Y

Z

y

1

y

2

y

3

y

4

z

1 4

z

2

3 3

3

z

3 1

z

4

5 6

6 1

6 / 26

(33)

Vertex arrival model

We consider the following (semi)-online model:

Nodes in Y are the offline nodes, which are given.

Nodes in Z arrive in (unknown) uniform random arrival order σ.

When node z ∈ Z arrives, edge weights w zy for y ∈ Y are revealed.

Decide (irrevocably) whether to match up z with some y ∈ Y , or not.

Goal: Select maximum weight matching (online).

Example

Missing edges have weight w xy = 0. Suppose σ = (2, 1, 4, 3).

Y

Z

y

1

y

2

y

3

y

4

z

1 4

z

2

3 3

3

z

3 1 1

z

4

5 6

6 1

6 / 26

(34)

Generalization of secretary problem (with uniform random arrivals).

Example

Y

Z

y

z

1

4

z

2 3 3

z

3 1

z

4 5

Remark

There exist many other models for online (bipartite) matching: Model where all nodes arrive online.

Rather than only one side of the bipartition. Model where the edges arrive online.

Instead of the vertices.

7 / 26

(35)

Generalization of secretary problem (with uniform random arrivals).

Example

Y

Z

y

z

1

4

z

2 3 3

z

3 1

z

4 5

Remark

There exist many other models for online (bipartite) matching: Model where all nodes arrive online.

Rather than only one side of the bipartition. Model where the edges arrive online.

Instead of the vertices.

7 / 26

(36)

Generalization of secretary problem (with uniform random arrivals).

Example

Y

Z

y

z

1

4

z

2 3 3

z

3 1

z

4 5

Remark

There exist many other models for online (bipartite) matching: Model where all nodes arrive online.

Rather than only one side of the bipartition. Model where the edges arrive online.

Instead of the vertices.

7 / 26

(37)

Generalization of secretary problem (with uniform random arrivals).

Example

Y

Z

y

z

1

4

z

2 3 3

z

3 1

z

4 5

Remark

There exist many other models for online (bipartite) matching:

Model where all nodes arrive online.

Rather than only one side of the bipartition. Model where the edges arrive online.

Instead of the vertices.

7 / 26

(38)

Generalization of secretary problem (with uniform random arrivals).

Example

Y

Z

y

z

1

4

z

2 3 3

z

3 1

z

4 5

Remark

There exist many other models for online (bipartite) matching:

Model where all nodes arrive online.

Rather than only one side of the bipartition. Model where the edges arrive online.

Instead of the vertices.

7 / 26

(39)

Generalization of secretary problem (with uniform random arrivals).

Example

Y

Z

y

z

1

4

z

2 3 3

z

3 1

z

4 5

Remark

There exist many other models for online (bipartite) matching:

Model where all nodes arrive online.

Rather than only one side of the bipartition.

Model where the edges arrive online. Instead of the vertices.

7 / 26

(40)

Generalization of secretary problem (with uniform random arrivals).

Example

Y

Z

y

z

1

4

z

2 3 3

z

3 1

z

4 5

Remark

There exist many other models for online (bipartite) matching:

Model where all nodes arrive online.

Rather than only one side of the bipartition.

Model where the edges arrive online.

Instead of the vertices.

7 / 26

(41)

Generalization of secretary problem (with uniform random arrivals).

Example

Y

Z

y

z

1

4

z

2 3 3

z

3 1

z

4 5

Remark

There exist many other models for online (bipartite) matching:

Model where all nodes arrive online.

Rather than only one side of the bipartition.

Model where the edges arrive online.

Instead of the vertices.

7 / 26

(42)

Generalization of secretary problem (with uniform random arrivals).

Example

Y

Z

y

z

1

4

z

2 3 3

z

3 1

z

4 5

Remark

There exist many other models for online (bipartite) matching:

Model where all nodes arrive online.

Rather than only one side of the bipartition.

Model where the edges arrive online.

Instead of the vertices.

7 / 26

(43)

Constant-factor approximations

Deterministic, or randomized, algorithm A is α-approximation if E σ [w(A(σ))] ≥ αOPT

OPT is weight of an (offline) maximum weight matching.

w (A(σ)) is (expected) weight of matching selected by A under σ. Know results:

[Babaioff-Immorlica-Kempe-Kleinberg, 2007]

1

16

-approximation for special case of uniform edge weights. [Dimitrov-Plaxton, 2008]

1

8

-approximation for for special case of uniform edge weights. [Korula-Pál, 2009]

1

8

-approximation

[Kesselheim-Radke-Tönnis-Vöcking, 2013].

1

e −

1

n

-approximation.

Best possible! Will see this algorithm later. [Reiffenhäuser, 2019].

Strategyproof

1

e -approximation for selling multiple items online.

8 / 26

(44)

Constant-factor approximations

Deterministic, or randomized, algorithm A is α-approximation if

E σ [w(A(σ))] ≥ αOPT

OPT is weight of an (offline) maximum weight matching.

w (A(σ)) is (expected) weight of matching selected by A under σ. Know results:

[Babaioff-Immorlica-Kempe-Kleinberg, 2007]

1

16

-approximation for special case of uniform edge weights. [Dimitrov-Plaxton, 2008]

1

8

-approximation for for special case of uniform edge weights. [Korula-Pál, 2009]

1

8

-approximation

[Kesselheim-Radke-Tönnis-Vöcking, 2013].

1

e −

1

n

-approximation.

Best possible! Will see this algorithm later. [Reiffenhäuser, 2019].

Strategyproof

1

e -approximation for selling multiple items online.

8 / 26

(45)

Constant-factor approximations

Deterministic, or randomized, algorithm A is α-approximation if E σ [w(A(σ))] ≥ αOPT

OPT is weight of an (offline) maximum weight matching.

w (A(σ)) is (expected) weight of matching selected by A under σ. Know results:

[Babaioff-Immorlica-Kempe-Kleinberg, 2007]

1

16

-approximation for special case of uniform edge weights. [Dimitrov-Plaxton, 2008]

1

8

-approximation for for special case of uniform edge weights. [Korula-Pál, 2009]

1

8

-approximation

[Kesselheim-Radke-Tönnis-Vöcking, 2013].

1

e −

1

n

-approximation.

Best possible! Will see this algorithm later. [Reiffenhäuser, 2019].

Strategyproof

1

e -approximation for selling multiple items online.

8 / 26

(46)

Constant-factor approximations

Deterministic, or randomized, algorithm A is α-approximation if E σ [w(A(σ))] ≥ αOPT

OPT is weight of an (offline) maximum weight matching.

w (A(σ)) is (expected) weight of matching selected by A under σ. Know results:

[Babaioff-Immorlica-Kempe-Kleinberg, 2007]

1

16

-approximation for special case of uniform edge weights. [Dimitrov-Plaxton, 2008]

1

8

-approximation for for special case of uniform edge weights. [Korula-Pál, 2009]

1

8

-approximation

[Kesselheim-Radke-Tönnis-Vöcking, 2013].

1

e −

1

n

-approximation.

Best possible! Will see this algorithm later. [Reiffenhäuser, 2019].

Strategyproof

1

e -approximation for selling multiple items online.

8 / 26

(47)

Constant-factor approximations

Deterministic, or randomized, algorithm A is α-approximation if E σ [w(A(σ))] ≥ αOPT

OPT is weight of an (offline) maximum weight matching.

w (A(σ)) is (expected) weight of matching selected by A under σ.

Know results:

[Babaioff-Immorlica-Kempe-Kleinberg, 2007]

1

16

-approximation for special case of uniform edge weights. [Dimitrov-Plaxton, 2008]

1

8

-approximation for for special case of uniform edge weights. [Korula-Pál, 2009]

1

8

-approximation

[Kesselheim-Radke-Tönnis-Vöcking, 2013].

1

e −

1

n

-approximation.

Best possible! Will see this algorithm later. [Reiffenhäuser, 2019].

Strategyproof

1

e -approximation for selling multiple items online.

8 / 26

(48)

Constant-factor approximations

Deterministic, or randomized, algorithm A is α-approximation if E σ [w(A(σ))] ≥ αOPT

OPT is weight of an (offline) maximum weight matching.

w (A(σ)) is (expected) weight of matching selected by A under σ.

Know results:

[Babaioff-Immorlica-Kempe-Kleinberg, 2007]

1

16

-approximation for special case of uniform edge weights. [Dimitrov-Plaxton, 2008]

1

8

-approximation for for special case of uniform edge weights. [Korula-Pál, 2009]

1

8

-approximation

[Kesselheim-Radke-Tönnis-Vöcking, 2013].

1

e −

1

n

-approximation.

Best possible! Will see this algorithm later. [Reiffenhäuser, 2019].

Strategyproof

1

e -approximation for selling multiple items online.

8 / 26

(49)

Constant-factor approximations

Deterministic, or randomized, algorithm A is α-approximation if E σ [w(A(σ))] ≥ αOPT

OPT is weight of an (offline) maximum weight matching.

w (A(σ)) is (expected) weight of matching selected by A under σ.

Know results:

[Babaioff-Immorlica-Kempe-Kleinberg, 2007]

1

16

-approximation for special case of uniform edge weights.

[Dimitrov-Plaxton, 2008]

1

8

-approximation for for special case of uniform edge weights. [Korula-Pál, 2009]

1

8

-approximation

[Kesselheim-Radke-Tönnis-Vöcking, 2013].

1

e −

1

n

-approximation.

Best possible! Will see this algorithm later. [Reiffenhäuser, 2019].

Strategyproof

1

e -approximation for selling multiple items online.

8 / 26

(50)

Constant-factor approximations

Deterministic, or randomized, algorithm A is α-approximation if E σ [w(A(σ))] ≥ αOPT

OPT is weight of an (offline) maximum weight matching.

w (A(σ)) is (expected) weight of matching selected by A under σ.

Know results:

[Babaioff-Immorlica-Kempe-Kleinberg, 2007]

1

16

-approximation for special case of uniform edge weights.

[Dimitrov-Plaxton, 2008]

1

8

-approximation for for special case of uniform edge weights.

[Korula-Pál, 2009]

1

8

-approximation

[Kesselheim-Radke-Tönnis-Vöcking, 2013].

1

e −

1

n

-approximation.

Best possible! Will see this algorithm later. [Reiffenhäuser, 2019].

Strategyproof

1

e -approximation for selling multiple items online.

8 / 26

(51)

Constant-factor approximations

Deterministic, or randomized, algorithm A is α-approximation if E σ [w(A(σ))] ≥ αOPT

OPT is weight of an (offline) maximum weight matching.

w (A(σ)) is (expected) weight of matching selected by A under σ.

Know results:

[Babaioff-Immorlica-Kempe-Kleinberg, 2007]

1

16

-approximation for special case of uniform edge weights.

[Dimitrov-Plaxton, 2008]

1

8

-approximation for for special case of uniform edge weights.

[Korula-Pál, 2009]

1

8

-approximation

[Kesselheim-Radke-Tönnis-Vöcking, 2013].

1

e −

1

n

-approximation.

Best possible! Will see this algorithm later. [Reiffenhäuser, 2019].

Strategyproof

1

e -approximation for selling multiple items online.

8 / 26

(52)

Constant-factor approximations

Deterministic, or randomized, algorithm A is α-approximation if E σ [w(A(σ))] ≥ αOPT

OPT is weight of an (offline) maximum weight matching.

w (A(σ)) is (expected) weight of matching selected by A under σ.

Know results:

[Babaioff-Immorlica-Kempe-Kleinberg, 2007]

1

16

-approximation for special case of uniform edge weights.

[Dimitrov-Plaxton, 2008]

1

8

-approximation for for special case of uniform edge weights.

[Korula-Pál, 2009]

1

8

-approximation

[Kesselheim-Radke-Tönnis-Vöcking, 2013].

1

e −

1

n

-approximation.

Best possible! Will see this algorithm later. [Reiffenhäuser, 2019].

Strategyproof

1

e -approximation for selling multiple items online.

8 / 26

(53)

Constant-factor approximations

Deterministic, or randomized, algorithm A is α-approximation if E σ [w(A(σ))] ≥ αOPT

OPT is weight of an (offline) maximum weight matching.

w (A(σ)) is (expected) weight of matching selected by A under σ.

Know results:

[Babaioff-Immorlica-Kempe-Kleinberg, 2007]

1

16

-approximation for special case of uniform edge weights.

[Dimitrov-Plaxton, 2008]

1

8

-approximation for for special case of uniform edge weights.

[Korula-Pál, 2009]

1

8

-approximation

[Kesselheim-Radke-Tönnis-Vöcking, 2013].

1

e −

1

n

-approximation.

Best possible!

Will see this algorithm later. [Reiffenhäuser, 2019].

Strategyproof

1

e -approximation for selling multiple items online.

8 / 26

(54)

Constant-factor approximations

Deterministic, or randomized, algorithm A is α-approximation if E σ [w(A(σ))] ≥ αOPT

OPT is weight of an (offline) maximum weight matching.

w (A(σ)) is (expected) weight of matching selected by A under σ.

Know results:

[Babaioff-Immorlica-Kempe-Kleinberg, 2007]

1

16

-approximation for special case of uniform edge weights.

[Dimitrov-Plaxton, 2008]

1

8

-approximation for for special case of uniform edge weights.

[Korula-Pál, 2009]

1

8

-approximation

[Kesselheim-Radke-Tönnis-Vöcking, 2013].

1

e −

1

n

-approximation.

Best possible! Will see this algorithm later.

[Reiffenhäuser, 2019].

Strategyproof

1

e -approximation for selling multiple items online.

8 / 26

(55)

Constant-factor approximations

Deterministic, or randomized, algorithm A is α-approximation if E σ [w(A(σ))] ≥ αOPT

OPT is weight of an (offline) maximum weight matching.

w (A(σ)) is (expected) weight of matching selected by A under σ.

Know results:

[Babaioff-Immorlica-Kempe-Kleinberg, 2007]

1

16

-approximation for special case of uniform edge weights.

[Dimitrov-Plaxton, 2008]

1

8

-approximation for for special case of uniform edge weights.

[Korula-Pál, 2009]

1

8

-approximation

[Kesselheim-Radke-Tönnis-Vöcking, 2013].

1

e −

1

n

-approximation.

Best possible! Will see this algorithm later.

[Reiffenhäuser, 2019].

Strategyproof

1

e -approximation for selling multiple items online.

8 / 26

(56)

Special case of uniform edge weights

Instance has uniform edge weights if for every z ∈ Z arriving online, there is a value v i > 0 such that w yz ∈ {0, v i }.

If we interpret edges with weight zero as non-existent, then every edge adjacent to z has same weight.

Example

Y

Z

y

1

y

2

y

3

y

4

z

1

z

2

z

3

z

4

1 3

3 2

5 5

5

9 / 26

(57)

Special case of uniform edge weights

Instance has uniform edge weights if for every z ∈ Z arriving online, there is a value v i > 0 such that w yz ∈ {0, v i }.

If we interpret edges with weight zero as non-existent, then every edge adjacent to z has same weight.

Example

Y

Z

y

1

y

2

y

3

y

4

z

1

z

2

z

3

z

4

1 3

3 2

5 5

5

9 / 26

(58)

Special case of uniform edge weights

Instance has uniform edge weights if for every z ∈ Z arriving online, there is a value v i > 0 such that w yz ∈ {0, v i }.

If we interpret edges with weight zero as non-existent, then every edge adjacent to z has same weight.

Example

Y

Z

y

1

y

2

y

3

y

4

z

1

z

2

z

3

z

4

1 3

3 2

5 5

5

9 / 26

(59)

Special case of uniform edge weights

Instance has uniform edge weights if for every z ∈ Z arriving online, there is a value v i > 0 such that w yz ∈ {0, v i }.

If we interpret edges with weight zero as non-existent, then every edge adjacent to z has same weight.

Example

Y

Z

y

1

y

2

y

3

y

4

z

1

z

2

z

3

z

4

1 3

3 2

5 5

5

9 / 26

(60)

Online bipartite matching

KRTV-algorithm

10 / 26

(61)

KRTV-algorithm

Theorem (Kesselheim-Radke-Tönnis-Vöcking, 2013) There exists a e 1m 1

-approximation for the online bipartite matching problem where nodes of one side of the bipartition arrive online in uniform random order.

Generalization of (weight-maximization) secretary problem. Corresponding to the case |Y | = 1.

Factor 1 e therefore also best possible.

As this is best possible for single secretary problem. Notation:

Assume arrival order is written as σ = (z 1 , . . . , z m ). Bipartite graph B = (Z ∪ Y , E ) with weights w : E → R ≥0 .

Induced subgraph on Z

0

∪ Y

0

is given by bipartite graph B

0

= (Z

0

∪ Y

0

, E

0

) with {y

0

, z

0

} ∈ E

0

⇔ y

0

∈ Y

0

, z

0

∈ Z

0

and {y

0

, z

0

} ∈ E.

11 / 26

(62)

KRTV-algorithm

Theorem (Kesselheim-Radke-Tönnis-Vöcking, 2013) There exists a e 1m 1

-approximation for the online bipartite matching problem where nodes of one side of the bipartition arrive online in uniform random order.

Generalization of (weight-maximization) secretary problem.

Corresponding to the case |Y | = 1. Factor 1 e therefore also best possible.

As this is best possible for single secretary problem. Notation:

Assume arrival order is written as σ = (z 1 , . . . , z m ). Bipartite graph B = (Z ∪ Y , E ) with weights w : E → R ≥0 .

Induced subgraph on Z

0

∪ Y

0

is given by bipartite graph B

0

= (Z

0

∪ Y

0

, E

0

) with {y

0

, z

0

} ∈ E

0

⇔ y

0

∈ Y

0

, z

0

∈ Z

0

and {y

0

, z

0

} ∈ E.

11 / 26

(63)

KRTV-algorithm

Theorem (Kesselheim-Radke-Tönnis-Vöcking, 2013) There exists a e 1m 1

-approximation for the online bipartite matching problem where nodes of one side of the bipartition arrive online in uniform random order.

Generalization of (weight-maximization) secretary problem.

Corresponding to the case |Y | = 1. Factor 1 e therefore also best possible.

As this is best possible for single secretary problem. Notation:

Assume arrival order is written as σ = (z 1 , . . . , z m ). Bipartite graph B = (Z ∪ Y , E ) with weights w : E → R ≥0 .

Induced subgraph on Z

0

∪ Y

0

is given by bipartite graph B

0

= (Z

0

∪ Y

0

, E

0

) with {y

0

, z

0

} ∈ E

0

⇔ y

0

∈ Y

0

, z

0

∈ Z

0

and {y

0

, z

0

} ∈ E.

11 / 26

(64)

KRTV-algorithm

Theorem (Kesselheim-Radke-Tönnis-Vöcking, 2013) There exists a e 1m 1

-approximation for the online bipartite matching problem where nodes of one side of the bipartition arrive online in uniform random order.

Generalization of (weight-maximization) secretary problem.

Corresponding to the case |Y | = 1.

Factor 1 e therefore also best possible.

As this is best possible for single secretary problem. Notation:

Assume arrival order is written as σ = (z 1 , . . . , z m ). Bipartite graph B = (Z ∪ Y , E ) with weights w : E → R ≥0 .

Induced subgraph on Z

0

∪ Y

0

is given by bipartite graph B

0

= (Z

0

∪ Y

0

, E

0

) with {y

0

, z

0

} ∈ E

0

⇔ y

0

∈ Y

0

, z

0

∈ Z

0

and {y

0

, z

0

} ∈ E.

11 / 26

(65)

KRTV-algorithm

Theorem (Kesselheim-Radke-Tönnis-Vöcking, 2013) There exists a e 1m 1

-approximation for the online bipartite matching problem where nodes of one side of the bipartition arrive online in uniform random order.

Generalization of (weight-maximization) secretary problem.

Corresponding to the case |Y | = 1.

Factor 1 e therefore also best possible.

As this is best possible for single secretary problem. Notation:

Assume arrival order is written as σ = (z 1 , . . . , z m ). Bipartite graph B = (Z ∪ Y , E ) with weights w : E → R ≥0 .

Induced subgraph on Z

0

∪ Y

0

is given by bipartite graph B

0

= (Z

0

∪ Y

0

, E

0

) with {y

0

, z

0

} ∈ E

0

⇔ y

0

∈ Y

0

, z

0

∈ Z

0

and {y

0

, z

0

} ∈ E.

11 / 26

(66)

KRTV-algorithm

Theorem (Kesselheim-Radke-Tönnis-Vöcking, 2013) There exists a e 1m 1

-approximation for the online bipartite matching problem where nodes of one side of the bipartition arrive online in uniform random order.

Generalization of (weight-maximization) secretary problem.

Corresponding to the case |Y | = 1.

Factor 1 e therefore also best possible.

As this is best possible for single secretary problem.

Notation:

Assume arrival order is written as σ = (z 1 , . . . , z m ). Bipartite graph B = (Z ∪ Y , E ) with weights w : E → R ≥0 .

Induced subgraph on Z

0

∪ Y

0

is given by bipartite graph B

0

= (Z

0

∪ Y

0

, E

0

) with {y

0

, z

0

} ∈ E

0

⇔ y

0

∈ Y

0

, z

0

∈ Z

0

and {y

0

, z

0

} ∈ E.

11 / 26

(67)

KRTV-algorithm

Theorem (Kesselheim-Radke-Tönnis-Vöcking, 2013) There exists a e 1m 1

-approximation for the online bipartite matching problem where nodes of one side of the bipartition arrive online in uniform random order.

Generalization of (weight-maximization) secretary problem.

Corresponding to the case |Y | = 1.

Factor 1 e therefore also best possible.

As this is best possible for single secretary problem.

Notation:

Assume arrival order is written as σ = (z 1 , . . . , z m ). Bipartite graph B = (Z ∪ Y , E ) with weights w : E → R ≥0 .

Induced subgraph on Z

0

∪ Y

0

is given by bipartite graph B

0

= (Z

0

∪ Y

0

, E

0

) with {y

0

, z

0

} ∈ E

0

⇔ y

0

∈ Y

0

, z

0

∈ Z

0

and {y

0

, z

0

} ∈ E.

11 / 26

(68)

KRTV-algorithm

Theorem (Kesselheim-Radke-Tönnis-Vöcking, 2013) There exists a e 1m 1

-approximation for the online bipartite matching problem where nodes of one side of the bipartition arrive online in uniform random order.

Generalization of (weight-maximization) secretary problem.

Corresponding to the case |Y | = 1.

Factor 1 e therefore also best possible.

As this is best possible for single secretary problem.

Notation:

Assume arrival order is written as σ = (z 1 , . . . , z m ).

Bipartite graph B = (Z ∪ Y , E ) with weights w : E → R ≥0 . Induced subgraph on Z

0

∪ Y

0

is given by bipartite graph B

0

= (Z

0

∪ Y

0

, E

0

) with {y

0

, z

0

} ∈ E

0

⇔ y

0

∈ Y

0

, z

0

∈ Z

0

and {y

0

, z

0

} ∈ E.

11 / 26

(69)

KRTV-algorithm

Theorem (Kesselheim-Radke-Tönnis-Vöcking, 2013) There exists a e 1m 1

-approximation for the online bipartite matching problem where nodes of one side of the bipartition arrive online in uniform random order.

Generalization of (weight-maximization) secretary problem.

Corresponding to the case |Y | = 1.

Factor 1 e therefore also best possible.

As this is best possible for single secretary problem.

Notation:

Assume arrival order is written as σ = (z 1 , . . . , z m ).

Bipartite graph B = (Z ∪ Y , E ) with weights w : E → R ≥0 .

Induced subgraph on Z

0

∪ Y

0

is given by bipartite graph B

0

= (Z

0

∪ Y

0

, E

0

) with {y

0

, z

0

} ∈ E

0

⇔ y

0

∈ Y

0

, z

0

∈ Z

0

and {y

0

, z

0

} ∈ E.

11 / 26

(70)

KRTV-algorithm

Theorem (Kesselheim-Radke-Tönnis-Vöcking, 2013) There exists a e 1m 1

-approximation for the online bipartite matching problem where nodes of one side of the bipartition arrive online in uniform random order.

Generalization of (weight-maximization) secretary problem.

Corresponding to the case |Y | = 1.

Factor 1 e therefore also best possible.

As this is best possible for single secretary problem.

Notation:

Assume arrival order is written as σ = (z 1 , . . . , z m ).

Bipartite graph B = (Z ∪ Y , E ) with weights w : E → R ≥0 . Induced subgraph on Z

0

∪ Y

0

is given by bipartite graph B

0

= (Z

0

∪ Y

0

, E

0

) with {y

0

, z

0

} ∈ E

0

⇔ y

0

∈ Y

0

, z

0

∈ Z

0

and {y

0

, z

0

} ∈ E.

11 / 26

(71)

OPT(Z

0

, Y

0

) := w(M

(Z

0

, Y

0

)) is weight of max. weight matching M

(Z

0

, Y

0

) on induced subgraph B

0

= (Z

0

∪ Y

0

, E

0

).

Algorithm constructs an online matching M.

KRTV-algorithm with arrival order σ = (z 1 , . . . , z m ) Set M = ∅.

Phase I (Observation): For i = 1, . . . , b m e c: Do not match up z i .

Phase II (Selection): For i = b m e c + 1, . . . , m:

Compute optimal (offline) matching M ({z 1 , . . . , z i } ∪ Y ). If it holds that

z i is matched up in offline matching M

to some y ∈ Y and y is unmatched in online matching M ,

then set M = M ∪ {z i , y }.

12 / 26

(72)

OPT(Z

0

, Y

0

) := w(M

(Z

0

, Y

0

)) is weight of max. weight matching M

(Z

0

, Y

0

) on induced subgraph B

0

= (Z

0

∪ Y

0

, E

0

).

Algorithm constructs an online matching M.

KRTV-algorithm with arrival order σ = (z 1 , . . . , z m ) Set M = ∅.

Phase I (Observation): For i = 1, . . . , b m e c: Do not match up z i .

Phase II (Selection): For i = b m e c + 1, . . . , m:

Compute optimal (offline) matching M ({z 1 , . . . , z i } ∪ Y ). If it holds that

z i is matched up in offline matching M

to some y ∈ Y and y is unmatched in online matching M ,

then set M = M ∪ {z i , y }.

12 / 26

(73)

OPT(Z

0

, Y

0

) := w(M

(Z

0

, Y

0

)) is weight of max. weight matching M

(Z

0

, Y

0

) on induced subgraph B

0

= (Z

0

∪ Y

0

, E

0

).

Algorithm constructs an online matching M.

KRTV-algorithm with arrival order σ = (z 1 , . . . , z m )

Set M = ∅.

Phase I (Observation): For i = 1, . . . , b m e c: Do not match up z i .

Phase II (Selection): For i = b m e c + 1, . . . , m:

Compute optimal (offline) matching M ({z 1 , . . . , z i } ∪ Y ). If it holds that

z i is matched up in offline matching M

to some y ∈ Y and y is unmatched in online matching M ,

then set M = M ∪ {z i , y }.

12 / 26

(74)

OPT(Z

0

, Y

0

) := w(M

(Z

0

, Y

0

)) is weight of max. weight matching M

(Z

0

, Y

0

) on induced subgraph B

0

= (Z

0

∪ Y

0

, E

0

).

Algorithm constructs an online matching M.

KRTV-algorithm with arrival order σ = (z 1 , . . . , z m ) Set M = ∅.

Phase I (Observation): For i = 1, . . . , b m e c: Do not match up z i .

Phase II (Selection): For i = b m e c + 1, . . . , m:

Compute optimal (offline) matching M ({z 1 , . . . , z i } ∪ Y ). If it holds that

z i is matched up in offline matching M

to some y ∈ Y and y is unmatched in online matching M ,

then set M = M ∪ {z i , y }.

12 / 26

(75)

OPT(Z

0

, Y

0

) := w(M

(Z

0

, Y

0

)) is weight of max. weight matching M

(Z

0

, Y

0

) on induced subgraph B

0

= (Z

0

∪ Y

0

, E

0

).

Algorithm constructs an online matching M.

KRTV-algorithm with arrival order σ = (z 1 , . . . , z m ) Set M = ∅.

Phase I (Observation): For i = 1, . . . , b m e c:

Do not match up z i .

Phase II (Selection): For i = b m e c + 1, . . . , m:

Compute optimal (offline) matching M ({z 1 , . . . , z i } ∪ Y ). If it holds that

z i is matched up in offline matching M

to some y ∈ Y and y is unmatched in online matching M ,

then set M = M ∪ {z i , y }.

12 / 26

(76)

OPT(Z

0

, Y

0

) := w(M

(Z

0

, Y

0

)) is weight of max. weight matching M

(Z

0

, Y

0

) on induced subgraph B

0

= (Z

0

∪ Y

0

, E

0

).

Algorithm constructs an online matching M.

KRTV-algorithm with arrival order σ = (z 1 , . . . , z m ) Set M = ∅.

Phase I (Observation): For i = 1, . . . , b m e c:

Do not match up z i .

Phase II (Selection): For i = b m e c + 1, . . . , m:

Compute optimal (offline) matching M ({z 1 , . . . , z i } ∪ Y ). If it holds that

z i is matched up in offline matching M

to some y ∈ Y and y is unmatched in online matching M ,

then set M = M ∪ {z i , y }.

12 / 26

(77)

OPT(Z

0

, Y

0

) := w(M

(Z

0

, Y

0

)) is weight of max. weight matching M

(Z

0

, Y

0

) on induced subgraph B

0

= (Z

0

∪ Y

0

, E

0

).

Algorithm constructs an online matching M.

KRTV-algorithm with arrival order σ = (z 1 , . . . , z m ) Set M = ∅.

Phase I (Observation): For i = 1, . . . , b m e c:

Do not match up z i .

Phase II (Selection): For i = b m e c + 1, . . . , m:

Compute optimal (offline) matching M ({z 1 , . . . , z i } ∪ Y ). If it holds that

z i is matched up in offline matching M

to some y ∈ Y and y is unmatched in online matching M ,

then set M = M ∪ {z i , y }.

12 / 26

(78)

OPT(Z

0

, Y

0

) := w(M

(Z

0

, Y

0

)) is weight of max. weight matching M

(Z

0

, Y

0

) on induced subgraph B

0

= (Z

0

∪ Y

0

, E

0

).

Algorithm constructs an online matching M.

KRTV-algorithm with arrival order σ = (z 1 , . . . , z m ) Set M = ∅.

Phase I (Observation): For i = 1, . . . , b m e c:

Do not match up z i .

Phase II (Selection): For i = b m e c + 1, . . . , m:

Compute optimal (offline) matching M ({z 1 , . . . , z i } ∪ Y ).

If it holds that

z i is matched up in offline matching M

to some y ∈ Y and y is unmatched in online matching M ,

then set M = M ∪ {z i , y }.

12 / 26

(79)

OPT(Z

0

, Y

0

) := w(M

(Z

0

, Y

0

)) is weight of max. weight matching M

(Z

0

, Y

0

) on induced subgraph B

0

= (Z

0

∪ Y

0

, E

0

).

Algorithm constructs an online matching M.

KRTV-algorithm with arrival order σ = (z 1 , . . . , z m ) Set M = ∅.

Phase I (Observation): For i = 1, . . . , b m e c:

Do not match up z i .

Phase II (Selection): For i = b m e c + 1, . . . , m:

Compute optimal (offline) matching M ({z 1 , . . . , z i } ∪ Y ).

If it holds that

z i is matched up in offline matching M

to some y ∈ Y and y is unmatched in online matching M ,

then set M = M ∪ {z i , y }.

12 / 26

(80)

OPT(Z

0

, Y

0

) := w(M

(Z

0

, Y

0

)) is weight of max. weight matching M

(Z

0

, Y

0

) on induced subgraph B

0

= (Z

0

∪ Y

0

, E

0

).

Algorithm constructs an online matching M.

KRTV-algorithm with arrival order σ = (z 1 , . . . , z m ) Set M = ∅.

Phase I (Observation): For i = 1, . . . , b m e c:

Do not match up z i .

Phase II (Selection): For i = b m e c + 1, . . . , m:

Compute optimal (offline) matching M ({z 1 , . . . , z i } ∪ Y ).

If it holds that

z i is matched up in offline matching M

to some y ∈ Y

and y is unmatched in online matching M ,

then set M = M ∪ {z i , y }.

12 / 26

(81)

OPT(Z

0

, Y

0

) := w(M

(Z

0

, Y

0

)) is weight of max. weight matching M

(Z

0

, Y

0

) on induced subgraph B

0

= (Z

0

∪ Y

0

, E

0

).

Algorithm constructs an online matching M.

KRTV-algorithm with arrival order σ = (z 1 , . . . , z m ) Set M = ∅.

Phase I (Observation): For i = 1, . . . , b m e c:

Do not match up z i .

Phase II (Selection): For i = b m e c + 1, . . . , m:

Compute optimal (offline) matching M ({z 1 , . . . , z i } ∪ Y ).

If it holds that

z i is matched up in offline matching M

to some y ∈ Y and y is unmatched in online matching M ,

then set M = M ∪ {z i , y }.

12 / 26

(82)

OPT(Z

0

, Y

0

) := w(M

(Z

0

, Y

0

)) is weight of max. weight matching M

(Z

0

, Y

0

) on induced subgraph B

0

= (Z

0

∪ Y

0

, E

0

).

Algorithm constructs an online matching M.

KRTV-algorithm with arrival order σ = (z 1 , . . . , z m ) Set M = ∅.

Phase I (Observation): For i = 1, . . . , b m e c:

Do not match up z i .

Phase II (Selection): For i = b m e c + 1, . . . , m:

Compute optimal (offline) matching M ({z 1 , . . . , z i } ∪ Y ).

If it holds that

z i is matched up in offline matching M

to some y ∈ Y and y is unmatched in online matching M ,

then set M = M ∪ {z i , y }.

12 / 26

(83)

ALGORITHM 1:KRTV-algorithm for online bipartite matching Input :Bipartite graphB= (Z∪Y,E)and weightsw:E→R≥0.

Deterministic algorithmAfor max. weight bipartite matching.

SetM=∅.

fori=1, . . . ,bm/ecdo Do nothing end

fori=bm/ec+1, . . . ,mdo

Compute optimal matchingMi =M({z1, . . . ,zi},Y)usingA if{zi,y} ∈Mi for somey∈Ythen

SetM←M∪ {zi,y}ifyis unmatched inM.

end end returnM

Example (of running Phase II for i = 1, . . . , m)

Y

Z

Matching

M

i

Matching

M

y

1

y

2

y

3

y

4

Y

Z

y

1

y

2

y

3

y

4

z

1

z

2

z

3

z

4

2 3

2

5 5

4 5

13 / 26

Referenzen

ÄHNLICHE DOKUMENTE

Today, the goal is to give a “quasi-polynomial” time algorithm that computes an -approximate mixed Nash equilibrium.. Supports of mixed strategies play an important

Once the support is fixed, the computation of an equilibrium (with that support) reduces to solving a linear program.. 6

We will later see no-regret algorithms whose output is a coarse correlated equilibrium (similar algorithms exist converging to CE).. Therefore, for (C)CE, it’s not always necessary

Player assumes all other players play private recommendation, i.e., Alice assumes Bob follows his recommendation (and vice versa)!. In CE, no player has incentive to deviate given

In general, we assume to have an all-knowing, adaptive adversary Can choose which element to present in step i, based on.. Choices of online algorithm in

Side note: Original version of secretary problem asks for maximizing probability with which best element is selected.. If one picks maximum weight element

Sponsored search auctions (e.g., Google) Online selling platforms (e.g., eBay) (Stable) matching problems.. Matching children

Sponsored search auctions (e.g., Google) Online selling platforms (e.g., eBay) (Stable) matching problems.. Matching children