Next Article in Journal
The Impact of Gifts and Shared Experiences on an Investor-Manager Relationship
Previous Article in Journal
A General Model of Bertrand–Edgeworth Duopoly
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Match Stability with a Costly and Flexible Number of Positions

Economic Science Institute, Chapman University, Orange, CA 92866, USA
*
Author to whom correspondence should be addressed.
Games 2025, 16(3), 27; https://doi.org/10.3390/g16030027
Submission received: 17 February 2025 / Revised: 25 April 2025 / Accepted: 9 May 2025 / Published: 21 May 2025

Abstract

:
One of the main goals of two-sided matching mechanisms is to pair two groups of agents in a stable manner. Stability means that no pair of agents has an incentive to deviate from their assigned match. The outcome of such a match can have significant consequences for the participants involved. Most existing research in this field assumes that the quotas of organizations are fixed and externally determined, which may not always be realistic. We introduce the concept of slot stability, which considers the possibility that organizations may want to adjust their quotas after the match process. To address this issue, we propose an algorithm that generates both stable and slot-stable matches by using flexible, endogenous quotas.

1. Introduction

Economic research has significantly influenced the development of market institutions, especially in the realm of matching institutions. These institutions are designed to manage the allocation of a limited number of positions or quotas by organizations to applicants, ensuring that each applicant is matched to only one position. The primary objective is to create a process that results in stable matches.
The concept of match stability was originally introduced by Gale and Shapley (1962) in their groundbreaking paper (hereafter, GS). They define a match as stable when there is no compelling incentive for a pair of participants to switch their assignments. In addition, GS introduced the deferred acceptance algorithm, a widely used method to achieve stable matches between applicants and organizations. In this algorithm, applicants submit rank order lists (ROLs) of organizations based on their preferences, while organizations similarly rank applicants according to their preferences. The outcome of this algorithm results in a stable match when the ROLs reveal preferences truthfully.
The basic matching problem has evolved and extended to cases where preferences are more complex. For example, the student-project allocation problem deals with matching students to projects that can have overlapping lecturers while taking into account individual preferences and class capacity constraints. In this environment, Abraham et al. (2007) modified the matching algorithm to ensure stability. Another example is the National Resident Matching Program, which assigns interns to different hospitals and specialties. At first, the algorithm treated every individual’s preference as independent of any other individual’s preference and gave a stable matching in that environment. However, couples in the match may have joint preferences because they want to be near each other. The deferred acceptance algorithm does not consider this and can produce unstable outcomes. In this environment, Roth and Peranson (1999) proposed a new matching algorithm that incorporates couple preferences, although it does not guarantee a stable match. Nevertheless, computational experiments demonstrate that the algorithm’s outcomes closely approximate stability. Crawford (2008) notes that the Resident Matching program has fixed salary specifications for residents. He extended the GS matching algorithm to allow for flexible salaries, promoting more efficient matches. This extension enables hospitals to offer alternative salaries for each position in the match. Thus, rankings can now reflect salary and location preferences in the matching process.
The matching literature currently defines stability under the assumption of fixed quotas. Organizations specify the maximum number of applicants that they will accept before the match begins. Rios et al. (2021) examined the Chilean university admission system, where the maximum number of slots can exceed the preset quota. Matches are based entirely on academic scores, which can have ties. Therefore, quotas can be exceeded if there is a tie between the accepted worst candidate and any other candidate who wants to join, in which case, they must accept all such candidates. However, this starts by posting a quota and then adjusting it in light of scores. Gokhale et al. (2024) examined how stable matchings shift when baseline quotas are changed (slots are added or subtracted from the baseline). They investigate whether applicants or organizations benefit from these capacity adjustments under various proposing rules. Limaye and Nasre (2021) explored cases where all applicants must be accepted, but the slots are costly. They create an algorithm that produces a minimum-cost stable match that ensures all applicants are successfully matched. However, the algorithm does not address the incentive for the organization to accept these quotas. While the total cost for the stable match is minimized, an organization might find that the marginal cost of an assigned candidate is greater than the value they bring to the organization.
Universities often face the challenge of having more highly qualified applicants than available spots, leading them to consider admitting more students than their initial quotas. This decision involves weighing the benefits of enrolling exceptional students against the practical limitations of campus resources and managing undergraduate enrollment. To manage this, universities employ wait lists for students who are not immediately accepted.
A similar dilemma arises when universities are in the process of recruiting new faculty members. In this case, while the administration may provide a specific number of available positions, academic departments may argue for additional positions if confronted with a pool of high-quality candidates. The ability to assess both the quality of applicants and the associated costs of creating additional positions becomes crucial in making these matching decisions.
In this paper, we extend the GS algorithm to handle the case of variable quotas or positions. We show that if we expand stability to include organizations offering a different number of positions, the current algorithms are not necessarily stable. We have adapted the deferred acceptance algorithm to accommodate a variable number of positions within organizations, ensuring adherence to a broader definition of stability. In particular, we propose a matching mechanism that allows ROLs to accommodate these trade-offs and ensure a stable match that is also slot-stable. By ‘slot-stable’, we mean that every organization has no incentive to deviate from its number of openings. In the following section, we define our matching environment, including match preferences and the convex costs associated with providing slots.

