The DTLZ Problem Library
------------------------

To facilitate testing and comparison with other methods, we provide
built-in implementations of the DTLZ problems as ParMOO Simulations and
Objectives (with gradients defined).

.. code-block:: python

    from parmoo.simulations import dtlz
    from parmoo.objectives import dtlz

DTLZ Problems as Simulations
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. automodule:: simulations.dtlz
..    :members: simulations/dtlz

.. autoclass:: g1_sim
   :member-order: bysource
   :members:

   .. automethod:: __init__
   .. automethod:: __call__

.. autoclass:: g2_sim
   :member-order: bysource
   :members:

   .. automethod:: __init__
   .. automethod:: __call__

.. autoclass:: g3_sim
   :member-order: bysource
   :members:

   .. automethod:: __init__
   .. automethod:: __call__

.. autoclass:: g4_sim
   :member-order: bysource
   :members:

   .. automethod:: __init__
   .. automethod:: __call__

.. autoclass:: dtlz1_sim
   :member-order: bysource
   :members:

   .. automethod:: __init__
   .. automethod:: __call__

.. autoclass:: dtlz2_sim
   :member-order: bysource
   :members:

   .. automethod:: __init__
   .. automethod:: __call__

.. autoclass:: dtlz3_sim
   :member-order: bysource
   :members:

   .. automethod:: __init__
   .. automethod:: __call__

.. autoclass:: dtlz4_sim
   :member-order: bysource
   :members:

   .. automethod:: __init__
   .. automethod:: __call__

.. autoclass:: dtlz5_sim
   :member-order: bysource
   :members:

   .. automethod:: __init__
   .. automethod:: __call__

.. autoclass:: dtlz6_sim
   :member-order: bysource
   :members:

   .. automethod:: __init__
   .. automethod:: __call__

.. autoclass:: dtlz7_sim
   :member-order: bysource
   :members:

   .. automethod:: __init__
   .. automethod:: __call__

.. autoclass:: dtlz8_sim
   :member-order: bysource
   :members:

   .. automethod:: __init__
   .. automethod:: __call__

.. autoclass:: dtlz9_sim
   :member-order: bysource
   :members:

   .. automethod:: __init__
   .. automethod:: __call__

.. autofunction:: __check_optionals__

DTLZ Problems as Objectives
~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. automodule:: objectives.dtlz
..    :members: objectives/dtlz

.. autoclass:: dtlz1_obj
   :member-order: bysource
   :members:

   .. automethod:: __init__
   .. automethod:: __call__

.. autoclass:: dtlz2_obj
   :member-order: bysource
   :members:

   .. automethod:: __init__
   .. automethod:: __call__

.. autoclass:: dtlz3_obj
   :member-order: bysource
   :members:

   .. automethod:: __init__
   .. automethod:: __call__

.. autoclass:: dtlz4_obj
   :member-order: bysource
   :members:

   .. automethod:: __init__
   .. automethod:: __call__
