计算机科学

本科

计算机科学是一个令人兴奋的领域,应用于人文学科的许多学科, 社会科学, 与科学. 计算机科学家的主要作用是解决问题. 计算机科学学位意味着在解决问题的计算和分析方法以及开发软件以应对新挑战所需的技能方面的正式培训. 这些计算方法可以应用于广泛的问题, 包括蛋白质折叠和柔韧性, 建模和预测鸟类迁徙, 改进搜索引擎检索最相关文档的能力, 了解社交网络提供的连通性如何影响我们的生活, 支持科学家管理和分析他们收集的数据, 和更多的.

项目概述

计算机科学中的问题解决 首先要确定挑战, 比如规划宇宙飞船的轨道, 让一群机器人送披萨, 或者为你的网络查询找到最好的答案. 计算机科学课程旨在培养学生的概念理解能力和解决计算问题所需的技能. 课程涉及的核心主题从学习如何编程到使用布尔代数构建计算机系统,到开发确保程序健壮的软件方法,再到分析算法的正确性和成本. 课外活动和项目, 包括在入门级别的嵌入式同伴指导, 通过培养一个学习社区来支持学生.

计算机科学家还开发和分析深入生物学的算法, 化学, 物理, 经济与商业, 它们正在改变数学研究,并为艺术和音乐提供新的工具和媒体. 

文科在计算机科学研究中的重要性

较强的沟通和协作能力以及广泛灵活的思维能力使我们的毕业生脱颖而出. 我们的毕业生追求科技巨头的行业职位, 他们自己创业,在竞争激烈的研究生院学习, 包括卡内基梅隆大学, 斯坦福大学, 麻省理工学院和布朗大学.

为什么要学习计算机科学??

我们正生活在一场由计算机驱动的革命之中,这场革命几乎渗透到社会的各个方面——通信, 运输, 医疗, 商业和娱乐——仅举几例.

除了你在社交网络或智能手机上的日常互动, 科技已经影响了其他领域. 科学研究通常使用在计算机模型上而不是在现实世界中进行的实验. 气候变化研究, 例如, 使用计算机模型,因为不可能设计和实施一个实验来评估碳排放对环境的影响.

医学和医学研究广泛地依赖于计算机. 药物发现研究, 例如, 能涉及到研究蛋白质的计算机模型吗, 病毒和药物在实际合成和试验潜在药物之前.

计算机科学学科

计算机科学研究如何用计算机解决问题. 这个问题的解决可以从多个角度来看待:

  • 逻辑. 你怎样才能如此精确地描述一个问题的解决方案,以至于一台计算机(一种设备)能做到这一点, 其核心是, 只能执行极其简单的指令, 非常快)可以执行它?
  • 算法. 如何将逻辑步骤组合在一起来解决问题? 你是如何高效地做到这一点的? 你如何从数学上证明你的算法是正确的?
  • 抽象. 用计算机解决的问题往往又大又复杂. 开发抽象允许计算机科学家将问题分解成更小的部分, 单独解决这些问题,并将结果结合起来,形成一个全面的解决方案.
  • 可计算性. 电脑能解决什么问题啊? 目前,一些对人来说很容易做的事情对计算机来说仍然很困难. 甚至还有一些我们知道计算机永远无法解决的问题. 还有一些问题的算法也很简单, 但是,对于任何实际规模的问题,算法都需要很多年才能计算出解决方案. 我们如何知道一个问题是否难以解决?

除了这些计算思维的基本元素, 计算机科学包括许多更专业的领域, 包括:信息检索, 软件工程, 计算几何, 计算机图形与动画, 计算机体系结构, 网络, 编程语言, 机器人和更多.

社区的声音

关注计算机科学专业的学生和校友

在Mount Holyoke学习计算机科学

在第一年选课

对计算机科学感兴趣?

计算机科学系提供了多种开始学习计算机科学的方法, 既适合考虑主修计算机科学的学生,也适合那些对计算机科学感到好奇,但想找一份不需要编程的入门书的学生.

对于那些考虑主修或副修计算机科学的人

如果你对计算机科学专业或辅修专业感兴趣,推荐的入门点是any comsc - 151 提供. 这是一门编程密集型课程,介绍使用计算机作为解决问题的工具. 有多种comsc - 151产品(例如, comsc - 151 aa,comsc - 151基于“增大化现实”技术, comsc - 151 ds, comsc - 151 hc, 和comsc - 151MD),它们都涵盖了相同的基本材料,但有不同的激励例子.