2. The Environment

Applicants are denoted as a, with indices i = 1 , 2 , , n , and organizations are denoted as o, with indices j = 1 , 2 , , m . Each organization o j has a number of positions or slots to fill. Each applicant can fill one slot with (at most) one organization; the set of applicants admitted to o j is denoted as A j . The number of slots filled, s j , is the cardinality of A j . Let V i ( o j ) denote applicant a i ’s value if they are matched with o j . Let Z j ( a i ) denote o j ’s value if they are matched with a i . V i and Z j may or may not represent strict preferences. Every a i and o j is individually rational and defined by refusing all matches such that V i ( ) > V i ( o j ) or Z j ( ) > Z j ( a i ) , i.e., applicants and organizations only rank those who improve their value over the remaining unmatched.
Organization o j has a non-decreasing convex total cost C j ( x ) of filling x slots. Specifically, C j ( x + 1 ) C j ( x ) and C j ( x + 2 ) C j ( x + 1 ) C j ( x + 1 ) C j ( x ) . Denote M C j ( x ) to be the marginal cost of filling slot number x defined by C j ( x ) C j ( x 1 ) . We also assume every a i ranks the organizations based only on V i , where a i prefers o j over o k if and only if V i ( o j ) > V i ( o k ) . Likewise, o j ranks the applicants based only on Z j , where o j prefers a i over a k if and only if Z j ( a i ) > Z j ( a k ) .
The Gale–Shapley algorithm does not ensure stability in this context because it assumes fixed quotas for each organization. When an organization ranks applicants, it does not know with whom it will eventually match. Therefore, it cannot determine the value minus the marginal cost of the last slot for its least valued applicant. Below is an example that illustrates this problem.
Suppose we have two organizations o 1 , o 2 , and three applicants a 1 , a 2 , a 3 . Both organizations have the same values Z j and costs C j , with Z j ( a 1 ) = 5 , Z j ( a 2 ) = 4 , Z j ( a 3 ) = 3 , and M C j ( 1 ) = 2 , M C j ( 2 ) = 3.5 . For the applicants, their preferences are defined by V 1 ( o 2 ) > V 1 ( o 1 ) , V 2 ( o 2 ) > V 2 ( o 1 ) , V 3 ( o 1 ) > V 3 ( o 2 ) . Table 1, Table 2, Table 3 and Table 4 list participants in the columns, while the rows depict the cost, values, or ranking of the object listed in the row.
Table 1, Table 2, Table 3 and Table 4: values, costs, and ROLs.
The applicant-proposing GS algorithm, when each organization has a fixed quota of 2 slots, results in o 1 being matched with a 3 and o 2 being matched with a 1 and a 2 . This yields a stable match, and neither organization has any incentive to want to change its quota. However, if a 2 ’s preference was V 2 ( o 1 ) > V 2 ( o 2 ) , their ROL would now be o 1 , o 2 , and the applicant-proposing GS match would have o 1 matched with a 2 and a 3 and o 2 matched with a 1 . Notice that with o 1 having two slots filled, a 3 in slot 2 has a value of 3, but the marginal cost of providing that slot to a 3 is 3.5, resulting in a loss of 0.5 being matched with a 3 . Because of this, o 1 would prefer to leave the second slot unfilled. Here, o 1 has set their quota too high.
Now, suppose organizations have the same costs and values as before, but the quotas are 1 for each organization. Applicant preferences are the same as in the first example: V 1 ( o 2 ) > V 1 ( o 1 ) , V 2 ( o 2 ) > V 2 ( o 1 ) , V 3 ( o 1 ) > V 3 ( o 2 ) . The GS match would have o 1 and a 2 matched and o 2 matched with a 1 . This match is stable; however, o 2 can do better. Here, o 2 would be willing to open a slot for a 2 , and a 2 prefers o 2 over their current match, which would cause both to be better off. Here, o 2 sets their quota too low.
These examples highlight the need for a new form of stability that considers the quotas of organizations. Firstly, if an organization, o j , can benefit by adding a slot for an applicant, a i , who is matched with another organization o u but would prefer o j , then it is considered slot unstable. Secondly, if o j gains by removing a slot and thus not matching an a i in A j , it is also slot unstable. Therefore, we propose the following definition to address this issue.
Definition 1. 
A match is said to be slot-stable1 if and only if the following two conditions hold for all j with | A j | =   s j
M C j ( s j + 1 ) Z j ( a i ) a i A j , a i A u : V i ( o j ) > V i ( o u )
and
Z j ( a k ) M C j ( s j ) a k A j
Condition (1) specifies that for an organization, the cost of adding an extra slot for a willing applicant not currently in the match must not be less than the applicant’s value; otherwise, the organization would prefer to include them. Condition (2) requires that the value of an applicant already in the match exceeds or equals the marginal cost of the final slot filled by the organization they are matched with; otherwise, the organization would not want to include them.

