C# (CSharp) SharpNeat.DistanceMetrics Namespace

Classes

Name Description
DistanceMetricUtils Static helper methods for distance metrics.
EuclideanDistanceMetric Euclidean distance metric. The Euclidean distance is given by sqrt(sum(delta^2)) Where [delta] is the absolute position difference in a given dimension (on a given axis).
ManhattanDistanceMetric Manhattan distance metric. The Manhattan distance is simply the sum total of all of the distances in each dimension. Also known as the taxicab distance, rectilinear distance, L1 distance or L1 norm. Use the default constructor for classical Manhattan Distance. Optionally the constructor can be provided with a two coefficients and a constant that can be used to modify/distort distance measures. These are: matchDistanceCoeff - When comparing two positions in the same dimension the distance between those two position is multiplied by this coefficient. mismatchDistanceCoeff, mismatchDistanceConstant - When comparing two coordinates where one describes a position in a given dimension and the other does not then the second coordinate is assumed to be at position zero in that dimension. However, the resulting distance is multiplied by this coefficient and mismatchDistanceConstant is added, therefore allowing matches and mismatches to be weighted differently, e.g. more emphasis can be placed on mismatches (and therefore network topology). If mismatchDistanceCoeff is zero and mismatchDistanceConstant is non-zero then the distance of mismatches is a fixed value. The two coefficients and constant allow the following schemes: 1) Classical Manhattan distance. 2) Topology only distance metric (ignore connections weights). 3) Equivalent of genome distance in Original NEAT (O-NEAT). This is actually a mix of (1) and (2).