Credits: 3
Duration: 15 Weeks
Dates: Tue
Analytical and theoretical concepts required grasping the aesthetic development of electronic and computer music compositions. The course emphasizes analysis and historical understanding of techniques of production and compositional ideas.
Music Technology (Undergraduate)
3 credits – 15 Weeks
Credits: 2
Duration: 15 Weeks
Dates: Wed
Credits: 2
Duration: 15 Weeks
Dates: Wed,Thu
Credits: 2
Duration: 15 Weeks
Dates: Wed,Thu,Mon
Credits: 2
Duration: 15 Weeks
Dates: Wed,Thu,Mon
Credits: 2
Duration: 15 Weeks
Dates: Wed,Thu,Mon
Through weekly performing, readings and discussions, students study the conceptualization and production of live electronics ensemble performance. Students create new works, improvisations, and rehearse compositions from a growing repertoire of electronic ensemble compositions, to be performed at a semester’s end public concert.
Music Technology (Undergraduate)
2 credits – 15 Weeks
Credits: 3
Duration: 15 Weeks
Dates: Wed
Credits: 3
Duration: 15 Weeks
Dates: Wed
Credits: 3
Duration: 15 Weeks
Dates: Wed,Tue
Credits: 3
Duration: 15 Weeks
Dates: Wed,Tue
This course examines Modern Cryptography from a both theoretical and applied perspective, with emphasis on “provable security” and “application case studies”. The course looks particularly at cryptographic primitives that are building blocks of various cryptographic applications. The course studies notions of security for a given cryptographic primitive, its various constructions and respective security analysis based on the security notion. The cryptographic primitives covered include pseudorandom functions, symmetric encryption (block ciphers), hash functions and random oracles, message authentication codes, asymmetric encryption, digital signatures and authenticated key exchange. The course covers how to build provably secure cryptographic protocols (e.g., secure message transmission, identification schemes, secure function evaluation, etc.), and various number-theoretic assumptions upon which cryptography is based. Also covered: implementation issues (e.g., key lengths, key management, standards, etc.) and, as application case studies, a number of real-life scenarios currently using solutions from modern cryptography. | Prerequisite: Graduate standing.
Computer Science (Graduate)
3 credits – 15 Weeks
Credits: 3
Duration: 15 Weeks
Dates: Tue,Thu
Credits: 3
Duration: 15 Weeks
Dates: Tue,Thu
Credits: 3
Duration: 15 Weeks
Dates: Tue,Thu,Tue
This course addresses the design and implementation of secure applications. Concentration is on writing software programs that make it difficult for intruders to exploit security holes. The course emphasizes writing secure distributed programs in Java. The security ramifications of class, field and method visibility are emphasized. | Knowledge of Information, Security and Privacy equivalent to CS-GY 6813. Prerequisite: Graduate standing
Computer Science (Graduate)
3 credits – 15 Weeks
Credits: 3
Duration: 15 Weeks
Dates: Wed
Credits: 3
Duration: 15 Weeks
Dates: Wed
Credits: 3
Duration: 15 Weeks
Dates: Wed
This course is an introduction to the field of machine learning, covering fundamental techniques for classification, regression, dimensionality reduction, clustering, and model selection. A broad range of algorithms will be covered, such as linear and logistic regression, neural networks, deep learning, support vector machines, tree-based methods, expectation maximization, and principal components analysis. The course will include hands-on exercises with real data from different application areas (e.g. text, audio, images). Students will learn to train and validate machine learning models and analyze their performance. | Knowledge of undergraduate level probability and statistics, linear algebra, and multi-variable calculus. Prerequisite: Graduate standing.
Computer Science (Graduate)
3 credits – 15 Weeks
Credits: 3
Duration: 15 Weeks
Dates: Wed
Credits: 3
Duration: 15 Weeks
Dates: Wed
Credits: 3
Duration: 15 Weeks
Dates: Wed
Big Data requires the storage, organization, and processing of data at a scale and efficiency that go well beyond the capabilities of conventional information technologies. In this course, we will study the state of art in big data management: we will learn about algorithms, techniques and tools needed to support big data processing. In addition, we will examine real applications that require massive data analysis and how they can be implemented on Big Data platforms. The course will consist of lectures based both on textbook material and scientific papers. It will include programming assignments that will provide students with hands-on experience on building data-intensive applications using existing Big Data platforms, including Amazon AWS. Besides lectures given by the instructor, we will also have guest lectures by experts in some of the topics we will cover. Students should have experience in programming: Java, C, C , Python, or similar languages, equivalent to two introductory courses in programming, such as “Introduction to Programming” and “Data Structures and Algorithms. | Knowledge of Python. Prerequisite: Graduate Standing.
Computer Science (Graduate)
3 credits – 15 Weeks
Credits: 3
Duration: 15 Weeks
Dates: Wed
This course is about experimental game design. Design in this context pertains to every aspect of the game, and these can be broadly characterized as the game system, control, visuals, audio, and resulting theme. We will explore these aspects through the creation of a few very focused game prototypes using a variety of contemporary game engines and frameworks, high-level programming languages, and physical materials. This will allow us to obtain a better understanding of what makes games appealing, and how game mechanics, systems, and a variety of player experiences can be designed and iteratively improved by means of rapid prototyping and play-testing. The course combines the technology, design, and philosophy in support of game creation, as well as the real-world implementation and design challenges faced by practicing game designers. Students will learn design guidelines and principles by which games can be conceived, prototyped, and fully developed within a one-semester course, and will create a game from start to finish. The course is a lot of (team)work, but it’s also a lot of fun. Programming skills are helpful, but not a hard requirement. Artistic skills, or a willingness to learn them are a plus. | Prerequisite: (Graduate Standing AND CS-GY 6533) for SoE students OR (OART-UT 1600 and OART-UT 1605) for Game Center MFA students OR instructor permission.
Computer Science (Graduate)
3 credits – 15 Weeks
Credits: 3
Duration: 15 Weeks
Dates: Mon
Credits: 3
Duration: 15 Weeks
Dates: Mon,Sat
Credits: 3
Duration: 15 Weeks
Dates: Mon,Sat
Credits: 3
Duration: 15 Weeks
Dates: Mon,Sat,Wed
This course takes a top-down approach to computer networking. After an overview of computer networks and the Internet, the course covers the application layer, transport layer, network layer and link layers. Topics at the application layer include client-server architectures, P2P architectures, DNS and HTTP and Web applications. Topics at the transport layer include multiplexing, connectionless transport and UDP, principles or reliable data transfer, connection-oriented transport and TCP and TCP congestion control. Topics at the network layer include forwarding, router architecture, the IP protocol and routing protocols including OSPF and BGP. Topics at the link layer include multiple-access protocols, ALOHA, CSMA/CD, Ethernet, CSMA/CA, wireless 802.11 networks and linklayer switches. The course includes simple quantitative delay and throughput modeling, socket programming and network application development and Ethereal labs. | Knowledge of Python and/or C. Prerequisite: Graduate standing.
Computer Science (Graduate)
3 credits – 15 Weeks
Credits: 4
Duration: 15 Weeks
Dates: Wed
This course will combine a history of video art and experimental film with practical training in the use of live video performance art technology. Students will explore new ways to create and edit films and videos using VJ software, projections, and multi-channel video surfaces. Workshops will demonstrate concepts and software that can be integrated into the creative process of video performance art and video art installations. COURSE OBJECTIVES At the completion of this course, the student will be able to: Draw inspiration from the recent history of incredible video and multi-media artists. Develop an understanding of audio and visual hardware used by VJ’s. Use live VJ software to manipulate digital media in real time to create Video Performance Art. Use Projection Mapping techniques to project video art onto 3D surfaces. Create original video performance art, video installations, and other performance pieces. Utilize skills to make video art in the professional market.
Open Arts Curriculum (Graduate)
4 credits – 15 Weeks
Credits: 4
Duration: 14 Weeks
Dates: Fri
Libraries like TensorFlow.js and ml5.js unlocked new opportunities for interactive machine learning projects in the browser. The goal of this class is to learn and understand common machine learning techniques and apply them to generate creative outputs in the browser. This class will start with running models in the browser using high-level APIs from ml5.js, as well as explore the Layer APIs from TensorFlow.js to train models using custom data. This class will also cover preparing the dataset for training models. At the completion of this course, students will have a better understanding of a few machine learning models, how do they work, how to train these models, and their use case to creative projects. Students will also be able to create interactive ML web applications with pre-trained models or their own models. Prospective students are expected to have taken an ICM (Introduction to Computational Media) course, or have an equivalent programming experience with JavaScript, HTML, CSS.
Interactive Telecommunications (Graduate)
4 credits – 14 Weeks