Knowledge-based prediction of protein structures