3. Matching Mechanisms

This section assumes that applicants and organizations submit ROLs consistent with their payoffs.2 This section introduces applicant-proposing and organization-proposing algorithms that ensure stability and slot stability. These processes require organizations to provide a more detailed Rank Order List (ROL) that includes the costs associated with offering positions. Specifically, the organization’s ROLs feature cutoff points that are similar to a waiting list. The new algorithm uses these cutoffs to align the organization’s preferences and costs. While both ENPAP and ENPOP algorithms ensure stable matches that are also slot-stable, the matches they produce may not be identical. In our analysis, we demonstrate that the proposing side in our algorithms achieves its optimal match. In practice, only one algorithm is implemented to finalize the match. The choice of which proposed side algorithm to use depends on the organization conducting the match. For instance, the National Resident Matching Program (NRMP), a nonprofit organization, employs the applicant-proposing algorithm rather than the hospital-proposing algorithm.

3.1. Endogenous-Number-of-Positions Applicant-Proposing (ENPAP) Algorithm

3.1.1. ENPAP Inputs

As in the GS process, applicants submit ROLs listing organizations from their most to least preferred. For organizations, we will need an adjustment where organizations provide a cutoff list of rankings, henceforth called rank order cutoff lists ROCL. These ROCLs will be built as if organizations revealed their preferences, given the cost of providing the slots. First, we look at o j ’s ROL of length k of applicants a j , i A : ROL j , k = { a j , 1 , a j , 2 , a j , k : a j , i A , Z j ( a j , 1 ) Z j ( a j , 2 ) Z j ( a j , k ) } , that is, we have labeled the applicants in the order of their value from highest to lowest for the first k slots. To create the rank order cutoff list for organization j, ( ROCL j ), we find the first cutoff point, n j , 1 * , which is the largest number of applicants whose values exceed the marginal cost, assuming that all positions were filled. Thus, starting with 1 slot, we define B j 1 ( 1 ) = { a j , 1 , a j , 2 , , a j , k : Z j ( a j , k + 1 ) M C j ( 1 ) } . Thus, if we have 2 slots, B j 1 ( 2 ) = { a j , 1 , a j , 2 , , a j , k : Z j ( a j , k + 1 ) M C j ( 2 ) } . We keep doing this until we find the largest number of slots n j , 1 * such that B j 1 ( n j , 1 * ) = { a j , 1 , a j , 2 , , a j , k : Z j ( a j , k + 1 ) M C j ( n j , 1 * ) } . We define n j , 1 * as the first cutoff point for organization j. Note that the cardinality of the set, | B j 1 ( n j , 1 * ) | can be greater than or equal to n j , 1 * , since there can be more than n j , 1 * applicants who have a value over the marginal cost of the n j , 1 * th slot. The organization values and MC have been reproduced from our previous example in Table 5 and Table 6 below to demonstrate the cutoff list construction.
For organization 1, the first cutoff point is 2, since the MC(2) = 3.5, which is greater than the value of a 3 , which is 3. Thus, B 1 1 ( 2 ) = { a 1 , a 2 }.
The next cutoff point, n j , 2 * , is found in the same manner as n j , 1 * , except it is done over the set of remaining applicants, A \ B j 1 ( n j , 1 * ) . For the second cutoff point, we define B j 2 ( n j , 2 * ) over the set A \ B j 1 ( n j , 1 * ) . Again, we look for the largest number of slots n j , 2 * where the last applicant in the list B j 2 ( n j , 2 * ) covers the marginal cost MC( n j , 2 * ) . We continue this process until the cutoff point is 0.
The intuition behind this series of cutoff points is straightforward. For ( n j , 1 * ) , all applicants in B j 1 ( n j , 1 * ) are acceptable for these slots since they cover their marginal costs. However, if we match with less than ( n j , 1 * ) applicants, the organization can refer to the next set of applicants A \ B j ( n j , 1 * ) , and the list B j 2 ( n j , 2 * ) (think of it as a waiting list) to fill the remaining slots.
From our previous example, with B 1 1 ( n 1 , 1 * ) = { a 1 , a 2 } and n 1 , 1 * = 2, if neither a 1 nor a 2 matched with the organization, a 3 would cover the marginal cost for the organization if only one slot could be filled. Thus, the ROCL would be written as [ a 1 , a 2 , 2, a 3 , 1].

3.1.2. ENPAP Algorithm

