rcognita.systems.Sys2Tank

class rcognita.systems.Sys2Tank(sys_type, dim_state, dim_input, dim_output, dim_disturb, pars=[], ctrl_bnds=[], is_dyn_ctrl=0, is_disturb=0, pars_disturb=[])

Two-tank system with nonlinearity.

__init__(sys_type, dim_state, dim_input, dim_output, dim_disturb, pars=[], ctrl_bnds=[], is_dyn_ctrl=0, is_disturb=0, pars_disturb=[])
Parameters
  • sys_type (: string) –

    Type of system by description:

    diff_eqn : differential equation \(\mathcal D state = f(state, action, disturb)\)
    discr_fnc : difference equation \(state^+ = f(state, action, disturb)\)
    discr_prob : by probability distribution \(X^+ \sim P_X(state^+| state, action, disturb)\)

  • where

    \(state\) : state
    \(action\) : input
    \(disturb\) : disturbance

  • time variable t is commonly used by ODE solvers (The) –

  • you shouldn't have it explicitly referenced in the definition (and) –

  • your system is non-autonomous. (unless) –

  • the latter case (For) –

  • however

  • already have the input and disturbance at your disposal. (you) –

  • of the system are contained in pars attribute. (Parameters) –

  • dim_state (: integer) – System dimensions

  • dim_input (: integer) – System dimensions

  • dim_output (: integer) – System dimensions

  • dim_disturb (: integer) – System dimensions

  • pars (: list) – List of fixed parameters of the system

  • ctrl_bnds (: array of shape [dim_input, 2]) – Box control constraints. First element in each row is the lower bound, the second - the upper bound. If empty, control is unconstrained (default)

  • is_dyn_ctrl (: 0 or 1) – If 1, the controller (a.k.a. agent) is considered as a part of the full state vector

  • is_disturb (: 0 or 1) – If 0, no disturbance is fed into the system

  • pars_disturb (: list) – Parameters of the disturbance model

Methods

__init__(sys_type, dim_state, dim_input, …)

param sys_type

Type of system by description:

closed_loop_rhs(t, state_full)

Right-hand side of the closed-loop system description.

out(state[, action])

System output.

receive_action(action)

Receive exogeneous control action to be fed into the system.

Attributes

name