Combinatorial optimization based recommender systems