As with the GS algorithm, all applicants begin by proposing to the organization at the top of their ROL. Each organization, o j , reviews the applicants who proposed to them and are in the first cutoff, B j 1 ( n j , 1 * ) . Let A j 1 represent the applicants in B j 1 ( n j , 1 * ) who proposed to o j . The organization, o j , tentatively accepts the top candidates up to n j , 1 * . If the number of tentatively accepted candidates is less than n j , 1 * , o j considers applicants in the second cutoff list, B j 2 ( n j , 2 * ) .
Let T j 1 denote the list of tentatively accepted applicants from the first cutoff list B j 1 ( n j , 1 * ) . The algorithm then calculates r j , 2 = n j , 2 * | T j 1 | . If r j , 2 > 0, o j tentatively accepts the rank-ordered candidates in the second cutoff list up to r j , 2 . This process continues with subsequent cutoff lists and so on.
Applicants who propose to o j but are not tentatively accepted are rejected, and then propose to the next highest organization on their list. Rejected candidates from other organizations are then considered alongside the tentatively accepted applicants ( T j 1 T j 2 T j k ), and the algorithm proceeds with this new list in the same manner as above.
To illustrate, in Table 7 we use the applicant valuations V 1 ( o 1 ) > V 1 ( o 2 ) , V 2 ( o 1 ) > V 2 ( o 2 ) , V 3 ( o 1 ) > V 3 ( o 2 ) , along with the ROCL [ a 1 , a 2 , 2, a 3 , 1] for both o 1 and o 2 . First, each applicant proposes to their highest-valued, individually rational organization, as depicted below.
Looking at the ROCL of o 1 , [ a 1 , a 2 ,2, a 3 ,1], a 3 is rejected by o 1 , and a 1 and a 2 are tentatively accepted. After being rejected, a 3 proposes to o 2 , who accepts them since a 3 was ranked in cutoff 2 and r 2 , 2 = 1.
Theorem 1. 
ENPAP results in a stable match.3
Proof. 
Suppose the ENPAP match is unstable, then a i , o j matched with o u , a u , such that V i ( o j ) > V i ( o u ) and Z j ( a i ) > Z j ( a u ) . For a i and o j to not be matched with each other, either a i never proposed to o j or o j rejected a i .
If a i never proposed to o j , one of two scenarios could have happened:
(ia) a i never put o j on their list. If o j is not on a i ’s list, then V i ( ) > V i ( o j ) . All o k ranked by a i must satisfy V i ( ) < V i ( o k ) ; specifically, V i ( o u ) > V i ( ) . Therefore, regardless of whether a i is matched with no one or with any o k in their ROL, V i ( o j ) > V i ( o u ) is false.
(ib) a i never proposed o j on their ROL. However, since a i matched with o u , a i must have proposed to o u . But with V i ( o j ) > V i ( o u ) , this implies that o j was ranked before o u in a i ’s ROL. This means that a i has to propose to o j before o u in the algorithm.
(ii) From (ib), we know that a i proposed to o j . By assumption, we know that a u proposed to o j and was accepted. For a u to be accepted, we must have Z j ( a u ) M C j ( s ) , where s is the number of accepted applicants. Since Z j ( a i ) > Z j ( a u ) , a u could not have replaced a i if they were tentatively accepted. When a i proposes to o j with a u tentatively accepted, then a i must replace another candidate in the tentatively accepted list. No other applicant who proposes to o j will cause a i to be rejected since a u is accepted and Z j ( a i ) > Z j ( a u ) ; otherwise, a u would be rejected, which is a contradiction. □
Theorem 2. 
ENPAP results in a slot-stable match.4
Proof. 
Assume ENPAP results in slot instability. Then, by definition, there exists an o j and either an a k A j or an a i A j with | A j | = s j , such that
( 1 ) M C j ( s j + 1 ) < Z j ( a i ) a i A u : V i ( o j ) > V i ( o u )
or
( 2 ) Z j ( a k ) < M C j ( s j )
From (1), V i ( o j ) > V i ( o u ) implies that a i would have proposed to o j before o u . Given M C j ( s j + 1 ) < Z j ( a i ) , o j would not have rejected a i . Thus, a i A j , which is a contradiction.
Turning to (2), the cutoff points would not allow any applicant to be accepted who did not cover the MC of s. Since we have Z j ( a k ) < M C j ( s j ) , this implies a k A j , which is a contradiction.
Since the algorithm cannot produce a match that satisfies either (1) or (2), the ENPAP must give a slot-stable match. □
Among the set of stable and slot-stable matches, an applicant-optimal match is the one that assigns applicants to their highest-ranked feasible organization.
Theorem 3. 
ENPAP results in an applicant-optimal match.5
Proof. 
The theorem is demonstrated through inductive reasoning based on the steps of the ENPAP algorithm. We start with the following premise: An organization, o j , is considered reachable for applicant a i if there exists at least one stable and slot-stable pairing, where o j is matched with a i .
Initially, in step 1, no applicant is turned away by any reachable organization. Assume this remains true up to the beginning of step k. In step k, applicant a i receives a rejection from the reachable organization o j . If o j rejects a i , o j must have received a more favorable proposal from, say, a b , or o j prefers to be matched with no one. If o j prefers to be matched with no one, then o j is unreachable for a i .
If o j rejects a i in favor of a b , a b must have proposed to o j on or before step k. Furthermore, considering that no applicants were rejected by a reachable organization before step k, a b must not have faced rejection from such an organization before proposing to o j . Since applicants make proposals in the order ranked by their preference function V, o j is their most preferred reachable choice.
If o j is indeed reachable for a i , then there exists a stable and slot-stable match that pairs o j with a i . In this scenario, a b must be unpaired, paired to another reachable organization, or with o j . If both a b and a i are in a stable and slot-stable match with o j , then a i would not have been rejected because of a b ’s better proposal.
If a b is unpaired or paired with another reachable organization, a b would favor o j over this match. Moreover, it is clear that o j values a b over a i ; thus, a b and o j would block this match, causing instability, implying o j was never reachable for a i .
In conclusion, since no applicant was rejected by a reachable organization before k, and rejections cannot occur by these organizations in step k, no applicant will face rejection by a reachable organization. Given that applicants propose according to their preferences within ENPAP, each applicant ultimately matches with the organization they favor the most among all stable and slot-stable pairings. □

