  We seek to understand when heterogeneity in user preferences yields improved
outcomes in terms of overall cost. That this might be hoped for is based on the
common belief that diversity is advantageous in many settings. We investigate
this in the context of routing. Our main result is a sharp characterization of
the network settings in which diversity always helps, versus those in which it
is sometimes harmful. Specifically, we consider routing games, where diversity
arises in the way that users trade-off two criteria (such as time and money,
or, in the case of stochastic delays, expectation and variance of delay). Our
main contributions are the following: 1) A participant-oriented measure of cost
in the presence of user diversity, together with the identification of the
natural benchmark: the same cost measure for an appropriately defined average
of the diversity. 2) A full characterization of those network topologies for
which diversity always helps, for all latency functions and demands. For
single-commodity routings, these are series-parallel graphs, while for
multi-commodity routings, they are the newly-defined "block-matching" networks.
The latter comprise a suitable interweaving of multiple series-parallel graphs
each connecting a distinct source-sink pair. While the result for the
single-commodity case may seem intuitive in light of the well-known Braess
paradox, the two problems are different: there are instances where diversity
helps although the Braess paradox occurs, and vice-versa. But the main
technical challenge is to establish the "only if" direction of the result for
multi-commodity networks. This follows by constructing an instance where
diversity hurts, and showing how to embed it in any network which is not
block-matching, by carefully exploiting the way the simple source-sink paths of
the commodities intersect in the "non-block-matching" portion of the network.