一些学期, 该部门提供了另一种选择,节奏略慢的主要或次要入门点:comsc - 150. This course should be followed by comsc - 121; the combination of the two is equivalent to comsc - 151.

具有先前编程经验的学生可以参加分班考试,以确定是否有资格跳过上述课程,并从comsc - 205开始.

对于那些对cs感兴趣的人

如果你对探索计算机科学感兴趣, 具有较少的编程经验, 该系通常每学期至少开设一门非专业课程(例如, comsc - 100, comsc - 106, comsc - 108, 和comsc - 109).

计算机科学系的任何成员都可以回答你关于学习课程的问题.

课程及要求

入门课程侧重于编程的基础知识, 使学生能够用代码实现思想和方法. 中级和高级课程在计算机系统等领域提供广度和深度, 人工智能, 机器人, 网络和算法.

学习目标

计算机科学课程旨在鼓励学生:

  • 培养批判性思维能力,通过设计和实现算法来解决问题.
  • 培养对算法复杂性进行推理的分析能力.
  • 能够设计, 实现, 测试, 并记录解决实质性计算问题的计算机程序.
  • 培养对复杂代码库的理解能力和有效修改代码的能力.
  • 能够在多个细节和抽象层面进行思考.
  • 随着领域的发展,建立一个允许并鼓励学习新的相关技能和技术的基础.
  • 理解理论与实践之间的相互作用.
  • 了解软件和硬件之间的相互作用.
  • 能够用书面和口头形式进行清晰的沟通.
  • 能够有效地在团队中工作.

更具体地说,学生应该掌握以下概念:

  • 计算机编程-包括至少两种不同范例的编程语言的工作知识.
  • 数据结构:使用和实现基本抽象数据类型(包括队列)的能力, 栈, 平衡搜索树, 哈希表, 和图表.
  • 管理复杂性的抽象.
  • 递归与归纳.
  • 算法解决问题:设计的能力, code, 分析, 并利用递归分治法证明了算法的正确性, 动态规划, 贪婪的方法.
  • 计算机的概念组织——包括计算机体系结构(硬件层)和操作系统问题.
  • 计算机上的数据存储.
  • 计算机的应用:了解计算机如何, 算法, 项目, 和/或数据结构用于多个应用领域.

专业要求

最少40学分:

计算机科学(36学分)
comsc - 151计算问题解决导论 14
comsc - 205数据结构4
comsc - 221计算机系统概论4
comsc - 225软件设计与开发4
comsc - 312算法4
comsc - 322操作系统4
另外三门计算机科学课程: 212
其中两门必须达到300级(8学分)
第三级可以是200级或300级(4学分) 3
数学(4学分)
数学- 232离散数学 44
人文社会科学 5, 6
除了那些用来满足学院分配要求的:
另外一门指定的人文学科课程 7
另外一门指定的社会科学课程 7
总学分40
1

例如,任何comsc - 151产品, comsc - 151 cp, comsc - 151 ds, or comsc - 151 hc.

2

独立学习课程不算作选修课

3

学生也可以计算 菲尔- 225 作为选修课,因为它与计算机科学有很强的联系

4

选修数学或统计学辅修的计算机科学专业的学生可能不被计算在内 数学- 232 数学或统计学和计算机科学的学分

5

这些课程也可以计入学院的专业外要求或第二专业要求,因此不直接计入该专业所需的学分.

6

在为满足这些要求而使用的课程中宣布专业后,不能选择不评分的选项

7

指定课程是指那些已被分类以满足学院适用分配要求的课程

额外的规范

  • 数学的技巧和抽象推理在计算机科学中尤为重要. 强烈建议学生参加额外的数学课程(至少通过 数学- 101数学- 102). 数学- 211在某些领域非常有用,比如机器学习和计算机图形学.
  • 计划攻读计算机科学高级学位的学生应该在他们的计划中包括额外的计算机科学课程和导致论文的独立研究.

辅修课程要求

至少20个学分:

计算机科学
comsc - 151计算问题解决导论 1, 24
comsc - 205数据结构 34
comsc - 225软件设计与开发4
另外两门计算机科学课程(8学分),包括:8
一个在300级
第二个可以在200或300的水平
总学分20
1

例如,任何comsc - 151产品, comsc - 151 cp, comsc - 151 ds, or comsc - 151 hc.

