rcognita.systems.GridWorld
- class rcognita.systems.GridWorld(dims, terminal_state)
A simple 2-dimensional grid world with five actions: left, right, up, down and do nothing. The action encoding rule is as follows: right, left, up, down, do nothing -> 0, 1, 2, 3, 4.
- __init__(dims, terminal_state)
- 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\) : disturbancetime variable time 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
action_bounds (: 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_dynamic_controller (: 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__
(dims, terminal_state)- param sys_type
Type of system by description:
compute_closed_loop_rhs
(time, state_full)Right-hand side of the closed-loop system description.
compute_dynamics
(current_state, action)Description of the system internal dynamics.
out
(state[, time, action])System output.
receive_action
(action)Receive exogeneous control action to be fed into the system.
reset
()