:py:mod:`rofunc.learning.ml.tpgmm`
==================================

.. py:module:: rofunc.learning.ml.tpgmm

.. autodoc2-docstring:: rofunc.learning.ml.tpgmm
   :allowtitles:

Module Contents
---------------

Classes
~~~~~~~

.. list-table::
   :class: autosummary longtable
   :align: left

   * - :py:obj:`TPGMM <rofunc.learning.ml.tpgmm.TPGMM>`
     - .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM
          :summary:
   * - :py:obj:`TPGMMBi <rofunc.learning.ml.tpgmm.TPGMMBi>`
     - .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMMBi
          :summary:
   * - :py:obj:`TPGMM_RPCtrl <rofunc.learning.ml.tpgmm.TPGMM_RPCtrl>`
     - .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM_RPCtrl
          :summary:
   * - :py:obj:`TPGMM_RPRepr <rofunc.learning.ml.tpgmm.TPGMM_RPRepr>`
     - .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM_RPRepr
          :summary:
   * - :py:obj:`TPGMM_RPAll <rofunc.learning.ml.tpgmm.TPGMM_RPAll>`
     - .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM_RPAll
          :summary:

API
~~~

.. py:class:: TPGMM(demos_x: typing.Union[typing.List, numpy.ndarray], task_params: dict, nb_states: int = 4, nb_frames: int = None, reg: float = 0.001, plot: bool = False, save: bool = False, save_params: dict = None)
   :canonical: rofunc.learning.ml.tpgmm.TPGMM

   .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM

   .. rubric:: Initialization

   .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM.__init__

   .. py:attribute:: nb_frames
      :canonical: rofunc.learning.ml.tpgmm.TPGMM.nb_frames
      :value: None

      .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM.nb_frames

   .. py:method:: get_dx()
      :canonical: rofunc.learning.ml.tpgmm.TPGMM.get_dx

      .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM.get_dx

   .. py:method:: get_A_b()
      :canonical: rofunc.learning.ml.tpgmm.TPGMM.get_A_b

      .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM.get_A_b

   .. py:method:: get_related_matrix()
      :canonical: rofunc.learning.ml.tpgmm.TPGMM.get_related_matrix

      .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM.get_related_matrix

   .. py:method:: hmm_learning() -> rofunc.learning.ml.hmm.HMM
      :canonical: rofunc.learning.ml.tpgmm.TPGMM.hmm_learning

      .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM.hmm_learning

   .. py:method:: poe(model: rofunc.learning.ml.hmm.HMM, show_demo_idx: int) -> rofunc.learning.ml.gmm.GMM
      :canonical: rofunc.learning.ml.tpgmm.TPGMM.poe

      .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM.poe

   .. py:method:: fit() -> rofunc.learning.ml.hmm.HMM
      :canonical: rofunc.learning.ml.tpgmm.TPGMM.fit

      .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM.fit

   .. py:method:: reproduce(model: rofunc.learning.ml.hmm.HMM, show_demo_idx: int) -> typing.Tuple[numpy.ndarray, rofunc.learning.ml.gmm.GMM]
      :canonical: rofunc.learning.ml.tpgmm.TPGMM.reproduce

      .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM.reproduce

   .. py:method:: generate(model: rofunc.learning.ml.hmm.HMM, ref_demo_idx: int) -> typing.Tuple[numpy.ndarray, rofunc.learning.ml.gmm.GMM]
      :canonical: rofunc.learning.ml.tpgmm.TPGMM.generate

      .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM.generate

.. py:class:: TPGMMBi(demos_left_x: typing.Union[typing.List, numpy.ndarray], demos_right_x: typing.Union[typing.List, numpy.ndarray], task_params: dict, nb_states: int = 4, reg: float = 0.001, plot: bool = False, save: bool = False, save_params: dict = None)
   :canonical: rofunc.learning.ml.tpgmm.TPGMMBi

   Bases: :py:obj:`rofunc.learning.ml.tpgmm.TPGMM`

   .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMMBi

   .. rubric:: Initialization

   .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMMBi.__init__

   .. py:method:: fit() -> typing.Tuple[rofunc.learning.ml.hmm.HMM, rofunc.learning.ml.hmm.HMM]
      :canonical: rofunc.learning.ml.tpgmm.TPGMMBi.fit

      .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMMBi.fit

   .. py:method:: reproduce(models: typing.List, show_demo_idx: int) -> typing.Tuple[numpy.ndarray, numpy.ndarray, rofunc.learning.ml.gmm.GMM, rofunc.learning.ml.gmm.GMM]
      :canonical: rofunc.learning.ml.tpgmm.TPGMMBi.reproduce

      .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMMBi.reproduce

   .. py:method:: generate(models: typing.List, ref_demo_idx: int) -> typing.Tuple[numpy.ndarray, numpy.ndarray, rofunc.learning.ml.gmm.GMM, rofunc.learning.ml.gmm.GMM]
      :canonical: rofunc.learning.ml.tpgmm.TPGMMBi.generate

      .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMMBi.generate

