数学分析在计算机科学中的应用?

1,759 views
Skip to first unread message

dd_engi

unread,
Oct 26, 2008, 9:46:12 AM10/26/08
to TopLanguage
我想,没有太大疑问的,计算机科学的基础是数学,更狭义一点说,是离散数学,即逻辑学、集合论、数论、图论、组合数学、计算理论等数学领域的大杂烩。

那么,数学最庞大、最重要的分支,数学分析,包括微积分、实分析、复分析、泛函分析、傅里叶分析、微分几何等等的这一大托东西,在计算机科学的领域和分
支中有何重要的应用呢?具体一点的例子,有没有哪本计算机科学著作中,象物理学著作和某些经济学著作一样,充斥大堆微积分符号呢?

我所在学校里计算机科学专业数学方面的必修课设置基本上是数学系略微精简了一些,还是以数学分析为核心,离散数学就只有一门。似乎国内大部分学校都是这
样。那么,这与计算机科学中实际用到的数学是否一致呢?

如果我打算在计算机科学方向发展,不一定是纯理论,也包括应用,那么我想知道,我现在在学的繁多的数学分析课程将来会在多大程度上被用到呢?

请各抒己见。谢谢。

Bill_Lang(Gmail)

unread,
Oct 26, 2008, 9:48:00 AM10/26/08
to pon...@googlegroups.com
个人感觉:数学的学习无止境,学得越多越好。

2008/10/26 dd_engi <tian...@gmail.com>:

--
Best wishes;
Jun Lang

pongba

unread,
Oct 26, 2008, 9:56:30 AM10/26/08
to pon...@googlegroups.com
1. 实分析的知识是很重要的,空间解析几何也是。前者是最优化理论的基础。后者,在机器学习理论里面也常常需要几何概念。
2. 概率论(尤其是贝叶斯和概率统计)是最最重要的。

其它几个目前我还没看到怎么使用,召唤 XuYou :)

2008/10/26 dd_engi <tian...@gmail.com>



--
刘未鹏(pongba)
Blog|C++的罗浮宫
http://blog.csdn.net/pongba
TopLanguage
http://groups.google.com/group/pongba
Twitter
http://twitter.com/pongba
Delicious
http://delicious.com/pongba
Douban
http://www.douban.com/people/pongba/

小马xioama

unread,
Oct 26, 2008, 10:38:10 AM10/26/08
to pon...@googlegroups.com
计算机只是一个工具而已,将来在多大程度上被用到,取决于你将来的应用领域。你将来的应用方向是什么呢? 难道你们实分析、复分析、泛函分析、微分方程、微分几何这些课程都学的么?


2008/10/26 dd_engi <tian...@gmail.com>

dd_engi

unread,
Oct 26, 2008, 10:52:02 AM10/26/08
to TopLanguage
On Oct 26, 10:38 pm, "小马xioama" <cnxia...@gmail.com> wrote:
> 计算机只是一个工具而已,将来在多大程度上被用到,取决于你将来的应用领域。你将来的应用方向是什么呢?
> 难道你们实分析、复分析、泛函分析、微分方程、微分几何这些课程都学的么?
>

那只是我在比较随便地列举我知道的数学分析的分支而已,与课程设置无关。
我本科一年级,对应用的方向还暂时没任何想法。
通过这个比较宽泛的问题的提问,我最想知道的,其实是,在精力有限的情况下,对于分析这个数学的分支,应该花多少精力去学,具体学什么。不过我不愿直截
了当的提出关于一个本科一年级学生的时间安排的问题,而是希望通过阅读大家对上文所述的问题的讨论以及其他帮助,得出自己的结论。

> 2008/10/26 dd_engi <tianyi...@gmail.com>

Yang Ding

unread,
Oct 26, 2008, 11:34:52 AM10/26/08
to pon...@googlegroups.com
本科你能学到的分析类课程都值得你花大的力气去学
如果你做机器学习的某些领域上面你提到的所有那些分析类课程都会用得上

2008/10/26 dd_engi <tian...@gmail.com>:

小马xioama

unread,
Oct 26, 2008, 11:47:44 AM10/26/08
to pon...@googlegroups.com
个人认为本科你能学到的数学类课程都值得你花大的力气去学
我作为一个数学系本科毕业,有13年软件开发经验的程序员,可以很负责的告诉你,在我所有的编写的代码中,没有用到任何一个微分和积分的公式。
 
但是分析不仅仅是大堆微积分符号。大学里学到的更多的应该是方法而不是知识。思考问题的方法和解决问题的方法,对于任何工作都是很重要的。

2008/10/26 dd_engi <tian...@gmail.com>

obtuseSword

unread,
Oct 26, 2008, 11:53:41 AM10/26/08
to TopLanguage
数学分析的基础是必须的,当你要分析一个算法复杂度的时候,其实就是在分析极限。即使是离散数学中的内容,技术处理上还是离不开微积分,比如生
成函数。另外,傅立叶分析的重要应用是小波分析,在信号处理中非常重要;解析几何与线性代数至少是搞图形学的基础;而概率论中也经常需要微积分的知识。
还有,信息论离不开连续数学,编码离不开代数。 事实上,要举出应用来的话,是非常多的。

