CS课程描述

  • CSCI005 HM

    Credits: 3

    Instructors: 多德,梅得罗,斯科菲尔德

    Offered: Fall

    Description: 介绍计算机科学的基本知识. 学生学习计算解决问题的技巧,并获得设计经验, implementa­tion, testing, 以及用高级语言编写的程序文档. In addition, 学生学习设计数字设备, 了解计算机的工作原理, 学习用一种小型机器语言编程. 学生也接触到可计算性理论的思想. 该课程还整合了与计算机科学相关的社会和伦理问题.

  • CSCI005GR HM

    Credits: 3

    Instructors: Wu, Bush (Biology)

    Offered: Fall

    Description: 本课程介绍核心课程的基本概念 CSCI005 HM 用生物学作为这些计算思想的背景. 学生们看到这两个学科之间的知识和实践联系,并编写计算机程序来探索生物现象. 生物学主题包括生物化学的基础知识, the central dogma, population genetics, molecular evolution, metabolism, regulation, and phylogenetics. 计算机科学材料包括基本数据类型和控制结构, recursion, dynamic programming, 介绍自动机和可计算性. 本课程满足Harvey Mudd学院计算机科学核心课程的要求. 它不符合Harvey Mudd生物学核心要求.

  • CSCI035 HM

    Credits: 3

    Instructor: Dodds

    Description: This course extends CSCI005 HM 开发软件组合技能. 配对讲座和实验, 这些经验将加深算法和数据结构的基础, 介绍机器学习及其思维模式, 权衡人与机器效率之间的取舍, 并在软件中构建复杂性, 既可以组装现有的软件包,也可以从头开始设计. 学生将部署和评估自己设计的计算项目-具有超越CS本身的实质性应用-作为课程的最终顶点. 课程继续使用…的语言 CSCI005 HM 尤其鼓励对计算机科学以外的兴趣领域做出贡献的计算工作, 无论是学术还是课外活动.

    Prerequisites: CSCI005 HM or CSCI005GR HM 

  • CSCI042 HM

    Credits: 3

    Instructor: Stone and Wiedermann

    Offered: Fall

    Description: 为具有较强编程背景的学生(通常是一年级学生)提供计算机科学学科的加速广度优先介绍. 函数式和面向对象程序设计的计算模型. 数据结构和算法分析. 计算机逻辑和体系结构. Computability. 广泛的实践,从原理构建应用程序,使用各种语言. 成功完成本课程满足 CSCI005 HM Core requirement and CSCI060 HM coursework.

    Prerequisites: 教员许可

  • CSCI049 HM

    Credits: 1.5-3.0

    Instructor: Staff

    Offered: Fall & spring

    Description: 计算机科学研讨会,讨论广泛的HMC和5C社区普遍感兴趣的特殊主题. 不能作为计算机科学专业选修学分.

    Prerequisites: 教员许可.

  • CSCI060 HM

    Credits: 3

    Instructors: Boerkoel, Breeden, Dodds, Padmanabhan, Stone, Talvitie, Trushkowsky, Wiedermann, Wu

    Offered: Fall and spring

    Description: 计算机科学原理导论:信息结构, functional programming, 面向对象编程, grammars, logic, correctness, algorithms, complexity analysis, 以及理论上的局限性. 那些已经完成的 CSCI042 HM 不能拿CSCI060 HM.

    Prerequisites: CSCI005 HM or CSCI005GR HM 

  • CSCI070 HM

    Credits: 3

    Instructors: Breeden, Medero, O'Neill, Stone, Talvitie, Trushkowsky

    Offered: Fall and spring

    Description: 抽象数据类型,包括优先级队列和动态字典,以及这些数据类型的有效数据结构, including heaps, self-balancing trees, and hash tables. 数据结构分析,包括最坏情况,平均情况和平摊分析. 仓库分配和回收. 二次存储注意事项. 广泛的实践为各种应用程序构建程序.

    Prerequisites: (CSCI060 HM or CSCI042 HM),以及至少一门微积分或更高水平的数学课程; MATH055 HM recommended

  • CSCI081 HM

    Credits: 3

    Instructors: Bang, Monta​ñez, Stone

    Offered: Fall and spring

    Description: 介绍计算机科学的一些数学基础, particularly logic, automata, 以及可计算性理论. 发展构建和写作证明的技能, 并论证了上述领域在实际问题中的应用.

    Prerequisites: (MATH055 HM 或MATH055 CM/PZ/SC),及(CSCI060 HM or CSCI042 HM), and (MATH019 HM 或MATH032 CM/PO/PZ/SC或MATH032S PO或MATH067 PO),及(MATH073 HM 或MATH060 CM/PO/PZ/SC)

  • CSCI105 HM

    Credits: 3

    Instructors: O'Neill, Padmanabhan, Stone, Trushkowsky

    Offered: Fall and spring

    Description: 计算机系统概论. In particular, 本课程研究数据表示, 程序的机器级表示, 处理器体系结构, program optimizations, the memory hierarchy, 异常控制流(异常), interrupts, 进程和Unix信号), performance tuning, 缓存和虚拟内存, system-level I/O, networking, 以及基本的并发编程. 这些概念是由一系列的动手实验作业支持的.

    Prerequisites: CSCI070 HM 

  • CSCI111 HM

    Credits: 3

    Instructor: Wiedermann

    Description: 本课程探讨如何设计一种新的编程语言. In particular, 我们将重点关注“领域特定语言”——为想要使用计算机执行特定任务的人设计的语言.g.例如作曲、查询数据库或制作游戏). Through readings, discussions, and programming, 我们将研究为什么以及如何创建特定于领域的语言. 这门课程也有一个要求你提出建议的项目, design, 并实现您自己的领域特定语言.

    Prerequisites: CSCI070 HM 

  • CSCI121 HM

    Credits: 3

    Instructor: Staff

    Offered: Fall and spring

    Description: 介绍与软件系统的设计和实现有关的学科. 本课程呈现了软件开发实践的历史视角,并探讨了现代, 用于引出软件需求的敏捷技术, 软件架构和模块的设计与实现, 健壮的测试实践, 项目管理. 学生团队设计、开发和测试一个实质性的软件项目.

    Prerequisites: CSCI070 HM 

  • CSCI123 HM

    Credits: 3

    Instructors: 基拉博,斯科菲尔德,职员

    Offered: Fall and spring

    Description: 本课程深入研究了规划所需的技术和专业技能, execute, document, 并在课堂之外展示计算项目. 本课程的中心焦点是一个基于团队的项目,为现有的软件工具或API开发教程. 各种练习将有助于在专业计算环境中探索和建立通用工具和工作流程的读写能力. Additionally, 学生将讨论围绕谈判的人际互动, conflict management, 对代码和书面工作进行同行评审, 道德决策.

    Prerequisites: CSCI070 HM 

  • CSCI124 HM

    Credits: 3

    Instructors: Boerkoel, Kirabo

    Description: 本课程向学生介绍设计中的问题, implementation, 以及人机界面的评价, 强调以用户为中心的设计和图形界面. In this course, 学生学习技能,帮助他们选择正确的用户交互技术和开发一个界面,是非常适合的人,它是为谁设计的.

    Prerequisites: CSCI042 HM or CSCI060 HM 

  • CSCI125 HM

    Credits: 3

    Instructors: Padmanabhan, Stone

    Description: 因特网的原理和分析技术. 网络模型和协议分析. 计算机通信的介绍,重点是协议结构.

    Prerequisites: CSCI105 HM 

  • CSCI131 HM

    Credits: 3

    Instructors: 邦,奥尼尔,斯通,维德曼

    Offered: Fall and spring

    Description: 对语言设计和实现中的问题和特性的全面检查,包括语言提供的数据结构和数据类型, modularity, scoping, inheritance, and concurrency. 编译和运行时问题. 形式语义学简介.

    Prerequisites: CSCI070 HM and CSCI081 HM 

  • CSCI132 HM

    Credits: 3

    Instructors: Stone, Wiedermann

    Description: 编译器的设计和实现. 主题包括优雅的理论结果基础上的编译技术, 有效实现编程语言的实际问题, 以及与操作系统和计算机体系结构的位级交互. 在本学期的课程中,学生将构建一个可工作的编译器.

    Prerequisites: CSCI105 HM and CSCI131 HM 

  • CSCI133 HM

    Credits: 3

    Instructor: Trushkowsky

    Description: 数据库的基本模型:实体-关系、关系、面向对象. 关系代数和微积分,查询语言. 数据存储、缓存、索引和排序. 并发和分布式数据库中的锁协议和其他问题.

    Prerequisites: CSCI070 HMCSCI081 HM recommended

  • CSCI134 HM

    Credits: 3

    Instructors: O'Neill, Padmanabhan, Stone, Staff

    Description: 操作系统的设计和实现, including processes, memory management, synchronization, scheduling, protection, file systems, and I/O. 这些概念用于说明其他大型软件系统设计中更广泛的概念, including simplicity; efficiency; event-driven programming; abstraction design; client-server architec­ture; mechanism vs. policy; orthogonality; naming and binding; static vs. dynamic, space vs. time, and other trade-offs; optimization; caching; and managing large code bases. 小组项目提供使用和扩展实际操作系统的经验.

    Prerequisites: CSCI105 HM 

  • CSCI137 HM

    Credits: 3

    Instructor: Staff

    Description: 计算机存储和文件系统. 非易失性存储器的特性,包括磁盘和固态存储器. RAID storage. 文件系统中使用的数据结构. 性能、可靠性、隐私、复制和备份. 课程的主要部分是专门阅读从当前的研究领域.

    Prerequisites: CSCI105 HM 

  • CSCI140 HM

    Credits: 3

    Instructors: Boerkoel, Monta ñez, Schofield, Stone

    Offered: Fall and spring

    Description: 算法的设计、分析和正确性. 设计技术包括分而治之和动态规划. 分析技术,包括解决递归关系和摊销. 正确性技术,包括不变量和归纳证明. 应用程序包括排序和搜索, 图论问题,如最短路径和网络流, 题目选自算术电路, parallel algorithms, 计算几何, and oth­ers. 介绍计算复杂性,np完备性和近似算法. 要求熟练编程,因为有些作业需要算法实现.

    Prerequisites: ((CSCI070 HM and (MATH055 HM/CM/PZ/SC) and (MATH019 HM 或MATH032 CM/PO/PZ/SC或MATH032S PO或MATH067 PO)和(MATH073 HM 或math060cm /PO/PZ/SC或MATH060C CM))或(CSCI060 HM or CSCI042 HM) and MATH131 HM)或(CSCI062 PO及CSCI054 PO). CSCI081 HM is recommended.

  • CSCI142 HM

    Credits: 3

    Instructor: Staff

    Description: 通过赖斯定理和递归定理简要回顾可计算性理论,然后对复杂性理论进行严格的处理. 复杂度类P, NP和Cook-Levin定理. np完全问题的逼近性. 多项式层次,PSPACE-completeness, L和NL-completeness, #P-completeness. IP和零知识证明. 随机和并行复杂性类. 加速定理、层次定理和间隙定理.

    Prerequisites: CSCI081 HM 

  • CSCI144 HM

    Credits: 3

    Instructors: Bernoff(数学),de Pillis(数学),Yong(数学)

    Description: 应用于科学和工程问题的计算技术. 物理问题的建模, 计算机实现, analysis of results; use of mathematical software; numerical methods chosen from: solutions of linear and nonlinear algebraic equations, 常微分方程和偏微分方程的解, finite elements, linear programming, 优化算法, 快速傅里叶变换.

    Prerequisites: MATH073 HMMATH082 HM, and (CSCI060 HM or CSCI042 HM

  • CSCI145 HM

    Credits: 1.5

    Instructor: Staff

    Description: 本课程的目的是探索复杂的算法设计和分析技术,这些通常不会在第一堂算法课程中教授. 本课程涉及诸如图匹配之类的主题, 在线算法的竞争性分析, matroid theory, 以及近似算法和方案.

    Prerequisites: CSCI140 HM or MATH168 HM 

  • CSCI151 HM

    Credits: 3

    Instructors: Boerkoel, Talvitie, Wu

    Description: 本课程介绍人工智能领域的一般介绍. 它研究了这样一个问题:计算机需要做什么才能完成人类的任务? 它对知识表示等主题进行了广泛的介绍, search, 不确定性下的学习和推理. For each topic, 它考察了核心技术在现实世界中的应用,其中可能包括游戏, 文本分类和视觉模式识别.

    Prerequisites: CSCI070 HM and (MATH056 HM or MATH062 HM or BIOL154 HM 或MATH151 CM/PO/PZ/SC)

  • CSCI152 HM

    Credits: 3

    Instructor: Staff

    Description: Modeling, simulation, 分析了人工神经网络及其与生物网络的关系. 离散和连续神经网络的设计与优化. 反向传播和其他梯度下降方法. Hopfield和Boltzmann网络. Unsupervised learning. 自组织特征映射. 从函数近似中选择的应用, signal processing, control, computer graphics, pattern recognition, time-series analysis. 与模糊逻辑、遗传算法和人工生命的关系.

    Prerequisites: CSCI070 HM and MATH073 HM and (MATH056 HM or MATH062 HM or BIOL154 HM 或MATH151 CM/PO/PZ/SC)

  • CSCI153 HM

    Credits: 3

    Instructor: Wloka

    Description: 视觉感知的计算算法. 学生将开发获得的应用程序, 处理和解释静态图像和图像流. 这门课程将涵盖颜色的表征, shading, 纹理和形状以及立体声和运动分析, 物体识别和三维表示方法. 应用包括机器人、人类感知和大型图像数据库的使用.

    Prerequisites: CSCI070 HM 

  • CSCI155 HM

    Credits: 3

    Instructor: Breeden

    Description: 本课程介绍现代计算机图形学的主要概念. 学生将熟悉捕捉带来的技术挑战, display, 以及数字图像的生成. 重要的概念,如专用硬件的作用, 在物理现实主义和渲染时间的权衡, 并将介绍图形文学的批判性阅读和分析.

    Prerequisites: CSCI070 HM, MATH073 HM, and (MATH056 HM or MATH062 HM or BIOL154 HM 或MATH151 CM/PO/PZ/SC)

  • CSCI158 HM

    Credits: 3

    Instructor: Wu

    Description: 机器学习关注的是学习数据模式的系统的研究和开发. 本课程介绍了该领域中最常见的问题以及用于解决这些问题的技术, 重点是监督学习和非监督学习. 概念包括数学基础和算法方法.

    Prerequisites: CSCI070 HMMATH073 HM, and (MATH056 HM or MATH062 HM or BIOL154 HM 或MATH151 CM/PO/PZ/SC); CSCI151 HM recommended

  • CSCI159 HM

    Credits: 3

    Instructors: Medero, Schofield

    Description: 介绍自然语言处理的基本概念和思想, 有时被称为计算语言学. 该领域的目标范围从文本翻译和理解到使人类能够与机器人交谈. 我们将学习语言处理,从单词到句法结构再到文本的语义. 方法包括结构化和统计方法, 以及对当前自然语言研究的探索. 学生将建立和修改系统,并将使用大型现有语料库来验证他们的系统.

    Prerequisites: CSCI081 HM and (MATH056 HM or MATH062 HM or BIOL154 HM 或MATH151 CM/PO/PZ/SC)

  • CSCI181 HM

    Credits: 1-3

    Instructor: Staff

    Offered: Fall and spring

    Description: 计算机科学中当前感兴趣的高级主题.

    Prerequisites: 教员许可

  • CSCI183 HM

    Credits: 3

    Instructor: Staff

    Offered: Fall

    Description: 诊所项目将学生团队聚集在一起,研究由企业赞助的研究问题, industry, or government. 团队与教师顾问和赞助组织提供的联络人密切合作,以解决复杂的现实问题. 学生应口头介绍他们的工作,并产生符合专业出版标准的最终报告. CSCI183  HM and CSCI184 HM 必须在同一学年连续修读,才能算入专业.

    Prerequisites: CSCI123 HM  and senior standing; or permission of the Computer Science Clinic director

  • CSCI184 HM

    Credits: 3

    Instructor: Staff

    Offered: Spring

    Description: 诊所项目将学生团队聚集在一起,研究由企业赞助的研究问题, industry, or government. 团队与教师顾问和赞助组织提供的联络人密切合作,以解决复杂的现实问题. 学生应口头介绍他们的工作,并产生符合专业出版标准的最终报告. CSCI183 HM 和CSCI184 HM必须在同一学年连续修习,才能算入该专业.

    Prerequisites: CSCI183 HM, and senior standing; or permission of the Computer Science Clinic director

  • CSCI186 HM

    Credit: 0.5-3

    Instructor: Staff

    Offered: Fall and spring

    Description: 在计算机科学学院监督下的研究或开发项目. 不超过3个单元可以算作主要选修学分.

    Prerequisites: 教员许可

  • CSCI189 HM

    Credit: 1

    Instructors: Dodds, Stone

    Offered: Fall and spring

    Description: 本课程是每周一次的编程研讨会, 强调对计算问题及其难度的有效识别, 开发和实现算法来解决它们, 以及对这些实现的测试. 注意有效地使用编程工具和可用的库, 以及团队解决问题的动力. 专业选修课不超过3个学分.

    Prerequisites: CSCI005 HM or CSCI005GR HM or CSCI042 HM 

  • CSCI195 HM

    Credit: 0.5

    Instructor: Staff

    Offered: Fall and spring

    Description: 口头报告和选定主题的讨论, 包括计算机科学的最新发展. 参与者包括计算机科学专业的学生, Clinic participants, faculty members, and visiting speakers. No more than 2.参加太阳2注册平台研讨会/座谈会可获得0个学分. All majors welcome.

    Prerequisites: 仅限大三和大四学生

  • CSMT181 HM

    Credits: 1.5-3

    Instructor: Staff

    Description: 一门致力于探索当前感兴趣的话题的课程. 报名前已公布的主题.

  • CSMT183 HM

    Credits: 3

    Instructor: Staff

    Offered: Fall

    Description: 计算机科学和数学的联合团队项目,与公司有关联. CSMT183 HM and CSMT184 HM 必须连续参加才能算进专业.

    Prerequisites: 作为计算机科学/数学联合专业的资深学生, 或得到计算机科学与数学诊所主任的许可.

  • CSMT184 HM

    Credits: 3

    Instructor: Staff.

    Offered: Spring

    Description: 计算机科学和数学的联合团队项目,与公司有关联. CSMT183 HM 和CSMT184 HM必须连续采取计入主要.

    Prerequisites: CSMT183 HM 

  • MCBI117 HM

    Credits: 3

    Instructor: Donaldson-Matasci(生物学)

    Description: 博弈论入门, 数学的一个分支,研究个体之间策略性的相互作用, 在生物学等领域都有应用, 经济学和政治学. 本课程将介绍经典博弈论、博弈表征和纳什均衡. 课程的第二部分将着重于进化博弈论, equilibrium concepts, 以及合作的进化.

    Prerequisites: 教员许可

  • MCBI118A HM

    Credits: 1.5

    Instructors: Adolph(生物学),de Pillis(数学),Donaldson-Matasci(生物学)

    Offered: Spring

    Description: 数学生物学领域的导论. 生物过程的连续和离散数学模型及其分析和计算解决方案. 例子可能包括流行病学中的模型, ecology, cancer biology, systems biology, molecular evolution, and phylogenetics.

    Prerequisites: MATH073 HMMATH082 HM, and BIOL046 HM 

  • MCBI118B HM

    Credits: 1.5

    Instructors: Bush(生物学),Donaldson-Matasci(生物学),Wu(计算机科学)

    Offered: Spring

    Description: 计算生物学领域的导论. 系统发育推断算法和解决分子进化和群体遗传学问题的计算方法.

    Prerequisites: CSCI005 HM and BIOL046 HM 

  • MCBI199 HM

    Credit: 0.5

    Instructor: Staff

    Offered: Fall and spring

    Description: 注册参加联合研讨会的学生必须在学期内参加与他们兴趣相关的任何领域的固定次数的研讨会演讲. 讲座可能在克莱蒙特学院的任何成员或附近的大学举行,可能涉及包括生物学在内的广泛领域, mathematics, 计算机科学和其他科学和工程学科,包括生物工程, cognitive science, neuroscience, biophysics, and linguistics. 参加联合研讨会的学生必须提交他们参加的每个讲座的简短摘要. No more than 2.参加太阳2注册平台研讨会/座谈会可获得0个学分.