3.2. Endogenous-Number-of-Positions Organization-Proposing (ENPOP) Algorithm

3.2.1. Inputs

We will use the same ROL and ROCL inputs as those used in the ENPAP algorithm described in Section 3.1.1.

3.2.2. Algorithm

Step 1: Each organization proposes to its top n j , 1 *
Step 2: Each a i chooses their most preferred o j among the organizations that proposed to them. For each o j not chosen by a i , a i is removed from its ROCL.
Step 3: Organizations then propose to applicants on their lists from step 2, including those on later cutoff lists, as long as r j , k > 0.
Step 4: Repeat steps 2 and 3 until no applicant has multiple organizations proposing to them.
To illustrate this, in Table 8 we use the applicant valuations V 1 ( o 2 ) > V 1 ( o 1 ) , V 2 ( o 2 ) > V 2 ( o 1 ) , V 3 ( o 1 ) > V 3 ( o 2 ) , along with the organization valuations for both organizations, leading to their respective ROCLs being [ a 1 , a 2 , 2, a 3 , 1]. First, each o j proposes to its top two applicants as shown below.
Since both a 1 and a 2 receive proposals from both o 1 and o 2 , they choose between them. In this case, both a 1 and a 2 choose o 2 . We then repeat the process where o 2 submits the same list; however, o 1 submits a new optimal list [ a 3 ] since their preferred candidates, a 1 and a 2 , are tentatively in o 2 ’s list. This leads to the final match as shown in Table 9.
Theorem 4. 
ENPOP results in a stable match.6
Proof. 
Suppose ENPOP results in an unstable match. This means that there is a blocking pair, a i and o j . For this to occur, o j must have put an applicant, a u , on their ROCL that is ranked worse than a i , i.e., Z j ( a i ) > Z j ( a u ) . Given the construction of the ROCL, this can only occur if a i is unavailable, i.e., either unmatched or matched with another organization, o u . This only happens when V i ( o u ) > V i ( o j ) or V i ( ) > V i ( o j ) . However, since a i and o j are a blocking pair, it must be that V i ( o j ) > V i ( o u ) , which is a contradiction. Therefore, ENPOP must result in a stable match. □
Theorem 5. 
ENPOP results in a slot-stable match.7
Proof. 
Assume ENPOP results in slot instability, then by definition, there is an o j , and either an a k A j or a i A j with | A j | = s j , such that we have the following:
( 1 ) M C j ( s j + 1 ) < Z j ( a i ) a i A u : V i ( o j ) > V i ( o u )
or
( 2 ) Z j ( a k ) < M C j ( s j )
Suppose a i is ranked lower than the current set of accepted applicants, A j . According to the rules of the ROCL, all of the applicants in A j would receive proposals prior to a i . Consequently, the organization, o j , is free to extend proposals to higher-ranked applicants than a i that are not in A j , since they will all have a value higher than M C ( s j + 1 ) . Should any of these higher-ranked applicants accept the proposal, it would imply that | A j | >   s j , leading to a contradiction. Conversely, if all higher-ranked applicants decline, o j will propose to a i . a i will be accepted because they will be unmatched or they will be currently paired with a lower valued organization since a i A u : V i ( o j ) > V i ( o u ) . Again, it must be that | A j | >   s j , which is a contradiction.
On the other hand, if a i is not ranked lower than every applicant in A j , then there is an a h in A j such that Z j ( a i ) > Z j ( a h ) > M C ( s j ) . This would mean o j would rather be matched with a i than with a h . In addition, with V i ( o j ) > V i ( o u ) , a i would like to be matched with o j than with o u . So the outcome is not stable, contradicting Theorem 4. Thus, (1) is violated.
Given the construction of ROCLs, for a k to be selected with s j slots filled, Z j ( a k ) > M C j ( s j ) , which violates (2).
Thus, neither (1) nor (2) can hold true, concluding that ENPOP yields a slot-stable match. □
Among the set of stable and slot-stable matches, an organization-optimal match is one that assigns applicants to organizations so that no organization would like to switch to another stable and slot-stable match. Using the same inductive reasoning in Theorem 3, we have the following:
Theorem 6. 
ENPOP results in an organization-optimal match.8
Proof. 
The theorem is demonstrated through inductive reasoning based on the steps of the ENPOP algorithm. We start with the following premise: An applicant, a i , is considered reachable for organization o j if there exists at least one stable and slot-stable pairing, where a i is matched with o j .
Initially, in step 1, no organization was turned away by any reachable applicant. Assume that is the case up until the beginning of step k. In step k, organization o j receives a rejection from the reachable applicant, a i . If a i rejects o j , a i must have received a more favorable proposal from, say, o k , or a i prefers to be matched with no one. If a i preferred to be matched with no one, then a i j is unreachable for o j .
If a i rejected o j in favor of o k , o k must have proposed to a i on or prior to step k as part of their list. Furthermore, considering that no organizations were rejected by a reachable applicant before step k, o j must not have faced rejection from such an applicant before proposing to a i . Since organizations offer their proposals ranked by their preference function Z and MC, a i is in the set of their most preferred, reachable set.
If a i is indeed reachable for o j , then there exists a stable and slot-stable match that pairs o j with a i . Within this scenario, o k must not be matched with a i . Since o k put a i into their most preferred set, whatever match o k has without a i would be worse than a corresponding match with a i .
If o k is not matched with a i , o k would favor a match that includes a i over this match. Moreover, it is clear that a i values o k over o j ; thus, a i and o k would block this match, causing instability, implying a i was never reachable for o j .
In conclusion, since no organization was rejected by a reachable applicant before k, and it is impossible for rejections to occur by these applicants in step k, no organization will face rejection from a reachable applicant. Given that organizations propose according to their preferences within ENPOP, each organization ultimately matches with the applicants they favor the most among all stable and slot-stable pairings. □