2

comsc - 150 + comsc - 121 能代替comsc - 151吗

3

comsc - 205 py + comsc - 122 能代替comsc - 205吗

课程的建议

计算机科学系提供了多种开始学习计算机科学的方法, 适合考虑主修或辅修计算机科学的学生, 那些可能想在其他专业中使用计算机的人, 对于那些对计算机科学感兴趣的人,想从一个不需要编程的入门开始.
 
对于考虑主修或辅修计算机科学的学生:
 
如果你对计算机科学专业或辅修专业感兴趣,推荐的入门点是any comsc - 151 提供. 这是一门编程密集型课程,介绍使用计算机作为解决问题的工具. 有多种comsc - 151产品(例如,  comsc - 151 cp, comsc - 151 ds, comsc - 151 hc),它们都涵盖了相同的基本材料,但有不同的激励例子.
 
具有先前编程经验的学生可以参加分班考试,以确定是否有资格跳过上述内容并开始 comsc - 205.

对于对编程感兴趣但尚未决定主修或辅修计算机科学的学生:

有些学期,该部门提供了另一种入学点: comsc - 150. 本课程侧重于许多编程语言中使用的核心结构, 但不包括面向对象编程的主题. 如果一个学生想继续学习更多的计算机科学, comsc - 150后面应该是 comsc - 161; the combination of the two is equivalent to comsc - 151.

对于对计算机科学感兴趣的学生:
 
适合对探索计算机科学感兴趣的学生,不太强调编程, 该系通常每学期至少开设一门非专业课程(例如, comsc - 100, comsc - 106, or comsc - 109).

课程

comsc - 100计算与数字世界

春天. 学分:4

介绍基本的计算机科学概念. 讲座将涵盖诸如计算机的起源等主题, 计算机体系结构, 人工智能, 隐私和安全. 会有一些编程练习.

适用于要求:数学科学
H. Pon-Barry D. 意大利广播电视公司
提示:不需要事先学习计算机科学. 学生在计算机科学106、150或151之后可以不修这门课.
注:本课程不计入计算机科学专业或辅修课程.

comsc - 106应用计算基础

今年没有计划. 学分:4

您是否曾经使用谷歌的图像搜索工具并想知道搜索结果是如何找到的? 为什么计算机很难像我们一样“看”? 计算机科学家正在积极研究如何应对“计算机视觉”这一挑战.本课程将以计算机视觉为主题,介绍应用计算的基础知识. 在更独立地使用计算工具之前,学生将学习编程(Python编程语言)的基础知识.

适用于要求:数学科学
A. St. 约翰,部门
提示:不需要事先学习计算机科学. 学生在计算机科学100、150或151之后可以不修这门课.
注:本课程不计入计算机科学专业或辅修课程.

COMSC-107设计学习实验室

春天. 学分:2

在规划大学毕业后的道路时, 元认知框架可以为有意识的反思提供框架. 坐落在芬贝尔制造商 & 创新实验室, 本课程将利用实际活动来讨论影响学习的因素和策略. 例如, 在芭蕾舞裙中嵌入微控制器来制造动作感应灯,这与自我调节学习的周期相似. 没有电子或计算机科学方面的经验, 学生将学习动手教程,学习开发自己的交互式技术项目所需的基础知识.

A. 伯恩斯
备注:半学期.

comsc - 109设计工作室

秋天. 学分:4

设计师们不断创新将技术融入当今世界的方式, 从格莱美演出礼服上的蝴蝶投影,到能感知钱包不见的“智能”钱包. 最近出现了低成本, 用户友好的组件使这个新的设计世界对广泛的社区开放. 在本课程中, 学生将对市场上已有的产品进行批判性思考,并将获得创建自己设计的工具. 一系列关于电子基础知识和微控制器编程的动手研讨会将提供令人惊讶的最低水平的舒适和技术背景,以生产这些设计的原型.

适用于要求:数学科学
A. 烧伤,. St. 约翰

COMSC-112计算机科学主题问题解决

计算机科学主题:“人工智能伦理”

秋天. 学分:2

人工智能(AI)正在迅速改变我们的世界, 从我们开车的方式到我们交流的方式. 但是这些变化的伦理含义是什么呢? 在本课程中,我们将探讨人工智能带来的道德挑战和机遇. 我们将讨论数据隐私、公平、偏见、问责制和透明度等主题. 我们还将研究人工智能在社会中的作用及其对我们的价值观和生活方式的潜在影响.

