#include <shark/ObjectiveFunctions/Benchmarks/PoleSimulators/DoublePole.h>
Public Member Functions | |
unsigned | noVars () const |
Number of variables. More... | |
DoublePole (bool markovian, bool normalize=true) | |
void | getState (RealVector &v) |
Place m_state in a vector. More... | |
void | init (double state2init=0.07) |
Initialize with specific angle for large pole. More... | |
void | initDegree (double state2init) |
Initialize with specific angle for large pole. More... | |
void | init (double a, double b, double c, double d, double e=0., double f=0.) |
Initialize full m_state. More... | |
bool | failure () |
Returns true when this pole is in an illegal position. More... | |
double | getJiggle () |
Return "jiggle", abstract representation of how much the the cart oscillates. More... | |
void | move (double output) |
Move the pole with some force. More... | |
Definition at line 48 of file DoublePole.h.
|
inline |
markovian | Whether to return velocities in getState |
normalize | Whether to normalize return values in getState |
Definition at line 60 of file DoublePole.h.
|
inline |
Returns true when this pole is in an illegal position.
Definition at line 129 of file DoublePole.h.
Referenced by shark::GruauPole::balanceFit(), shark::NonMarkovPole::eval(), shark::MarkovPole< HiddenNeuron, OutputNeuron >::eval(), shark::GruauPole::generalFit(), and shark::GruauPole::gruauFit().
|
inline |
Return "jiggle", abstract representation of how much the the cart oscillates.
Definition at line 143 of file DoublePole.h.
Referenced by shark::GruauPole::gruauFit().
|
inline |
Place m_state in a vector.
v | vector to place m_state in (assumed to be correct size already) |
Definition at line 82 of file DoublePole.h.
Referenced by shark::GruauPole::balanceFit(), shark::NonMarkovPole::eval(), shark::MarkovPole< HiddenNeuron, OutputNeuron >::eval(), shark::GruauPole::generalFit(), and shark::GruauPole::gruauFit().
|
inline |
Initialize with specific angle for large pole.
state2init | initial pole angle (in radians) |
Definition at line 101 of file DoublePole.h.
Referenced by shark::GruauPole::balanceFit(), shark::NonMarkovPole::eval(), shark::MarkovPole< HiddenNeuron, OutputNeuron >::eval(), shark::GruauPole::generalFit(), shark::GruauPole::gruauFit(), and initDegree().
|
inline |
Initialize full m_state.
a | initial cart position |
b | initial cart velocity |
c | initial large pole angle (in radians) |
d | initial large pole angular velocity |
e | initial small pole angle (in radians) |
f | initial small pole angular velocity |
Definition at line 119 of file DoublePole.h.
|
inline |
Initialize with specific angle for large pole.
state2init | initial pole angle (in degrees) |
Definition at line 108 of file DoublePole.h.
References init().
|
inline |
Move the pole with some force.
output | Force to apply. Expects values in [0,1], where values below 0.5 indicate applying force towards the left side and values above indicate force towards the right. |
Definition at line 149 of file DoublePole.h.
Referenced by shark::GruauPole::balanceFit(), shark::NonMarkovPole::eval(), shark::MarkovPole< HiddenNeuron, OutputNeuron >::eval(), shark::GruauPole::generalFit(), and shark::GruauPole::gruauFit().
|
inline |
Number of variables.
Definition at line 52 of file DoublePole.h.