Semi-infinite optimization in engineering design