LegoAgent-Eve
SVM Class Reference

Klasse zur Erkennung des Figurtyps mithilfe einer Support-Vector-Machine. More...

Inheritance diagram for SVM:
Collaboration diagram for SVM:

Public Member Functions

 SVM (Dataset dataset)
 Constructor for Support Vector Machine. More...
 
void findSupportVectors ()
 
void computeSeparator ()
 Berchnet die Trennlinie zwischen den beiden Punktewolken. More...
 
Figure classify (IDataPoint dataPoint)
 Bestimmt den Typ des gegebenen Datenpunkts anhand der bereitgestellten Daten. More...
 

Private Attributes

Dataset dataSet
 
Vector PointOnSeparator
 Es sei im 2D-Raum die Gerade des Separators (Hyperebene) als g(x, y) = this.PointOnSeparator + n * this.vectorParallelToSeparator (die Straße entlang) mit dem orthogonalen Vektor this.vectorToSeparatorSide (von der Straßenmitte zum Rand der Straße in einem Schritt) More...
 

Detailed Description

Klasse zur Erkennung des Figurtyps mithilfe einer Support-Vector-Machine.

Constructor & Destructor Documentation

SVM ( Dataset  dataset)

Constructor for Support Vector Machine.

Parameters
datasetthe dataset all operations are referring to

References SVM.findSupportVectors().

Here is the call graph for this function:

Member Function Documentation

Figure classify ( IDataPoint  dataPoint)

Bestimmt den Typ des gegebenen Datenpunkts anhand der bereitgestellten Daten.

Berechnet sich im Zweifelsfall

Implements ISVM.

References Figure.circle, Dataset.getSvmOrientation(), Vector.linearcombination(), Logger.log(), Figure.rectangle, Vector.subtract(), IDataPoint.toVector(), and Figure.UNKNOWN.

Referenced by Recognition.recognizeSVM().

Here is the call graph for this function:

Here is the caller graph for this function:

void computeSeparator ( )

Berchnet die Trennlinie zwischen den beiden Punktewolken.

Berechne Linearkombination von vektorAB und vectorABinvert zu c - a "Rechtwinkelig über die Straße gehen"

Damit ergibt sich im 2D-Raum die Gerade des Separators (Hyperebene) als g(x, y) = this.PointOnSeparator + n * this.vectorParallelToSeparator (die Straße entlang) mit dem orthogonalen Vektor this.vectorToSeparatorSide (von der Straßenmitte zum Rand der Straße in genau einem Schritt)

Implements ISVM.

References Vector.add(), Vector.getOrthogonal(), Dataset.getSVMPoints(), Vector.linearcombination(), Logger.log(), Vector.multiply(), Vector.subtract(), and IDataPoint.toVector().

Referenced by SVM.findSupportVectors().

Here is the call graph for this function:

Here is the caller graph for this function:

void findSupportVectors ( )

Implements ISVM.

References SVM.computeSeparator(), Dataset.getAllData(), Dataset.getSvmOrientation(), Logger.log(), Dataset.setSvmOrientation(), and Dataset.setsVMPoints().

Referenced by SVM.SVM(), and Recognition.train().

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

Dataset dataSet
private
Vector PointOnSeparator
private

Es sei im 2D-Raum die Gerade des Separators (Hyperebene) als g(x, y) = this.PointOnSeparator + n * this.vectorParallelToSeparator (die Straße entlang) mit dem orthogonalen Vektor this.vectorToSeparatorSide (von der Straßenmitte zum Rand der Straße in einem Schritt)


The documentation for this class was generated from the following file: