| No. | 年级学期 | 课程名称 | 学分 | 任课教师 |
|---|---|---|---|---|
| 1 | 一年级秋季学期 | 计算机入门 | 3 | 姚期智 |
| 2 | 一年级春季学期 | 计算机应用数学 | 3 | 姚期智、王跃宣 |
| 3 | 二年级秋季学期 | 程序设计与算法基础 | 4 | 王跃宣 |
| 4 | 二年级秋季学期 | 算法设计 | 4 | 姚期智,李建 |
| 5 | 二年级秋季学期 | 理论计算机科学数学技巧 | 3 | John Steinberger |
| 6 | 二年级春季学期 | 计算理论 | 4 | 姚期智, Iddo Tzameret |
| 7 | 二年级春季学期 | 网络科学 | 3 | Thomas Moscibroda |
| 8 | 2008、2009级三年级春季学期,2010级起二年级春季学期 | 密码学基础 | 4 | John Steinberger |
| 9 | 二年级春季学期 | 博弈论 | 4 | Frances Foong Yao |
| 10 | 三年级秋季学期 | 量子信息 | 3 | 段路明 |
| 11 | 三年级秋季学期 | 机器学习 | 4 | 王立威 |
| 12 | 三年级秋季学期 | 高等计算机图形学 | 3 | 胡事民 |
| 13 | 2008级三年级春季学期,2009级起三年级秋季学期 | 高等算法 | 4 | Periklis Papakonstantinou |
| 14 | 三年级秋季学期 | 操作系统 | 4 | 陈渝 |
| 15 | 三年级春季学期 | 分布式计算 (基础与系统) | 4 | 陈卫 |
| 16 | 三年级春季学期 | 当前计算机研究热门课题 | 2 | 姚期智,王跃宣 |
| 17 | 三年级夏季学期 | 专题训练实践 | 5 | 王跃宣 |
| 18 | 四年级秋季学期 | 计算机科学研究实践 | 15 | 各著名研究院所的高级研究主管 |
|
1.
计算机入门 任课教师: 姚期智 这门课程研究了计算机科学的基础思想。课程和作业涵盖了许多课题,诸如硬件组织、网络、计算程序、计算限制以及图形等。 |
|
2.
计算机应用数学 任课教师: 姚期智、王跃宣 该课程面向计算机科学本科专业介绍基本数学技巧,以及这些技巧怎样在计算机科学中应用。现代计算机科学教育需要学生掌握宽阔的数学知识,并能灵活和创新地解决现在和将来的科技挑战。在该课程中,数学技巧主要涵括代数、几何、概率理论,随机模型、信息理论等。这些技巧将应用于不同专题的问题和算法设计,包括互联网、无线传感网、密码学、分布式系统、算法设计和优化等。最后,该课程向学生介绍在计算理论基础方面深层次的科学问题,如不可解性、复杂性和量子计算。 |
|
3.
程序设计与算法基础 任课教师: 王跃宣 本课程假设学生已经具备了最基本的程序语言知识,例如函数、循环、数组等。课程的主要内容包括:C/C++基本程序设计概念(过程程序设计、面向对象程序设计)、计算机数据结构(链表、栈、队列、树等)、与这些数据结构相关的常用算法,以及一些经典的程序设计模式(引用计数、虚拟构造器等)。 |
|
4.
算法设计 任课教师: 姚期智,李建 本课程介绍算法设计的基础知识,常用算法设计技术,以及算法复杂性的分析。主要内容包括:算法分析工具,分治算法,动态规划,贪心算法等算法设计技巧,以及NP完全性,随机算法,近似算法等高级专题。 |
|
5.
理论计算机科学数学技巧 任课教师: John Steinberger 这门课的目的是为了给立志于做计算机科学特别是理论计算机科学研究的学生介绍基本的数学方法。当然这门课不上仅仅局限于数学方法和计算机科学理论,它还会包括计算机科学其它各个领域的一些应用。具体要介绍的数学方法包括(但不局限于)代数,高维几何,线性规划和半正定规划,信息论方法,随机过程,傅里叶分析和布尔函数分析,离散傅里叶变换以及快速傅里叶变换,编码理论以及膨胀图(Expanders)。其它可能的一些讲授内容会包括Barrington理论,Newman理论,INW伪随机产生器和Nisan-Widgerson伪随机产生器等。 |
|
6.
计算理论 任课教师: 姚期智, Iddo Tzameret 本课程介绍计算理论的基础知识,包括有穷自动机理论,正则语言,下推自动机,上下文无关文法,图灵机等,以及可计算性,计算难解性(NP完全性,PSPACE,BPP等)专题。 |
|
7.
网络科学 任课教师: Thomas Moscibroda 网络科学(Network Science)是研究利用网络来描述物理、生物和社会现象,建立这些现象的预测模型的科学。这门课程从大型网络数学建模、海量数据集信息检索算法、算法博弈论、电子商务等视角探索互联网的各大要素,涵盖小世界现象、幂律分布、排序融合算法、网络爬行、枢纽节点与权威节点、集聚类大数据、流算法、网络路由、纳什均衡、市场出清、机制设计、拍卖理论、社会网络等专题。 |
|
8.
密码学基础 任课教师: John Steinberger 本课程的主要目的是介绍现代密码学的一些基本概念。与数字内容分布有关的两个主要问题是信息的隐秘性和数据来源。在简短介绍代数之后,将会在现代私钥和公钥加密的背景下讨论隐私问题及其解决方案。之后将回顾一下使用散列函数和数字签名来实现数字内容认证的一些工具。其中所提出的结构是建立设计安全系统和实际应用协议。同时,本课程也将涉及加密方案和协议的攻击和安全分析等内容。 |
|
9.
博弈论 任课教师: Frances Foong Yao 本课程建议学生掌握线性代数基础知识及微积分基本技巧,但不是硬性要求。本课程拟介绍相关材料并培养学生的数学技巧。本课程是博弈论入门课程,拟从博弈论基础知识着手。课程将介绍纳什均衡等重要概念,旨在引导学生学习演化博弈论、博弈图等更为复杂的课题。 |
|
10.
量子信息 任课教师: 段路明 此课程重点将学生带向量子信息研究的最前沿,包括:量子基础:广义量子演化与量子测量;量子纠缠理论;量子通讯理论:隐形传态及量子密码;量子计算与量子算法;量子纠缠及容错量子计算;量子计算与量子网络的物理实现。 |
|
11.
机器学习 任课教师: 王立威 机器学习研究的内容是如何使计算机从经验中学习。通过结合理论计算机与统计学的思想,目前已开发出很多机器学习的算法,并成功应用于计算机视觉、生物信息学以及自然语言处理等多个领域。机器学习理论研究机器学习的根本问题,包括在什么条件下是可学习的,以及学习能力的理论极限是多少。 |
|
12.
高等计算机图形学 任课教师: 胡事民 本课程是为清华大学计算机系本科生开设的选修课,旨在介绍计算机图形学的基本概念、理论、方法和系统,主要内容包括:颜色模型、光照模型、明暗处理、纹理、光线跟踪算法、曲线曲面造型和几何处理等。 |
|
13.
高等算法 任课教师: Periklis Papakonstantinou 本课程为对数学感兴趣的大三学生而设立,在学习本课程之前,需要学习关于算法和计算理论的的入门课程,本课程是在算法领域的提高课程。 |
|
14.
操作系统 任课教师: 陈渝 本课程将讲授最基本的操作系统原理。主要内容包括:计算机与操作系统结构,机制与策略,资源管理,多任务系统,内存管理,文件系统,输入输出子系统及设备管理, 通信与网络,保护与安全。本课程要求学生课后积累动手经验。 |
|
15.
分布式计算 (基础与系统) 任课教师: 陈卫 本课程教授分布式计算机系统的基本算法与原理,例如逻辑时钟,协同问题,失效检测,拜占庭移植性协议,分布式加锁,流言协议等。学生还将通过学习若干先进分布式系统了解如何将基本算法和原理用于设计和分析分布式系统。 |
|
16.
当前计算机研究热门课题 任课教师: 姚期智,王跃宣 该课程是综述性课程。课程目的是向学生介绍计算机科学研究的前沿课题,从而帮助学生在计算机科学研究和工业界的发展制定计划。每一相关领域将由一讲或数讲组成。课题包括(但不限于)计算机系统,计算机网络,信息安全,计算机图形学,计算机视觉,网络搜索和挖掘,多媒体,语音技术和自然语言理解。 |
|
17.
专题训练实践 任课教师: 王跃宣 本课程设在大三年级夏季学期,是为大四年级的《计算机科学研究实践》和《综合论文训练》做准备。在该课程中,设置了算法理论、量子网络、复杂性研究、密码及安全、博弈论等专题,并根据学生的兴趣安排进入各专题训练小组进行专题研讨和实践,使学生在实际动手能力、创新思维、团队合作精神等方面得到锻炼和提高。 |
|
18.
计算机科学研究实践 任课教师: 各著名研究院所的高级研究主管 该课程为实践性课程。学生将赴国内外各著名研究院所进行为期一学期的研究实践,每位学生单独跟随各自的导师,参与到具体的、目前理论计算机领域最前沿的研究项目中去,进行研究型开发研讨等实践活动。该课程的目的是让学生真正接触到理论计算机科学研究的最前线,对自己所学理论知识有更深入、更实际的认识和应用。学生也有机会在该实践课程中在自己的研究实践领域发表论文。在该课程中,学生将会被要求进行正式的研究实践报告答辩,包括开题、期中和期末答辩。 |