转载自:http://blog.csdn.net/wangxiaojun911/article/details/17076465

欧几里得几何学(Euclidean Geometry)

两千三百年前,古希腊数学家欧几里得著成了《几何原本》,构建了被后世称为“欧几里得几何学”的研究图形的方法。欧几里得创立了当时颇为独特的公理系统,即首先提出一些显然的、不言自明的公理。

比如,他提出了“三角形的内角和一定等于一百八十度”的定理,他的许多几何计算也是基于此,并且看起来颇为正确。但是后来的数学家对此产生了质疑,认为这个定理是缘于经验而并非真理。那么,把不遵从欧几里德公里系统的几何学,也取了个相对应的名字,叫“非欧几里德几何学”(non-Euclidean Geometry)。

欧几里德几何对空间物体的刻画,是基于某个维度上的内积(Inner Product)。对于空间中的一些点或线,我们感兴趣的是它们的距离、角度等等属性,这可以通过求其内积获得。例如,在二维空间里两个向量X=(x1, x2)和Y=(y1, y2)的距离为x1*y1+x2*y2。也就是等于内积<X, Y>。此公式可以推广到三维空间,甚至是大于三维的空间。因此欧几里德空间也被称为“有限维实内积空间”。

然而,就如同三角形的内角和问题一样,在使用中也发现了欧几里德空间的局限性。这就必须先从拓扑学谈起。

拓扑学(Topology)

“拓扑学家就是不会区分甜甜圈和咖啡杯的人。” -John L. Kelley

“拓扑”这个词在希腊语中的意思是地貌。拓扑学是研究几何体连续形变中保持不变的性质。比如下面链接里介绍的“亏格”。无论怎么变形,亏格不同的对象都无法变成同一个模样。亏格就是一个拓扑不变量。
亏格

而连续的变换最后都能变成一样的两个物体,称为同胚(Homeomorphism)。 从这个角度上说,甜甜圈与有一只把手的杯子等价(都只有一个洞)。但是事实上,杯子无法捏成甜甜圈的模样,因为杯子都是瓷或塑料做的,它们都太硬。相对的,在拓扑学中研究的对象,都必须是“柔软”的,从某种意义上说就像可以流动的液体一样。然而,在传统的、基于内基的欧几里德空间(比如笛卡尔坐标系)中,得出甜甜圈等于杯子的结论是不可想象的。相应的,把基于欧几里德空间的几何学称为是“坚硬”的。

所以,在拓扑学中必须定义一个特殊的柔软的概念。

流形(Manifold)

流形这个名字来源于十九世纪德国数学家黎曼(Riemann )。流形的德语原名是Mannigfaltigkeit,意思是“多样性”。

下面一个问题是,该如何精确地描述这种柔软多变的流形呢?

这种灵感来源于地图集(Atlas)。假设你要做一份详细的中国地图, 有两个难点。第一是不可能把所有的地图细节包含在一张纸内,所以不同的城市要画在不同的页(Chart)上。然后,给出比例尺,再告诉读者从天津往西北方向的地图是北京等等。

第二个问题更加棘手,它源自于地图本身的局限性。我们很容易知道从上海往西走可以到乌鲁木齐。但是,假设从上海坐船往东,穿过北美、欧洲大陆,同样可以到达乌鲁木齐。用此逻辑,从任何一个地点出发,往任何方向前进,都可以回到原点,这是地图无法表达的。

把地图和拓扑的问题比较,某一张地图就好像一个笛卡尔坐标系,在局部的讨论中是成立的。就好比拿着北京地图从西直门走到西单,无论如何也是没有歧义的。但是扩大到整个地球(流形)就不成立了。

于是以地图集的概念描述一个流体:把流体的任何一个微小的局部看作是欧几里德空间,称为一个chart。无限多这样的chart拼接起来,就成了地图集atlas。

同时可以看出这样定义的流形,要求在某个任何小的空间里,它必须是"简单"的。试想可以把一个柿子看作一个流形,但某天它发霉了,长了一根毛(看作一条线),就不能看作流形了。因为考虑这个柿子长毛的那个微小区域,无法用一个chart描述。

事实上,地球的经纬度就可以看作一个坐标系。可以看出,在纬度最高的地方(南北极),方向是无法定义的。这也是欧几里德空间对于流体的局限性。

另外必须指出,对于同一个流体,可以通过选取不同的图(或者说是投影)来定义不同的地图集。

同在欧几里德空间里一样,流形也是有维度的,这个维度在局部里定义。如果流形的图是n维的,那么这个图被称为n维流形。比如球面的任意一个细小的局部是一个2维平面,那么球面就是一个2维流形。

从以上例子也可以看出,流形的维度同它在欧几里德空间的个体(3维)比较是下降了。直观来看,因为在曲面上的运动本来就也只有两个自由度。通常对于笛卡儿坐标系的曲面,可以找到对应的低维度流形坐标,这个过程叫做参数化(Parameterization)。