3.3. Unique Set of Slot-Stable-Filled Slots

In our environment with strict preferences, we demonstrate that each organization has a unique set of filled positions leading to a slot-stable match, similar to the rural hospital theorem (Roth, 1986). This uniqueness property underlines the unlikely situation of organizations setting exact quotas that will lead to a slot-stable match.
We begin by converting the many-to-one matching problem into a one-to-one matching scenario by leveraging the ROLs provided by applicants and the ROCLs from organizations. For any given organization, o j , it offers between 1 and n j slots. We use the notation o j , x to reference the xth slot of o j . The ROL for every slot o j , x is defined by the cutoff list B j ( x ) , effectively treating each slot as a separate organization in the one-to-one match.
Every applicant, a i , arranges their one-to-one ROLs such that organization o j ’s xth slot, o j , x , is placed higher than organization o k ’s yth slot, o k , y , if and only if applicant a i prefers o j over o k in their original many-to-one ROL. Moreover, within the same organization, o j , the xth slot, o j , x , is favored over the yth slot, o j , y , if x is less than y. Note that if V i ( o j ) > V i ( o k ) , then for every x, o j , x is ranked above the o k list of slots.
Lemma 1. 
An ordered many-to-one match is stable and slot-stable if and only if the converted one-to-one match is stable.
Proof. 
Assume that in the ordered many-to-one match, o j assigns its most preferred applicant in A j in slot one, its second most preferred in slot two, and so forth. For the lemma to hold, the following three properties must be true: (i) if the corresponding one-to-one match is stable, then the many-to-one match is stable; (ii) if the one-to-one match is stable, the many-to-one match is slot-stable; (iii) if the ordered many-to-one match is stable and slot-stable, the one-to-one match is stable.
For (i), if the one-to-one match is stable while the many-to-one match is unstable, there must exist an applicant, a i , matched with organization o k , and an applicant, a k , matched with organization o j , such that a i prefers o j to o k and o j prefers a i to a k in the many-to-one match. For the corresponding one-to-one stable match, a i must be matched with one of o k ’s slots, o k , x , and a k must be matched with one of o j ’s slots, o j , y .
Since a i ranks o j , y above o k , x , if a i has o j ranked above o k , then a i must prefer o j , y to o k , x . Since o j , y shares the same ROL ordering as o j , this would mean that the one-to-one match is unstable as a i would prefer o j , y and o j , y would prefer a i over a k , leading to a contradiction of the stability in the one-to-one match. For (ii), suppose the one-to-one match is stable while the many-to-one match is not slot-stable, then by definition, there is an o j and either an a k A j or a i A j with | A j | =   s j , such that
M C j ( s j + 1 ) < Z j ( a i ) a i A u : V i ( o j ) > V i ( o u )
or
Z j ( a k ) < M C j ( s j )
If (3) is true, then there exists an applicant, a i , such that M C ( s j + 1 ) < Z j ( a i ) and ranks below all other tentatively accepted applicants, or there exist applicants a i , a u such that Z j ( a i ) > Z j ( a u ) and M C j ( s j + 1 ) < Z j ( a u ) . For the first case, if applicant a i prefers organization o j to o u , then a i must prefer o j , y over o u , x . From the slot side, o j , s j + 1 must have a i above not being filled if M C j ( s j + 1 ) < Z j ( a u ) as a i would be in B j ( s j + 1 ) , which defines o j , s j + 1 ’s ROL. Therefore, since o j , s j + 1 and a i prefer being with each other versus the original match, the one-to-one match must be unstable. For the second case, if V i ( o u ) < V i ( o j ) , then a i prefers o j , y over o u , x through the construction of a i ’s one-to-one ROL. Since o j , y shares the same ROL as o j , o j , y must prefer a i over their current applicant, a u . The one-to-one match is unstable since both o j , y and a i prefer each other over their current match.
If (4) is true, then there must exist an applicant, a k , that is, the lowest-value a i A j matched together, such that M C j ( s j ) > Z i ( a k ) . For this to be true, a k cannot be a part of o j ’s cutoff list B j ( s j ) . This would mean that slot o j , s j does not have a k in its ROL. This would make the one-to-one match unstable as it is not individually rational due to o j , s j preferring not to be matched at all.
Thus, neither (3) nor (4) can hold true, leading to a contradiction.
For (iii), suppose the ordered many-to-one match is stable and slot-stable, while the one-to-one match is unstable. Then there must exist an applicant, a i , matched with slot o k , x , and an applicant, a u , matched with slot o j , y , such that a i and o j , y prefer each other over their current match. This can happen if j k or j = k .
If j k , then a i must prefer organization o j over organization o k as a i ranks o j , y above o k , x if and only if a i has o j ranked above o k . Since o j ranks applicants in the same order as its slots, then o j must prefer a i over applicant a u that is in slot o j , y . Since o j prefers a i over a u and a i prefers o j over o k , the many-to-one match must be unstable.
For the case where j = k , this would imply that the many-to-one match is unordered, as a lower-ranked applicant must be in a slot higher than the higher-ranked applicant—a contradiction.
We have shown that (i)–(iii) are true, so that an ordered many-to-one match is stable and slot-stable if and only if the corresponding one-to-one match is stable. □
Theorem 7. 
For any set of applicants and organizations, there is only one set of filled slots that is both stable and slot-stable.
Proof. 
Lemma 1 shows that the constructed ROLs lead to both stable and slot-stable outcomes, similar to those produced by our algorithm. Roth and Sotomayor (1990) demonstrated that for any one-to-one match with strict preferences, the group of unassigned agents, including both applicants and organizations, remains consistent across all stable matches. Consequently, for a one-to-one match to maintain stability, it must involve the matching of identical slots. Therefore, given that the matched slots are always the same and the many-to-one match is both stable and slot-stable, each organization must retain the same count of applicants across all matches that are stable and slot-stable. □

