This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

The College Application Problem

Max Kapur Seoul National University
Department of Industrial Engineering
Management Science/Optimization Lab
Correspondence: [email protected]
Sung-Pil Hong Seoul National University
Department of Industrial Engineering
Management Science/Optimization Lab
Correspondence: [email protected]
Abstract

This paper considers the maximization of the expected maximum value of a portfolio of random variables subject to a budget constraint. We refer to this as the optimal college application problem. When each variable’s cost, or each college’s application fee, is identical, we show that the optimal portfolios are nested in the budget constraint, yielding an exact polynomial-time algorithm. When colleges differ in their application fees, we show that the problem is NP-complete. We provide four algorithms for this more general setup: a branch-and-bound routine, a dynamic program that produces an exact solution in pseudopolynomial time, a different dynamic program that yields a fully polynomial-time approximation scheme, and a simulated-annealing heuristic. Numerical experiments demonstrate the algorithms’ accuracy and efficiency.

Keywords:  submodular maximization, knapsack problems, approximation algorithms

1 Introduction

This paper considers the following optimization problem:

maximizev(𝒳)=E[max{t0,max{tjZj:j𝒳}}]subject to𝒳𝒞,j𝒳gjH\displaystyle\begin{split}\text{maximize}\quad&v(\mathcal{X})=\operatorname{E}\Bigl{[}\max\bigr{\{}t_{0},\max\{t_{j}Z_{j}:j\in\mathcal{X}\}\bigr{\}}\Bigr{]}\\ \text{subject to}\quad&\mathcal{X}\subseteq\mathcal{C},~{}~{}\sum_{j\in\mathcal{X}}g_{j}\leq H\end{split} (1)

Here 𝒞={1m}\mathcal{C}=\{1\dots m\} is an index set; H>0H>0 is a budget parameter; for j=1mj=1\dots m, gj>0g_{j}>0 is a cost parameter and ZjZ_{j} is a random, independent Bernoulli variable with probability fjf_{j}; and for j=0mj=0\dots m, tj0t_{j}\geq 0 is a utility parameter.

We refer to this problem as the optimal college application problem, as follows. Consider an admissions market with mm colleges. The jjth college is named cjc_{j}. Consider a single prospective student in this market, and let each tjt_{j}-value indicate the utility she associates with attending cjc_{j}, where her utility is t0t_{0} if she does not attend college. Let gjg_{j} denote the application fee for cjc_{j} and HH the student’s total budget to spend on application fees. Lastly, let fjf_{j} denote the student’s probability of being admitted to cjc_{j} if she applies, so that ZjZ_{j} equals one if she is admitted and zero if not. It is appropriate to assume that the ZjZ_{j} are statistically independent as long as fjf_{j} are probabilities estimated specifically for this student (as opposed to generic acceptance rates). Then the student’s objective is to maximize the expected utility associated with the best school she gets into within this budget. Therefore, her optimal college application strategy is given by the solution 𝒳\mathcal{X} to the problem above, where 𝒳\mathcal{X} represents the set of schools to which she applies.

The college application problem is not solely of theoretical interest. Due to the widespread perception that career earnings depend on college admissions outcomes, the solution of (1) holds monetary value. In the American college consulting industry, students pay private consultants an average of $200 per hour for assistance in preparing application materials, estimating their admissions odds, and identifying target schools (Sklarow 2018). In Korea, an important revenue stream for admissions consulting firms such as Megastudy (megastudy.net) and Jinhak (jinhak.com) is “mock application” software that claims to use artificial intelligence to optimize the client’s application strategy. However, although predicting admissions outcomes on a school-by-school basis is a standard benchmark for logistic regression models (Acharya et al. 2019), we believe our study is the first to focus on the overall application strategy as an optimization problem.

The problem is also conformable to other competitive matching games such as job application. Here, the budget constraint may represent the time needed to complete each application, or a legal limit on the number of applications permitted.

1.1 Methodological orientation

The college application problem straddles several methodological universes. Its stochastic nature recalls classical portfolio allocation models. However, the knapsack constraint renders the problem NP-complete, and necessitates combinatorial solution techniques. We also observe that the objective function is also a submodular set function, although our approximation results suggest that college application is a relatively easy instance of submodular maximization.

A problem similar to (1) arose in an equilibrium analysis of the American college market by Fu (2014), who described college application as a “nontrivial portfolio problem” (226). In computational finance, traditional portfolio allocation models weigh the sum of expected profit across all assets against a risk term, yielding a concave maximization problem with linear constraints (Markowitz 1952; Meucci 2005). But college applicants maximize the expected value of their best asset: If a student is admitted to her jjth choice, then she is indifferent as to whether she gets into her (j+1)(j+1)th choice. As a result, student utility is convex in the utility associated with individual applications. Risk management is implicit in the college application problem because, in a typical admissions market, college preferability correlates inversely with competitiveness. That is, students negotiate a tradeoff between attractive, selective “reach schools” and less preferable “safety schools” where admission is a safer bet (Jeon 2015). Finally, the combinatorial nature of the college application problem makes it difficult to solve using the gradient-based techniques associated with continuous portfolio optimization. Fu estimated her equilibrium model (which considers application as a cost rather than a constraint) by clustering the schools so that m=8m=8, a scale at which enumeration is tractable. We pursue a more general solution.

The integer formulation of the college application problem can be viewed as a kind of binary knapsack problem with a polynomial objective function of degree mm. Our branch-and-bound and dynamic programming algorithms closely resemble existing algorithms for knapsack problems (Martello and Toth 1990, § 2.5–6). In fact, by manipulating the admissions probabilities, the objective function can be made to approximate a linear function of the characteristic vector to an arbitrary degree of accuracy, a fact that we exploit in our NP-completeness proof. Previous research has introduced various forms of stochasticity to the knapsack problem, including variants in which each item’s utility takes a known probability distribution (Steinberg and Parks 1979; Carraway et al. 1993) and an online context in which the weight of each item is observed after insertion into the knapsack (Dean et al. 2008). Our problem superficially resembles the preference-order knapsack problem considered by Steinberg and Parks and Carraway et al., but these models lack the college application problem’s singular “maximax” form. Additionally, unlike those models, we do not attempt to replace the real-valued objective function with a preference order over outcome distributions, which introduces technical issues concerning competing notions of stochastic dominance (Sniedovich 1980). We take for granted the student’s preferences over outcomes (as encoded in the tjt_{j}-values), and focus instead on an efficient computational approach to the well-defined problem above.

We take special interest in the validity of greedy optimization algorithms, such as the algorithm that iteratively adds the school that elicits the greatest increase in the objective function until the budget is exhausted. Greedy algorithms produce a nested family of solutions parameterized by the budget HH: If HHH\leq H^{\prime}, then the greedy solution for budget HH is a subset of the greedy solution for budget HH^{\prime}. As Rozanov and Tamir (2020) remark, the knowledge that the optima are nested aids not only in computing the optimal solution, but in the implementation thereof under uncertain information. For example, in the United States, many college applications are due at the beginning of November, and it is typical for students to begin working on their applications during the prior summer because colleges reward students who tailor their essays to the target school. However, students may not know how many schools they can afford to apply to until late October. The nestedness property—or equivalently, the validity of a greedy algorithm—implies that even in the absence of complete budget information, students can begin to carry out the optimal application strategy by writing essays for schools in the order that they enter the optimal portfolio.

For certain classes of optimization problems, such as maximizing a submodular set function over a cardinality constraint, a greedy algorithm is known to be a good approximate solution and exact under certain additional assumptions (Fisher et al. 1978). For other problems, notably the binary knapsack problem, the most intuitive greedy algorithm can be made to perform arbitrarily poorly (Vazirani 2001). We show results for the college application problem that mirror those for the knapsack problem: When each gj=1g_{j}=1, the optimal portfolios are nested. This special case mirrors the centralized college application process in Korea, where there is no application fee, but students are allowed to apply to only three schools during the main admissions cycle. Unfortunately, the nestedness property does not hold in the general case, nor does the greedy algorithm offer any performance guarantee. However, we identify a fully polynomial-time approximation scheme (FPTAS) based on fixed-point arithmetic.

Finally, we remark that the objective function of (1) is a nondecreasing submodular function. However, our research employs more elementary analytical techniques, and our approximation results are tighter than those associated with generic submodular maximization algorithms. For example, a well-known result of Fisher et al. (1978) implies that the greedy algorithm is asymptotically (11/e)(1-1/e)-optimal for the gj=1g_{j}=1 case of the college application problem, whereas we show that the same algorithm is exact. As for the general problem, an equivalent approximation ratio is achievable when maximizing a submodular set function over a knapsack constraint using a variety of relaxation techniques (Badanidiyuru and Vondrák 2014; Kulik et al. 2013). But in the college application problem, the existence of the FPTAS supersedes these results.

1.2 Structure of this paper

Section 2 introduces some additional notation and assumptions that can be imposed without loss of generality. We also introduce a useful variable-elimination technique and prove that the objective function is submodular.

In Section 3, we consider the special case where each gj=1g_{j}=1 and HH is an integer hmh\leq m. We show that an intuitive heuristic is in fact a 1/h1/h-approximation algorithm. Then, we show that the optimal portfolios are nested in the budget constraint, which yields an exact algorithm that runs in O(hm)O(hm)-time.

In Section 4, we turn to the scenario in which colleges differ in their application fees. We show that the decision form of the portfolio optimization problem is NP-complete through a polynomial reduction from the binary knapsack problem. We provide four algorithms for this more general setup. The first is a branch-and-bound routine. The second is a dynamic program that iterates on total expenditures and produces an exact solution in pseudopolynomial time, namely O(Hm+mlogm)O(Hm+m\log m). The third is a different dynamic program that iterates on truncated portfolio valuations. It yields a fully polynomial-time approximation scheme that produces a (1ε)(1-\varepsilon)-optimal solution in O(m3/ε)O(m^{3}/\varepsilon) time. The fourth is a simulated-annealing heuristic algorithm that demonstrates strong performance in our synthetic instances.

In Section 5, we present the results of computational experiments that confirm the validity and time complexity results established in the previous two sections. We also investigate the empirical accuracy of the simulated-annealing heuristic.

In the conclusion, we identify possible improvements to our solution algorithms and introduce a few extensions of the model that capture the features of real-world admissions processes.

2 Notation and preliminary results

Before discussing the solution algorithms, we will introduce additional notation and a few preliminary results. For the remainder of the paper, unless otherwise noted, we assume with trivial loss of generality that each gjHg_{j}\leq H, gj>H\sum g_{j}>H, each fj(0,1]f_{j}\in(0,1], and t0<t1tmt_{0}<t_{1}\leq\cdots\leq t_{m}.

2.1 Refining the objective function

We refer to the set 𝒳𝒞\mathcal{X}\subseteq\mathcal{C} of schools to which a student applies as her application portfolio. The expected utility the student receives from 𝒳\mathcal{X} is called its valuation.

Definition 1포트폴리오 가치 함수. (Portfolio valuation function).

v(𝒳)=E[max{t0,max{tjZj:j𝒳}}]v(\mathcal{X})=\operatorname{E}\left[\max\bigr{\{}t_{0},\max\{t_{j}Z_{j}:j\in\mathcal{X}\}\bigr{\}}\right].

It is helpful to define the random variable X=max{tjZj:j𝒳}X=\max\{t_{j}Z_{j}:j\in\mathcal{X}\} as the utility achieved by the schools in the portfolio, so that when t0=0t_{0}=0, v(𝒳)=E[X]v(\mathcal{X})=\operatorname{E}[X]. Similar pairs of variables with script and italic names such as 𝒴h\mathcal{Y}_{h} and YhY_{h} will carry an analogous meaning.

Given an application portfolio, let pj(𝒳)p_{j}(\mathcal{X}) denote the probability that the student attends cjc_{j}. This occurs if and only if she applies to cjc_{j}, is admitted to cjc_{j}, and is rejected from any school she prefers to cjc_{j}; that is, any school with higher index. Hence, for j=0mj=0\dots m,

