Line |
Branch |
Exec |
Source |
1 |
|
|
/* |
2 |
|
|
* Copyright 2018, |
3 |
|
|
* Julian Viereck |
4 |
|
|
* |
5 |
|
|
* CNRS/AIST |
6 |
|
|
* |
7 |
|
|
*/ |
8 |
|
|
|
9 |
|
|
#ifndef __SOT_GRADIENTASCENT_H__ |
10 |
|
|
#define __SOT_GRADIENTASCENT_H__ |
11 |
|
|
|
12 |
|
|
/* --------------------------------------------------------------------- */ |
13 |
|
|
/* --- INCLUDE --------------------------------------------------------- */ |
14 |
|
|
/* --------------------------------------------------------------------- */ |
15 |
|
|
|
16 |
|
|
#include <dynamic-graph/entity.h> |
17 |
|
|
#include <dynamic-graph/signal-ptr.h> |
18 |
|
|
#include <dynamic-graph/signal-time-dependent.h> |
19 |
|
|
|
20 |
|
|
#include <sot/core/config.hh> |
21 |
|
|
|
22 |
|
|
namespace dynamicgraph { |
23 |
|
|
namespace sot { |
24 |
|
|
|
25 |
|
|
/* --------------------------------------------------------------------- */ |
26 |
|
|
/* --- TRACER ---------------------------------------------------------- */ |
27 |
|
|
/* --------------------------------------------------------------------- */ |
28 |
|
|
|
29 |
|
|
using dynamicgraph::Entity; |
30 |
|
|
using dynamicgraph::SignalPtr; |
31 |
|
|
using dynamicgraph::SignalTimeDependent; |
32 |
|
|
|
33 |
|
|
class SOT_CORE_DLLAPI GradientAscent : public Entity { |
34 |
|
✗ |
DYNAMIC_GRAPH_ENTITY_DECL(); |
35 |
|
|
|
36 |
|
|
public: |
37 |
|
|
SignalPtr<dynamicgraph::Vector, int> gradientSIN; |
38 |
|
|
SignalPtr<double, int> learningRateSIN; |
39 |
|
|
SignalTimeDependent<int, int> refresherSINTERN; |
40 |
|
|
SignalTimeDependent<dynamicgraph::Vector, int> valueSOUT; |
41 |
|
|
|
42 |
|
|
public: |
43 |
|
|
GradientAscent(const std::string &n); |
44 |
|
|
virtual ~GradientAscent(void); |
45 |
|
|
|
46 |
|
|
protected: |
47 |
|
|
dynamicgraph::Vector &update(dynamicgraph::Vector &res, const int &inTime); |
48 |
|
|
|
49 |
|
|
dynamicgraph::Vector value; |
50 |
|
|
|
51 |
|
|
double alpha; |
52 |
|
|
bool init; |
53 |
|
|
}; |
54 |
|
|
|
55 |
|
|
} /* namespace sot */ |
56 |
|
|
} /* namespace dynamicgraph */ |
57 |
|
|
|
58 |
|
|
#endif /* #ifndef __SOT_TRACER_H__ */ |
59 |
|
|
|