Skip to main content

Independent Work In Cs

A course that provides an opportunity for supervised individual research and study in computer science. A topic of the course must be approved by a supervising instructor and the Computer Science Director of Undergraduate Studies. May be repeated to a maximum of six credits.

Independent Work In Cs

A course that provides an opportunity for supervised individual research and study in computer science. A topic of the course must be approved by a supervising instructor and the Computer Science Director of Undergraduate Studies. May be repeated to a maximum of six credits.

Intro To Database Sys

Study of fundamental concepts behind the design, implementation and application of database systems. Brief review of entity-relationship, hierarchial and network database models and an in-depth coverage of the relational model including relatinal algebra and calculi, relational database theory, concepts in schema design and commerical database languages.

Introduction To Game Development

This course covers the basics of using game engines and similar tools to create interactive, playable artifacts for entertainment, simulation, training, etc. Topics include game design, history of games, architecture of game engines, graphics, sound, physics simulation, artificial intelligence, testing, and other related algorithms. Students will work individually or in teams to develop game-based projects. This course assumes prior programming experience and familiarity with data structures and algorithms.

Combinatorics And Graph Theory

A basic course in the theory of counting and graph theory. Topics in enumerative combinatorics may include: generating functions, compositions, partitions, Fibonacci numbers, permutations, cycle structure of permutations, permutations statistics, Stirling numbers of the first and second kind, Bell numbers, or inclusion-exclusion. Topics in graph theory may include: Eulerian and Hamiltonian cycles, matrix tree theorem, planar graphs and the 4-color theorem, chromatic polynomial, Hall's marriage theorem, stable marriage theorem, Ramsey theory, or electrical networks.

Compilers For Algor Lang

The techniques of processing, specifying, and translating high level computer languages are studied. Topics include finite state machines and lexical analysis, context-free grammars for language specification, attributed translation grammars, language parsing, and automatic generation of compilers by SLR, LALR, and other methods of analyzing context-free grammars. Other topics may include code optimization, semantics of programming languages and top-down parsing.

Machine Learning

Study of computational principles and techniques that enable software systems to improve their performance by learning from data. Focus on fundamental algorithms, mathematical models and programming techniques used in Machine Learning. Topics include: different learning settings (such as supervised, unsupervised and reinforcement learning), various learning algorithms (such as decision trees, neural networks, k-NN, boosting, SVM, k-means) and crosscutting issues of generalization, data representation, feature selection, model fitting and optimization.

Intro To Artificial Intelligence

The course covers basic techniques of artificial intelligence. The topics in this course are: search and game-playing, logic systems and automated reasoning, knowledge representation, intelligent agents, planning, reasoning under uncertainty, and declarative programming languages. The course covers both theory and practice, including programming assignments that utilize concepts covered in lectures.

Adv Comp Architecture

This course focuses on advanced computer architectures and low-level system software. Topics include RISC architectures, vector and multiprocessor architec- tures, multiprocessor memory architectures, and multiprocessor interconnection networks. Peripheral devices such as disk arrays, NICs, and video/audio devices are covered. Topics also include device drivers, interrupt processing, advanced assembly language programming techniques, assemblers, linkers, and loaders.

Subscribe to