Documentation/Modules/ClassesModules: Unterschied zwischen den Versionen
Aus OpenDino
Dirk (Diskussion | Beiträge) (→Need for Classes) |
Dirk (Diskussion | Beiträge) |
||
| Zeile 9: | Zeile 9: | ||
For these cases, we wrote the abstract classes | For these cases, we wrote the abstract classes | ||
| − | |||
* <code>Optimizer</code>s in the case of an optimization algorithm | * <code>Optimizer</code>s in the case of an optimization algorithm | ||
Aktuelle Version vom 18. März 2013, 22:08 Uhr
Need for Classes
Modules are connected. The information passed between these Modules may be a class of type
-
Solutions in the case of an optimization or -
Datain the case of learning
Often, Modules look similar, and someone writing a new Module doesn't want to implement all interface methods by hand.
For these cases, we wrote the abstract classes
-
Optimizers in the case of an optimization algorithm -
Problems in the case of an optimization problem -
Learners in the case of a learning algorithm
These classes already implement most of the necessary methods. A writer of an optimizer just has to implement the algorithm itself and no other details such as checking or connecting.
Similarly, a writer of a problem just has to implement the evaluate(...) method of the Problem class.
In a learner, the method to override is run() . It executes the learning algorithm.