- Preference elicitation is a serious bottleneck in many decision support applications and agent specification tasks. Ceteris paribus (CP)-nets were designed to make the process of preference elicitation simpler and more intuitive for lay users by graphically structuring a set of CP preference statements—preference statements that most people find natural and intuitive. Beside their usefulness in the process of preference elicitation, CP-nets support efficient optimization algorithms that are crucial in most applications (e.g., the selection of the best action to execute or the best product configuration). In various contexts, CP-nets with an underlying cyclic structure emerge naturally. Often, they are inconsistent according to the current semantics, and the user is required to revise them. In this paper, we show how optimization queries can be meaningfully answered in many “inconsistent” networks without troubling the user with requests for revisions. In addition, we describe a method for focusing the user's revision process when revisions are truly needed. In the process, we provide a formal semantics that justifies our approach and new techniques for computing optimal outcomes. Some of the methods we use are based on a reduction to the problem of computing stable models for nonmonotonic logic programs, and we explore this relationship closely.