• No results found

5.3 Cloning from SPA ST to SMTI

5.5.6 Lower bound for the algorithm

Figure 5.9 shows instance I5 of SPA-ST. A maximum stable matching M0 in I is given by

M0 = {(s1, p2), (s2, p3), (s3, p1)}. The only possible blocking pairs for this matching are

(s3, p3) and (s3, p2). However, neither pair can be a blocking pair since l2 prefers both of

their current assignees to s3.

A trace is given as Table 5.3 which shows the execution run of Algorithm 5.2 over instance I5. The algorithm outputs stable matching M = {(s1, p3), (s3, p2)}. The possible blocking

pairs of this matching are (s2, p3) and (s3, p3). Neither can be a blocking pair since l2prefers

Student preferences: s1: (p3p2) s2: p3 s3: p3p2 p1 Project details: p1: lecturer l1, c1 = 2 p2: lecturer l1, c2 = 1 p3: lecturer l2, c3 = 1 Lecturer preferences: l1: s1 s3 l2: s1 s2 s3 d1 = 2 d2 = 1

Figure 5.9: SPA-ST instance I5 in which Algorithm Max-SPA-ST-Approx finds a stable

matching two-thirds of the size of optimal.

Action s1 s2 s3

1 s1 applies to p3, accepted p3

2 s2 applies to p3, accepted p3

3 s3 applies to p3, rejected, s3 removes p3 p3

4 s3 applies to p2, accepted p3 p2

5 s1 applies to p3, accepted, s2 removes p3 p3 p2

6 s2 moves to phase 2 p3 p2

7 s2 applies to p3, rejected, s2 removes p3 p3 p2

8 s2 moves to phase 3 p3 p2

Table 5.3: Trace of running Algorithm Max-SPA-ST-Approx for instance I5 in Figure 5.9.

In this table, the phrase “si removes pj” indicates that student si removes project pj from

their preference list.

Therefore, Algorithm Max-SPA-ST-Approx has found a stable matching that is exactly two- thirds of the size of the maximum stable matching, thus the algorithm cannot guarantee a better bound than 32.

We further note that this result holds for the arbitrarily large family of instances generated by copying instance I5 a constant number of times, such that in each copy, indices of students

and projects increase by 3 and indices of lecturers increase by 2.

5.6

Conclusions and future work

This chapter has described a 32-approximation algorithm for MAX-SPA-ST. Furthermore,

we gave an example to show that the 32 bound is tight. It is of interest to determine how likely it is that such a worst-case example would arise in practice. In other words, can we expect the algorithm to produce stable matchings that are much closer to optimal in general? In Chapter 6, we present a new IP model forMAX-SPA-STand use this to determine whether our 32-approximation algorithm might in general produce matchings that are closer to optimal than the worst case bound of 32. It remains open to describe an approximation algorithm that has a better performance guarantee, and/or to prove a stronger lower bound on the inapproximability of the problem than the current best bound of 3329 [74].

5.6. Conclusions and future work 152 possible for a stable matching to admit a blocking coalition, where a permutation of student assignments could improve the allocations of the students and lecturers involved without harming anyone else. Since permutations of this kind cannot change the size of the matching they are not studied further here, but would be of interest for future work.

Chapter 6

Experiments and IP models for

SPA

-

ST

and lecturer load balancing

for

SPA

-

STL

6.1

Introduction

6.1.1

Background

In this chapter we continue our work in SPA-STby first evaluating the performance of our

3

2-approximation algorithm from Chapter 5 (Algorithm Max-SPA-ST-Approx), and second,

investigating lecturer load balancing in SPA-STL. An introduction to SPA-ST was given in

Section 2.5.2.2. The extension to SPA-ST, in which each lecturer has a target number of

assignees, known asSPA-STL, was introduced in Section 2.5.2.3. InSPA-STL, it is desirable

