参考连接

首先确立一个概念,流形不是一个几何图形,而是一个空间。

一个简单的案例

先把流形这个概念放在一边,看看下面这个案例。

一个球面,确定一个球面的参数有四个,最常见的参数是球心的坐标(xyz)和球半径(r)这四个参数。对于一个给定球心坐标和半径的球面,如果要描述其上一点的位置,通常使用(x0,y0,z0)的方式。然而,该球面实际上并没有体积,只是一个二维空间,用三维数据来描述一个二维空间的点的位置显然是存在冗余的。完全可以使用两个角度(a,b),即二维数据,然后结合该球面的参数来准确描述这个点的三维位置。显然,从这个二维数据到该点的三维坐标之间的映射是由该球面的参数确定的。即借由球面的参数,实现了从三维到二维的无损降维(压缩)。如果我们有100个点,这100个点正好处于一个球面,则保存这100个点的数据量为100*2+4=204,而直接用三维数据表示时则需要300个。同时,如果球面的坐标和半径如果在数值上很大时,直接用三维数据表示一个点的方式,所有数值都需要双精度才能满足误差要求,如果用“角度+球面参数”,则只需要球面参数使用双精度。

描述该球面所在的空间,可以使用类似x^2+y^2+z^2=r^2的方式来描述。从三维空间的角度看,球面虽然是二维的,却不能在一个线性空间中表示,即参数的次数为0或1。我们常用的微积分、欧几里得空间等数学工具只适用于线性空间,例如球面上两点之间的最小路径长度,我们通常直接使用两点间线段的长度。这个直线不在这个球面空间内,如果要求这个路径上的所有点都在球面上,就会复杂的多,因为我们要面对的是非线性的空间。

然而在上述的例子中,在三维空间中的非线性的球面,我们使用(a,b),其中-π≤a,b≤π,这种线性关系来描述整个球面。即,我们把非线性关系通过映射变成了线性关系,通俗地说,“展平”。在这种线性关系中,我们就可以使用传统的方法来计算最短路径。两点的连线即为该球面上两点的最短路径。

流形的“软”和“硬”

现有一条固定长度的直线线条,其端点为A和B。我们用一个满足[0,1]的值表示该线段的一点,其含义为该点到A点的距离和AB的长度的比值。现在变换这条线段的形状,例如变换为一段圆弧,或者一个三维的螺旋线。无论变为何种形状,我们仍然能用上述方法表示该线条上的一点,只是该表示到对应的三维坐标之间的映射随着变换而变化。而且,该线条上两点间的路径的长度并不随着形状变换而变化,如果我们限定路线上的每个点都必须在该线条空间上的话。可见,从外部看,线条的形状可以随意变换,表现出“软”的特性。线条这个空间的内部,性质则完全不变,例如前述的两点间的路径的长度,表现出“硬”的特性。

图表和图集

x^2+y^2+z^2=r^2(a,b),其中-π≤a,b≤π这两种描述方式通过一个映射而成为完全等价的描述方式。对于球面,这个映射很容易表示。如果这个面是正方体的表面,映射就复杂了一点。表面越复杂,这个映射就越复杂,不是一个解析式能表示的,甚至不能用解析式来表示。我们必须使用一些新的概念和工具来描述该映射。对于一团球状细胞构成的紧密细胞簇,其特点为,内部空间完全占据,表面为一系列不完整的球面连接而成。我们现在只考虑这些不完整球面连接而成的表面构成的空间,作为例子。

图表(charts)

一个图表是从一个流形的开子集映射到欧几里得空间的开子集。换句话说,一个图表需要告诉你它试图将哪个区域展平以及如何展平它。对于该表面,每个图表可以表示其中一个球面,即展平一个球面并表示它。

图集(atlas)

为了描述一个流形,我们需要使用一组图表来覆盖整个流形。每个图表都是一个从流形的一部分映射到欧几里得空间的函数。图集是指一组图表,这组图表覆盖了整个流形。因此,为了描述整个流形,我们需要至少有一个图表覆盖每个点,并且这些图表一起构成一个图集。例如前述的表面,一个球面可以用一个图表表示,所有球面对应的图表共同构成了图集。

可微和光滑流形

如果两个图表覆盖了同一个点,那么应该有一种方法可以从其中一个图表到达另一个图表。执行这种转换的函数称为过渡映射(transition map)。换句话说,过渡映射将我们从一个图表上的一个点带到另一个图表上的一个点。如果过渡映射在任何地方都有导数,我们就称该流形为可微流形。如果我们可以对过渡映射进行任意多次导数运算,我们就称该流形为光滑流形。

在前述的表面中,不同球面之间都会有一条公共的圆弧,显然,在圆弧处,完全不可导。如果使用抛物线平滑不同球面的连接处,我们现在就需要新增一系列图表来表示这些抛物线样式的连接处。在这种情况下,球面图表和抛物线图表共同覆盖的点则可进行任意次求导,也就是说是一个光滑流形。