# David Shmoys

David Bernard Shmoys (born 1959) is a Professor in the School of Operations Research and Information Engineering and the Department of Computer Science at Cornell University. He obtained his Ph.D. from the University of California, Berkeley in 1984. His major focus has been in the design and analysis of algorithms for discrete optimization problems.
In particular, his work has highlighted the role of linear programming in the design of approximation algorithms for NP-hard problems. He is known for his pioneering research on providing first constant factor performance guarantee for several scheduling and clustering problems including the k-center and k-median problems and the generalized assignment problem. Polynomial-time approximation schemes that he developed for scheduling problems have found applications in many subsequent works. His current research includes stochastic optimization for data-driven models in a broad cross-section of areas, including COVID epidemiological modeling, congressional districting, transportation, and IoT network design. Shmoys is married to Éva Tardos, who is the Jacob Gould Schurman Professor of Computer Science at Cornell University.

## Key contributions

Two of his key contributions are
* Constant factor approximation algorithm for the Generalized Assignment Problem and Unrelated Parallel Machine Scheduling.
* Constant factor approximation algorithm for k-Medians and Facility location problem.
These contributions are described briefly below:

### Generalized Assignment Problem & Unrelated Parallel Machine Scheduling

The paper is a joint work by David Shmoys and Eva Tardos.
The generalized assignment problem can be viewed as the following problem of scheduling unrelated parallel machine with costs. Each of $n$ independent jobs (denoted $J$) have to be processed by exactly one of $m$ unrelated parallel machines (denoted $M$). Unrelated implies same job might take different amount of processing time on different machines. Job $j$ takes $p_{i,j}$ time units when processed by machine $i$ and incurs a cost $c_{i,j},i=1,2,..,m;j=1,2,..,n;n\geq m$. Given $C$ and $T_{i},i=1,2,..,m$, we wish to decide if there exists a schedule with total cost at most $C$ such that for each machine $i$ its load, the total processing time required for the jobs assigned to it is at most $T_{i},i=1,2,..,m$. By scaling the processing times, we can assume, without loss of generality, that the machine load bounds satisfy $T_{1}=T_{2}=..=T_{m}=T$. ``In other words, generalized assignment problem is to find a schedule of minimum cost subject to the constraint that the makespan, that the maximum machine load is at most $T$ ".
The work of Shmoys with Lenstra and Tardos cited here gives a 2 approximation algorithm for the unit cost case. The algorithm is based on a clever design of linear program using parametric pruning and then rounding an extreme point solution of the linear program deterministically. Algorithm for the generalized assignment problem is based on a similar LP through parametric pruning and then using a new rounding technique on a carefully designed bipartite graph. We now state the LP formulation and briefly describe the rounding technique.
We guess the optimum value of makespan $T$ and write the following LP. This technique is known as parametric pruning.
$LP(T)::\sum _{i=1}^{m}\sum _{j=1}^{n}c_{ij}x_{ij}\leq C$;
       $\sum _{i=1}^{m}x_{ij}=1\qquad j=1,\ldots ,n$;
       $\sum _{i=1}^{m}p_{ij}x_{ij}\leq T\qquad i=1,\ldots ,m$;
       $x_{ij}\geq 0\qquad i=1,\ldots ,m,\quad j=1,\ldots ,n$;
       $x_{ij}=0\qquad {\text{if}}\qquad p_{ij}\geq T,\qquad i=1,\ldots ,m,\quad j=1,\ldots ,n$;
The obtained LP solution is then rounded to an integral solution as follows. A weighted bipartite graph $G=(W\cup V,E)$ is constructed. One side of the bipartite graph contains the job nodes, $W=\{w_{j}|j\in J\}$, and the other side contains several copies of each machine node, $V=\{v_{i,s}|i=1,2,..,m;s=1,2,..,k_{i}\}$, where $k_{i}=\lceil \sum _{j}x_{ij}\rceil$. To construct the edges to machine nodes corresponding to say machine $i$, first jobs are arranged in decreasing order of processing time $p_{ij}$. For simplicity, suppose, $p_{i1}\geq p_{i2}\geq \ldots \geq p_{in}$. Now find the minimum index $j_{1}$, such that $\sum _{j=1}^{j_{1}}x_{ij}\geq 1$. Include in $E$ all the edges $(w_{j},v_{i1},j=1,2,..,j_{1}-1)$ with nonzero $x_{ij}$ and set their weights to $x'_{v_{i1}j}=x_{ij}$. Create the edge $(w_{j_{1}},v_{i1})$ and set its weight to $x'_{v_{i1}j_{1}}=1-\sum _{i=1}^{j_{1}-1}x'_{v_{i1}j}$. This ensures that the total weight of the edges incident on the vertex $v_{i1}$ is at most 1. If $x'_{v_{i1}j_{1}}<x_{ij_{1}}$, then create an edge $(w_{j_{1}},v_{i2})$ with weight $x'_{v_{i2}j_{1}}=x_{ij}-x'_{v_{i1}j_{1}}$. Continue with assigning edges to $v_{i2}$ in a similar way.
In the bipartite graph thus created, each job node in $W$ has a total edge weight of 1 incident on it, and each machine node in $V$ has edges with total weight at most 1 incident on it. Thus the vector $x'$ is an instance of a fractional matching on $G$ and thus it can be rounded to obtain an integral matching of same cost.
Now considering the ordering of processing times of the jobs on the machines nodes during construction of $G$ and using an easy charging argument, the following theorem can be proved:
Theorem: If $LP(T)$ has a feasible solution then a schedule can be constructed with makespan
$T+max_{i,j}p_{i,j}$ and cost $C$.
Since $max_{i,j}p_{i,j}\leq T$, a 2 approximation is obtained.

### K-medians and Facility Location Problem

The paper is a joint work by Moses Charikar, Sudipto Guha, Éva Tardos and David Shmoys. They obtain a $6{\frac {2}{3}}$ approximation to the metric k medians problem. This was the first paper to break the previously best known $O(\log {k}\ \log {\log {k}})$ approximation.
Shmoys has also worked extensively on the facility location problem. His recent results include obtaining a $3$ approximation algorithm for the capacitated facility location problem. The joint work with Fabian Chudak, has resulted in improving the previous known $5.69$ approximation for the same problem. Their algorithm is based on a variant of randomized rounding called the randomized rounding with a backup, since a backup solution is incorporated to correct for the fact that the ordinary randomized rounding rarely generates a feasible solution to the associated set covering problem.
For the incapacitated version of the facility location problem, again in a joint work with Chudak he obtained a $(1+2/e)\approx 1.736$-approximation algorithm which was a significant improvement on the previously known approximation guarantees. The improved algorithm works by rounding an optimal fractional solution of a linear programming relaxation and using the properties of the optimal solutions of the linear program and a generalization of a decomposition technique.

## Awards & honors

David Shmoys is an ACM Fellow, a SIAM Fellow, and a Fellow of the Institute for Operations Research and the Management Sciences (INFORMS) (2013). He has received the Sonny Yau Excellence in Teaching Award three times from Cornell's College of Engineering, and has been awarded a NSF Presidential Young Investigator Award, the Frederick W. Lanchester Prize (2013), the Daniel H. Wagner Prize for Excellence in the Practice of Advanced Analytics and Operations Research (2018), and the Khachiyan Prize of the INFORMS Optimization Society (2022), which is awarded annually for life-time achievements in the area of optimization.