This paper is concerned with the problem of finding optimal sub-routes from a set of predefined candidate transit routes with the objectives of maximizing transit ridership as well as minimizing operational costs. The main contributions of this paper are: (1) considering transit ridership maximization in a multi-objective bi-level optimization framework; (2) proposing a greedy algorithm for the multi-objective design problem; (3) applying an efficient path-based algorithm to solve the lower level multi-modal traffic assignment problem. Numerical experiments indicate that the proposed algorithm not only is able to approximate the Pareto-optimal solutions with satisfactory accuracy, but also achieves a fast performance even for problems of real-world scale.