流形(Manifold)初步【转】的更多相关文章

  1. 流形-Manifold

    流形,也就是 Manifold .不知道你有没有为我在本文开头放上的那个地球的图片感到困惑?这是因为球面是一个很典型的流形的例子,而地球就是一个很典型的“球面”啦(姑且当作球面好啦). 有时候经常会在 ...

  2. FAQ: Machine Learning: What and How

    What: 就是将统计学算法作为理论,计算机作为工具,解决问题.statistic Algorithm. How: 如何成为菜鸟一枚? http://www.quora.com/How-can-a-b ...

  3. [ML] I'm back for Machine Learning

    Hi, Long time no see. Briefly, I plan to step into this new area, data analysis. In the past few yea ...

  4. MIT牛人解说数学体系

    https://www.douban.com/group/topic/11115261/ 在过去的一年中,我一直在数学的海洋中游荡,research进展不多,对于数学世界的阅历算是有了一些长进. 为什 ...

  5. 【zz】MIT牛人解说数学体系

    作者:林达华 一.为什么要深入数学的世界 作为计算机的学生,我(原作者)没有任何企图要成为一个数学家.我学习数学的目 的,是要想爬上巨人的肩膀,希望站在更高的高度,能把我自己研究的东西看得更深广一些. ...

  6. MIT牛人解说数学体系(转载)

    原文网址:http://www.guokr.com/post/442622/ 在过去的一年中,我一直在数学的海洋中游荡,research进展不多,对于数学世界的阅历算是有了一些长进. 为什么要深入数学 ...

  7. MobileNet_v2

    研究动机: 神经网络彻底改变了机器智能的许多领域,实现了超人的准确性.然而,提高准确性的驱动力往往需要付出代价:现代先进网络需要高度计算资源,超出许多移动和嵌入式应用的能力. 主要贡献: 发明了一个新 ...

  8. KNN-笔记(1)

    1 - 背景 KNN:k近邻,表示基于k个最近的邻居的一种机器学习方法.该方法原理简单,构造方便.且是一个非参数化模型. KNN是一个"懒学习"方法,也就是其本身没有训练过程.只有 ...

  9. [数学]MIT牛人解说数学体系

    本文内容遵从CC版权协议, 可以随意转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明网址: http://www.penglixun.com/study/science/mit_math ...

  10. 从零开始一起学习SLAM | 理解图优化,一步步带你看懂g2o代码

    首发于公众号:计算机视觉life 旗下知识星球「从零开始学习SLAM」 这可能是最清晰讲解g2o代码框架的文章 理解图优化,一步步带你看懂g2o框架 小白:师兄师兄,最近我在看SLAM的优化算法,有种 ...

随机推荐

  1. JavaScript高级程序设计61.pdf

    JSON对象 早期的JSON解析器就是使用JavaScript的eval()函数,ECMAScript5对解析JSON的行为做出了规定,定义了全局对象JSON. JSON对象有2个方法:stringi ...

  2. .net常見面試題(一)

    2 .列举ASP.NET 页面之间传递值的几种方式. 答. 1).使用QueryString, 如....?id=1; response. Redirect()....                 ...

  3. Uoj #131. 【NOI2015】品酒大会 后缀数组,并查集

    #131. [NOI2015]品酒大会 统计 描述 提交 自定义测试 一年一度的“幻影阁夏日品酒大会”隆重开幕了.大会包含品尝和趣味挑战两个环节,分别向优胜者颁发“首席品酒家”和“首席猎手”两个奖项, ...

  4. cuda(2) 矩阵乘法优化过程

    Created on 2013-8-5URL : http://blog.sina.com.cn/s/blog_a502f1a30101mjch.html@author: zhxfl转载请说明出处 # ...

  5. poj 3608 Bridge Across Islands

    题目:计算两个不相交凸多边形间的最小距离. 分析:计算几何.凸包.旋转卡壳.分别求出凸包,利用旋转卡壳求出对踵点对,枚举距离即可. 注意:1.利用向量法判断旋转,而不是计算角度:避免精度问题和TLE. ...

  6. jsp 多条记录提交

    前端jsp页面可以通过form提交标有name属性值得input的value数据给服务器,其中如何传递数组形式呢?如下: 1.前端jsp页面 其中灰色的部分是一个循环出现的值,因此form提交后,后台 ...

  7. Stackdump: 一个可以离线看stackoverflow的工具

    博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:Stackdump: 一个可以离线看stackoverflow的工具.

  8. macos下使用rvm管理ruby版本和rails版本

    1. 安装rvm curl -L https://get.rvm.io | bash -s stable 查看rvm 版本 2. 安装ruby rvm install 2.3.1 查看ruby 版本 ...

  9. 01 Access数据库 测试连接

    附件:http://files.cnblogs.com/xe2011/AccesssConnectionState.rar using System.Data.OleDb; using System. ...

  10. lucene索引并搜索mysql数据库[转]

    由于对lucene比较感兴趣,本人在网上找了点资料,终于成功地用lucene对mysql数据库进行索引创建并成功搜索,先总结如下: 首先介绍一个jdbc工具类,用于得到Connection对象: im ...