Computational Machine Learning

An introduction to machine learning from a programming perspective. Students will develop an understanding of the basic machine learning concepts (including underfitting/overfitting, measures of model complexity, training/test set splitting, and cross validation), but with an explicit focus on machine learning systems design (including evaluating algorithmic complexity and development of programming architecture) and on machine learning at scale.

Modeling for Machine Learning

Offered as SDS 293 and CSC 293. In the era of "big data," statistical models are becoming increasingly sophisticated. This course begins with linear regression models and introduces students to a variety of techniques for learning from data, as well as principled methods for assessing and comparing models.

Discrete & Comp Geom

Topics include the core of the field: polygons, convex hulls, triangulations and Voronoi diagrams. Beyond this core, curves and surfaces, and computational topology are covered. Throughout, a dual emphasis is maintained on mathematical proofs and efficient algorithms. Students have a choice of concentrating their course work in mathematics or toward computer science. Prerequisite for MTH major credit: MTH 153, MTH 111 recommended. Prerequisite for CSC major credit: CSC 111.

Intro to Operating Systems

An introduction to the functions of an operating system and their underlying implementation. Topics include file systems, CPU and memory management, concurrent communicating processes, deadlock, and access and protection issues. Programming projects will implement and explore algorithms related to several of these topics. Prerequisite: CSC 231. Enrollment limited to 40.

Applied Algorithms

Covers advanced data structures and algorithms with an emphasis on object-oriented implementation, comparative efficiency analysis and applications. A variety of algorithmic approaches will be discussed (divide-and-conquer, dynamic programming, greedy algorithms, graph traversal). We'll go beyond classical searching and sorting to graphs and networks and other applied problems, as well as a selection of NP-hard ones. Prerequisites: CSC 111, CSC 212, MTH 153 (Discrete), MTH 111 (Calculus I) or other math course beyond it.

Microprocess&Assembly Lang

An introduction to the architecture of the Intel Pentium class processor and its assembly language in the Linux environment. Students write programs in assembly and explore the architectural features of the Pentium, including its use of the memory, the data formats used to represent information, the implementation of high-level language constructs, integer and floating-point arithmetic, and how the processor deals with I/O devices and interrupts. Prerequisite: 212 or permission of the instructor.

Intro to Software Engineering

Introduction to software engineering theory and methodologies, with an emphasis on rapid prototyping and development. This course is a survey of topics: requirements elicitation and specification; prototyping and infrastructure; basic project management; architecture and design patterns; and verification and testing. Students will work in teams on a significant design and development project. Prerequisite: CSC 212. (E)

Program w/ Data Structures

Explores elementary data structures (linked lists, stacks, queues, trees, graphs) and algorithms (searching, sorting) in a variety of contexts, including event-driven applications with a graphical user interface. Emphasizes object-oriented programming throughout, using the Java programming language. Prerequisite: CSC 111.

Modeling in the Sciences

Offered CSC 205 and MTH 205. This course integrates the use of mathematics and computers for modeling various phenomena drawn from the natural and social sciences. Scientific topics, organized as case studies, span a wide range of systems at all scales, with special emphasis on the life sciences. Mathematical tools include data analysis, discrete and continuous dynamical systems and discrete geometry. This is a project-based course and provides elementary training in programming using Mathematica. Prerequisites: MTH 112 or MTH 114. CSC 111 recommended. Enrollment limited to 20.
Subscribe to