13,297,321 members (69,225 online)
alternative version

#### Stats

30.9K views
7 bookmarked
Posted 6 Jan 2009

# Quantitative Variable Distances

, 6 Jan 2009
 Rate this:
An overview of different distances under the Minkowski distance.

## Introduction

• Minkowski Distance
• Euclidean Distance
• Manhattan Distance
• Chebyshev Distance

The general metric for distance is the Minkowski distance. When lambda is equal to 1, it becomes the city block distance, and when lambda is equal to 2, it becomes the Euclidean distance. The special case is when lambda is equal to infinity (taking a limit), where it is considered as the Chebyshev distance.

```public static double MinkowskiDistance(double[] X, double[] Y, int order)
{
int count = 0;
double distance = 0.0;
double sum = 0.0;
if (X.GetUpperBound(0) != Y.GetUpperBound(0))
{
throw new System.ArgumentException("the number of elements" +
" in X must match the number of elements in Y");
}
else
{
count = X.Length;
}
for (int i = 0; i < count; i++)
{
sum = sum + Math.Pow(Math.Abs(X[i] - Y[i]), order);
}
distance = Math.Pow(sum,(1/order));
return distance;
}```

Euclidean distance is the most common use of distance. When people talk about distance, this is what they are referring to. Euclidean distance, or simply 'distance', examines the root of square differences between the coordinates of a pair of objects. This is most generally known as the Pythagorean theorem.

```public static double EuclideanDistance(double [] X, double []Y)
{
int count = 0;
double distance = 0.0;
double sum = 0.0;
if(X.GetUpperBound(0) != Y.GetUpperBound(0))
{
throw new System.ArgumentException("the number of elements" +
" in X must match the number of elements in Y");
}
else
{
count = X.Length;
}
for (int i = 0; i < count; i++)
{
sum = sum + Math.Pow(Math.Abs(X[i] - Y[i]),2);
}
distance = Math.Sqrt(sum);
return distance;
}```

The taxicab metric is also known as rectilinear distance, L1 distance or L1 norm, city block distance, Manhattan distance, or Manhattan length, with the corresponding variations in the name of the geometry. It represents the distance between points in a city road grid. It examines the absolute differences between the coordinates of a pair of objects.

```public static double ManhattanDistance(double [] X, double []Y)
{
int count = 0;
double distance = 0.0;
double sum = 0.0;
if(X.GetUpperBound(0) != Y.GetUpperBound(0))
{
throw new System.ArgumentException("the number of elements" +
" in X must match the number of elements in Y");
}
else
{
count = X.Length;
}
for (int i = 0; i < count; i++)
{
sum = sum + Math.Abs(X[i] - Y[i]);
}
distance = sum;
return distance;
}```

Chebyshev distance is also called the Maximum value distance, defined on a vector space where the distance between two vectors is the greatest of their differences along any coordinate dimension. In other words, it examines the absolute magnitude of the differences between the coordinates of a pair of objects.

```public static double ChebyshevDistance(double[] X, double[] Y)
{
int count = 0;
if (X.GetUpperBound(0) != Y.GetUpperBound(0))
{
throw new System.ArgumentException("the number of elements" +
" in X must match the number of elements in Y");
}
else
{
count = X.Length;
}
double[] newData = new double[count];
for (int i = 0; i < count; i++)
{
newData[i] = Math.Abs(X[i] - Y[i]);
}
double max = double.MinValue;
foreach (double num in newData)
{
if (num > max)
{
max = num;
}
}
return max;
}```

## Share

 Web Developer Philippines
My name : Aresh Saharkhiz.
Origin: Unknown

Education : BS Computer Science
MS Computer Science
Interests : Genetic Programming
Neural Networks
Game AI
Programming: (language == statementEnd(semicolon)

Skill:
Flash
Carrara 3D
PHP,ASP,ASP.NET
J2SE

## You may also be interested in...

 First Prev Next
 My vote of 2 ARon_6-Jan-09 10:47 ARon_ 6-Jan-09 10:47
 Re: My vote of 2 aresguya6-Jan-09 20:12 aresguya 6-Jan-09 20:12
 Thank you for the comment. This knowledge about similarity and dissimilarity is necessary for data mining, pattern recognition, machine intelligent, artificial intelligent and multi-agents system fields. However, the application is not only limited to computer science field. Other fields of natural and social science as well as engineering and statistics have applied this kind of simple knowledge. Tools such as K means clustering, Multi dimensional scaling (MDS), or Principal component Analysis (PCA) rely heavily on the distance matrix.
 double max = double.MinValue; axelriet6-Jan-09 7:58 axelriet 6-Jan-09 7:58
 Last Visit: 31-Dec-99 19:00     Last Update: 15-Dec-17 16:19 Refresh 1