另外,数学分析不仅仅是扮演传授知识的角色,开设这门课的另一个目的是将其作为训练数学思维和分析能力的素材。

不过我也赞同计算机科学专业不应把课时一边倒地分配给数学分析,而且即使是讲数学分析,也应从计算机科学中采集鲜活的例子。
D.E.Knuth 他们写具体数学的目的其实也是为了革新课程。

newtoncas

unread,
Oct 26, 2008, 12:22:14 PM10/26/08
to TopLanguage
首先,数学分析其实是很广的概念,包括了很多东西,有人把复分析,实分析之类的都算进来了,但是我们一般所指的数学分析就是数学系所开的一门基础课,强
调的是理论证明,这很显然的和工科微积分区别开来了,楼主所关心的计算机科学,同样是分支众多,除了理论计算机(用到很多的数理逻辑,集合论),计算机
图形学(微分几何之类)之类比较和数学联系紧密的分支外,很多的计算机分支,所用数学并不一定都那么高深,我不赞成为了应用所谓先进的数学而把问题复杂
化,简洁的数学方法才是美丽的。
至于你所关心的“有没有哪本计算机科学著作中,象物理学著作和某些经济学著作一样,充斥大堆微积分符号”,呵呵,真正让你琢磨不透的数学不是这样的,你
学过集合论或者拓扑学之类的你就知道了,恩,要真想体验一下,你就看Jech的《Set Theory》吧,中关村图书大厦有卖的,很BT的书。计算机
的应用,如果只是说编程之类的,那么很多的实际工作你是用不到高深的数学,基本的工科数学就够了。国内计算机的课程设置,我所知不多,不过据我所知,很
多计算机专业的学生,离散数学学得不到位,不过这也不要完全怪学生,毕竟某些授课的方式确实难以让人感兴趣。学习一门数学而不知道这个学科的背景动机,
那么会遇到很多不可思议的让人费解的事情。
恩,最后,pongba已经写过不少理论计算机的文章了,对角线方法证明实数不可数之类属于实分析基础,是个很基本的方法,但是pongba能用通俗语
言表达,相信引起楼主兴趣了吧,呵呵,要是楼主有兴趣可以深入看看,值得一提的是选择公理,数学的内在很美,很多问题值得我们细心体会,一个和选择公理
直接相关的是
banach-tarski paradox,很有意思哦,数学就是需要这样激动人心的知识

On 10月26日, 下午9时46分, dd_engi <tianyi...@gmail.com> wrote:

dianausdu

unread,
Oct 26, 2008, 9:15:49 PM10/26/08
to pon...@googlegroups.com
但是人的时间是有限的啊,可不能把有限的时间投入到无限的数学中去,适当的选择应该是必要的!
 
 
2008-10-27

dianausdu

发件人: Bill_Lang(Gmail)
发送时间: 2008-10-26  21:48:20
抄送:
主题: [TopLanguage] Re: 数学分析在计算机科学中的应用?

dianausdu

unread,
Oct 26, 2008, 9:15:49 PM10/26/08
to pon...@googlegroups.com
但是人的时间是有限的啊,可不能把有限的时间投入到无限的数学中去,适当的选择应该是必要的!
 
 
2008-10-27

dianausdu

发件人: Bill_Lang(Gmail)
发送时间: 2008-10-26  21:48:20
抄送:
主题: [TopLanguage] Re: 数学分析在计算机科学中的应用?

Bruce Khereid

unread,
Oct 27, 2008, 11:25:53 AM10/27/08
to pon...@googlegroups.com
obtuseSword 所言极是。

我认为计算机科学只有涉及到应用时才会开始大规模依赖分析学。我不太确定这样
的说法是不是恰当:数字计算机系统常常模拟现实中一些连续的(可用实数系统描
述的)模型,但它的物理实现是有限的(自然是离散的),所以永远会伴随着精度
和资源之间的矛盾。理性地控制这一矛盾需要很多计算数学的理论,而它们的基础
在很大程度上是依赖数学分析的。

杜骞

unread,
Nov 1, 2008, 5:19:19 AM11/1/08
to pon...@googlegroups.com
个人感觉大学阶段的数学学习更重要的是体验,体验那些学科中蕴含的深刻思想,进而启发自己的思考。学习数学的过程更像是在磨砺思想,而做大量的习题则是强化你所获得的思维能力。现在大学里各科的课程大量压缩了,课外消化那些知识所需的时间也相应增多了。

2008/10/27 Bruce Khereid <bruce....@gmail.com>

styx

unread,
Nov 3, 2008, 1:01:28 AM11/3/08
to TopLanguage
非常赞同Yang Ding的意见,数学要花大力气学好,所有东东的基础,而且早点学好。

On 10月26日, 下午11时34分, "Yang Ding" <yding1...@gmail.com> wrote:
> 本科你能学到的分析类课程都值得你花大的力气去学
> 如果你做机器学习的某些领域上面你提到的所有那些分析类课程都会用得上
>
> 2008/10/26 dd_engi <tianyi...@gmail.com>:
Reply all
Reply to author
Forward
0 new messages