适用于要求:不满足分发要求
D. Uwacu
提示:不需要事先了解人工智能.

COMSC-120

今年没有计划. 学分:1

介绍编程语言R以及如何使用它进行统计分析和数据可视化. 学生将学习如何编写基本的R程序来读取、写入和操作数据. 他们将使用R函数执行常见的统计分析,并学习如何使用图形和图表显示结果. 通过一系列的项目, 学生将获得编写自己的函数的经验, 学习如何使用R文档以及如何扩展他们自己的语言知识.

适用于要求:不满足分发要求
这个部门
注:信用/无信用等级.

面向对象程序设计

今年没有计划. 学分:1

本课程将向有Python编程基础并有兴趣继续学习的学生介绍面向对象编程 comsc - 205 数据结构. 它涵盖了类、对象、方法和子类型.

适用于要求:不满足分发要求
这个部门
Prereq: comsc - 150 或者计算机科学分班测试.

comsc - 122 Java编程语言

今年没有计划. 学分:1

本课程将向已经具备另一种面向对象编程语言编程能力的学生教授Java编程语言.

适用于要求:不满足分发要求
这个部门
Prereq: comsc - 205 py.

COMSC-132人人工程学

今年没有计划. 学分:4

工程师通过开发几乎影响我们生活方方面面的技术,每天都在改变着我们生活的世界. 在本课程中,我们将学习工程事物如何塑造我们生活的世界. 学生将以团队为基础, 实践工程设计项目, 从头脑风暴的解决方案到当代问题, 构建, 测试, 迭代设计方案. 在此过程中,学生将学习基本的编程和制作技能. 我们将一起反思工程设计的伦理, 最后对技术和社会的互动方式有了更细致的理解. 谁来决定哪些技术重要? 什么是“好的”技术解决方案,对谁来说是“好的”?

Crosslisted: phy - 132
适用于要求:数学科学
这个部门
建议:本课程没有先决条件,建议所有对工程和技术感兴趣的学生学习.
注意:强烈建议有兴趣继续学习工程Nexus的学生参加本课程.

COMSC-133主题问题解决

COMSC-133DV数据可视化:设计与感知

秋天. 学分:4

数据可视化,如图形、图表和信息图无处不在! 但是创建有效沟通的数据可视化并不是一项简单的任务. 在这门入门课程中, 学生将探索设计如何影响数据的理解方式,以及如何利用这一点为不同类型的数据制作有效的可视化. 数据处理经验, 设计, or data visualization are not expected; students will work on a series of projects which will build these skills over the semester.

适用于要求:数学科学
A. 伯恩斯

comsc - 150计算机科学入门

秋天. 学分:4

计算机科学领域概论. 向学生介绍Python编程,包括算法, 基本数据结构(列表), 字典), 以及编程技术. 不包括面向对象编程.

适用于要求:数学科学
H. 戈什
注:主修计算机科学或辅修计算机科学或数据科学专业的学生应该参加 comsc - 161 跟随本课程. 或者,学生可能希望考虑更密集的编程课程 comsc - 151.

comsc - 151计算问题解决导论

计算机科学领域的专题介绍. 利用在每个主题课程的主题焦点中发现的问题. 所有主题课程 comsc - 151 涵盖相同的概念和技能,并满足计算机科学专业和数据科学专业的要求. 这门课程是编程密集型的,包括面向对象编程的主题. 学生不妨考虑一下 comsc - 150 作为不涉及面向对象编程主题的另一个入口点.

comsc - 151 cp计算问题解决导论:“计算原理”

秋天和春天. 学分:4

向学生介绍算法、基本数据结构和编程技术. 学生通过探索来自广泛领域的问题来学习计算原理, 比如密码学, 数据分析和游戏.

适用于要求:数学科学
A. 伯恩斯,维. Uwacu
Coreq: cpl comsc - 151.

comsc - 151 ds计算问题解决入门:“大数据”

今年没有计划. 学分:4

向学生介绍算法、基本数据结构和编程技术, 专注于数据收集, 准备, 分析. 探索数据操作的编程, 数据的表示和表示, 以及处理大规模数据的道德规范.

适用于要求:数学科学
B. 勒纳
dsl Coreq: comsc - 151.

comsc - 151 hc计算问题解决导论:“人文计算”

今年没有计划. 学分:4

