The design of a mesoscale ensemble prediction system (MEPS) poses many challenges. They include the development of optimal strategies for creating the initial perturbations and determining the appropriate roles of ensemble resulting from initial condition perturbations versus those generated using perturbations to model physics. In this study, we compare three well-established techniques for generating initial condition perturbations: a) the simple Monte Carlo method; b) the breeding of growing modes method, which is used at NCEP; and c) the perturbed observations method, which is used operationally at the Canadian Meteorological Center. In this paper, we will present not only the details of our MEPS, which is based on the MM5 modeling system, but also show results from the application of the MEPS to three mid-latitude cyclone cases. Specifically, ensemble characteristics such as spread and skill from initial condition perturbations, using the aforementioned three methods, will be compared against those due to changes in model physics. Other traditional measures of ensemble performance such as relative operating characteristics and reliability will presented for these different ensembles.