title: How to use NSGA-II (in python/pymoo library) to select optimal value pairs from a list
body: <p><strong>Context:</strong> I need to implement NSGA-II in python for the following 2-objective optimisation problem: I have a set of items each having two non-bounded values: one for cost, and the other for quality of service. For instance:</p>
  <p><code>[(item1, cost=0.4, QoS=0.89),(item2, cost=0.67, QoS=0.42),(item3, cost=0.02, QoS=0.53)]</code></p>
  <p><strong>Objective:</strong> The aim is to apply a multi-objective optimisation algorithm (e.g., NSGA-II) in order to choose the most optimal item(s), i.e., the one(s) with optimal (minimal) cost and optimal (maximal) QoS. Moreover, we aim to compare various optimisation algorithms (we are just starting with NSGA-II).</p>
  <p><strong>Problem:</strong> I already checked the pymoo library: <a href="https://pypi.org/project/pymoo/0.1.2/" rel="nofollow noreferrer">https://pypi.org/project/pymoo/0.1.2/</a> and my main issue is defining the optimisation &quot;problem&quot; prior to executing the NSGA-II algorithm. Because my input is not the objective functions but pairs of values (cost, QoS). So how can I input this array of pairs into the NSGA-II algorithm in order to find the optimal pair(s) ?</p>
  <p>I am completely new to optimisation algorithms, so perhaps my methodology is wrong and I'm sure that I must be missing something(s). Any help/explanation would be appreciated.</p>
  <p>Thank you in advance.</p>