Re-Exam "Discrete: Optimization"
Re-Exam "Discrete: Optimization"
16:15
allowed!
o The total number of points of the regular assignments is 45. You get 5 bonus
points, and you can get 5 bonus points from Exercise lb.
1. Spanning Trees
We consider the problem ExactST0l:
E -+ {0,1},
i.e.,
Goal: frnd a spanning tree 7 of G such that c(7) :Deerc(e): k (this means that
7 contains k edges of cost 1 and n-k- 1 edges of cost 0), or conclude that no
such tree exists.
As usual, we have
(")
,: lVl and m:
lEl.
(b)
(")
Part (b).
Solution: aHamiltoniancycle
Goal: rnaximize
iR.+.
He Eof G.
(")
(b)
> +..(H.).
3. NP-Completeness
The exact-costs spanning tree problem, denoted by ExactST, is the following
decision problem:
G:
(V,E),
edge costs c :
E -+ N, number k e N.
1xt
Hi,nt: You can reduce from SubsetSum, which is the following problem and known
to be NP-complete:
Instance: n items with weights tui,
Questi,on: is there a subset
k?
Remark: Note the difference to Exercise 1 - in Exercise 1, only costs 0 and 1 are
allowed; here, arbitrary natural numbers are allowed as costs.
4. Minimum-Cost Flows
Let G : (V,E) be a flow network with budgets b : V -) Z, capacities u : E -+ N, and
costs c : E -+N. For a feasible flow / : E -+lR+ on this network, let H : (V,Df)
be an undirected graph with the same set V of nodes as G and with the following set
Dy of edges:
D : {{", r} I @,u) > 0 and (u,,u) < w(u,u)}.
This means that the edge set D7 contains an undirected edge {u,r} if the edge
(u, u) e .B is neither saturated nor empty under the flow /.
For simplicity, you can assume that G does not contain pairs of reversed edges, i.e.,
t (u,,u) E, then (u,u) ( E.
Erample: The left-hand side shows a flow network including a flow /, the right-hand
side shows the corresponding graph Dy. Budgets are written inside the nodes. The
edge labels are "flowf capacity". Costs are omitted as they do not play a role in this
example.
ffi
x"
(")
\)/
-1
/* of minimum cost
5. Matchings
The node surveillant problem (denoted by NodeSurv) is the following decision
problem: An instance of NodeSurv is an undirected graph G : (V,E) with budgets
, e N for all nodes u e V. A node u N can surveil at most , of the edges adjacent
to it.
Our goal is to assign the edges to the nodes such that as many edges as possible
are surveilled.
(6 points)Devise a polynomial-time algorithm for determining the maximum number of edges that can be surveilled.
Remark: You can use a (polynomial-time) subroutine for computing bipartite matchings of maximum cardinality as a black box. A proof of correctness of your algorithm
is not needed, but you should give a brief explanation why it works. A formal analysis
of the running-time is also not needed, if it is clear that it is polynomial.
Erample: In the four examples below, the budgets are written inside the nodes. In
the two graphs on the left-hand side, all edges can be surveilled. This means that the
ans\Mers are "5" and "8". In the third graph, the answer is "4". In the fourth graph,
the answer is "7" .
6. Tlue or False
Are the following statements true or false? Justify your answer.
(")
(Z points) Assume that you have a flow network with source s and sink , an s-
(x,N), and a flow Then the capacity of the cut (x, X) is at least the flow
cut
value of
(b)
(2
i.e.,
"f ,
points)If
/.
in polynomial time.