向学生介绍算法、基本数据结构和编程技术. 学生将探索解决人文学科中出现的问题:各种形式的文本分析, 图像处理, 动画, 声音处理.

适用于要求:数学科学
这个部门
Coreq:盐酸comsc - 151.

comsc - 151SG计算问题解决导论:“社会公益计算”

今年没有计划. 学分:4

向学生介绍算法、基本数据结构和编程技术. 包括计算机如何改善人类生活和社会的讨论, 比如改善残疾人的无障碍环境, 或者在紧急情况下帮助组织救援队.

适用于要求:数学科学
B. 勒纳
Coreq: comsc - 151 -西格里碳素集团.

计算机科学导论第2部分:面向对象编程

秋天和春天. 学分:2

本课程建立在学习的编程概念 comsc - 150,涵盖面向对象编程和介绍Java编程语言.

A. 伯恩斯
Prereq: comsc - 150 或者分班测试.
注意:学生在计算机科学151之后不能再修这门课. 刚刚开始学习计算机科学? 我们建议参加CS问题解决评估. 您可以通过Gradescope访问它,输入代码为RWG253.
备注:半学期. 的结合 comsc - 150comsc - 161 的备用先决条件路由 comsc - 205 数据结构.

数据结构

秋天和春天. 学分:4

本课程建立在计算机科学151中所学的基本编程概念的基础上, 将重点转移到数据的组织上,以提高程序的效率和简单性. 主题包括抽象数据类型和数据结构(如链表)的研究, 栈, 队列, 二叉树). 本课程是编程密集型课程,介绍Java编程语言.

适用于要求:数学科学
B. 勒纳维. 意大利广播电视公司,. St. 约翰
前提条件:以下条件之一 comsc - 151 (C及以上成绩); comsc - 161 (C及以上成绩); comsc - 150 (成绩在C或C以上)和 comsc - 121. Coreq: comsc - 205 l.
注意:已完成COMSC-201或COMSC-211课程的学生不能参加本课程.

comsc - 205 py数据结构(Python)

今年没有计划. 学分:4

本课程建立在计算机科学150和计算机科学121的基本编程概念的基础上, 将重点转移到数据的组织上,以提高程序的效率和简单性. 主题包括抽象数据类型和数据结构(如链表)的研究, 栈, 队列, 二叉树). 本课程是编程密集型课程.

适用于要求:数学科学
这个部门
Prereq: comsc - 150 (成绩C及以上)和 comsc - 121; or comsc - 151 (C级及以上).
注意事项:修读本课程的学生需要修读 comsc - 122 Java编程语言,然后继续 comsc - 225.

comsc - 221计算机系统概论

秋天和春天. 学分:4

本课程着眼于计算机和计算机系统的内部工作原理. 这是计算机体系结构的入门课程. 具体的主题包括汇编语言编程、内存和并行性. 本课程是编程密集型课程.

适用于要求:数学科学
L. Ballesteros J. 麦考利
Prereq: comsc - 201, comsc - 205, or comsc - 205 py; 和 数学- 232. Coreq: comsc - 221 l.
建议:该部门建议,但不要求,学生参加 comsc - 225 之前 comsc - 221.

软件设计与开发

秋天和春天. 学分:4

构建大型软件系统给软件开发带来了新的挑战. 适当的设计决策和编程方法可以在开发正确且可维护的软件方面产生重大影响. 在本课程中, 学生将学习用于构建正确且可维护的软件的技术和工具, 提高他们的设计技能, 写作, 调试, 测试软件. 主题包括面向对象的设计、测试、设计模式和软件体系结构. 本课程是编程密集型课程.

适用于要求:数学科学
B. 勒纳,M. Su
Prereq: comsc - 205 (成绩在C以上),或者 comsc - 205 py (C及以上成绩).
建议:已经参加过COMSC-215的学生可以不参加 comsc - 225.

COMSC-226工程机器人系统

今年没有计划. 学分:4

这个中级水平的课程介绍了机器人技术的实践介绍. 每个学生将构建和修改一个机器人由类似arduino的微控制器控制. 主题包括运动学, 逆运动学, 控制理论, 传感器, 机电一体化, 运动规划. 材料将通过每周一次的讲座和每周一次的指导实验室来提供. 作业包括实验室准备作业, 指导实验环节, 以及建立在课堂教学基础上的课外项目. 学生可以进入芬贝尔制造和创新实验室制造和展示他们的机器人.

