Computer Systems Principles

Large-scale software systems like Google - deployed over a world-wide network of hundreds of thousands of computers - have become a part of our lives. These are systems success stories - they are reliable, available ("up" nearly all the time), handle an unbelievable amount of load from users around the world, yet provide virtually instantaneous results.

Artificial Intelligence

In-depth introduction to Artificial Intelligence concentrating on aspects of intelligent agent construction. Topics include: situated agents,advanced search and problem-solving techniques, principles of knowledge representation and reasoning, reasoning under uncertainty, perception and action, automated planning, and learning.

Computer Architecture

The structure of digital computers from the logic level to the system level. Topics include: the design of components such as arithmetic units; the organization of sub-systems such as the memory; the interplay between hardware and software; the von Neumann architecture and its performance enhancements such as cache memory, instruction and data pipelines, coprocessors, and parallelism.

Prerequisite for undergraduates: COMPSCI 391IB/335 with a grade of C or better.

Computer Architecture

The structure of digital computers from the logic level to the system level. Topics include: the design of components such as arithmetic units; the organization of sub-systems such as the memory; the interplay between hardware and software; the von Neumann architecture and its performance enhancements such as cache memory, instruction and data pipelines, coprocessors, and parallelism.

Prerequisite for undergraduates: COMPSCI 391IB/335 with a grade of C or better.

Intro to Computer Vision

This introductory computer vision class will address fundamental questions about getting computers to "see" like humans. We investigate questions such as -What is the role of vision in intelligence? -How are images represented in a computer? -How can we write algorithms to recognize an object? -How can humans and computers "learn to see better" from experience? We will write a number of basic computer programs to do things like recognize handwritten characters, track objects in video, and understand the structure of images.

A Networked World

The course will cover the technical foundations and use of today's communication networks, particularly the internet. It will also address key social, policy, economic, and legal aspects of these networks, their use (and abuse) and their regulation. This course covers computer science topics, but all material will be presented in a way that is accessible to an educated audience with or without a strong technical background. This course is not intended for Computer Science majors or minors; students interested with a major/minor-level treatment of this material should see COMPSCI 453.

Machine Learning (colloq)

Introduction to core machine learning models and algorithms for classification, regression, dimensionality reduction and clustering with a focus on real-world applications in a variety of computing contexts (desktop/cluster/cloud). Requires the use of Python. This course includes an honors colloquium with an exploration of the mathematical foundations of the machine learning algorithms presented in class. It will also include the presentation of more advanced models and algorithms.

ST- CreativeGameDesign&Devlpmt

In this class, we will explore, through a series of projects, the fundamental questions of game design. What are the common features of hopscotch, Skyrim, boxing, Farmville, poker, and Tic-Tac-Toe? How do you create an engrossing, challenging, vivid, or surprising environment of play? How do you determine the value of skill, chance, cooperation, and competition in game play? What effect does the social, sexual, gender, political, and economic environment of the game's creation have on the play of the game?
Subscribe to