Prediction of stable crystal structures at given pressure-temperature conditions, based only on the knowledge of the chemical composition, is a central problem of condensed matter physics. This extremely challenging problem is often termed crystal structure prediction problem, and recently developed evolutionary algorithm USPEX (Universal Structure Predictor: Evolutionary Xtallography) made an important progress in solving it, enabling efficient and reliable prediction of structures with up to ~40 atoms in the unit cell using ab initio methods. Here we review this methodology, as well as recent progress in analyzing energy landscape of solids (which also helps to analyze results of USPEX runs). We show several recent applications - (1) prediction of new high-pressure phases of CaCO3, (2) search for the structure of the polymeric phase of CO2 (phase V), (3) high-pressure phases of oxygen, (4) exploration of possible stable compounds in the Xe-C system at high pressures, (5) exotic high-pressure phases of elements boron and sodium.