4. Discussion

We developed an enhanced matching algorithm that builds upon the Gale–Shapley (GS) algorithm by incorporating the costs associated with providing applicant slots. This refined approach ensures that the outcomes remain stable by taking into account these costs when organizations create their rank order lists (ROLs). Our algorithm’s innovation lies in achieving what we term ‘slot stability’ within this environment.
Under the current system, achieving slot stability is improbable since the slot-stable set of quotas is unique. Our new process effectively prevents organizations from independently altering the number of slots they provide, as it aligns their incentives with the stable matching principles.

Author Contributions

Methodology, D.P.; Formal analysis, J.G. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Data Availability Statement

The original contributions presented in the study are included in the article, further inquiries can be directed to the corresponding author.

Conflicts of Interest

The authors declare no conflicts of interest.

Notes

1
In the case where indifference is allowed, slot stability can be defined as “weak” if there exists no strict incentive for the applicant to change ( V i ( o j ) > V i ( o u ) ), or “strong”, where there exists no applicant who is indifferent to a possible change ( V i ( o j ) V i ( o u ) ).
2
Just like with GS matching, the non-proposing side may not be incentivized to reveal their true rankings. Our mechanisms ensure that the match with truthful rankings will be stable.
3
For the case where valuations reflect indifference (i.e., V i ( o j ) V i ( o u ) and Z j ( a i ) Z j ( a u ) ) and participants submit their ranking lists according to their valuations while randomizing among options of equal value, the proof remains valid. However, the matches are now weakly stable. This means that no “blocking pairs” prefer to match with each other over their current partners.
4
For the case where valuations reflect indifference, as in Note 3, we guarantee a weakly slot-stable match.
5
For the case where valuations reflect indifference, as in Note 3, we cannot ensure the match with ENPAP is applicant-optimal.
6
For the case where valuations reflect indifference, as in Note 3, the proof remains valid. However, the matches are now weakly stable.
7
For the case where valuations reflect indifference, as in Note 3, ENPOP results in a weakly slot-stable match.
8
For the case where valuations reflect indifference, as in Note 3, we cannot ensure the match with ENPOP is organization-optimal.

