In this talk we consider random utility models for discrete choice. In discrete choice, the task is to select exactly one element from a discrete set of alternatives. We focus on algorithmic questions in this and related models, ranging from reconstructing the model parameters to identifiability of mixtures of models.