Summary Selecting a set of deterministic (e.g., P10, P50, and P90) models is an important and difficult step in any uncertainty quantification workflow. In this paper, we propose to use multiobjective optimization to find a reasonable balance between the often conflicting features that must be captured by these models. We embed this approach into a streamlined uncertainty quantification workflow that seamlessly integrates multirealization history matching, production forecasting with uncertainty ranges, and representative deterministic model selection. Some uncertain parameters strongly impact simulated responses representing historic (production) data and are selected as active parameters for history matching, whereas others are important only for forecasting. An ensemble of conditional realizations of active history-matching parameters is generated in the multirealization history-matching stage using a distributed optimizer that is integrated with either a randomized maximum likelihood (RML) or a Gaussian mixture model (GMM). This ensemble is extended with unconditional realizations of forecast parameters generated by sampling from their prior distribution. Next, the petroleum engineer must select primary and secondary key performance indicators and identify models from this ensemble that optimally generate P10, P50, and P90 values for these indicators. In addition to matching target values of these key performance indicators (e.g., cumulative oil/gas/water production and recovery factor), selected representative models (RMs) typically must satisfy regulatory or management-imposed requirements or constraints (e.g., the value of some key parameters must be within a user-specified tight range). It can be quite difficult to find a set of RMs that satisfy all requirements. Even more challenging, some requirements may conflict with others, such that no single model can satisfy all requirements. To overcome these technical difficulties, we propose in this paper to formulate different requirements and constraints as objectives and develop a novel two-stage multiobjective optimization strategy to find a set of Pareto optimal solutions based on the concept of dominance. In the first stage, we propose selecting P10, P50, and P90 candidates by minimizing the indicator mismatch function and constraints violation function. In the second stage, we propose selecting combinations of P10, P50, and P90 candidates from the previously generated posterior ensemble, obtained in the first stage by optimizing other objectives. One or more sets of RMs can then be selected from the set of optimal solutions according to case-dependent preferences or requirements. Because the number of P10, P50, and P90 candidates selected in the first stage is much smaller than the number of all samples, the proposed two-stage approach performs much more efficiently than directly applying the traditional multiobjective optimization approach or clustering-based approaches. The proposed method is tested and validated against a realistic example. Our results confirm that the proposed method is robust and efficient and finds acceptable solutions with no or minimal violations of constraints. These results suggest that our advanced multiobjective optimization technique can select high-quality RMs by striking a balance between conflicting constraints. Thus, a better decision can be made while running much fewer simulations than would be required with traditional methods.