适用于要求:数学科学
M. Su
限制:本课程仅限一年级和二年级学生.
需要教练许可.
Prereq: comsc - 150 or comsc - 151.
Advisory:使用此表格申请权限:http://tinyurl.com/comscperi

comsc - 243的话题

COMSC-243HC主题:人机交互

春天. 学分:4

人机交互(HCI)是探索人与计算机之间关系的多学科领域. 这个广泛的领域包括人们如何与技术互动等主题的研究, 设计是如何影响人们使用技术的, 以及设计真正为人们服务的新技术的方法. 在这个课堂上, 学生将学习并应用以人为本的设计原则, 采用本领域常用的研究方法, 并探索该领域的最新文献.

适用于要求:数学科学
A. 伯恩斯
Prereq: comsc - 205 (可同时进行). Prereq: comsc - 205 (可同时进行).

COMSC-243HR主题:人机交互

秋天. 学分:4

人机交互是一个跨学科的领域,它研究了一系列关于设计用于与人类交互的机器人的问题.g.(教育、辅助和服务机器人). 机器人的行为和外观如何改变人类对它的感知和与它的互动? 我们如何设计和编程自然、可靠和有效的机器人? 在本课程中, 学生学习交互式机器人的算法基础, 获得构建和评估交互式机器人的经验, 阅读并发表学术研究论文. 课堂时间分为讲座、学生报告、讨论和实践活动.

适用于要求:数学科学
H. Pon-Barry
Prereq: comsc - 205 or comsc - 205 py.

COMSC-243ST主题:搜索技术概论

今年没有计划. 学分:4

web和组织数据库中大量的非结构化和结构化数据增加了对处理大量文本的方法的需求. 这种分析有助于研究人员和企业深入了解消费者在特定环境下预计会花多少钱等问题,否则人工操作既耗费资源又耗时, 仇恨团体的兴起及其对社交媒体的影响, 或者新发现的手稿可能属于谁. 在本课程中, 向学生介绍用于获得这些见解的工具和技术, 比如Map-Reduce和情感分析, 在自然语言处理和搜索技术的背景下.g.谷歌).

适用于要求:数学科学
L. Ballesteros
Prereq: comsc - 150 or comsc - 151.
咨询:候选人? 请填写这张表格:http://forms.gle / jziK4Ka2vcZVxKYi9

COMSC-243SW主题:“计算系统研讨会”

今年没有计划. 学分:4

在Python等高级编程语言以及游戏机和智能手机等消费设备的光鲜外表下,隐藏着计算机系统的基本组成部分——硬件组件等元素, 操作系统, 数字逻辑. 本课程将使用结合硬件和软件的动手方法,作为在低水平上理解此类系统的一种方式. 学生将有机会使用树莓派电脑构建各种有形的项目,并将有机会访问芬贝尔制造商 & 创新实验室. 具体主题将涉及低级数据表示, 声音一代, 以及经典的任天堂娱乐系统.

适用于要求:数学科学
J. 麦考利
Prereq: comsc - 150 or comsc - 151.

COMSC-295独立学习

秋天和春天. 学分:1 - 4

这个部门
需要教练许可.

计算理论

春天. 学分:4

电脑的功能有什么限制吗? 这个问题的答案是否取决于你使用的是PC还是Mac? C比PASCAL更强大吗? 本研讨会通过研究几种计算模型来探讨这些问题, 说明每种模型的功能和局限性, 并将它们与计算问题和应用联系起来. 主题包括有限状态自动机, 下推自动机, 语法, 图灵机, 通用图灵机, 和可计算性.

适用于要求:数学科学
A. St. 约翰
前提条件:COMSC-201或 comsc - 205; 数学- 232.
咨询:候选人? 请填写这张表格:http://forms.gle / jziK4Ka2vcZVxKYi9

comsc - 312算法

秋天和春天. 学分:4

谷歌地图如何找到两个地点之间的最佳路线? 计算机如何帮助解码人类基因组? 这些和其他复杂的计算机应用程序的核心是重要的算法. 而算法必须专门用于某个应用程序, 有一些处理算法问题的标准方法在许多应用中都很有用. 在其他主题中, 我们探索图算法, 贪心算法, 分治法, 动态规划, 网络流. 学生们学会识别何时应用这些策略,以及评估他们设计的算法的预期运行时间成本.