References

  1. Abraham, D., Irving, R., & Manlove, D. (2007). Two algorithms for the student-project allocation problem. Journal of Discrete Algorithms, 5(1), 73–90. [Google Scholar] [CrossRef]
  2. Crawford, V. (2008). The Flexible-Salary Match: A proposal to increase the salary flexibility of the National Resident Matching Program. Journal of Economic Behavior and Organization, 66, 149–160. [Google Scholar] [CrossRef]
  3. Gale, D., & Shapley, L. (1962). College admissions and the stability of marriage. The American Mathematical Monthly, 69(1), 9–15. [Google Scholar] [CrossRef]
  4. Gokhale, S., Narang, S., Singla, S., & Vaish, R. (2024). Capacity modification in the stable matching problem. arXiv, arXiv:2402.04645. [Google Scholar]
  5. Limaye, G., & Nasre, M. (2021). Stable matchings with flexible quotas. arXiv, arXiv:2101.04425. [Google Scholar]
  6. Rios, I., Tomas, L., Parra, G., & Cominetti, R. (2021). Improving the chilean college admissions system. Operations Research, 69(4), 1186–1205. [Google Scholar] [CrossRef]
  7. Roth, A. (1986). On the allocation of residents to rural hospitals: A general property of two-sided matching markets. Econometrica, 54(2), 425–427. [Google Scholar] [CrossRef]
  8. Roth, A., & Peranson, E. (1999). The Redesign of the matching market for american physicians: Some engineering aspects of economic design. American Economic Review, 89(4), 748–780. [Google Scholar] [CrossRef] [PubMed]
  9. Roth, A., & Sotomayor, M. (1990). Two-sided matching: A study in game-theoretic modeling and analysis. Econometric Society Monographs. Cambridge University Press. [Google Scholar]
Table 1. Organization Z j ( a i ) .
Table 1. Organization Z j ( a i ) .
o 1 o 2
a 1 55
a 2 44
a 3 33
Table 2. Organization M C j ( x ) .
Table 2. Organization M C j ( x ) .
o 1 o 2
Slot 122
Slot 23.53.5
Table 3. Organization ROLs.
Table 3. Organization ROLs.
o 1 o 2
a 1 a 1
a 2 a 2
a 3 a 3
Table 4. Applicant ROLs.
Table 4. Applicant ROLs.
a 1 a 2 a 3
o 2 o 2 o 1
o 1 o 1 o 2
Table 5. Organization Z j ( a i ) .
Table 5. Organization Z j ( a i ) .
o 1 o 2
a 1 55
a 2 44
a 3 33
Table 6. Organization M C j ( x ) .
Table 6. Organization M C j ( x ) .
o 1 o 2
Slot 122
Slot 23.53.5
Slot 377
Table 7. Applicants’ first proposal.
Table 7. Applicants’ first proposal.
o 1 o 2
a 1
a 2
a 3
Table 8. Organization-proposing first list.
Table 8. Organization-proposing first list.
o 1 o 2
a 1 a 1
a 2 a 2
Table 9. Organization-proposing match.
Table 9. Organization-proposing match.
o 1 o 2
a 3 a 1
a 2
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Gilmore, J.; Porter, D. Match Stability with a Costly and Flexible Number of Positions. Games 2025, 16, 27. https://doi.org/10.3390/g16030027

AMA Style

Gilmore J, Porter D. Match Stability with a Costly and Flexible Number of Positions. Games. 2025; 16(3):27. https://doi.org/10.3390/g16030027

Chicago/Turabian Style

Gilmore, James, and David Porter. 2025. "Match Stability with a Costly and Flexible Number of Positions" Games 16, no. 3: 27. https://doi.org/10.3390/g16030027

APA Style

Gilmore, J., & Porter, D. (2025). Match Stability with a Costly and Flexible Number of Positions. Games, 16(3), 27. https://doi.org/10.3390/g16030027

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop