  Autonomous robots are increasingly utilized in realistic scenarios with
multiple complex tasks. In these scenarios, there may be a preferred way of
completing all of the given tasks, but it is often in conflict with optimal
execution. Recent work studies preference-based planning, however, they have
yet to extend the notion of preference to the behavior of the robot with
respect to each task. In this work, we introduce a novel notion of preference
that provides a generalized framework to express preferences over individual
tasks as well as their relations. Then, we perform an optimal trade-off
(Pareto) analysis between behaviors that adhere to the user's preference and
the ones that are resource optimal. We introduce an efficient planning
framework that generates Pareto-optimal plans given user's preference by
extending A* search. Further, we show a method of computing the entire Pareto
front (the set of all optimal trade-offs) via an adaptation of a
multi-objective A* algorithm. We also present a problem-agnostic search
heuristic to enable scalability. We illustrate the power of the framework on
both mobile robots and manipulators. Our benchmarks show the effectiveness of
the heuristic with up to 2-orders of magnitude speedup.