适用于要求:数学科学
D. 意大利广播电视公司
前提条件:COMSC-201或 comsc - 205 or comsc - 205 py; 数学- 232.
Advisory:使用此表格申请权限:http://tinyurl.com/comscperi

COMSC-316开发创新软件

春天. 学分:4

厌倦了编写没人用的程序? 那么,这门课就是为你准备的. 许多人对软件提出了新颖的想法, 但缺乏开发软件的资源或能力. 学生将运用他们的编程技能,根据客户的要求开发和交付软件. 学生将学习与客户合作所需的关键沟通技巧, 与同学团队合作, 并体验从需求引出到交付的软件生命周期. 学生将综合先前课程中所学的许多主题,并探索完成特定项目所需的新技术. 编程的.

适用于要求:数学科学
B. 勒纳
先决条件:COMSC-215或 comsc - 225.

comsc - 322操作系统

秋天和春天. 学分:4

介绍协调使用计算机资源所涉及的问题. 主题包括操作系统的演变, 内存管理, 虚拟内存, 资源调度, 多道程序设计, 死锁, 并发进程, 保护, 设计原则. 课程重点:理解操作系统设计对你运行和编写的程序的影响.e.,在安全、性能等方面.). 本课程是编程密集型课程.

适用于要求:数学科学
B. 勒纳 J. 麦考利
Prereq: comsc - 221,或COMSC-211或 comsc - 225.

COMSC-334人工智能

今年没有计划. 学分:4

人工智能, 作为一个领域, 从最初的科幻小说发展成为计算机科学中最广泛的领域之一, 涵盖了非常广泛的主题. 这些主题之间的一个共同线索是“我们如何构建显示逻辑和理性的计算机系统”?或者更确切地说,“我们如何构建能够智能地解决问题而不诉诸暴力的系统??我们将在这门课程中涉及几个主要话题, 最值得注意的是搜索, 逻辑推理, 计划以及游戏/理论, 不确定性推理, 图形模型. 本课程是编程密集型课程.

适用于要求:数学科学
L. Ballesteros
需要教练许可.
Prereq: comsc - 225数学- 232.
Advisory:通过此表格申请权限:http://forms.gle / nar9XSGTDrjpbZEL7

COMSC-335机器学习

秋天. 学分:4

奈飞公司是如何了解一个人喜欢什么电影的? 计算机如何读取包裹上手写的地址,或识别图像中的人脸? 机器学习是计算机编程的实践,通过经验来学习和改进, 它在科技领域变得越来越普遍. 本课程将涵盖数学基础, 算法, 以及使计算机能够学习的实践. 主题将包括监督学习, 无监督学习, 评价方法, 和贝叶斯概率建模. 学生将学习MATLAB或Python编程,并应用课程技能来解决现实世界的预测和模式识别问题. 编程的.

适用于要求:数学科学
D. 意大利广播电视公司
预考:某一科成绩达到C或C以上 comsc - 205 or comsc - 205 py 或comsc - 211, 数学- 232,以及微积分课程(数学- 101, 数学- 102, or 数学- 203).
咨询:需要最后300级选修课的计算机科学专业大四学生和数据科学专业大四学生优先.

comsc - 341的话题

COMSC-341CC主题:编译器设计

今年没有计划. 学分:4

编译器和解释器设计和实现的原则和实践. Will cover the st年龄s of the compilation 和 execution process: lexical 分析; parsing; symbol tables; type systems; scope; semantic 分析; intermediate representations; run-time environments 和 interpreters; code generation; program 分析 和 optimization; 和 garb年龄 collection. 学生将构建一个完整的编译器.

适用于要求:数学科学
这个部门
需要教练许可.
Prereq: comsc - 221, comsc - 225, comsc - 312.

COMSC-341CV主题:计算机视觉

秋天. 学分:4

本课程介绍了图像分析和从图像数据的3D解释. 它揭开了像滤波这样的图像处理标准技术背后的奥秘, 边缘检测, 立体视觉, 流, 等. 数学爱好者们,这门课是为你们准备的! 整个学期, 每个学生将通过编程作业开发自己的计算机视觉库. 此外, 学生将学习到新的, 先进的基于机器学习的计算机视觉算法.

适用于要求:数学科学
Y. Su
Prereq: comsc - 205 (or comsc - 205 py), 数学- 211,以及微积分(数学- 101, 数学- 102, or 数学- 203),成绩均在C或以上.

主题:“游戏编程”

