Complex Optimization in Answer Set Programming