Let I be an instance ofSPA-P-L2, and let s+(I) denote the maximum size of a stable match-
ing in I. Define MAX-SPA-P-L2 to be the problem of computing s+(I). In this section, we
show thatMAX-SPA-P-L2 is NP-hard, and moreover that there exists a constant δ2 > 1 such that it is NP-hard to approximate MAX-SPA-P-L2 within δ2. The result holds even if each project has capacity 1.
We prove this result using a reduction from a problem relating to matchings in graphs. A matching M in a graph G is said to be maximal if no proper superset of M is a matching in G. Let β1−(G) denote the minimum size of a maximal matching in G. Define MIN-MM to be the problem of computing β1−(G), given a graph G. The following result regarding the inapproximability ofMIN-MM is proved in [45].
Theorem 6.3.2 ([45]). Let G = (V, E) be an instance of MIN-MM, wherem = |E|. Then
there exist constants c0 > 0 and δ0 > 1 such that it is NP-hard to distinguish between the casesβ1−(G) ≤ c0m and β1−(G) > δ0c0m. Hence it is NP-hard to approximate MIN-MM withinδ0. The result holds even for subdivision graphs1of cubic graphs.
We will use Theorem 6.3.2 together with the notion of a gap-preserving reduction [121], which may be defined as follows.
1Given a graph G, the subdivision graph of G, denoted by S(G), is obtained by subdividing each edge
6.3. SPA-Pwith constant number of lecturers 141
Definition 6.3.3 ([121]). LetQ
1 be a minimisation problem and let Q
2 be a maximisation problem. Denote by OP Ti(x) the optimal measure over all feasible solutions for a given instancex ofQ
i (i ∈ {1, 2}). Let α ≥ 1 be some constant and let g1 be a function that maps an instancex ofQ
1to a positive rational number. Then agap-preserving reduction from Q
1 toQ
2 is a tuplehf, β, g2i such that: (a) f maps an instance x ofQ
1to an instancef (x) of Q
2 in polynomial time; (b) β ≥ 1 is a constant;
(c) g2 maps an instancef (x) ofQ2to a positive rational number; (d) for any instancex ofQ
1:
(i) ifOP T1(x) ≤ g1(x) then OP T2(f (x)) ≥ g2(f (x));
(ii) ifOP T1(x) > αg1(x) then OP T2(f (x)) < (1/β)g2(f (x)).
The following proposition is an immediate consequence of Definition 6.3.3. Proposition 6.3.4 ([121]). LetQ
1 be a minimisation problem and let Q
2be a maximisation problem, and suppose that there is a gap-preserving reduction from Q
1 to Q
2. Assuming the notation of Definition 6.3.3, suppose further that it is NP-hard to distinguish between instances x of Q
1 such that OP T1(x) ≤ g1(x) and OP T1(x) > αg1(x). Then it is NP- hard to distinguish between instances f (x) of Q
2 such that OP T2(f (x)) ≥ g2(f (x)) and OP T2(f (x)) < (1/β)g2(f (x)). Hence it is NP-hard to approximate
Q
2 withinβ.
We use Proposition 6.3.4, together with Theorem 6.3.2, to prove the NP-hardness and inap- proximability result forMAX-SPA-P-L2.
Theorem 6.3.5. MAX-SPA-P-L2 is NP-hard. Moreover, it is NP-hard to approximateMAX-
SPA-P-L2 within δ2, for some δ2 > 1. The result holds even if each project has capacity 1.
Proof. Let G (a subdivision graph of some cubic graph G0) be an instance ofMIN-MM. Then G is a bipartite graph, where G = (U, W, E) and, without loss of generality, suppose each vertex in U has degree 2 and each vertex in W has degree 3. Let U = {u1, u2, . . . , un1} and
W = {w1, w2, . . . , wn2}. For each ui ∈ U , let wji and wki be the vertices adjacent to ui in
G, where ji < ki.
We construct an instance I ofSPA-P-L2 as follows. Let S ∪ U1∪ U2 be the set of students, where S = {s1, s2, . . . , sn2}, U
1 = {u1
i : ui ∈ U } and U2 = {u2i : ui ∈ U }. Let P ∪ Q ∪ R ∪ T be the set of projects, where P = {p1, p2, . . . , pn2}, Q = {q1, q2, . . . , qn1},
R = {r1, r2, . . . , rn1} and T = {t1, t2, . . . , tn2}, and each project has capacity 1. Let {x, y}
2n1 and offers Q ∪ R. The preference lists in I are shown in Figure 6.2. We claim that s+(I) = 2n
1+ n2− β1−(G).
Students’ preferences Lecturers’ preferences u1
i: qi pji pki ri (1 ≤ i ≤ n1) x: p1· · · pn2 t1. . . tn2
u2i: qi pki pji (1 ≤ i ≤ n1) y: q1. . . qn1 r1. . . rn1
sj: tj (1 ≤ j ≤ n2)
Figure 6.2: Preference lists for constructed instance ofSPA-P-L2
Suppose firstly that G has a maximal matching M , where |M | = β1−(G). We construct a matching M0 in I as follows. For each edge {ui, wj} ∈ M , if j = ji, add (u1i, pji) and
(u2
i, qi) to M0; whilst if j = ki, add (ui1, qi) and (u2i, pki) to M
0. For each u
i ∈ U , if ui is unassigned in M , add (u1
i, ri) and (u2i, qi) to M0. For each wj ∈ W , if wj is unassigned in M , add (sj, tj) to M0 for 1 ≤ j ≤ n2 − |M |. Clearly, M0 is a matching in I and |M0| = 2|M | + 2(n
1− |M |) + (n2 − |M |).
No project in Q can be involved in a blocking pair of M0, since each member of Q is full in M0. Similarly, no project in T can be involved in a blocking pair of M0, since lecturer x is full in M0, and since x prefers her worst non-empty project in T to all the undersubscribed projects in T . Hence, no student in S can be involved in a blocking pair of M0. Similarly, no u2
i ∈ U2 can be involved in a blocking pair of M0, since u2i is assigned in M0 to either her first or second choice project. Also no project in R can be involved in a blocking pair of M0, since each member of U1is assigned in M0. Now suppose the pair (u1i, pj) blocks M0. Then (u1i, ri) ∈ M0, and pj is undersubscribed in M0. Thus no edge in M is incident to ui or wj in G. Hence M ∪ {{ui, wj}} is a matching in G, contradicting the maximality of M . Thus, M0admits no blocking pair.
We next verify that M0 is coalition-free. Clearly, no student in S can be involved in a coali- tion, since any such student who is assigned in M has her first choice project. Also, no student who is assigned in M0 to a project in Q can be in a coalition, since every such stu- dent is assigned to her first choice project. As a consequence, no student who is assigned in M0 to her second choice project can be in a coalition, since each such student prefers only a project in Q. Finally, no student in U1who is assigned to a project in R can be in a coalition, since no assigned student prefers a project in R to her project in M0. Hence M0 is stable. Also s+(I) ≥ 2n1+ n2− β1−(G).
Conversely, suppose that M0 is a stable matching in I such that |M0| = s+(I). First, we claim that each project in Q is full in M0. For suppose not, then there exists i (1 ≤ i ≤ n1) such that (u1i, qi) /∈ M0 and (u2i, qi) /∈ M0; and thus (u1i, qi) blocks M0, a contradiction.