The specification of a decision making problem includes the agents preferences on the available alternatives. The choice of a model of preferences (e.g., utility functions or binary relations) does not say how preferences should be represented (or specified). This tutorial we will give a survey of graphical languages for compact preference representation. We will first survey languages for ordinal preferences, with a special focus on CP-nets; then we will survey languages for numerical preferences. The last part of the tutorial will be devoted to applications of these languages to various AI fields, namely constrained optimization, planning, recommender systems, configuration, voting, and resource allocation. This tutorial is directed to AI researchers who work on related areas and want/need to know more about preference representation: researchers in knowledge representation, constraints, autonomous agents, multiagent systems (especially game-theoretic agents and computational social choice), planning, user modelling. There is very little prerequisite knowledge; the tutorial will be accessible to almost all AI researchers.