Answers.Body: <p>In MORL the reward component is a <em>vector</em> rather than a scalar, with an element for each objective. So if we are using a multiobjective version of an algorithm like Q-learning, the Q-values stored for each state-action pair will also be vectors.</p>
  <p>Q-learning requires the agent to be able to identify the greedy action in any state (the action expected to lead to the highest long-term return). For scalar rewards this is easy, but for vector values it is more complicated as one vector may be higher for objective 1, while another is higher for objective 2, and so on.</p>
  <p>We need a means to <em>order</em> the vector values in terms of how well they meet the user's desired trade-offs between the different objectives. That is the role of the <em>preference function</em> and <em>preferences</em>. The function defines a general operation for either converting the vector values to a scalar value so they can be compared, or for performing some sort of ordering of the vectors (some types of orderings such as lexicographic ordering can't readily be defined in terms of scalarisation). So, for example, our preference function might be a weighted sum of the components of the vector. The preferences specify the parameters of the preference function which define a specific ordering (i.e. based on the needs of the current user). So, in the case of a weighted sum for the preference function, the preferences would be specified in terms of the values of the weights.</p>
  <p>The choice of preference function can have implications for the types of solutions which can be found, or for whether additional information needs to be included in the state in order to ensure convergence.</p>
  <p>I'd suggest you read the following survey paper for an overview of MORL (disclaimer - I was a co-author on this, but I genuinely think it is a useful introduction to this area)</p>
  <blockquote>
  <p>Roijers, D. M., Vamplew, P., Whiteson, S., &amp; Dazeley, R. (2013). <a href="https://www.jair.org/index.php/jair/article/download/10836/25862" rel="nofollow noreferrer">A survey of multi-objective sequential decision-making</a>. Journal of Artificial Intelligence Research, 48, 67-113.</p>
  </blockquote>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-04-29T05:50:34.613Z
Answers.LastActivityDate: 2020-10-08T14:13:29.233Z
Answers.LastEditDate: 2020-10-08T14:13:29.233Z
Answers.UserDisplayName: Peter Vamplew
Body: <p>In RL (reinforcement learning) or MARL (multi-agent reinforcement learning), we have the usual tuple:</p>
  
  <pre><code>(state, action, transition_probabilities, reward, next_state)
  </code></pre>
  
  <p>In MORL (multi-objective reinforcement learning), we have two more additions to the tuple, namely, "preferences" and "preference functions". </p>
  
  <p>What are they? What do we do with them? Can someone provide an intuitive example? </p>
  
Tags: <reinforcement-learning><terminology><definitions><multi-objective-rl>
Title: What are preferences and preference functions in multi-objective reinforcement learning?
UserDisplayName: Huan
ThreadText: # What are preferences and preference functions in multi-objective reinforcement learning?
  
  (Asked by: username_0 on 2020-04-28)
  
  In RL (reinforcement learning) or MARL (multi-agent reinforcement learning), we have the usual tuple:
  (state, action, transition_probabilities, reward, next_state)
  
  In MORL (multi-objective reinforcement learning), we have two more additions to the tuple, namely, "preferences" and "preference functions". 
  What are they? What do we do with them? Can someone provide an intuitive example?
  
  **Tags:** reinforcement-learning, terminology, definitions, multi-objective-rl
  
  ---
  
  ## 1 answers
  
  ### Answer by username_1 on 2020-04-29. Score: 3
  
  In MORL the reward component is a *vector* rather than a scalar, with an element for each objective. So if we are using a multiobjective version of an algorithm like Q-learning, the Q-values stored for each state-action pair will also be vectors.
  
  Q-learning requires the agent to be able to identify the greedy action in any state (the action expected to lead to the highest long-term return). For scalar rewards this is easy, but for vector values it is more complicated as one vector may be higher for objective 1, while another is higher for objective 2, and so on.
  
  We need a means to *order* the vector values in terms of how well they meet the user's desired trade-offs between the different objectives. That is the role of the *preference function* and *preferences*. The function defines a general operation for either converting the vector values to a scalar value so they can be compared, or for performing some sort of ordering of the vectors (some types of orderings such as lexicographic ordering can't readily be defined in terms of scalarisation). So, for example, our preference function might be a weighted sum of the components of the vector. The preferences specify the parameters of the preference function which define a specific ordering (i.e. based on the needs of the current user). So, in the case of a weighted sum for the preference function, the preferences would be specified in terms of the values of the weights.
  
  The choice of preference function can have implications for the types of solutions which can be found, or for whether additional information needs to be included in the state in order to ensure convergence.
  
  I'd suggest you read the following survey paper for an overview of MORL (disclaimer - I was a co-author on this, but I genuinely think it is a useful introduction to this area)
  
  > Roijers, D. M., Vamplew, P., Whiteson, S., & Dazeley, R. (2013). [A survey of multi-objective sequential decision-making](https://www.jair.org/index.php/jair/article/download/10836/25862). Journal of Artificial Intelligence Research, 48, 67-113.
  
  
  ---
  
  