免费曼哈顿距离计算器

第一个点 (P₁)

x
y

第二个点 (P₂)

x
y

曼哈顿距离

输入坐标以计算
的 曼哈顿距离

曼哈顿距离,通常被称为出租车几何距离、街区距离或L1距离,度量在垂直街道和大道构成的网格中两点之间的距离。与计算直线(欧几里得距离)不同,该指标沿各坐标轴取绝对差值之和,反映了出租车在纽约或旧金山等城市必须遵循的路径。这一概念简单而强大,应用范围从国际象棋到机器学习。

公式背后的原理

对于 nn 维空间中的任意两点 —— a⃗=[a1,a2,…,an]\vec{a} = [a_1, a_2, \dots, a_n] 和 b⃗=[b1,b2,…,bn]\vec{b} = [b_1, b_2, \dots, b_n] —— 曼哈顿距离 dd 定义为:

d=∑i=1n∣ai−bi∣d = \sum_{i=1}^{n} |a_i - b_i|

在二维平面中,这变为 d=∣x1−x2∣+∣y1−y2∣d = |x_1 - x_2| + |y_1 - y_2|。相同的模式无缝延伸到三维(加上 zz 轴差值)甚至四维,使得距离既能手动计算也可借助计算器轻松完成。

曼哈顿距离 vs. 欧几里得距离:关键区别

欧几里得距离计算点间直接对角线的长度,对于同一对点,它总是小于或等于曼哈顿距离。由于曼哈顿路径仅由水平和垂直线段组成——从不走对角线——因此不可能比欧几里得路径更短。用数学术语来说,曼哈顿距离使用L1范数,而欧几里得距离使用L2范数;前者始终至少不小于后者。

街区距离的用途

出租车几何距离出现在许多令人惊讶的场合:

  • 国际象棋(车的移动): 车沿水平或垂直方向移动任意方格。两个方格间的最小方格数就是曼哈顿距离。
  • 数据科学与机器学习: L1距离用于聚类算法(例如,k-means与曼哈顿距离)、特征选择、Lasso正则化,以及图像处理和语音识别。
  • 分子生物学: 在对齐DNA序列或剪接基因时,曼哈顿距离量化了核苷酸位置之间的差异。
  • 视频游戏(贪吃蛇): 在经典贪吃蛇游戏中,蛇只能上下左右移动。到达下一个食物所需的步数等于曼哈顿距离——因此也俗称“蛇形距离”。

实例:漫步曼哈顿

想象一下纽约的街道。大道呈南北走向,街道呈东西走向。起点是第二大道与第九街的拐角,表示为 (2,9)(2, 9)。杂货店位于第三大道与第五街:(3,5)(3, 5)。使用曼哈顿公式:

d=∣2−3∣+∣9−5∣=1+4=5 city blocksd = |2 - 3| + |9 - 5| = 1 + 4 = 5 \text{ city blocks}

无论你按什么顺序走——先沿大道再沿街道,或反之——总街区数始终为5。这说明了为什么该指标常被称为街区距离。

使用曼哈顿距离计算器

该工具支持 2D、3D或4D 空间中的点。您只需选择维度数量,输入两点的坐标,计算器将立即显示曼哈顿(L1)距离。这款免费的在线计算器节省时间,避免手动求和错误,无论您是学习距离度量的学生、处理多维数据的数据科学家,还是对基于网格的旅行距离感到好奇的人,都适用。

常见问题

1. 曼哈顿距离与欧几里得距离有何不同?

欧几里得距离是两点之间的直线长度,而曼哈顿距离沿各坐标轴取坐标绝对差值之和,表示网格约束路径。曼哈顿距离始终大于或等于欧几里得距离。

2. 我可以计算3D或4D点的曼哈顿距离吗?

可以。该公式适用于任意维数。在3D中,加上沿z轴的绝对差值;在4D中,包含第四坐标。计算器最多可处理4D点。

3. 曼哈顿距离的精确公式是什么?

对于两点 a = [a1, a2, ..., an] 和 b = [b1, b2, ..., bn],公式为 d = sum_{i=1}^{n} |ai - bi|。在2D中简化为 d = |x1 - x2| + |y1 - y2|。

4. 为什么称为出租车几何距离或街区距离?

它模拟了出租车在城市直角街道和大道中必须行驶的路径。司机遵循网格,不斜穿,因此距离等于经过的街区数量。

5. 曼哈顿距离有哪些常见的实际用途?

它用于国际象棋(车移动)、机器学习(聚类、正则化)、分子生物学(基因对齐)和贪吃蛇视频游戏。也出现在图像处理和语音识别中。

使用方法

  1. 为坐标空间选择维度数(2D、3D或4D)。
  2. 在相应字段中输入点1和点2的坐标。
  3. 曼哈顿距离将立即计算,并附带完整的逐步公式分解。