pj(𝒳)\displaystyle p_{j}(\mathcal{X}) ={fji𝒳:i>j(1fi),j{0}𝒳0,otherwise\displaystyle=\begin{cases}\displaystyle f_{j}\prod_{\begin{subarray}{c}i\in\mathcal{X}:\\ i>j\end{subarray}}(1-f_{i}),\quad&j\in\{0\}\cup\mathcal{X}\\ 0,\quad&\text{otherwise}\end{cases} (2)

where the empty product equals one and f0=1f_{0}=1. The following proposition follows immediately.

Proposition 1포트폴리오 가치 함수의 다른 식. (Closed form of portfolio valuation function).
v(𝒳)\displaystyle v(\mathcal{X}) =j=0mtjpj(𝒳)=j{0}𝒳(fjtji𝒳:i>j(1fi))\displaystyle=\sum_{j=0}^{m}t_{j}p_{j}(\mathcal{X})=\sum_{j\in\{0\}\cup\mathcal{X}}\Bigl{(}f_{j}t_{j}\prod_{\begin{subarray}{c}i\in\mathcal{X}:\\ i>j\end{subarray}}(1-f_{i})\Bigr{)} (3)

Next, we show that without loss of generality, we may assume that t0=0t_{0}=0.

Lemma 1.

For some γt0\gamma\leq t_{0}, let t¯j=tjγ\bar{t}_{j}=t_{j}-\gamma for j=0mj=0\dots m. Then v(𝒳;t¯j)=v(𝒳;tj)γv(\mathcal{X};\bar{t}_{j})=v(\mathcal{X};t_{j})-\gamma regardless of 𝒳\mathcal{X}.

Proof.

By definition, j=0mpj(𝒳)=j{0}𝒳pj(𝒳)=1\sum_{j=0}^{m}p_{j}(\mathcal{X})=\sum_{j\in\{0\}\cup\mathcal{X}}p_{j}(\mathcal{X})=1. Therefore

v(𝒳;t¯j)=j{0}𝒳t¯jpj(𝒳)=j{0}𝒳(tjγ)pj(𝒳)=j{0}𝒳tjpj(𝒳)γ=v(𝒳;tj)γ\displaystyle\begin{split}v(\mathcal{X};\bar{t}_{j})&=\sum_{j\in\{0\}\cup\mathcal{X}}\bar{t}_{j}p_{j}(\mathcal{X})=\sum_{j\in\{0\}\cup\mathcal{X}}(t_{j}-\gamma)p_{j}(\mathcal{X})\\ &=\sum_{j\in\{0\}\cup\mathcal{X}}t_{j}p_{j}(\mathcal{X})-\gamma=v(\mathcal{X};t_{j})-\gamma\end{split} (4)

which completes the proof.∎

2.2 An elimination technique

Now, we present a variable-elimination technique that will prove useful throughout the paper.111We thank Yim Seho for pointing out this useful transformation. Suppose that the student has already resolved to apply to ckc_{k}, and the remainder of her decision consists of determining which other schools to apply to. Writing her total application portfolio as 𝒳=𝒴{k}\mathcal{X}=\mathcal{Y}\cup\{k\}, we devise a function w(𝒴)w(\mathcal{Y}) that orders portfolios according to how well they “complement” the singleton portfolio {k}\{k\}. Specifically, the difference between v(𝒴{k})v(\mathcal{Y}\cup\{k\}) and w(𝒴)w(\mathcal{Y}) is the constant fktkf_{k}t_{k}.

To construct w(𝒴)w(\mathcal{Y}), let t~j\tilde{t}_{j} denote the expected utility the student receives from school cjc_{j} given that she has been admitted to cjc_{j} and applied to ckc_{k}. For j<kj<k (including j=0j=0), this is t~j=(1fk)tj+fktk\tilde{t}_{j}=(1-f_{k})t_{j}+f_{k}t_{k}; for j>kj>k, this is t~j=tj\tilde{t}_{j}=t_{j}. This means that

v(𝒴{k})=j{0}𝒴t~jpj(𝒴).v(\mathcal{Y}\cup\{k\})=\sum_{j\in\{0\}\cup\mathcal{Y}}\tilde{t}_{j}p_{j}(\mathcal{Y}). (5)

The transformation to t~\tilde{t} does not change the order of the tjt_{j}-values. Therefore, the expression on the right side of (5) is itself a portfolio valuation function. In the corresponding market, tt is replaced by t~\tilde{t} and 𝒞\mathcal{C} is replaced by 𝒞{k}\mathcal{C}\setminus\{k\}. To restore our convention that t0=0t_{0}=0, we obtain w(𝒴)w(\mathcal{Y}) by taking t¯j=t~jt~0\bar{t}_{j}=\tilde{t}_{j}-\tilde{t}_{0} for all jkj\neq k and letting

w(𝒴)=j{0}𝒴t¯jpj(𝒴)=j{0}𝒴t~jpj(𝒴)t~0=v(𝒴{k})fktkw(\mathcal{Y})=\sum_{j\in\{0\}\cup\mathcal{Y}}\bar{t}_{j}p_{j}(\mathcal{Y})=\sum_{j\in\{0\}\cup\mathcal{Y}}\tilde{t}_{j}p_{j}(\mathcal{Y})-\tilde{t}_{0}=v(\mathcal{Y}\cup\{k\})-f_{k}t_{k} (6)

where the second equality follows from Lemma 1. The validity of this transformation is summarized in the following theorem, where we write v(𝒳;t¯)v(\mathcal{X};\bar{t}) instead of w(𝒴)w(\mathcal{Y}) to emphasize that w(𝒴)w(\mathcal{Y}) is, in form, a portfolio valuation function.

Lemma 2ckc_{k} 소거 기법. (Eliminate ckc_{k}).

For 𝒳𝒞{k}\mathcal{X}\subseteq\mathcal{C}\setminus\{k\}, v(𝒳{k};t)=v(𝒳;t¯)+fktkv(\mathcal{X}\cup\{k\};t)=v(\mathcal{X};\bar{t})+f_{k}t_{k}, where

t¯j={(1fk)tj,tjtktjfktk,tj>tk.\displaystyle\bar{t}_{j}=\begin{cases}(1-f_{k})t_{j},\quad&t_{j}\leq t_{k}\\ t_{j}-f_{k}t_{k},\quad&t_{j}>t_{k}.\end{cases} (7)
Proof.

It is easy to verify that (7) is the composition of the two transformations (from tt to t~\tilde{t}, and from t~\tilde{t} to t¯\bar{t}) discussed above. ∎

The transformation (7) can be applied iteratively to accommodate the case where the student has already resolved to apply to multiple schools.

2.3 Submodularity of the objective

Now, we show that the portfolio valuation function is submodular. This result is primarily of taxonomical interest and may be safely skipped. Our solution algorithms for the college application problem are better than generic algorithms for submodular maximization, and we prove their validity using elementary analysis.

Definition 2 (Submodular set function).

Given a ground set 𝒞\mathcal{C} and function v:2𝒞v:2^{\mathcal{C}}\mapsto\mathbb{R}, v(𝒳)v(\mathcal{X}) is called a submodular set function if and only if v(𝒳)+v(𝒴)v(𝒳𝒴)+v(𝒳𝒴)v(\mathcal{X})+v(\mathcal{Y})\geq v(\mathcal{X}\cup\mathcal{Y})+v(\mathcal{X}\cap\mathcal{Y}) for all 𝒳,𝒴𝒞\mathcal{X},\mathcal{Y}\subseteq\mathcal{C}. Furthermore, if v(𝒳{k})v(𝒳)0v(\mathcal{X}\cup\{k\})-v(\mathcal{X})\geq 0 for all 𝒳𝒞\mathcal{X}\subset\mathcal{C} and k𝒞𝒳k\in\mathcal{C}\setminus\mathcal{X}, v(𝒳)v(\mathcal{X}) is said to be a nondecreasing submodular set function.

Theorem 1.

The college application portfolio valuation function v(𝒳)v(\mathcal{X}) is a nondecreasing submodular set function.

Proof.

It is self-evident that v(𝒳)v(\mathcal{X}) is nondecreasing. To establish its submodularity, we apply proposition 2.1.iii of Nemhauser and Wolsey (1978) and show that

v(𝒳{j})v(𝒳)v(𝒳{j,k})v(𝒳{k})v(\mathcal{X}\cup\{j\})-v(\mathcal{X})\geq v(\mathcal{X}\cup\{j,k\})-v(\mathcal{X}\cup\{k\}) (8)

for 𝒳𝒞\mathcal{X}\subset\mathcal{C} and jk𝒞𝒳j\neq k\in\mathcal{C}\setminus\mathcal{X}. By Lemma 2, we can repeatedly eliminate the schools in 𝒳\mathcal{X} according to (7) to obtain a portfolio valuation function w(𝒴)w(\mathcal{Y}) with parameter t¯\bar{t} such that w(𝒴)=v(𝒳𝒴)+const.w(\mathcal{Y})=v(\mathcal{X}\cup\mathcal{Y})+\text{const.} for any 𝒴𝒞𝒳\mathcal{Y}\subseteq\mathcal{C}\setminus\mathcal{X}. Therefore, (8) is equivalent to

w({j})w()w({j,k})w({k})\displaystyle w(\{j\})-w(\varnothing)\geq w(\{j,k\})-w(\{k\}) (9)
\displaystyle\iff\qquad w({j})+w({k})w({j,k})\displaystyle w(\{j\})+w(\{k\})\geq w(\{j,k\}) (10)
\displaystyle\iff\qquad E[t¯jZj]+E[t¯kZk]E[max{t¯jZj,t¯kZk}]\displaystyle\operatorname{E}[\,\bar{t}_{j}Z_{j}\,]+\operatorname{E}[\,\bar{t}_{k}Z_{k}\,]\geq\operatorname{E}\bigl{[}\max\{\bar{t}_{j}Z_{j},\bar{t}_{k}Z_{k}\}\bigr{]} (11)

which is plainly true. ∎

3 Homogeneous application costs

In this section, we focus on the special case in which each gj=1g_{j}=1 and HH is a natural number hmh\leq m. We show that an intuitive heuristic is in fact a 1/h1/h-approximation algorithm, then derive an exact polynomial-time solution algorithm. Applying Lemma 1, we assume that t0=0t_{0}=0 unless otherwise noted. Throughout this section, we will call the applicant Alma, and refer to the corresponding optimization problem as Alma’s problem.

Problem 1알마의 문제. (Alma’s problem).

Alma’s optimal college application portfolio is given by the solution to the following combinatorial optimization problem:

maximizev(𝒳)=j𝒳(fjtji𝒳:i>j(1fi))subject to𝒳𝒞,|𝒳|h\displaystyle\begin{split}\text{maximize}\quad&v(\mathcal{X})=\sum_{j\in\mathcal{X}}\Bigl{(}f_{j}t_{j}\prod_{\begin{subarray}{c}i\in\mathcal{X}:\\ i>j\end{subarray}}(1-f_{i})\Bigr{)}\\ \text{subject to}\quad&\mathcal{X}\subseteq\mathcal{C},\quad|\mathcal{X}|\leq h\end{split} (12)

3.1 Approximation properties of a naïve solution

The expected utility associated with a single school cjc_{j} is simply E[tjZj]=fjtj\operatorname{E}[t_{j}Z_{j}]=f_{j}t_{j}. It is therefore tempting to adopt the following strategy, which turns out to be suboptimal.

Definition 3알마의 문제를 위한 나이브 해법. (Naïve algorithm for Alma’s problem).

Apply to the hh schools having the highest expected utility fjtjf_{j}t_{j}.

This algorithm’s computation time is O(m)O(m) using the PICK algorithm of Blum et al. (1973).

The basic error of the naïve algorithm is that it maximizes E[tjZj]\operatorname{E}\left[\,\sum t_{j}Z_{j}\,\right] instead of E[max{tjZj}]\operatorname{E}\left[\max\{t_{j}Z_{j}\}\right]. The latter is what Alma is truly concerned with, since in the end she can attend only one school. The following example shows that the naïve algorithm can produce a suboptimal solution.

Example 1.

Suppose m=3m=3, h=2h=2, t=(70,80,90)t=(70,80,90), and f=(0.4,0.4,0.3)f=(0.4,0.4,0.3). Then the naïve algorithm picks 𝒯={1,2}\mathcal{T}=\{1,2\} with v(𝒯)=70(0.4)(10.4)+80(0.4)=48.8v(\mathcal{T})=70(0.4)(1-0.4)+80(0.4)=48.8. But 𝒳={2,3}\mathcal{X}=\{2,3\} with v(𝒳)=80(0.4)(10.3)+90(0.3)=49.4v(\mathcal{X})=80(0.4)(1-0.3)+90(0.3)=49.4 is the optimal solution.

In fact, the naïve algorithm is a (1/h)(1/h)-approximation algorithm for Alma’s problem, as expressed in the following theorem.

Theorem 2나이브 해법의 정확성. (Accuracy of the naïve algorithm).

When the application limit is hh, let 𝒳h\mathcal{X}_{h} denote the optimal portfolio, and 𝒯h\mathcal{T}_{h} the set of the hh schools having the largest values of fjtjf_{j}t_{j}. Then v(𝒯h)/v(𝒳h)1/hv(\mathcal{T}_{h})/v(\mathcal{X}_{h})\geq 1/h.

Proof.

Because 𝒯h\mathcal{T}_{h} maximizes the quantity E[j𝒯h{tjZj}]\operatorname{E}\bigl{[}\sum_{j\in\mathcal{T}_{h}}\{t_{j}Z_{j}\}\bigr{]}, we have

v(𝒳h)=E[maxj𝒳h{tjZj}]E[j𝒳h{tjZj}]E[j𝒯h{tjZj}]=hE[1hj𝒯h{tjZj}]hE[maxj𝒯h{tjZj}]=hv(𝒯h).\displaystyle\begin{split}v(\mathcal{X}_{h})&=\operatorname{E}\Bigl{[}\max_{j\in\mathcal{X}_{h}}\{t_{j}Z_{j}\}\Bigr{]}\leq\operatorname{E}\Bigl{[}\sum_{j\in\mathcal{X}_{h}}\{t_{j}Z_{j}\}\Bigr{]}\leq\operatorname{E}\Bigl{[}\sum_{j\in\mathcal{T}_{h}}\{t_{j}Z_{j}\}\Bigr{]}\\ &=h\operatorname{E}\Bigl{[}\tfrac{1}{h}\sum_{j\in\mathcal{T}_{h}}\{t_{j}Z_{j}\}\Bigr{]}\leq h\operatorname{E}\Bigl{[}\max_{j\in\mathcal{T}_{h}}\{t_{j}Z_{j}\}\Bigr{]}=hv(\mathcal{T}_{h}).\end{split} (13)

where the final inequality follows from the concavity of the max{}\max\{\} operator. ∎

The following example establishes the tightness of the approximation factor.

Example 2.

Pick any hh and let m=2hm=2h. For a small constant ε(0,1)\varepsilon\in(0,1), define the market as follows.

jj 11 \cdots hh h+1h+1 h+2h+2 \cdots m1m-1 mm
fjf_{j} 11 \cdots 11 ε1\varepsilon^{1} ε2\varepsilon^{2} \cdots εh1\varepsilon^{h-1} εh\varepsilon^{h}
tjt_{j} 11 \cdots 11 ε1\varepsilon^{-1} ε2\varepsilon^{-2} \cdots ε(h1)\varepsilon^{-(h-1)} εh\varepsilon^{-h}

Since all fjtj=1f_{j}t_{j}=1, the naïve algorithm can choose 𝒯h={1,,h}\mathcal{T}_{h}=\{1,\dots,h\}, with v(𝒯h)=1v(\mathcal{T}_{h})=1. But the optimal solution is 𝒳h={h+1,,m}\mathcal{X}_{h}=\{h+1,\dots,m\}, with

v(𝒳h)=j=h+1m(fjtjj=j+1m(1fj))=j=1h(1ε)jh.v(\mathcal{X}_{h})=\sum_{j=h+1}^{m}\Bigl{(}f_{j}t_{j}\prod_{j^{\prime}=j+1}^{m}(1-f_{j^{\prime}})\Bigr{)}=\sum_{j=1}^{h}(1-\varepsilon)^{j}\approx h. (14)

Thus, as ε\varepsilon approaches zero, we have v(𝒯h)/v(𝒳h)1/hv(\mathcal{T}_{h})/v(\mathcal{X}_{h})\to 1/h. (The optimality of 𝒳h\mathcal{X}_{h} follows from the fact that it achieves the upper bound of Theorem 13.)

Although the naïve algorithm is suboptimal, we can still find the optimal solution in O(hm)O(hm)-time, as we will now show.

3.2 The nestedness property

It turns out that the solution to Alma’s problem possesses a special structure: An optimal portfolio of size h+1h+1 includes an optimal portfolio of size hh as a subset.

Theorem 3최적 포트폴리오의 포함 사슬 관계. (Nestedness of optimal application portfolios).

There exists a sequence of portfolios {𝒳h}h=1m\{\mathcal{X}_{h}\}_{h=1}^{m} satisfying the nestedness relation

𝒳1𝒳2𝒳m\mathcal{X}_{1}\subset\mathcal{X}_{2}\subset\dots\subset\mathcal{X}_{m} (15)

such that each 𝒳h\mathcal{X}_{h} is an optimal application portfolio when the application limit is hh.

Proof.

By induction on hh. Applying Lemma 1, we assume that t0=0t_{0}=0.

(Base case.) First, we will show that 𝒳1𝒳2\mathcal{X}_{1}\subset\mathcal{X}_{2}. To get a contradiction, suppose that the optima are 𝒳1={j}\mathcal{X}_{1}=\{j\} and 𝒳2={k,l}\mathcal{X}_{2}=\{k,l\}, where we may assume that tktlt_{k}\leq t_{l}. Optimality requires that

v(𝒳1)=fjtj>v({k})=fktkv(\mathcal{X}_{1})=f_{j}t_{j}>v(\{k\})=f_{k}t_{k} (16)

and

v(𝒳2)=fk(1fl)tk+fltl>v({j,l})=fj(1fl)tj+(1fj)fltl+fjflmax{tj,tl}fj(1fl)tj+(1fj)fltl+fjfltl=fj(1fl)tj+fltlfk(1fl)tk+fltl=v(𝒳2)\displaystyle\begin{split}v(\mathcal{X}_{2})=f_{k}(1-f_{l})t_{k}+f_{l}t_{l}&>v(\{j,l\})\\ &=f_{j}(1-f_{l})t_{j}+(1-f_{j})f_{l}t_{l}+f_{j}f_{l}\max\{t_{j},t_{l}\}\\ &\geq f_{j}(1-f_{l})t_{j}+(1-f_{j})f_{l}t_{l}+f_{j}f_{l}t_{l}\\ &=f_{j}(1-f_{l})t_{j}+f_{l}t_{l}\\ &\geq f_{k}(1-f_{l})t_{k}+f_{l}t_{l}=v(\mathcal{X}_{2})\end{split} (17)

which is a contradiction.

(Inductive step.) Assume that 𝒳1𝒳h\mathcal{X}_{1}\subset\cdots\subset\mathcal{X}_{h}, and we will show 𝒳h𝒳h+1\mathcal{X}_{h}\subset\mathcal{X}_{h+1}. Let k=argmax{tk:k𝒳h+1}k=\operatorname*{arg\,max}\{t_{k}:k\in\mathcal{X}_{h+1}\} and write 𝒳h+1=𝒴h{k}\mathcal{X}_{h+1}=\mathcal{Y}_{h}\cup\{k\}.

Suppose k𝒳hk\notin\mathcal{X}_{h}. To get a contradiction, suppose that v(𝒴h)<v(𝒳h)v(\mathcal{Y}_{h})<v(\mathcal{X}_{h}) and v(𝒳h+1)>v(𝒳h{k})v(\mathcal{X}_{h+1})>v(\mathcal{X}_{h}\cup\{k\}). Then

v(𝒳h+1)=v(𝒴h{k})=(1fk)v(𝒴h)+fktk(1fk)v(𝒳h)+fkE[max{tk,Xh}]=v(𝒳h{k})\displaystyle\begin{split}v(\mathcal{X}_{h+1})&=v(\mathcal{Y}_{h}\cup\{k\})\\ &=(1-f_{k})v(\mathcal{Y}_{h})+f_{k}t_{k}\\ &\leq(1-f_{k})v(\mathcal{X}_{h})+f_{k}\operatorname{E}\bigl{[}\max\{t_{k},X_{h}\}\bigr{]}\\ &=v(\mathcal{X}_{h}\cup\{k\})\end{split} (18)

is a contradiction.

Now suppose that k𝒳hk\in\mathcal{X}_{h}. We can write 𝒳h=𝒴h1{k}\mathcal{X}_{h}=\mathcal{Y}_{h-1}\cup\{k\}, where 𝒴h1\mathcal{Y}_{h-1} is some portfolio of size h1h-1. It suffices to show that 𝒴h1𝒴h\mathcal{Y}_{h-1}\subset\mathcal{Y}_{h}. By definition, 𝒴h1\mathcal{Y}_{h-1} (respectively, 𝒴h\mathcal{Y}_{h}) maximizes the function v(𝒴{k})v(\mathcal{Y}\cup\{k\}) over portfolios of size h1h-1 (respectively, hh) that do not include kk. That is, 𝒴h1\mathcal{Y}_{h-1} and 𝒴h\mathcal{Y}_{h} are the optimal complements to the singleton portfolio {k}\{k\}.

Applying Lemma 2, we eliminate ckc_{k}, transform the remaining tjt_{j}-values to t¯j\bar{t}_{j} according to (7), and obtain a function w(𝒴)=v(𝒴{k})fktkw(\mathcal{Y})=v(\mathcal{Y}\cup\{k\})-f_{k}t_{k} that grades portfolios 𝒴𝒞{k}\mathcal{Y}\subseteq\mathcal{C}\setminus\{k\} according to how well they complement {k}\{k\}. Since w(𝒴)w(\mathcal{Y}) is itself a portfolio valuation funtion and t¯0=0\bar{t}_{0}=0, the inductive hypothesis implies that 𝒴h1𝒴h\mathcal{Y}_{h-1}\subset\mathcal{Y}_{h}, which completes the proof.

3.3 Polynomial-time solution

Applying the result above yields an efficient greedy algorithm for the optimal portfolio: Start with the empty set and add schools one at a time, maximizing v(𝒳{k})v(\mathcal{X}\cup\{k\}) at each addition. Sorting tt is O(mlogm)O(m\log m). At each of the hh iterations, there are O(m)O(m) candidates for kk, and computing v(𝒳{k})v(\mathcal{X}\cup\{k\}) is O(h)O(h) using (3); therefore, the time complexity of this algorithm is O(h2m+mlogm)O(h^{2}m+m\log m).

We reduce the computation time to O(hm)O(hm) by taking advantage of the transformation from Lemma 2. Once school kk is added to 𝒳\mathcal{X}, we eliminate it from the set 𝒞𝒳\mathcal{C}\setminus\mathcal{X} of candidates, and update the tjt_{j}-values of the remaining schools according to (7). Now, the next school added must be the optimal singleton portfolio in the modified market. But the optimal singleton portfolio consists simply of the school with the highest value of fjt¯jf_{j}\bar{t}_{j}. Therefore, by updating the tjt_{j}-values at each iteration according to (7), we eliminate the need to compute v(𝒳)v(\mathcal{X}) entirely. Moreover, this algorithm does not require the schools to be indexed in ascending order by tjt_{j}, which removes the O(mlogm)O(m\log m) sorting cost. Algorithm 1 outputs a list 𝚇\mathtt{X} of the hh schools to which Alma should apply. The schools appear in the order of entry such that when the algorithm is run with h=mh=m, the optimal portfolio of size hh is given by 𝒳h={𝚇[𝟷],,𝚇[𝚑]}\mathcal{X}_{h}=\{\mathtt{X[1]},\dots,\mathtt{X[h]}\}. The entries of the list 𝚅\mathtt{V} give the valuation thereof.

Input: Utility values t(0,)mt\in(0,\infty)^{m}, admissions probabilities f(0,1]mf\in(0,1]^{m}, application limit hmh\leq m.
1 𝒞{1m}\mathcal{C}\leftarrow\{1\dots m\};
2 𝚇,𝚅\mathtt{X,V}\leftarrow empty lists;
3 for i=1hi=1\dots h do
4       kargmaxj𝒞{fjtj}k\leftarrow\operatorname*{arg\,max}_{j\in\mathcal{C}}\{f_{j}t_{j}\};
5       𝒞𝒞{k}\mathcal{C}\leftarrow\mathcal{C}\setminus\{k\};
6       append!(𝚇,k)\operatorname{append!}(\mathtt{X},k);
7       if i=1i=1 then append!(𝚅,fktk)\operatorname{append!}(\mathtt{V},f_{k}t_{k}) else append!(𝚅,𝚅[𝚒𝟷]+fktk)\operatorname{append!}(\mathtt{V},\mathtt{V[i-1]}+f_{k}t_{k});
8       for j𝒞j\in\mathcal{C} do
9             if tjtkt_{j}\leq t_{k} then tj(1fk)tjt_{j}\leftarrow(1-f_{k})t_{j} else tjtjfktkt_{j}\leftarrow t_{j}-f_{k}t_{k};
10            
11       end for
12      
13 end for
return 𝚇,𝚅\mathtt{X,V}
Algorithm 1 Optimal portfolio algorithm for Alma’s problem.
Theorem 4알고리즘 1의 타당성. (Validity of Algorithm 1).

Algorithm 1 produces an optimal application portfolio for Alma’s problem in O(hm)O(hm)-time.

Proof.

Optimality follows from the proof of Theorem 3. Suppose 𝒞\mathcal{C} is stored as a list. Then at each of the hh iterations of the main loop, finding the top school costs O(m)O(m), and the tjt_{j}-values of the remaining O(m)O(m) schools are each updated in unit time. Therefore, the overall time complexity is O(hm)O(hm). ∎

It is possible to store 𝒞\mathcal{C} as a binary max heap rather than a list. The heap is ordered according to the criterion ijfitifjtji\geq j\iff f_{i}t_{i}\geq f_{j}t_{j}, and by draining the heap and reheapifying at the end of each iteration, the computation time remains O(hm)O(hm). However, in our numerical experiments, whose results are reported in Section 5, we found the list implementation to be much faster, because it is possible to identify the entering school kk as the utility parameters are updated, which all but eliminates the cost of the argmax{}\operatorname*{arg\,max}\{\} operation.

3.4 Diminishing returns to application

The nestedness property implies that Alma’s expected utility is a discretely concave function of hh.

Theorem 5최적 포트폴리오 가치의 hh-오목성. (Optimal portfolio valuation concave in hh).

For h=2(m1)h=2\dots(m-1),

v(𝒳h)v(𝒳h1)v(𝒳h+1)v(𝒳h).v(\mathcal{X}_{h})-v(\mathcal{X}_{h-1})\geq v(\mathcal{X}_{h+1})-v(\mathcal{X}_{h}). (19)
Proof.

Applying Theorem 3, we write 𝒳h=𝒳h1{j}\mathcal{X}_{h}=\mathcal{X}_{h-1}\cup\{j\} and 𝒳h+1=𝒳h1{j,k}\mathcal{X}_{h+1}=\mathcal{X}_{h-1}\cup\{j,k\}. By optimality, v(𝒳h)v(𝒳h1)v(𝒳h1{k})v(𝒳h1)v(\mathcal{X}_{h})-v(\mathcal{X}_{h-1})\geq v(\mathcal{X}_{h-1}\cup\{k\})-v(\mathcal{X}_{h-1}). By submodularity and nestedness, v(𝒳h1{k})v(𝒳h1)v(𝒳h{k})v(𝒳h)=v(𝒳h+1)v(𝒳h)v(\mathcal{X}_{h-1}\cup\{k\})-v(\mathcal{X}_{h-1})\geq v(\mathcal{X}_{h}\cup\{k\})-v(\mathcal{X}_{h})=v(\mathcal{X}_{h+1})-v(\mathcal{X}_{h}). ∎

(An elementary proof is given in § A.1.) It follows that when 𝒳h\mathcal{X}_{h} is the optimal hh-portfolio for a given market, v(𝒳h)v(\mathcal{X}_{h}) is O(h)O(h). In other words, Alma’s problem exhibits diminishing returns to the application budget. Example 2, in which v(𝒳h)v(\mathcal{X}_{h}) can be made arbitrarily close to hh, establishes the tightness of this bound.

3.5 A small example

Let us examine a fictional admissions market consisting of m=8m=8 schools. The school data, along with the optimal solutions for each hmh\leq m, appear in Table 1.

Below are shown the first several iterations of Algorithm 1. The values of fjf_{j}, tjt_{j}, and their product are recorded only for the schools remaining in 𝒞\mathcal{C}. ftf*t, where (ft)j=fjtj(f*t)_{j}=f_{j}t_{j}, denotes the entrywise product of ff and tt. The school added at each iteration, underlined, is the one whose fjtjf_{j}t_{j}-value is greatest.

Iteration 1: C\displaystyle C ={1,2,3,4,5,6,7,8}\displaystyle=\{1,2,3,4,5,6,7,8\}
f\displaystyle f ={0.39,0.33,0.24,0.24,0.05,0.03,0.1,0.12}\displaystyle=\{0.39,0.33,0.24,0.24,0.05,0.03,0.1,0.12\}
t\displaystyle t ={200,250,300,350,400,450,500,550}\displaystyle=\{200,250,300,350,400,450,500,550\}
ft\displaystyle f*t ={78.0,82.5,72.0,84.0¯,20.0,13.5,50.0,66.0}\displaystyle=\{78.0,82.5,72.0,\underline{84.0},20.0,13.5,50.0,66.0\}~{}~{} 𝒳3={4}\implies\mathcal{X}_{3}=\{4\}
Iteration 2: C\displaystyle C ={1,2,3,5,6,7,8}\displaystyle=\{1,2,3,5,6,7,8\}
f\displaystyle f ={0.39,0.33,0.24,0.05,0.03,0.1,0.12}\displaystyle=\{0.39,0.33,0.24,0.05,0.03,0.1,0.12\}
t\displaystyle t ={152,190,228,316,366,416,466}\displaystyle=\{152,190,228,316,366,416,466\}
ft\displaystyle f*t ={59.28,62.7¯,54.72,15.8,10.98,41.6,55.92}\displaystyle=\{59.28,\underline{62.7},54.72,15.8,10.98,41.6,55.92\}~{}~{} 𝒳3={4,2}\implies\mathcal{X}_{3}=\{4,2\}
Iteration 3: C\displaystyle C ={1,3,5,6,7,8}\displaystyle=\{1,3,5,6,7,8\}
f\displaystyle f ={0.39,0.24,0.05,0.03,0.1,0.12}\displaystyle=\{0.39,0.24,0.05,0.03,0.1,0.12\}
t\displaystyle t ={101.84,165.3,253.3,303.3,353.3,403.3}\displaystyle=\{101.84,165.3,253.3,303.3,353.3,403.3\}
ft\displaystyle f*t ={39.718,39.672,12.665,9.099,35.33,48.396¯}\displaystyle=\{39.718,39.672,12.665,9.099,35.33,\underline{48.396}\}~{}~{} 𝒳3={4,2,8}\implies\mathcal{X}_{3}=\{4,2,8\}
\displaystyle\cdots
Iteration 8: C\displaystyle C ={6},f={0.03},t={177.622},ft={5.329¯}\displaystyle=\{6\},f=\{0.03\},t=\{177.622\},f*t=\{\underline{5.329}\}~{}~{} 𝒳3={4,2,8,1,7,3,5,6}\implies\mathcal{X}_{3}=\{4,2,8,1,7,3,5,6\}

The output of the algorithm is 𝚇=[4,2,8,1,7,3,5,6]\mathtt{X}=[4,2,8,1,7,3,5,6], and the optimal hh-portfolio consists of its first hh entries. The “priority” column of Table 1 shows the inverse permutation of 𝚇\mathtt{X}, which is the minimum value of hh for which the school is included in the optimal portfolio. Figure 1 shows the value of the optimal portfolio as a function of hh. The concave shape of the plot suggests the result of Theorem 5.

Index jj School cjc_{j} Admit prob. fjf_{j} Utility tjt_{j} Priority v(𝒳h)v(\mathcal{X}_{h})
1 Mercury University 0.39 200 4 230.0
2 Venus University 0.33 250 2 146.7
3 Mars University 0.24 300 6 281.5
4 Jupiter University 0.24 350 1 084.0
5 Saturn University 0.05 400 7 288.8
6 Uranus University 0.03 450 8 294.1
7 Neptune University 0.10 500 5 257.7
8 Pluto College 0.12 550 3 195.1
Table 1: College data and optimal application portfolios for a fictional market with m=8m=8 schools. By the nestedness property (Theorem 3), the optimal portfolio when the application limit is hh consists of the hh schools having priority hh or less.
Refer to caption
Figure 1: Application limit hh versus the optimal portfolio valuation v=v(𝒳h)v^{*}=v(\mathcal{X}_{h}) in a fictional market with m=8m=8 schools. The concave shape suggests the result of Theorem 5.

4 Heterogeneous application costs

Now we turn to the more general problem in which the constant gjg_{j} represents the cost of applying to cjc_{j} and the student, whom we now call Ellis, has a budget of HH to spend on college applications. Applying Lemma 1, we assume t0=0t_{0}=0 throughout.

Problem 2엘리스의 문제. (Ellis’s problem).

Ellis’s optimal college application portfolio is given by the solution to the following combinatorial optimization problem.

maximizev(𝒳)=j𝒳(fjtji𝒳:i>j(1fi))subject to𝒳𝒞,j𝒳gjH\displaystyle\begin{split}\text{maximize}\quad&v(\mathcal{X})=\sum_{j\in\mathcal{X}}\Bigl{(}f_{j}t_{j}\prod_{\begin{subarray}{c}i\in\mathcal{X}:\\ i>j\end{subarray}}(1-f_{i})\Bigr{)}\\ \text{subject to}\quad&\mathcal{X}\subseteq\mathcal{C},~{}~{}\sum_{j\in\mathcal{X}}g_{j}\leq H\end{split} (20)

In this section, we show that this problem is NP-complete, then provide four algorithmic solutions: an exact branch-and-bound routine, an exact dynamic program, a fully polynomial-time approximation scheme (FPTAS), and a simulated-annealing heuristic.

4.1 NP-completeness

The optima for Ellis’s problem are not necessarily nested, nor is the number of schools in the optimal portfolio necessarily increasing in HH. For example, if f=(0.5,0.5,0.5)f=(0.5,0.5,0.5), t=(1,1,219)t=(1,1,219), and g=(1,1,3)g=(1,1,3), then it is evident that the optimal portfolio for H=2H=2 is {1,2}\{1,2\} while that for H=3H=3 is {3}\{3\}. In fact, Ellis’s problem is NP-complete, as we will show by a transformation from the binary knapsack problem, which is known to be NP-complete (Garey and Johnson 1979, § 3.2.1).

Problem 3배낭 문제의 결정 형태. (Decision form of knapsack problem).

An instance consists of a set \mathcal{B} of mm objects, utility values uju_{j}\in\mathbb{N} and weight wjw_{j}\in\mathbb{N} for each jj\in\mathcal{B}, and target utility UU\in\mathbb{N} and knapsack capacity WW\in\mathbb{N}. The instance is called a yes-instance if and only if there exists a set \mathcal{B’}\subseteq\mathcal{B} having jujU\sum_{j\in\mathcal{B’}}u_{j}\geq U and jwjW\sum_{j\in\mathcal{B’}}w_{j}\leq W.

Problem 4엘리스 문제의 결정 형태. (Decision form of Ellis’s problem).

An instance consists of an instance of Ellis’s problem and a target valuation VV. The instance is called a yes-instance if and only if there exists a portfolio 𝒳𝒞\mathcal{X}\subseteq\mathcal{C} having v(𝒳)Vv(\mathcal{X})\geq V and j𝒳gjH\sum_{j\in\mathcal{X}}g_{j}\leq H.

Theorem 6.

The decision form of Ellis’s problem is NP-complete.

Proof.

It is obvious that the problem is in NP.

Consider an instance of the knapsack problem, and we will construct an instance of Problem 4 that is a yes-instance if and only if the corresponding knapsack instance is a yes-instance. Without loss of generality, we may assume that the objects in \mathcal{B} are indexed in increasing order of uju_{j}, that each uj>0u_{j}>0, and that each wjWw_{j}\leq W.

Let Umax=jujU_{\mathrm{max}}=\sum_{j\in\mathcal{B}}u_{j} and δ=1/mUmax>0\delta={1}/{mU_{\mathrm{max}}}>0, and construct an instance of Ellis’s problem with 𝒞=\mathcal{C}=\mathcal{B}, H=WH=W, all fj=δf_{j}=\delta, and each tj=uj/δt_{j}=u_{j}/\delta. Clearly, 𝒳𝒞\mathcal{X}\subseteq\mathcal{C} is feasible for Ellis’s problem if and only if it is feasible for the knapsack instance. Now, we observe that for any nonempty 𝒳\mathcal{X},

j𝒳uj=j𝒳fjtj>j𝒳(fjtjj𝒳:j>j(1fj))=v(𝒳)=j𝒳(ujj𝒳:j>j(1δ))(1δ)mj𝒳uj(1mδ)j𝒳ujj𝒳ujmδUmax=j𝒳uj1.\displaystyle\begin{split}\sum_{j\in\mathcal{X}}u_{j}&=\sum_{j\in\mathcal{X}}f_{j}t_{j}>\sum_{j\in\mathcal{X}}\Bigl{(}f_{j}t_{j}\prod_{\begin{subarray}{c}j’\in\mathcal{X}:\\ j^{\prime}>j\end{subarray}}(1-f_{j’})\Bigr{)}=v(\mathcal{X})\\ &=\sum_{j\in\mathcal{X}}\Bigl{(}u_{j}\prod_{\begin{subarray}{c}j’\in\mathcal{X}:\\ j^{\prime}>j\end{subarray}}(1-\delta)\Bigr{)}\geq(1-\delta)^{m}\sum_{j\in\mathcal{X}}u_{j}\\ &\geq(1-m\delta)\sum_{j\in\mathcal{X}}u_{j}\geq\sum_{j\in\mathcal{X}}u_{j}-m\delta U_{\mathrm{max}}=\sum_{j\in\mathcal{X}}u_{j}-1.\end{split} (21)

This means that the utility of an application portfolio 𝒳\mathcal{X} in the corresponding knapsack instance is the smallest integer greater than v(𝒳)v(\mathcal{X}). That is, j𝒳ujU\sum_{j\in\mathcal{X}}u_{j}\geq U if and only if v(𝒳)U1v(\mathcal{X})\geq U-1. Taking V=U1V=U-1 completes the transformation and concludes the proof. ∎

An intuitive extension of the greedy algorithm for Alma’s problem is to iteratively add to 𝒳\mathcal{X} the school kk for which (v(𝒳{k})v(𝒳))/gk\bigl{(}v(\mathcal{X}\cup\{k\})-v(\mathcal{X})\bigr{)}/g_{k} is largest. But the construction above shows that the objective function of Ellis’s problem can approximate that of a knapsack problem with arbitrary precision. Therefore, in pathological examples such as the following, the greedy algorithm can achieve an arbitrarily small approximation ratio.

Example 3.

Let t=(10,2021)t=(10,2021), f=(0.1,0.1)f=(0.1,0.1), g=(1,500)g=(1,500), and H=500H=500. Then the greedy approximation algorithm produces the clearly suboptimal solution 𝒳={1}\mathcal{X}=\{1\}.

We might expect to obtain a better approximate solution to Ellis’s problem by solving the following knapsack problem (nevermind that it is NP-complete) as a surrogate.

maximizej𝒳fjtjsubject to𝒳𝒞,j𝒳gjH\text{maximize}\quad\sum_{j\in\mathcal{X}}f_{j}t_{j}\qquad\text{subject to}\quad\mathcal{X}\subseteq\mathcal{C},~{}~{}\sum_{j\in\mathcal{X}}g_{j}\leq H (22)

However, upon inspection, this solution merely generalizes the naïve algorithm for Alma’s problem (Definition 3). In Ellis’s problem, because the number of schools in the optimal portfolio can be as large as m1m-1, the knapsack solution’s approximation coefficient is 1/(m1)1/(m-1) by analogy with (13). A tight example is as follows.

Example 4.

Consider the following instance of Ellis’s problem, where H=m1H=m-1.

jj 11 \cdots m1m-1 mm
fjf_{j} 11 \cdots 11 1m1\frac{1}{m-1}
tjt_{j} 1m1\frac{1}{m-1} \cdots 1m1\frac{1}{m-1} m1m-1
gjg_{j} 11 \cdots 11 m1m-1

The feasible solutions 𝒴={1,,m1}\mathcal{Y}=\{1,\dots,m-1\} and 𝒳={m}\mathcal{X}=\{m\} each have j𝒴fjtj=j𝒳fjtj=1\sum_{j\in\mathcal{Y}}f_{j}t_{j}=\sum_{j\in\mathcal{X}}f_{j}t_{j}=1, and thus the knapsack algorithm can choose 𝒴\mathcal{Y} with v(𝒴)=1/(m1)v(\mathcal{Y})=1/(m-1). But the optimal solution is 𝒳\mathcal{X} with v(𝒳)=1v(\mathcal{X})=1.

In summary, neither a greedy algorithm nor a knapsack-based algorithm solves Ellis’s problem to optimality.

4.2 Branch-and-bound algorithm

A traditional approach to integer optimization problems is the branch-and-bound framework, which generates subproblems in which the values of one or more decision variables are fixed and uses an upper bound on the objective function to exclude, or fathom, branches of the decision tree that cannot yield a solution better than the best solution on hand (Martello and Toth 1990; Kellerer et al. 2004). In this subsection, we present an integer formulation of Ellis’s problem and a linear program (LP) that bounds the objective value from above. We tighten the LP bound for specific subproblems by reusing the conditional transformation of the tjt_{j}-values from Algorithm 1. A branch-and-bound routine emerges naturally from these ingredients.

To begin, let us characterize the portfolio 𝒳\mathcal{X} as the binary vector x{0,1}mx\in\{0,1\}^{m}, where xj=1x_{j}=1 if and only if j{X}j\in\mathcal{\{}X\}. Then it is not difficult to see that Ellis’s problem is equivalent to the following integer nonlinear program.

Problem 5엘리스의 문제를 위한 비선형 정수 계획. (Integer NLP for Ellis’s problem).
maximizev(x)=j=1m(fjtjxji>j(1fixi))subject toj=1mgjxjH,xi{0,1}m\displaystyle\begin{split}\text{maximize}\quad&v(x)=\sum_{j=1}^{m}\Bigl{(}f_{j}t_{j}x_{j}\prod_{i>j}(1-f_{i}x_{i})\Bigr{)}\\ \text{subject to}\quad&\sum_{j=1}^{m}g_{j}x_{j}\leq H,~{}~{}x_{i}\in\{0,1\}^{m}\end{split} (23)

Since the product in v(x)v(x) does not exceed one, the following LP relaxation is an upper bound on the valuation of the optimal portfolio.

Problem 6엘리스의 문제를 위한 선형 완화 문제. (LP relaxation for Ellis’s problem).
maximizevLP(x)=j=1mfjtjxjsubject toj=1mgjxjH,x[0,1]m\displaystyle\begin{split}\text{maximize}\quad&v_{\mathrm{LP}}(x)=\sum_{j=1}^{m}f_{j}t_{j}x_{j}\\ \text{subject to}\quad&\sum_{j=1}^{m}g_{j}x_{j}\leq H,~{}~{}x\in[0,1]^{m}\end{split} (24)

Problem 6 is a continuous knapsack problem, which is easily solved in O(mlogm)O(m\log m)-time by a greedy algorithm (Dantzig 1957). Balas and Zemel (1980, § 2) provide an O(m)O(m) algorithm.

In our branch-and-bound framework, a node is characterized by a three-way partition of schools 𝒞=𝒪𝒩\mathcal{C}=\mathcal{I}\cup\mathcal{O}\cup\mathcal{N} satisfying jgjH\sum_{j\in\mathcal{I}}g_{j}\leq H. \mathcal{I} consists of schools that are “in” the application portfolio (xj=1x_{j}=1), 𝒪\mathcal{O} consists of those that are “out” (xj=0x_{j}=0), and 𝒩\mathcal{N} consists of those that are “negotiable.” The choice of partition induces a pair of subproblems. The first subproblem is an instance of Problem 5, namely

maximizev(x)=γ+j𝒩(fjt¯jxji𝒩:i>j(1fixi))subject toj𝒩gjxjH¯;xj{0,1},j𝒩.\displaystyle\begin{split}\text{maximize}\quad&v(x)=\gamma+\sum_{j\in\mathcal{N}}\Bigl{(}f_{j}\bar{t}_{j}x_{j}\prod_{\begin{subarray}{c}i\in\mathcal{N}:\\ i>j\end{subarray}}(1-f_{i}x_{i})\Bigr{)}\\ \text{subject to}\quad&\sum_{j\in\mathcal{N}}g_{j}x_{j}\leq\bar{H};~{}~{}x_{j}\in\{0,1\},~{}~{}j\in\mathcal{N}.\end{split} (25)

The second is the corresponding instance of Problem 6:

maximizewLP(x)=γ+j𝒩fjt¯jxjsubject toj𝒩gjxjH¯;xj[0,1],j𝒩\displaystyle\begin{split}\text{maximize}\quad&w_{\mathrm{LP}}(x)=\gamma+\sum_{j\in\mathcal{N}}f_{j}\bar{t}_{j}x_{j}\\ \text{subject to}\quad&\sum_{j\in\mathcal{N}}g_{j}x_{j}\leq\bar{H};~{}~{}x_{j}\in[0,1],~{}~{}j\in\mathcal{N}\end{split} (26)

In both subproblems, H¯=Hjgj\bar{H}=H-\sum_{j\in\mathcal{I}}g_{j} denotes the residual budget. The parameters γ\gamma and t¯\bar{t} are obtained by iteratively applying the transformation (7) to the schools in \mathcal{I}. For each jj\in\mathcal{I}, we increment γ\gamma by the current value of fjt¯jf_{j}\bar{t}_{j}, eliminate jj from the market, and update the remaining t¯j\bar{t}_{j}-values using (7). (An example is given below.)

Given a node n=(,𝒪,𝒩)n=(\mathcal{I},\mathcal{O},\mathcal{N}), its children are generated as follows. Every node has two, one, or zero children. In the typical case, we select a school j𝒩j\in\mathcal{N} for which gjH¯g_{j}\leq\bar{H} and generate one child by moving jj to \mathcal{I}, and another child by moving jj it to 𝒪\mathcal{O}. Equivalently, we set xj=1x_{j}=1 in one child and xj=0x_{j}=0 in the other. In principle, any school can be chosen for jj, but as a greedy heuristic, we choose the school for which the ratio fjt¯j/gjf_{j}\bar{t}_{j}/g_{j} is highest. Notice that this method of generating children ensures that each node’s \mathcal{I}-set differs from its parent’s by at most a single school, so the constant γ\gamma and transformed t¯j\bar{t}_{j}-values for the new node can be obtained by a single application of (7).

There are two atypical cases. First, if every school in 𝒩\mathcal{N} has gj>H¯g_{j}>\bar{H}, then there is no school that can be added to \mathcal{I} in a feasible portfolio, and the optimal portfolio on this branch is \mathcal{I} itself. In this case, we generate only one child by moving all the schools from 𝒩\mathcal{N} to 𝒪\mathcal{O}. Second, if 𝒩=Ø\mathcal{N}=\O, then the node has zero children, and as no further branching is possible, the node is called a leaf.

Example 5.

Consider a market in which t=(20,40,60,80,100)t=(20,40,60,80,100), f=(0.5,0.5,0.5,0.5,0.5)f=(0.5,0.5,0.5,0.5,0.5), g=(3,2,3,2,3)g=(3,2,3,2,3), and H=8H=8, and the node n=(,𝒪,𝒩)=({2,5},{1},{3,4})n=(\mathcal{I},\mathcal{O},\mathcal{N})=(\{2,5\},\{1\},\{3,4\}). Let us compute the two subproblems associated with nn and identify its children. To compute the subproblems, we first simply disregard c1c_{1}. Next, to eliminate c2c_{2}, we apply (7) to tt to obtain {t¯¯3,t¯¯4,t¯¯5}={(1f2)t3,(1f2)t4,(1f2)t5}={30,40,50}\{\bar{\bar{t}}_{3},\bar{\bar{t}}_{4},\bar{\bar{t}}_{5}\}=\{(1-f_{2})t_{3},(1-f_{2})t_{4},(1-f_{2})t_{5}\}=\{30,40,50\} and γ¯¯=f2t2=20\bar{\bar{\gamma}}=f_{2}t_{2}=20. We eliminate c5c_{5} by again applying (7) to t¯¯\bar{\bar{t}} to obtain {t¯3,t¯4}={t¯¯3f5t¯¯5,t¯¯4f5t¯¯5}={5,15}\{\bar{t}_{3},\bar{t}_{4}\}=\{\bar{\bar{t}}_{3}-f_{5}\bar{\bar{t}}_{5},\bar{\bar{t}}_{4}-f_{5}\bar{\bar{t}}_{5}\}=\{5,15\} and γ=γ¯¯+f5t¯¯5=35\gamma=\bar{\bar{\gamma}}+f_{5}\bar{\bar{t}}_{5}=35. Finally, H¯=Hg2g5=3\bar{H}=H-g_{2}-g_{5}=3. Now problems (25) and (26) are easily obtained by substitution.

Since at least one of the schools in 𝒩\mathcal{N} has gjH¯g_{j}\leq\bar{H}, nn has two children. Applying the node-generation rule, c4c_{4} has the highest fjt¯j/gjf_{j}\bar{t}_{j}/g_{j}-ratio, so the children are n1=({2,4,5},{1},{3})n_{1}=(\{2,4,5\},\{1\},\{3\}) and n2=({2,5},{1,4},{3})n_{2}=(\{2,5\},\{1,4\},\{3\}).

To implement the branch-and-bound algorithm, we represent the set of candidate nodes—namely, nonleaf nodes whose children have not yet been generated—by 𝔗\mathfrak{T}. Each time a node n=(,𝒪,𝒩)n=(\mathcal{I},\mathcal{O},\mathcal{N}) is generated, we record the values v[n]=v()v_{\mathcal{I}}[n]=v(\mathcal{I}) and vLP[n]v^{*}_{\mathrm{LP}}[n], the optimal objective value of the LP relaxation (26). Because \mathcal{I} is a feasible portfolio, v[n]v_{\mathcal{I}}[n] is a lower bound on the optimal objective value. Moreover, by the argument given in the proof of Theorem 3, the objective function of (25) is identical to the function v(𝒳)v(\mathcal{I}\cup\mathcal{X}). This means that vLP[n]v_{\mathrm{LP}}^{*}[n] is an upper bound on the valuation of any portfolio that contains \mathcal{I} as a subset and does not include any school in 𝒪\mathcal{O}, and hence on the valuation of any portfolio on this branch. Therefore, if upon generating a new node n2n_{2}, we discover that its objective value v[n2]v_{\mathcal{I}}[n_{2}] is greater than vLP[n1]v_{\mathrm{LP}}^{*}[n_{1}] for some other node n1n_{1}, then we can disregard n1n_{1} and all its descendants.

The algorithm is initialized by populating 𝔗\mathfrak{T} with the root node n0=(Ø,Ø,𝒞)n_{0}=(\O,\O,\mathcal{C}). At each iteration, it selects the node n𝔗n\in\mathfrak{T} having the highest vLP[n]v_{\mathrm{LP}}^{*}[n]-value, generates its children, and removes nn from the candidate set. Next, the children nn^{\prime} of nn are inspected and added to the tree. If one of the children yields a new optimal solution, then we mark it as the best candidate and fathom any nodes n′′n^{\prime\prime} for which v[n]>vLP[n′′]v_{\mathcal{I}}[n^{\prime}]>v_{\mathrm{LP}}^{*}[n^{\prime\prime}]. When no nodes remain in the candidate set, the algorithm has explored every branch, so it returns the best candidate and terminates.

Input: Utility values t(0,)mt\in(0,\infty)^{m}, admissions probabilities f(0,1]mf\in(0,1]^{m}, application costs g(0,)mg\in(0,\infty)^{m}, budget H(0,)H\in(0,\infty).
1 Root node n0(Ø,Ø,𝒞)n_{0}\leftarrow(\O,\O,\mathcal{C});
2 Current lower bound L0L\leftarrow 0 and best solution 𝒳Ø\mathcal{X}\leftarrow\O;
3 Candidate set 𝔗{n0}\mathfrak{T}\leftarrow\{n_{0}\};
4 while not finished do
5       if 𝔗=Ø\mathfrak{T}=\O then return 𝒳,L\mathcal{X},L;
6       else
7             nargmax{vLP[n]:n𝔗}n\leftarrow\operatorname*{arg\,max}\{v_{\mathrm{LP}}^{*}[n]:n\in\mathfrak{T}\};
8             Remove nn from 𝔗\mathfrak{T};
9             for each child nn^{\prime} of nn do
10                   if L<v[n]L<v_{\mathcal{I}}[n^{\prime}] then
11                         Lv[n]L\leftarrow v_{\mathcal{I}}[n^{\prime}];
12                         Update 𝒳\mathcal{X} to the \mathcal{I}-set associated with nn^{\prime};
13                        
14                   end if
15                  if vLP[n]>Lv_{\mathrm{LP}}^{*}[n]>L and nn^{\prime} is not a leaf then add nn^{\prime} to 𝔗\mathfrak{T};
16                  
17             end for
18            for n′′𝔗n^{\prime\prime}\in\mathfrak{T} do
19                   if L>vLP[n′′]L>v_{\mathrm{LP}}^{*}[n^{\prime\prime}] then remove n′′n^{\prime\prime} from 𝔗\mathfrak{T};
20                  
21             end for
22            
23       end if
24      
25 end while
Algorithm 2 Branch and bound for Ellis’s problem.
Theorem 7알고리즘 2의 타당성. (Validity of Algorithm 2).

Algorithm 2 produces an optimal application portfolio for Ellis’s problem.

Proof.

Because an optimal solution exists among the leaves of the tree, the discussion above implies that as long as the algorithm terminates, it returns an optimal solution.

To show that the algorithm does not cycle, it suffices to show that no node is generated twice. Suppose not: that two distinct nodes n1n_{1} and n2n_{2} share the same partition (12,𝒪12,𝒩12)(\mathcal{I}_{12},\mathcal{O}_{12},\mathcal{N}_{12}). Trace each node’s lineage up the tree and let nn denote the first node at which the lineages meet. nn must have two children, or else its sole child is a common ancestor of n1n_{1} and n2n_{2}, and one of these children, say n3n_{3}, must be an ancestor of n1n_{1} while the other, say n4n_{4}, is an ancestor of n2n_{2}. Write n3=(3,𝒪3,𝒩3)n_{3}=(\mathcal{I}_{3},\mathcal{O}_{3},\mathcal{N}_{3}) and n4=(4,𝒪4,𝒩4)n_{4}=(\mathcal{I}_{4},\mathcal{O}_{4},\mathcal{N}_{4}). By the node-generation rule, there is a school jj in 3𝒪4\mathcal{I}_{3}\cap\mathcal{O}_{4}, and the \mathcal{I}-set (respectively, 𝒪\mathcal{O}-set) for any descendant of 3\mathcal{I}_{3} (respectively, 𝒪4\mathcal{O}_{4}) is a superset of 3\mathcal{I}_{3} (respectively, 𝒪4\mathcal{O}_{4}). Therefore, j12𝒪12j\in\mathcal{I}_{12}\cap\mathcal{O}_{12}, meaning that (12,𝒪12,𝒩12)(\mathcal{I}_{12},\mathcal{O}_{12},\mathcal{N}_{12}) is not a partition of 𝒞\mathcal{C}, a contradiction. ∎

The branch-and-bound algorithm is an interesting benchmark, but as a kind of enumeration algorithm, its computation time grows rapidly in the problem size, and unlike the approximation scheme we propose later on, there is no guaranteed bound on the approximation error after a fixed number of iterations. Moreover, when there are many schools in 𝒩\mathcal{N}, the LP upper bound may be much higher than v[n]v_{\mathcal{I}}[n^{\prime}]. This means that significant fathoming operations do not occur until the algorithm has explored deep into the tree, at which point the bulk of the computational effort has already been exhausted. In our numerical experiments, Algorithm 2 was ineffective on instances larger than about m=35m=35 schools, and therefore it does not represent a significant improvement over naïve enumeration. We speculate that the algorithm can be improved by incorporating cover inequalities (Wolsey 1998, § 9.3).

4.3 Pseudopolynomial-time dynamic program

In this subsection, we assume, with a small loss of generality, that gjg_{j}\in\mathbb{N} for j=1mj=1\dots m and HH\in\mathbb{N}, and provide an algorithmic solution to Ellis’s problem that runs in O(Hm+mlogm)O(Hm+m\log m)-time. The algorithm resembles a familiar dynamic programming algorithm for the binary knapsack problem (Dantzig 1957; Wikipedia, s.v. “Knapsack problem”). Because we cannot assume that HmH\leq m (as was the case in Alma’s problem), this represents a pseudopolynomial-time solution (Garey and Johnson 1979, § 4.2). However, it is quite effective for typical college-application instances in which the application costs are small integers.

For j=0mj=0\dots m and h=0Hh=0\dots H, let 𝒳[j,h]\mathcal{X}[j,h] denote the optimal portfolio using only the schools {1,,j}\{1,\dots,j\} and costing no more than hh, and let V[j,h]=v(𝒳[j,h])V[j,h]=v(\mathcal{X}[j,h]). It is clear that if j=0j=0 or h=0h=0, then 𝒳[j,h]=Ø\mathcal{X}[j,h]=\O and V[j,h]=0V[j,h]=0. For convenience, we also define V[j,h]=V[j,h]=-\infty for all h<0h<0.

For the remaining indices, 𝒳[j,h]\mathcal{X}[j,h] either contains jj or not. If it does not contain jj, then 𝒳[j,h]=𝒳[j1,h]\mathcal{X}[j,h]=\mathcal{X}[j-1,h]. On the other hand, if 𝒳[j,h]\mathcal{X}[j,h] contains jj, then its valuation is (1fj)v(𝒳[j,h]{j})+fjtj(1-f_{j})v(\mathcal{X}[j,h]\setminus\{j\})+f_{j}t_{j}. This requires that 𝒳[j,h]{j}\mathcal{X}[j,h]\setminus\{j\} make optimal use of the remaining budget over the remaining schools; that is, 𝒳[j,h]=𝒳[j1,hgj]{j}\mathcal{X}[j,h]=\mathcal{X}[j-1,h-g_{j}]\cup\{j\}. From these observations, we obtain the following Bellman equation for j=1mj=1\dots m and h=1Hh=1\dots H:

V[j,h]=max{V[j1,h],(1fj)V[j1,hgj]+fjtj}\displaystyle V[j,h]=\max\bigl{\{}V[j-1,h],(1-f_{j})V[j-1,h-g_{j}]+f_{j}t_{j}\bigr{\}} (27)

with the convention that 0=-\infty\cdot 0=-\infty. The corresponding optimal portfolios are computed by observing that 𝒳[j,h]\mathcal{X}[j,h] contains jj if and only if V[j,h]>V[j1,h]V[j,h]>V[j-1,h]. The optimal solution is given by 𝒳[m,H]\mathcal{X}[m,H]. The algorithm below performs these computations and outputs the optimal portfolio 𝒳\mathcal{X}.

Input: Utility values t(0,)mt\in(0,\infty)^{m}, admissions probabilities f(0,1]mf\in(0,1]^{m}, application costs gmg\in\mathbb{N}^{m}, budget HH\in\mathbb{N}.
1 Index schools in ascending order by tt;
2 Fill a lookup table with the values of V[j,h]V[j,h];
3 hHh\leftarrow H;
4 𝒳Ø\mathcal{X}\leftarrow\O;
5 for j=m,m1,,1j=m,m-1,\dots,1 do
6       if V[j1,h]<V[j,h]V[j-1,h]<V[j,h] then
7             𝒳𝒳{j}\mathcal{X}\leftarrow\mathcal{X}\cup\{j\};
8             hhgjh\leftarrow h-g_{j};
9            
10       end if
11      
12 end for
return 𝒳\mathcal{X}
Algorithm 3 Dynamic program for Ellis’s problem with integral application costs.
Theorem 8알고리즘 3의 타당성. (Validity of Algorithm 3).

Algorithm 3 produces an optimal application portfolio for Ellis’s problem in O(Hm+mlogm)O(Hm+m\log m)-time.

Proof.

Optimality follows from the foregoing discussion. Sorting tt is O(mlogm)O(m\log m). The bottleneck step is the creation of the lookup table for V[j,h]V[j,h] in line 3. Each entry is generated in unit time, and the size of the table is O(Hm)O(Hm). ∎

4.4 Fully polynomial-time approximation scheme

As with the knapsack problem, Ellis’s problem admits a complementary dynamic program that iterates on the value of the cheapest portfolio instead of on the cost of the most valuable portfolio. We will use this algorithm as the basis for an FPTAS for Ellis’s problem that uses O(m3/ε)O(m^{3}/\varepsilon)-time and -space.

We will represent approximate portfolio valuations using a fixed-point decimal with a precision of PP, where PP is the number of digits to retain after the decimal point. Let r[x]=10P10Pxr[x]=10^{-P}\lfloor 10^{P}x\rfloor denote the value of xx rounded down to its nearest fixed-point representation. Since U¯=j𝒞fjtj\bar{U}=\sum_{j\in\mathcal{C}}f_{j}t_{j} is an upper bound on the valuation of any portfolio, and since we will ensure that each fixed-point approximation is an underestimate of the portfolio’s true valuation, the set 𝒱\mathcal{V} of possible valuations possible in the fixed-point framework is finite:

𝒱={0,1×10P,2×10P,,r[U¯1×10P],r[U¯]}\mathcal{V}=\Bigl{\{}0,1\times 10^{-P},2\times 10^{-P},\dots,r\bigl{[}\bar{U}-1\times 10^{-P}\bigr{]},r\bigl{[}\bar{U}\bigr{]}\Bigr{\}} (28)

Then |𝒱|=U¯×10P+1|\mathcal{V}|=\bar{U}\times 10^{P}+1.

For the remainder of this subsection, unless otherwise specified, the word valuation refers to a portfolio’s valuation within the fixed-point framework, with the understanding that this is an approximation. We will account for the approximation error below when we prove the dynamic program’s validity.

For integers 0jm0\leq j\leq m and v[,0)𝒱v\in[-\infty,0)\cup\mathcal{V}, let 𝒲[j,v]\mathcal{W}[j,v] denote the least expensive portfolio that uses only schools {1,,j}\{1,\dots,j\} and has valuation at least vv, if such a portfolio exists. Denote its cost by G[j,v]=j𝒲[j,v]gjG[j,v]=\sum_{j\in\mathcal{W}[j,v]}g_{j}, where G[j,v]=G[j,v]=\infty if 𝒲[j,v]\mathcal{W}[j,v] does not exist. It is clear that if v0v\leq 0, then 𝒲[j,v]=Ø\mathcal{W}[j,v]=\O and G[j,h]=0G[j,h]=0, and that if j=0j=0 and v>0v>0, then G[j,h]=G[j,h]=\infty. For the remaining indices (where j,v>0j,v>0), we claim that

G[j,v]\displaystyle G[j,v] ={,tj<vmin{G[j1,v],gj+G[j1,vΔj(v)]},tjv\displaystyle=\begin{cases}\infty,\quad&t_{j}<v\\ \min\bigl{\{}G[j-1,v],g_{j}+G[j-1,v-\Delta_{j}(v)]\bigr{\}},\quad&t_{j}\geq v\end{cases} (29)
whereΔj(v)\displaystyle\text{where}\qquad\Delta_{j}(v) ={r[fj1fj(tjv)],fj<1,fj=1.\displaystyle=\begin{cases}r\left[\frac{f_{j}}{1-f_{j}}(t_{j}-v)\right],\quad&f_{j}<1\\ \infty,&f_{j}=1.\end{cases} (30)

In the tj<vt_{j}<v case, any feasible portfolio must be composed of schools with utility less than vv, and therefore its valuation can not equal vv, meaning that 𝒲[j,v]\mathcal{W}[j,v] is undefined. In the tjvt_{j}\geq v case, the first argument to min{}\min\{\} says simply that omitting jj and choosing 𝒲[j1,v]\mathcal{W}[j-1,v] is a permissible choice for 𝒲[j,v]\mathcal{W}[j,v]. If, on the other hand, j𝒲[j,v]j\in\mathcal{W}[j,v], then

v(𝒲[j,v])=(1fj)v(𝒲[j,v]{j})+fjtj.v(\mathcal{W}[j,v])=(1-f_{j})v(\mathcal{W}[j,v]\setminus\{j\})+f_{j}t_{j}. (31)

Therefore, the subportfolio 𝒲[j,v]{j}\mathcal{W}[j,v]\setminus\{j\} must have a valuation of at least vΔv-\Delta, where Δ\Delta satisfies v=(1fj)(vΔ)+fjtjv=(1-f_{j})(v-\Delta)+f_{j}t_{j}. When fj<1f_{j}<1, the solution to this equation is Δ=fj1fj(tjv)\Delta=\frac{f_{j}}{1-f_{j}}(t_{j}-v). By rounding this value down, we ensure that the true valuation of 𝒲[j,v]\mathcal{W}[j,v] is at least vΔv-\Delta. When tjvt_{j}\geq v and fj=1f_{j}=1, the singleton {j}\{j\} has v({j})vv(\{j\})\geq v, so

G[j,v]=min{G[j1,v],gj}.G[j,v]=\min\bigl{\{}G[j-1,v],g_{j}\bigr{\}}. (32)

Defining Δj(v)=\Delta_{j}(v)=\infty in this case ensures that gj+G[j1,vΔj(v)]=gj+G[j1,v]=gjg_{j}+G[j-1,v-\Delta_{j}(v)]=g_{j}+G[j-1,v-\infty]=g_{j} as required.

Once G[j,v]G[j,v] has been calculated at each index, the associated portfolio can be found by applying the observation that 𝒲[j,v]\mathcal{W}[j,v] contains jj if and only if G[j,v]<G[j1,v]G[j,v]<G[j-1,v]. Then an approximate solution to Ellis’s problem is obtained by computing the largest achievable objective value max{w:G[m,w]H}\max\{w:G[m,w]\leq H\} and corresponding portfolio.

Input: Utility values t(0,)mt\in(0,\infty)^{m}, admissions probabilities f(0,1]mf\in(0,1]^{m}, application costs g(0,)mg\in(0,\infty)^{m}, budget H(0,)mH\in(0,\infty)^{m}.
Parameters : Tolerance ε(0,1)\varepsilon\in(0,1).
1 Index schools in ascending order by tt;
2 Set precision Plog10(m2/εU¯)P\leftarrow\bigl{\lceil}\log_{10}\left(m^{2}/\varepsilon\bar{U}\right)\bigr{\rceil};
3 Fill a lookup table with the entries of G[j,h]G[j,h];
4 vmax{w𝒱:G[m,w]H}v\leftarrow\max\{w\in\mathcal{V}:G[m,w]\leq H\};
5 𝒳Ø\mathcal{X}\leftarrow\O;
6 for j=m,m1,,1j=m,m-1,\dots,1 do
7       if G[j,v]<G[j,v]<\infty and G[j,v]<G[j1,v]G[j,v]<G[j-1,v] then
8             𝒳𝒳{j}\mathcal{X}\leftarrow\mathcal{X}\cup\{j\};
9             vvΔj(v)v\leftarrow v-\Delta_{j}(v);
10            
11       end if
12      
13 end for
return 𝒳\mathcal{X}
Algorithm 4 Fully polynomial-time approximation scheme for Ellis’s problem.
Theorem 9알고리즘 4의 타당성. (Validity of Algorithm 4).

Algorithm 4 produces a (1ε)(1-\varepsilon)-optimal application portfolio for Ellis’s problem in O(m3/ε)O(m^{3}/\varepsilon)-time.

Proof.

(Optimality.) Let 𝒲\mathcal{W} denote the output of Algorithm 4 and 𝒳\mathcal{X} the true optimum. We know that v(𝒳)U¯v(\mathcal{X})\leq\bar{U}, and because each singleton portfolio is feasible, 𝒳\mathcal{X} must be more valuable than the average singleton portfolio; that is, v(𝒳)U¯/mv(\mathcal{X})\geq\bar{U}/m.

Because Δj(v)\Delta_{j}(v) is rounded down in the recursion relation defined by (29) and (30), if j𝒲[j,v]j\in\mathcal{W}[j,v], then the true value of (1fj)v(𝒲[j1,vΔj(v)])+fjtj(1-f_{j})v\bigl{(}\mathcal{W}[j-1,v-\Delta_{j}(v)]\bigr{)}+f_{j}t_{j} may exceed the fixed-point valuation vv of 𝒲[j,v]\mathcal{W}[j,v], but not by more than 10P10^{-P}. This error accumulates additively with each school added to 𝒲\mathcal{W}, but the number of additions is at most mm. Therefore, where v(𝒲)v^{\prime}(\mathcal{W}) denotes the fixed-point valuation of 𝒲\mathcal{W} recorded in line 4 of the algorithm, v(𝒲)v(𝒲)m10Pv(\mathcal{W})-v^{\prime}(\mathcal{W})\leq m10^{-P}.

We can define v(𝒳)v^{\prime}(\mathcal{X}) analogously as the fixed-point valuation of 𝒳\mathcal{X} when its elements are added in index order and its valuation is updated and rounded down to the nearest multiple of 10P10^{-P} at each addition in accordance with (31). By the same logic, v(𝒳)v(𝒳)m10Pv(\mathcal{X})-v^{\prime}(\mathcal{X})\leq m10^{-P}. The optimality of 𝒲\mathcal{W} in the fixed-point environment implies that v(𝒲)v(𝒳)v^{\prime}(\mathcal{W})\geq v^{\prime}(\mathcal{X}).

Applying these observations, we have

v(𝒲)v(𝒲)v(𝒳)v(𝒳)m10P(1m210PU¯)v(𝒳)(1ε)v(𝒳)\begin{split}v(\mathcal{W})&\geq v^{\prime}(\mathcal{W})\geq v^{\prime}(\mathcal{X})\geq v(\mathcal{X})-m10^{-P}\geq\left(1-\frac{m^{2}10^{-P}}{\bar{U}}\right)v(\mathcal{X})\geq\left(1-\varepsilon\right)v(\mathcal{X})\end{split} (33)

which establishes the approximation bound.

(Computation time.) The bottleneck step is the creation of the lookup table in line 4, whose size is m×|𝒱|m\times|\mathcal{V}|. Since

|𝒱|=U¯×10P+1=U¯×10log10(m2/εU¯)+1m2ε×const.|\mathcal{V}|=\bar{U}\times 10^{P}+1=\bar{U}\times 10^{\bigl{\lceil}\log_{10}\left(m^{2}/\varepsilon\bar{U}\right)\bigr{\rceil}}+1\leq\frac{m^{2}}{\varepsilon}\times\text{const.} (34)

is O(m2/ε)O(m^{2}/\varepsilon), the time complexity is as promised. ∎

Since its time complexity is polynomial in mm and 1/ε1/\varepsilon, Algorithm 4 is an FPTAS for Ellis’s problem (Vazirani 2001).

Algorithms 3 and 4 can be written using recursive functions instead of lookup tables. However, since each function references itself twice, the function values at each index must be recorded in a lookup table or memoized to prevent an exponential number of calls from forming on the stack.

4.5 Simulated annealing heuristic

Simulated annealing is a popular local-search heuristic for nonconvex optimization problems. Because of their inherent randomness, simulated-annealing algorithms offer no accuracy guarantee; however, they are easy to implement, computationally inexpensive, and often produce solutions with a small optimality gap. In this section, we present a simulated-annealing algorithm for Ellis’s problem. It is patterned on the procedure for integer programs outlined by Wolsey (1998, § 12.3.2).

To generate an initial solution, our algorithm adopts the greedy heuristic of adding schools in descending order by fjtj/gjf_{j}t_{j}/g_{j} until the budget is exhausted. While Example 3 shows that the approximation coefficient of this solution can be arbitrarily small, in typical instances, it is much higher. Next, given a candidate solution 𝒳\mathcal{X}, we generate a neighbor 𝒳n\mathcal{X}_{n} by copying 𝒳\mathcal{X}, adding schools to 𝒳n\mathcal{X}_{n} until it becomes infeasible, then removing elements of 𝒳\mathcal{X} from 𝒳n\mathcal{X}_{n} until feasibility is restored. If v(𝒳n)v(𝒳)v(\mathcal{X}_{n})\geq v(\mathcal{X}), then the candidate solution is updated to equal the neighbor; if not, then the candidate solution is updated with probability exp(v(𝒳n)v(𝒳)/T)\exp\bigl{(}v(\mathcal{X}_{n})-v(\mathcal{X})/T\bigr{)}, where TT is a temperature parameter. This is repeated NN times, and the algorithm returns the best 𝒳\mathcal{X} observed.

Input: Utility values t(0,)mt(0,\infty)^{m}, admissions probabilities f(0,1]mf\in(0,1]^{m}, application costs g(0,)mg\in(0,\infty)^{m}, budget H(0,)mH\in(0,\infty)^{m}.
Parameters : Initial temperature T0T\geq 0, temperature reduction parameter r(0,1]r\in(0,1], number of iterations NN.
1 Add schools to 𝒳\mathcal{X} in descending order by fjtj/gjf_{j}t_{j}/g_{j} until the budget is exhausted;
2 for i=1Ni=1\dots N do
3       𝒳ncopy(𝒳)\mathcal{X}_{n}\leftarrow\operatorname{copy}(\mathcal{X});
4       Add random schools from 𝒞𝒳\mathcal{C}\setminus\mathcal{X} to 𝒳n\mathcal{X}_{n} until 𝒳n\mathcal{X}_{n} infeasible;
5       Remove random schools in 𝒳\mathcal{X} from 𝒳n\mathcal{X}_{n} until feasibility restored;
6       Δ=v(𝒳n)v(𝒳)\Delta=v(\mathcal{X}_{n})-v(\mathcal{X});
7       if Δ0\Delta\geq 0 then 𝒳𝒳n\mathcal{X}\leftarrow\mathcal{X}_{n} else 𝒳𝒳n\mathcal{X}\leftarrow\mathcal{X}_{n} with probability exp(Δ/T)\exp(\Delta/T);
8       TrTT\leftarrow rT;
9      
10 end for
return the best 𝒳\mathcal{X} found
Algorithm 5 Simulated annealing for Ellis’s problem.
Proposition 2.

The computation time of Algorithm 5 is O(Nm)O(Nm).

In our numerical experiments, the output of Algorithm 5 was typically quite close to the optimum.

5 Numerical experiments

In this section, we present the results of numerical experiments designed to test the practical efficacy of the algorithms derived above.

5.1 Implementation notes

We chose to implement our algorithms in the Julia language (v1.8.0b1) because its system of parametric data types allows the compiler to optimize for differential cases such as when the tjt_{j}-values are integers or floating-point numbers. Julia also offers convenient macros for parallel computing, which enabled us to solve more and larger problems in the benchmark (Bezanson et al. 2017). We made extensive use of the DataStructures.jl package (v0.18.11, github.com/JuliaCollections). The code is available at github.com/maxkapur/OptimalApplication.

The dynamic programs, namely Algorithms 3 and 4, were implemented using recursive functions and dictionary memoization, as described in Cormen et al. (1990, § 16.6). Our implementation of Algorithm 4 also differed from that described in Subsection 4.4 in that we represented portfolio valuations in binary rather than decimal, with the definitions of PP and 𝒱\mathcal{V} modified accordingly, and instead of fixed-point numbers, we worked in integers by multiplying each element of 𝒱\mathcal{V} by 2P2^{P}. These modifications yield a substantial performance improvement without changing the fundamental algorithm design or complexity analysis.

5.2 Experimental procedure

We conducted three numerical experiments. Experiments 1 and 2 evaluate the computation times of our algorithms for Alma’s problem and Ellis’s problem, respectively. Experiment 3 investigates the empirical accuracy of the simulated-annealing heuristic as compared to an exact algorithm.

To generate synthetic markets, we drew the tjt_{j}-values independently from an exponential distribution with a scale parameter of ten and rounded up to the nearest integer. To achieve partial negative correlation between tjt_{j} and fjf_{j}, we then set fj=1/(tj+10Q)f_{j}=1/(t_{j}+10\,Q), where QQ is drawn uniformly from the interval [0,1)[0,1). In Experiment 1, which concerns Alma’s problem, we set h=m/2h=\lfloor m/2\rfloor. In Experiments 2 and 3, which concern Ellis’s problem, each gjg_{j} is drawn uniformly from the set {5,,10}\{5,\dots,10\} and we set H=12gjH=\lfloor\frac{1}{2}\sum g_{j}\rfloor. This cost distribution resembles real-world college application fees, which are often multiples of $10 between $50 and $100. A typical instance is shown in Figure 2.

The experimental variables in Experiments 1 and 2 were the market size mm, the choice of algorithm, and (for Algorithm 4) the tolerance ε\varepsilon. For each combination of the experimental variables, we generated 50 markets, and the optimal portfolio was computed three times, with the fastest of the three repetitions recorded as the computation time. We then report the mean and standard deviation across the 50 markets. Therefore, each cell of each table below represents a statistic over 150 computations. Where applicable, we do not count the time required to sort the entries of tt. As the simulated-annealing heuristic’s computation time is negligible, it was excluded from Experiment 2.

In Experiment 3, we generated 500 markets with sizes varying uniformly in the logarithm between m=23m=2^{3} and 2112^{11}. For each market, we computed a heuristic solution using Algorithm 5 and an exact solution using Algorithm 3 and calculated the optimality ratio. We chose to use N=500N=500 iterations in the simulated-annealing algorithm, and the temperature parameters T=1/4T=1/4 and r=1/16r=1/16 were selected by a preliminary grid search.

5.3 Summary of results

Experiment 1 compared the performance of Algorithm 1 for homogeneous-cost markets of various sizes when the set of candidate schools 𝒞\mathcal{C} is stored as a list and as a binary max heap ordered by the fjt¯jf_{j}\bar{t}_{j}-values. The results appear in Table 2. Our results indicate that the list implementation is faster.

In Experiment 2, we turned to the general problem, and compared the performance of the exact algorithms (Algorithms 2 and 3) and the approximation scheme (Algorithm 4) at tolerances 0.5 and 0.05. The results, which appear in Table 3, broadly agree with the time complexity analyses presented above. The branch-and-bound algorithm proved impractical for even medium-sized instances. Overall, we found the exact dynamic program to be the fastest algorithm, while the FPTAS was rather slow, a result that echoes the results of computational studies on knapsack problems (Martello and Toth 1990, § 2.10). The strong performance of Algorithm 3 is partly attributable to the structure of our synthetic instances, in which application costs are small integers and HH is proportional in expectation to mm, meaning the expected computation time is O(m2)O(m^{2}). However, the relative advantage of Algorithm 3 may be even more pronounced in real college-application instances because the typical student’s application budget accommodates at most a dozen or so schools and is constant in mm.

The results of Experiment 3, which evaluated the performance of the simulated-annealing heuristic in our synthetic instances, are plotted in Figure 3. In the every instance, the heuristic found a solution within 10 percent of optimality, and in the vast majority of instances, it was within 2 percent of optimality. The heuristic performs most poorly in small markets of size m16m\leq 16, but as exact algorithms are tractable at this scale, this result presents no cause for concern.

Refer to caption
Figure 2: A typical randomly-generated instance with m=64m=64 schools and its optimal application portfolio. The application costs gjg_{j} were drawn uniformly from {5,,10}\{5,\dots,10\}. The optimal portfolio was computed using Algorithm 3.
Number of
schools mm
Algorithm 1
with list
Algorithm 1
with heap
16 0.00 (0.00) 0.01 (0.00)
64 0.01 (0.00) 0.08 (0.02)
256 0.06 (0.00) 0.96 (0.26)
1024 0.82 (0.03) 14.27 (2.28)
4096 12.87 (0.71) 230.77 (18.75)
16384 199.48 (1.77) 3999.19 (283.48)
Table 2: (Experiment 1.) Time in ms to compute an optimal portfolio for an admissions market with homogeneous application costs using Algorithm 1 when 𝒞\mathcal{C} is stored as a list and as a heap. For each value of mm, 50 markets were generated, and the computation time was recorded as fastest of three repetitions of the algorithm. The table shows the average time (standard deviation) over the 50 instances.  In every case, h=m/2h=m/2.
Number of
schools mm
Algorithm 2:
Branch & bound
Algorithm 3:
Costs DP
Algorithm 4:
FPTAS, ε=0.5\varepsilon=0.5
Algorithm 4:
FPTAS, ε=0.05\varepsilon=0.05
8 0.02 (0.01) 0.01 (0.00) 0.05 (0.01) 0.16 (0.04)
16 0.10 (0.04) 0.07 (0.02) 0.39 (0.10) 2.59 (0.62)
32 12.43 (9.88) 0.29 (0.05) 2.15 (0.29) 33.07 (10.72)
64 (—) 1.24 (0.16) 13.24 (2.22) 339.64 (100.38)
128 (—) 6.20 (0.64) 79.92 (20.18) 2042.63 (749.71)
256 (—) 30.63 (2.28) 818.50 (632.98) 18949.50 (3533.88)
Table 3: (Experiment 2.) Time in ms to compute an optimal or (1ε)(1-\varepsilon)-optimal portfolio for an admissions market with heterogeneous application costs using the three algorithms developed in Section 4. The branch-and-bound algorithm is impractical for large markets. For each value of mm, 50 markets were generated, and the computation time was recorded as fastest of three repetitions of the algorithm. The table shows the average time (standard deviation) over the 50 instances.
Refer to caption
Figure 3: (Experiment 3.) Optimality ratio achieved by simulated annealing (Algorithm 5) in markets of varying size, with parameters N=500N=500, T=1/4T=1/4, and r=1/16r=1/16. Optimal portfolios were computed using Algorithm 3.

6 Conclusion and ideas for future research

This study has introduced a novel combinatorial optimization problem that we call the college application problem. It can be viewed as a kind of asset allocation or knapsack problem with a submodular objective. We showed that the special case in which colleges have identical application costs can be solved in polynomial time by a greedy algorithm because the optimal solutions are nested in the budget constraint. The general problem is NP-complete. We provided four solution algorithms. The strongest from a theoretical standpoint is an FPTAS that produces a (1ε)(1-\varepsilon)-approximate solution in O(m3/ε)O(m^{3}/\varepsilon)-time. On the other hand, for typical college-application instances, the dynamic program based on application expenditures is both easier to implement and substantially more time efficient. A heuristic simulated-annealing algorithm also exhibited strong empirical performance in our computational study. The algorithms discussed in this paper are summarized in Table 4.

Algorithm Reference Problem Restrictions Exactness Computation time
\addstackgap[.5]()
Naïve
Definition 3
Homogeneous
costs
None (1/h)(1/h)-opt. O(m)O(m)
\addstackgap[.5]() Greedy Algorithm 1
Homogeneous
costs
None Exact O(hm)O(hm)
\addstackgap[.5]()
Branch and
bound
Algorithm 2 General None Exact O(2m)O(2^{m})
\addstackgap[.5]() Costs DP Algorithm 3 General gjg_{j} integer Exact O(Hm+mlogm)O(Hm+m\log m)
\addstackgap[.5]() FPTAS Algorithm 4 General None (1ε)(1-\varepsilon)-opt. O(m3/ε)O(m^{3}/\varepsilon)
\addstackgap[.5]()
Simulated
annealing
Algorithm 5 General None 0-opt. O(Nm)O(Nm)
Table 4: Summary of algorithms discussed in this paper.

Three extensions of this problem appear amenable to future study.

6.1 Explicit treatment of risk aversion

The familiar Markowitz portfolio optimization model includes an explicit risk-aversion term, whereas our model has settled for an implicit treatment of risk, namely the tradeoff between selective schools and safety schools inherent in the maximax objective function. However, it is possible to augment the objective function v(𝒳)=E[X]v(\mathcal{X})=\operatorname{E}[X] to incorporate a variance penalty β0\beta\geq 0 as follows:

vβ(𝒳)=E[X]βVar(X)=E[X]β(E[X2]E[X]2)=j{0}𝒳(fjtji𝒳:i>j(1fi))βj{0}𝒳(fjtj2i𝒳:i>j(1fi))+βv(𝒳)2=v(𝒳;τ)+βv(𝒳;t)2\displaystyle\begin{split}v_{\mathrm{\beta}}(\mathcal{X})&=\operatorname{E}[X]-\beta\operatorname{Var}(X)\\ &=\operatorname{E}[X]-\beta\left(\operatorname{E}[X^{2}]-\operatorname{E}[X]^{2}\right)\\ &=\sum_{j\in\{0\}\cup\mathcal{X}}\Bigl{(}f_{j}t_{j}\prod_{\begin{subarray}{c}i\in\mathcal{ ̄X}:\\ i>j\end{subarray}}(1-f_{i})\Bigr{)}-\beta\sum_{j\in\{0\}\cup\mathcal{X}}\Bigl{(}f_{j}t_{j}^{2}\prod_{\begin{subarray}{c}i\in\mathcal{X}:\\ i>j\end{subarray}}(1-f_{i})\Bigr{)}+\beta v(\mathcal{X})^{2}\\ &=v(\mathcal{X};\tau)+\beta v(\mathcal{X};t)^{2}\end{split} (35)

where τj=tjβtj2\tau_{j}=t_{j}-\beta t_{j}^{2}. Since the first term is itself a portfolio valuation function, and the second is a monotonic transformation of one, we speculate that one of the algorithms given above could be used as a subroutine to trace out the efficient frontier by maximizing v(𝒳;t)v(\mathcal{X};t) subject to the budget constraint and v(𝒳;τ)αv(\mathcal{X};\tau)\geq\alpha for various values of α0\alpha\geq 0.

A parametric treatment of risk aversion may align our model more closely to real-world applicant behavior. Conventional wisdom asserts that the best college application strategy combines reach, target, and safety schools in roughly equal proportion (Jeon 2015). When the application budget is small relative to the size of the admissions market, our algorithms recommend a similar approach (see the example of Subsection 3.5). However, inspecting equation (7), which discounts school utility parameters to reflect their marginal value relative to the schools already in the portfolio, reveals that low-utility schools are penalized more harshly than high utility schools in the marginal analysis. Consequentially, as the application budget grows, the optimal portfolio in our model tends to favor reach schools over safety schools. (See Figure 2 for a clear illustration of this phenomenon.)

A potential application of our model is an econometric study that estimates students’ perceptions of college quality (tjt_{j}) from their observed application behavior (𝒳\mathcal{X}) under the assumption of utility maximization. Empirical research indicates that heterogeneous risk aversion is a significant source of variation in human decision-making, especially in the domains of educational choice and employment search (Kahneman 2011; Hartlaub and Schneider 2012; van Huizen and Alessie 2019). Therefore, an endogenous risk-aversion parameter would greatly enhance our model’s explanatory power in the econometric setting.

6.2 Signaling strategies

Another direction of further research with immediate application in college admissions is to incorporate additional signaling strategies into the problem. In the Korean admissions process, the online application form contains three multiple-choice fields, labeled ga, na, and da for the first three letters of the Korean alphabet, which students use to indicate the colleges to which they wish to apply. Most schools appear only in one or two of the three fields. Therefore, students are restricted not only in the number of applications they can submit, but in the combinations of schools that may coincide in a feasible application portfolio. From a portfolio optimization perspective, this is a diversification constraint, because its primary purpose is to prevent students from applying only to top-tier schools. However, in addition to overall selectivity, the three fields also indicate different evaluation schemes: The ga and na customarily indicate the applicant’s first and second choice, and applications filed under these fields are evaluated with greater emphasis on standardized-test scores than those filed under the da field. Some colleges appear in multiple fields and run two parallel admissions processes, each with different evaluation criteria. Therefore, if a student recognizes that she has a comparative advantage in (for example) her interview skills, she may increase her chances of admission to a competitive school by applying under the da field. The optimal application strategy in this context can be quite subtle, and it is a subject of perennial debate on Korean social networks.

An analogous feature of the American college admissions process is known as early decision, in which at the moment of application, a student commits to enrolling in a college if admitted. In principle, students who apply with early decision may obtain a better chance of admission by signaling their eagerness to attend, but doing so weakens the college’s incentive to entice the student with discretionary financial aid, altering the utility calculus.

In the integer formulation of the college application problem (Problem 5), a natural way to model these signaling strategies without introducing too much complexity is to split each cjc_{j} into cj+c_{j+} and cjc_{j-}. The binary decision variables are xj+=1x_{j+}=1 if the student applies to cjc_{j} with high priority (that is, in the ga or na field or with early decision) and xj=1x_{j-}=1 if applying with low priority (that is, in the da field or without early decision). Now, assuming that the differential admission probabilities fj+f_{j+} and fjf_{j-} and utilities tj+t_{j+} and tjt_{j-} are known, adding the logical constraints

xj++xj1,j=1mandj=1mxj+1\displaystyle x_{j+}+x_{j-}\leq 1,~{}~{}j=1\dots m\qquad\text{and}\qquad\sum_{j=1}^{m}x_{j+}\leq 1 (36)

completes the formulation. These are knapsack constraints; therefore, the submodular maximization algorithm of Kulik et al. (2013) can be used to obtain a (11/eε)(1-1/e-\varepsilon)-approximate solution for this problem. When the budget constraint is a cardinality constraint (as in Alma’s problem), we note that adding these constraints yields a matroidal solution set, and Calinescu et al. (2011)’s algorithm yields an alternative solution, which has the same approximation coefficient of 11/eε1-1/e-\varepsilon.

6.3 Memory-efficient dynamic programs

Our numerical experiments suggest that the performance of the dynamic programming algorithms is bottlenecked by not computation time, but memory usage. Reducing these algorithms’ storage requirements would enable us to solve considerably larger problems.

Abstractly speaking, Algorithms 3 and 4 are two-dimensional dynamic programs that represent the optimal solution by Z[N,C]Z[N,C]. Here NN is the number of decision variables, CC is a constraint parameter, and Z[n,c]Z[n,c] is the optimal objective value achievable using the first nNn\leq N decision variables when the constraint parameter is cCc\leq C. The algorithm iterates on a recursion relation that expresses Z[n,c]Z[n,c] as a function of Z[n1,c]Z[n-1,c] and Z[n1,c]Z[n-1,c^{\prime}] for some ccc^{\prime}\leq c. (In Algorithm 3, ZZ is the maximal portfolio valuation, N=mN=m, and C=HC=H; in Algorithm 4, ZZ is the minimal application expenditures, N=mN=m, and C=|𝒱|m2/εC=|\mathcal{V}|\propto m^{2}/\varepsilon.)

When such a dynamic program is implemented using a lookup table or dictionary memoization, producing the optimal solution requires O(NC)O(NC)-time and -space. Kellerer et al. (2004, § 3.3) provide a technique for transforming the dynamic program ZZ into a divide-and-conquer algorithm that produces the optimal solution in O(NC)O(NC)-time and O(N+C)O(N+C)-space, a significant improvement. However, their technique requires the objective function to be additively separable in a certain sense that appears difficult to conform to the college application problem.

Appendix A Appendix

A.1 Elementary proof of Theorem 5

Proof.

We will prove the equivalent expression 2v(𝒳h)v(𝒳h+1)+v(𝒳h1)2v(\mathcal{X}_{h})\geq v(\mathcal{X}_{h+1})+v(\mathcal{X}_{h-1}). Applying Theorem 3, we write 𝒳h=𝒳h1{j}\mathcal{X}_{h}=\mathcal{X}_{h-1}\cup\{j\} and 𝒳h+1=𝒳h1{j,k}\mathcal{X}_{h+1}=\mathcal{X}_{h-1}\cup\{j,k\}. If tktjt_{k}\leq t_{j}, then

2v(𝒳h)=v(𝒳h1{j})+v(𝒳h1{j})v(𝒳h1{k})+v(𝒳h1{j})=v(𝒳h1{k})+(1fj)v(𝒳h1)+fjE[max{tj,Xh1}]=v(𝒳h1{k})fjv(𝒳h1)+fjE[max{tj,Xh1}]+v(𝒳h1)v(𝒳h1{k})fjv(𝒳h1{k})+fjE[max{tj,Xh1}]+v(𝒳h1)=(1fj)v(𝒳h1{k})+fjE[max{tj,Xh1}]+v(𝒳h1)=v(𝒳h1{j,k})+v(𝒳h1)=v(𝒳h+1)+v(𝒳h1).\displaystyle\begin{split}2v(\mathcal{X}_{h})&=v(\mathcal{X}_{h-1}\cup\{j\})+v(\mathcal{X}_{h-1}\cup\{j\})\\ &\geq v(\mathcal{X}_{h-1}\cup\{k\})+v(\mathcal{X}_{h-1}\cup\{j\})\\ &=v(\mathcal{X}_{h-1}\cup\{k\})+(1-f_{j})v(\mathcal{X}_{h-1})+f_{j}\operatorname{E}[\max\{t_{j},X_{h-1}\}]\\ &=v(\mathcal{X}_{h-1}\cup\{k\})-f_{j}v(\mathcal{X}_{h-1})+f_{j}\operatorname{E}[\max\{t_{j},X_{h-1}\}]+v(\mathcal{X}_{h-1})\\ &\geq v(\mathcal{X}_{h-1}\cup\{k\})-f_{j}v(\mathcal{X}_{h-1}\cup\{k\})+f_{j}\operatorname{E}[\max\{t_{j},X_{h-1}\}]+v(\mathcal{X}_{h-1})\\ &=(1-f_{j})v(\mathcal{X}_{h-1}\cup\{k\})+f_{j}\operatorname{E}[\max\{t_{j},X_{h-1}\}]+v(\mathcal{X}_{h-1})\\ &=v(\mathcal{X}_{h-1}\cup\{j,k\})+v(\mathcal{X}_{h-1})\\ &=v(\mathcal{X}_{h+1})+v(\mathcal{X}_{h-1}).\end{split} (37)

The first inequality follows from the optimality of 𝒳h\mathcal{X}_{h}, while the second follows from the fact that adding kk to 𝒳h1\mathcal{X}_{h-1} can only increase its valuation.

If tktjt_{k}\geq t_{j}, then the steps are analogous:

2v(𝒳h)=v(𝒳h1{j})+v(𝒳h1{j})v(𝒳h1{k})+v(𝒳h1{j})=(1fk)v(𝒳h1)+fkE[max{tk,Xh1}]+v(𝒳h1{j})=v(𝒳h1)fkv(𝒳h1)+fkE[max{tk,Xh1}]+v(𝒳h1{j})v(𝒳h1)fkv(𝒳h1{j})+fkE[max{tk,Xh1}]+v(𝒳h1{j})=v(𝒳h1)+(1fk)v(𝒳h1{j})+fkE[max{tk,Xh1}]=v(𝒳h1)+v(𝒳h1{j,k})\displaystyle\begin{split}2v(\mathcal{X}_{h})&=v(\mathcal{X}_{h-1}\cup\{j\})+v(\mathcal{X}_{h-1}\cup\{j\})\\ &\geq v(\mathcal{X}_{h-1}\cup\{k\})+v(\mathcal{X}_{h-1}\cup\{j\})\\ &=(1-f_{k})v(\mathcal{X}_{h-1})+f_{k}\operatorname{E}[\max\{t_{k},X_{h-1}\}]+v(\mathcal{X}_{h-1}\cup\{j\})\\ &=v(\mathcal{X}_{h-1})-f_{k}v(\mathcal{X}_{h-1})+f_{k}\operatorname{E}[\max\{t_{k},X_{h-1}\}]+v(\mathcal{X}_{h-1}\cup\{j\})\\ &\geq v(\mathcal{X}_{h-1})-f_{k}v(\mathcal{X}_{h-1}\cup\{j\})+f_{k}\operatorname{E}[\max\{t_{k},X_{h-1}\}]+v(\mathcal{X}_{h-1}\cup\{j\})\\ &=v(\mathcal{X}_{h-1})+(1-f_{k})v(\mathcal{X}_{h-1}\cup\{j\})+f_{k}\operatorname{E}[\max\{t_{k},X_{h-1}\}]\\ &=v(\mathcal{X}_{h-1})+v(\mathcal{X}_{h-1}\cup\{j,k\})\end{split} (38)
=v(𝒳h1)+v(𝒳h+1)\displaystyle=v(\mathcal{X}_{h-1})+v(\mathcal{X}_{h+1})\qed (39)

References

Acharya, Mohan S., Asfia Armaan, and Aneeta S. Antony. 2019. “A Comparison of Regression Models for Prediction of Graduate Admissions.” In Second International Conference on Computational Intelligence in Data Science. https://doi.org/10.1109/ICCIDS.2019.8862140.

Badanidiyuru, Ashwinkumar and Jan Vondrák. 2014. “Fast Algorithms for Maximizing Submodular Functions.” In Proceedings of the 2014 Annual ACM–SIAM Symposium on Discrete Algorithms, 1497–1514. https://doi.org/10.1137/1.9781611973402.110.

Balas, Egon and Eitan Zemel. 1980. “An Algorithm for Large Zero-One Knapsack Problems.” Operations Research 28 (5): 1130–54. https://doi.org/10.1287/opre.28.5.1130.

Bezanson, Jeff, Alan Edelman, Stefan Karpinski, and Viral B. Shah. 2017. “Julia: A Fresh Approach to Numerical Computing.” SIAM Review 59: 65–98. https://doi.org/10.1137/141000671.

Blum, Manuel, Robert W. Floyd, Vaughan Pratt, Ronald L. Rivest, and Robert E. Tarjan. 1973. “Time Bounds for Selection.” Journal of Computer and System Sciences 7 (4): 448–61. https://doi.org/10.1016/S0022-0000(73)80033-9.

Calinescu, Gruia, Chandra Chekuri, Martin Pál, and Jan Vondrák. 2011. “Maximizing a Monotone Submodular Function Subject to a Matroid Constraint.” SIAM Journal on Computing 40 (6): 1740–66. https://doi.org/10.1137/080733991.

Carraway, Robert, Robert Schmidt, and Lawrence Weatherford. 1993. “An Algorithm for Maximizing Target Achievement in the Stochastic Knapsack Problem with Normal Returns.” Naval Research Logistics 40 (2): 161–73. https://doi.org/10.1002/nav.3220400203.

Cormen, Thomas, Charles Leiserson, and Ronald Rivest. 1990. Introduction to Algorithms. Cambridge, MA: The MIT Press.

Dantzig, George B. 1957. “Discrete-Variable Extremum Problems.” Operations Research 5 (2): 266–88.

Dean, Brian, Michel Goemans, and Jan Vondrák. 2008. “Approximating the Stochastic Knapsack Problem: The Benefit of Adaptivity.” Mathematics of Operations Research 33 (4): 945–64. https://doi.org/10.1287/moor.1080.0330.

Kellerer, Hans, Ulrich Pferschy, and David Pisinger. 2004. Knapsack Problems. Berlin: Springer.

Kulik, Ariel, Hadas Shachnai, and Tami Tamir. 2013. “Approximations for Monotone and Nonmonotone Submodular Maximization with Knapsack Constraints.” Mathematics of Operations Research 38 (4): 729–39. https://doi.org/10.1287/moor.2013.0592.

Jeon, Minhee. 2015. “[College application strategy] Six chances total…divide applications across reach, target, and safety schools” (in Korean). Jungang Ilbo, Aug. 26. https://www.joongang.co.kr/article/18524069.

Fisher, Marshall, George Nemhauser, and Laurence Wolsey. 1978. “An Analysis of Approximations for Maximizing Submodular Set Functions—I.” Mathematical Programming 14: 265–94.

Fu, Chao. 2014. “Equilibrium Tuition, Applications, Admissions, and Enrollment in the College Market.” Journal of Political Economy 122 (2): 225–81. https://doi.org/10.1086/675503.

Garey, Michael and David Johnson. 1979. Computers and Intractability: A Guide to the Theory of NP-Completeness. New York: W. H. Freeman and Company.

Hartlaub, Vanessa and Thorsten Schneider. 2012. “Educational Choice and Risk Aversion: How Important Is Structural vs. Individual Risk Aversion?” SOEPpapers on Multidisciplinary Panel Data Research, no. 433. https://www.diw.de/documents/publikationen/73/diw_01.c.394455.de/diw_sp0433.pdf.

Kahneman, Daniel. 2011. Thinking, Fast and Slow. New York: Macmillan.

Markowitz, Harry. 1952. “Portfolio Selection.” The Journal of Finance 7 (1): 77–91. https://www.jstor.org/stable/2975974.

Martello, Silvano and Paolo Toth. 1990. Knapsack Problems: Algorithms and Computer Implementations. New York: John Wiley & Sons.

Meucci, Attilio. 2005. Risk and Asset Allocation. Berlin: Springer-Verlag, 2005.

Rozanov, Mark and Arie Tamir. 2020. “The Nestedness Property of the Convex Ordered Median Location Problem on a Tree.” Discrete Optimization 36: 100581. https://doi.org/10.1016/j.disopt.2020.100581.

Sklarow, Mark. 2018. State of the Profession 2018: The 10 Trends Reshaping Independent Educational Consulting. Technical report, Independent Educational Consultants Association. https://www.iecaonline.com/wp-content/uploads/2020/02/IECA-Current-Trends-2018.pdf.

Sniedovich, Moshe. 1980. “Preference Order Stochastic Knapsack Problems: Methodological Issues.” The Journal of the Operational Research Society 31 (11): 1025–32. https://www.jstor.org/stable/2581283.

Steinberg, E. and M. S. Parks. 1979. “A Preference Order Dynamic Program for a Knapsack Problem with Stochastic Rewards.” The Journal of the Operational Research Society 30 (2): 141–47. https://www.jstor.org/stable/3009295.

Van Huizen, Thomas and Rob Alessie. 2019. “Risk Aversion and Job Mobility.” Journal of Economic Behavior & Organization 164: 91–106. https://doi.org/10.1016/j.jebo.2019.01.021.

Vazirani, Vijay. 2001. Approximation Algorithms. Berlin: Springer.

Wolsey, Laurence. 1998. Integer Programming. New York: John Wiley & Sons.