  Optimization models generally aim for efficiency by maximizing total benefit
or minimizing cost. Yet a trade-off between fairness and efficiency is an
important element of many practical decisions. We propose a principled and
practical method for balancing these two criteria in an optimization model.
Following a critical assessment of existing schemes, we define a set of social
welfare functions (SWFs) that combine Rawlsian leximax fairness and
utilitarianism and overcome some of the weaknesses of previous approaches. In
particular, we regulate the equity/efficiency trade-off with a single parameter
that has a meaningful interpretation in practical contexts. We formulate the
SWFs using mixed integer constraints and sequentially maximize them subject to
constraints that define the problem at hand. After providing practical
step-by-step instructions for implementation, we demonstrate the method on
problems of realistic size involving healthcare resource allocation and
disaster preparation. The solution times are modest, ranging from a fraction of
a second to 18 seconds for a given value of the trade-off parameter.