.. py:class:: TPGMM_RPCtrl(demos_left_x, demos_right_x, task_params, nb_states: int = 4, reg: float = 0.001, plot: bool = False, save: bool = False, save_params: dict = None)
   :canonical: rofunc.learning.ml.tpgmm.TPGMM_RPCtrl

   Bases: :py:obj:`rofunc.learning.ml.tpgmm.TPGMMBi`

   .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM_RPCtrl

   .. rubric:: Initialization

   .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM_RPCtrl.__init__

   .. py:method:: get_rel_demos()
      :canonical: rofunc.learning.ml.tpgmm.TPGMM_RPCtrl.get_rel_demos

      .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM_RPCtrl.get_rel_demos

   .. py:method:: fit() -> typing.Tuple[rofunc.learning.ml.hmm.HMM, rofunc.learning.ml.hmm.HMM, rofunc.learning.ml.hmm.HMM]
      :canonical: rofunc.learning.ml.tpgmm.TPGMM_RPCtrl.fit

   .. py:method:: reproduce(models, show_demo_idx: int) -> typing.Tuple[numpy.ndarray, numpy.ndarray, rofunc.learning.ml.gmm.GMM, rofunc.learning.ml.gmm.GMM]
      :canonical: rofunc.learning.ml.tpgmm.TPGMM_RPCtrl.reproduce

      .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM_RPCtrl.reproduce

   .. py:method:: generate(models: typing.List, ref_demo_idx: int) -> typing.Tuple[numpy.ndarray, numpy.ndarray, rofunc.learning.ml.gmm.GMM, rofunc.learning.ml.gmm.GMM]
      :canonical: rofunc.learning.ml.tpgmm.TPGMM_RPCtrl.generate

      .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM_RPCtrl.generate

.. py:class:: TPGMM_RPRepr(demos_left_x, demos_right_x, task_params, nb_states: int = 4, reg: float = 0.001, plot: bool = False, save: bool = False, save_params: dict = None, **kwargs)
   :canonical: rofunc.learning.ml.tpgmm.TPGMM_RPRepr

   Bases: :py:obj:`rofunc.learning.ml.tpgmm.TPGMMBi`

   .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM_RPRepr

   .. rubric:: Initialization

   .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM_RPRepr.__init__

   .. py:method:: get_rel_task_params()
      :canonical: rofunc.learning.ml.tpgmm.TPGMM_RPRepr.get_rel_task_params

      .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM_RPRepr.get_rel_task_params

   .. py:method:: fit() -> typing.Tuple[rofunc.learning.ml.hmm.HMM, rofunc.learning.ml.hmm.HMM]
      :canonical: rofunc.learning.ml.tpgmm.TPGMM_RPRepr.fit

   .. py:method:: reproduce(models: typing.List, show_demo_idx: int) -> typing.Tuple[numpy.ndarray, numpy.ndarray, rofunc.learning.ml.gmm.GMM, rofunc.learning.ml.gmm.GMM]
      :canonical: rofunc.learning.ml.tpgmm.TPGMM_RPRepr.reproduce

   .. py:method:: iterative_generate(model_l: rofunc.learning.ml.hmm.HMM, model_r: rofunc.learning.ml.hmm.HMM, ref_demo_idx: int, nb_iter=1) -> typing.Tuple[numpy.ndarray, numpy.ndarray, rofunc.learning.ml.gmm.GMM, rofunc.learning.ml.gmm.GMM]
      :canonical: rofunc.learning.ml.tpgmm.TPGMM_RPRepr.iterative_generate

      .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM_RPRepr.iterative_generate

   .. py:method:: conditional_generate(model_l: rofunc.learning.ml.hmm.HMM, model_r: rofunc.learning.ml.hmm.HMM, ref_demo_idx: int, leader: str) -> typing.Tuple[numpy.ndarray, numpy.ndarray, None, rofunc.learning.ml.gmm.GMM]
      :canonical: rofunc.learning.ml.tpgmm.TPGMM_RPRepr.conditional_generate

      .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM_RPRepr.conditional_generate

   .. py:method:: generate(models: typing.List, ref_demo_idx: int, leader: str = None)
      :canonical: rofunc.learning.ml.tpgmm.TPGMM_RPRepr.generate

.. py:class:: TPGMM_RPAll(demos_left_x, demos_right_x, nb_states: int = 4, reg: float = 0.001, horizon: int = 150, plot: bool = False, save: bool = False, save_params: dict = None, **kwargs)
   :canonical: rofunc.learning.ml.tpgmm.TPGMM_RPAll

   Bases: :py:obj:`rofunc.learning.ml.tpgmm.TPGMM_RPRepr`, :py:obj:`rofunc.learning.ml.tpgmm.TPGMM_RPCtrl`

   .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM_RPAll

   .. rubric:: Initialization

   .. autodoc2-docstring:: rofunc.learning.ml.tpgmm.TPGMM_RPAll.__init__

   .. py:method:: fit()
      :canonical: rofunc.learning.ml.tpgmm.TPGMM_RPAll.fit

   .. py:method:: reproduce(model_l: rofunc.learning.ml.hmm.HMM, model_r: rofunc.learning.ml.hmm.HMM, model_c: rofunc.learning.ml.hmm.HMM, show_demo_idx: int) -> typing.Tuple[numpy.ndarray, numpy.ndarray, rofunc.learning.ml.gmm.GMM, rofunc.learning.ml.gmm.GMM]
      :canonical: rofunc.learning.ml.tpgmm.TPGMM_RPAll.reproduce

   .. py:method:: generate(model_l: rofunc.learning.ml.hmm.HMM, model_r: rofunc.learning.ml.hmm.HMM, model_c: rofunc.learning.ml.hmm.HMM, ref_demo_idx: int, task_params: dict, leader: str = None)
      :canonical: rofunc.learning.ml.tpgmm.TPGMM_RPAll.generate