今年没有计划. 学分:4

电子游戏不仅好玩,编程也很有趣,很有挑战性, 包括对其他类型的系统编程有用的元素. 它们结合了图形, audio, 和动画, 必须为相对复杂的系统建模吗, 而且往往对时机有比较严格的要求. 在这个过程中,我们通过实现一些我们自己的探索游戏实现背后的技术. 本课程是编程(和游戏)密集型课程.

适用于要求:数学科学
J. 麦考利
需要教练许可.
Prereq: comsc - 225 ,要么 数学- 100 或通过数学分班考试或完成更高水平的数学课程表明的同等水平.
Advisory:使用此表格申请权限:http://tinyurl.com/comscperi

主题:“自然语言处理”

今年没有计划. 学分:4

本课程介绍自然语言处理, 使计算机处理和理解人类语言的学科. 我们将学习自动文本和语音分析和理解的基本技术, 用语言学的见解. 学生将得到实践实践的计算算法, 阅读学术研究文章,设计并完成一个独立的期末项目.

适用于要求:数学科学
H. Pon-Barry
需要教练许可.
Prereq: comsc - 225, 数学- 232,以及微积分课程(数学- 101, 数学- 102, or 数学- 203).
Advisory:使用此表格申请权限:http://tinyurl.com/comscperi

COMSC-341NP主题:“网络架构和协议简介”

今年没有计划. 学分:4

本课程是一门以互联网为重点的计算机网络入门课程. 在高层, 我们将强调那些有助于互联网成功发展的概念和原则,这些概念和原则使互联网从最初的不起眼发展成为世界上一半以上人口使用的系统. 在低水平上, 我们将调查技术, 构成网络基础的技术和协议, 以及建立在这些网络之上的关键协议. 具体的主题包括分层, 路由, 寻址, 可靠的交付, 拥塞控制, DNS, HTTP, 和其他人.

适用于要求:数学科学
J. 麦考利
Prereq: comsc - 221comsc - 312.
咨询:候选人? 请填写这张表格:http://forms.gle / jziK4Ka2vcZVxKYi9

COMSC-341RP主题:机器人规划算法

春天. 学分:4

机器人规划是开发自主机器人的一项基本技能. 本课程将向学生介绍机器人规划的基本概念和算法. 学生将学习如何运用他们在数据结构中学到的概念来实现和分析流行的规划算法的性能. 学生还将了解机器人导航领域的进步和差距, 操纵, 和协作.

适用于要求:数学科学
D. Uwacu
Prereq: comsc - 205 (可同时进行). Prereq: comsc - 205 (可同时进行).
建议:本课程非常适合对开发自主机器人感兴趣的学生. 对于有兴趣了解机器人规划研究的最新进展的学生来说,这也是一门很好的课程.

COMSC-341TE主题:“数据科学的文本技术”

秋天. 学分:4

本课程的重点是文本分析和技术. 我们着眼于处理大量非结构化、半结构化和结构化数据的挑战. 在这种情况下, 我们探讨了统计分析应用于搜索等方面的一些方法, 分类e.g. 垃圾邮件过滤,推荐系统,剽窃检测和隐藏消息查找.

适用于要求:数学科学
L. Ballesteros
Prereq: comsc - 205 或comsc - 211.

COMSC-343编程语言设计与实现

今年没有计划. 学分:4

有没有想过为什么Java程序中有这么多分号, 或者一门语言不是面向对象的意味着什么? 在本课程中, 我们将探讨与编程语言的设计和实现相关的问题. 在这个过程中,我们会发现这些问题的答案,甚至更多. 主题将包括语法, 语义, 对语言的运行时支持以及函数式编程的介绍.

适用于要求:数学科学
B. 勒纳
Prereq: comsc - 225.
咨询:候选人? 请填写这张表格:http://forms.gle / jziK4Ka2vcZVxKYi9

COMSC-395独立研究

秋天和春天. 学分:1 - 8

这个部门
需要教练许可.

皇冠集团app下载

计算机科学系教学生如何检查, 在一个极端, 核心问题是什么可以计算,什么可以计算, 算法和计算机的结合能否带来智能.

下一个步骤

申请Mount Holyoke大学

Mount Holyoke寻求求知欲强的申请人,他们了解文科教育的价值,并且热爱学习. 作为一所性别多元化的女子学院, 我们欢迎女性申请, 跨性别和非双性恋学生.