Solutions to problem set 4

advertisement
Massachusetts Institute of Technology
Michel X. Goemans
18.433: Combinatorial Optimization
Spring 2015
Solutions to problem set 4
Pn−1
4-2 Notice that one can begin by checking whether wi > wn + g 0 , where g 0 = i=1
gni , for
some i < n. Obviously
if
this
was
the
case,
team
n
could
not
win.
Therefore,
let us
Pn−1
assume wi ≤ wn + i=1 gni for all i < n. Moreover, if there was an outcome where
team n won, then it could only get better if it won all of its games, so let us assume
that all gni games to be played between teams n and i are won by team n. If we let
xij to be the number of games between i and j won by i, then team n has a chance
of winning
Pn−1 iff there are0 positive integers xij with xij + xji = gij = gji , i 6= j, and
wi + j=1 xij ≤ wn + g for all i < n.
Consider the graph G on V = {s, t} ∪ {v(i, j)}1≤i<j≤n−1 ∪ {w(i)}1≤i≤n−1 with edges
classified in these categories (all lower capacities are l(e) = 0).
• All edges e from s to v(i, j) with u(e) = gij .
• All edges e1 , e2 from v(i, j) to w(i) and to w(j) with u(e1 ) = u(e2 ) = ∞.
• All edges e from w(i) to t with u(e) = wn + g 0 − wi .
P
We claim that team n can win iff the maximum flow from s to t is i<j gij . Indeed a
maximum flow with that value exists iff there exists an integer flow x : E → Z with
that flow value exists (since all capacities are integers). P
If we let yij = x(v(i, j), w(i)),
0
such integer flow satisfies yij ≥ 0, gij = yij + yji and n−1
j=1 xij ≤ wn + g − wi . As
asserted above, this is equivalent to team n having some chance.
4-3 Let us construct a digraph D = (V 0 , A) as following. We create vertices we corresponding to each edge e ∈ E(G), source s, and sink t. The set of vertices V 0 of D
is
V 0 := {s, t} ∪ {we | e ∈ E(G)} ∪ {v | v ∈ V (G)}.
For arcs, we let
A := {(s, we ) | e ∈ E(G)} ∪ {(v, t) | v ∈ V (G)}
∪ {(we , v) | e ∈ E(G) and v is an endpoint of e}.
Furthermore, we let capacity be c(a) = 1 if a is (s, we ), c(a) = +∞ if (we , v), and
c(a) = p(v) if a = (v, t).
Let e = uv be an edge of G. If a unit flow goes through (s, we ) in a maximum flow,
exactly one of (we , u) or (we , v) will have a unit flow (by integrality). Each corresponds
to orienting e as (v, u) or (u, v), respectively. Moreover, if we push a unit flow through
(s, we ) for every e, then the value of flow going through (v, t) is equal to the indegree
of v in the corresponding orientation. Hence, the problem is equivalent to that the
maximum s − t flow of D has value |E(G)|.
Solutions to problem set 4
Spring 2015
2
If the graph cannot be oriented with indegree requirement, then by max-flow
min-cut
P
theorem, there is a set U ⊂ V 0 such that (1) s ∈ U and t 6∈ U , and (2) a∈δ+ (U ) c(a) <
|E(G)|.
Let S = U ∩ V (G). We may assume that U contains we if and only if e ⊆ S, since
c((wuv , v)) = c((wuv , u)) = ∞. So,
X
X
X
|E(G)| >
c(a) =
p(v) +
1.
a∈δ + (U )
We have
P
v∈S
v∈S
e6∈E(S)
p(v) < |E(S)|.
4-4 Let G be an undirected graph with minimum degree δ(G) ≥ k. Consider the maximum
adjacency ordering seen in class:
Choose any vertex v1 ∈ V and let S = {v1 }. Iteratively, find vi = arg maxv∈V \S c(S, {v})
and let S = S ∪ {vi }. We get an ordering of the vertices v1 , v2 , . . . , vn .
As shown in the lecture notes, {vn } induces a minimum (vn−1 , vn )-cut; the value of
such a minimum cut equals to the outdegree of vn , which is at least k by assumption.
From duality, the maximum flow value between vn−1 and vn is at least k, as desired.
Download