to find a matching that brings the number of assignees of each lecturer as close to their target as possible. There are several ways this may be done and three natural definitions are given below. Let I be an instance ofSPA-STL.

• A matching M is load-max-balanced if the maximum absolute difference between lecturer targets and lecturer allocations is minimised over all matchings. We define the load-max-balanced scorerm(M ) as max

lk∈L

||M (lk)| − tk|. Thus a load-max-balanced

matchingis a matching M such that rm(M ) = min

M0∈Mmaxl

k∈L

||M (lk)| − tk|.

• A matching M is load-sum-balanced if the sum of absolute differences between lec- turer targets and lecturer allocations is minimised over all matchings. We define the load-sum-balanced scorers(M ) asPlk∈L||M (lk)| − tk|. Then a load-sum-balanced

matchingis a matching M such that rs(M ) = min

M0∈M

P

6.1. Introduction 154 Finally, a matching M is load-balanced if it is both load-max-balanced and load-sum- balanced.

6.1.2

Motivation

Some motivation for finding large stable matchings inSPA-STwas presented in Section 5.1.2

of Chapter 5. Recall thatMAX-SPA-STis the problem of finding a maximum stable matching

in an instance of SPA-ST. We are interested in determining how large the matchings that are produced by the approximation algorithm (developed in Chapter 5) are, in practice. In particular, understanding whether the algorithm tends to produce a stable matching with size close to a maximum stable matching or close to either the32 bound or a minimum-sized stable matching (hereafter minimum stable matching) will help evaluate its performance.

To motivate our work in SPA-STL, we further discuss the example introduced in Section

5.1.2, which comprised students assigning to projects at a university. In this setting, each lecturer offers a range of projects. Students have preferences over projects, and lecturers have preferences over the students who rank their projects. We may wish to find a matching that provides fair lecturer allocations, so that the number of students assigned to each lecturer is as balanced as possible. This may be modelled by giving each lecturer a target number of assignees. Since teaching and administration responsibilities as well as the number of hours worked per week may differ among lecturers, it makes sense that each lecturer has an individual target that is calculated based on these factors. It is then desirable to find a matching that balances supervision loads fairly among lecturers by bringing each lecturer as close to their target as possible. Further motivation for studying load-balanced matchings as opposed to only load-max-balanced and load-sum-balanced matchings is presented in Section 6.3.2.

6.1.3

Contribution

In this chapter we present two new contributions relating toSPA-ST. Firstly, in Section 6.2, we evaluate our 32-approximation algorithm for MAX-SPA-ST, by comparing output of this algorithm against a new IP model for MAX-SPA-ST, using randomly-generated data. We

find that the performance of the approximation algorithm easily surpassed the 32 bound, con- structing a stable matching within 92% of optimal in all cases, with the percentage being far higher for many instances. Secondly, in Section 6.3, we consider lecturer load balancing in

SPA-STL. We give polynomial-time algorithms to find optimal matchings of the three types of matching defined in Section 6.1.1. Additionally we show that when combined with stabil- ity, finding optimal matchings of these types becomes NP-hard. We additionally present an IP model to find a load balanced stable matching and prove its correctness.

6.1.4

Structure of the chapter

Section 6.2 presents the experiments evaluating the performance of the 32-approximation algorithm for MAX-SPA-ST. Within this section, the IP model for MAX-SPA-ST and exper- imental evaluation are given in Sections 6.2.2 and 6.2.3 respectively. Section 6.3 describes the work relating to lecturer load balancing in SPA-STL. In Section 6.3.3 we present algo- rithms to find a load-balanced matching and a maximum-sized load-max-balanced matching (henceforth maximum load-max-balanced matching). Complexity results for finding an opti- mal stable matching with respect to various lecturer load balancing objectives are presented in Section 6.3.4. Section 6.3.5 gives an IP model for finding a load-balanced stable matching. Finally, conclusions and future work are discussed in Section 6.4.