add reverse routing for find the optimal set of items