Here is where additional course information appears, especially regarding special topics courses (CS 525 that do not appear in the course catalog.
CS 525-T. SPECIAL TOPICS: Cloud Computing (SPRING 2018)
Modern data centers are massive warehouses that host hundreds of thousands of physical servers. Those large amount of interconnected servers provide the infrastructure foundations for today’s evolving cloud computing platforms. Cloud computing, with its clear economic benefits and flexible resource offerings, has gained increasing popularities over the past decade. Today’s cloud platforms host a plethora of services, including traditional web service, mobile backend, and big data analytic, and allow customers the freedom to deploy full stack applications in the cloud. In this course, we will discuss recent research on cloud computing and data centers, with the goals of better understanding and exploring the key challenges faced by the large scale data centers and cloud platforms. The class will cover topics such as the use of virtualization in data centers, automated resource management, data center reliability, energy efficiency, and security in shared cloud environments. The course will combine reading/discussing research papers with a course-long research project in the area of cloud computing. Students will pick a research topic to explore in their project with the guidance from the professor.
CS 525-R. SPECIAL TOPICS: Swarm Intelligence (SPRING 2018)
This course will cover a wide range of topics in swarm intelligence, including mathematical, computational, and biological aspects. The course is organized in three parts. In the first part, the students will learn about complex systems and the basic concepts of self-organization, such as positive and negative feedback, symmetry breaking, and emergence. The instructor will illustrate a diverse collection of self-organized systems in nature, finance, and technology that concretize these concepts. The second part covers optimization algorithms inspired by swarm intelligence, namely ant colony optimization and particle swarm optimization. The third and final part is dedicated to swarm robotics, and will cover common swarm algorithms for task allocation, collective motion, and collective decision-making. The course will blend theory and practice, challenging the students to learn by implementing the algorithms discussed in class. The final project will involve working on a research problem in swarm robotics, and the final deliverable will include a demo and a research paper.
CS 525-W. SPECIAL TOPICS: Information Retrieval & Social Web (SPRING 2018)
This course introduces theory, design, and implementation of text-based and Web-based information retrieval systems. Students learn components and operation of search engines providing search services. Components include web crawlers, indexers, link-based ranking algorithms, and recommender systems. This course also introduce research topics in social computing such as social media, crowdfunding, privacy and security issues related to social systems. Students will conduct a team-based project.
CS 525-N. SPECIAL TOPICS: Deep Neural Networks (SPRING 2017)
This course will offer a historical perspective on the mathematical, computational, and biological underpinnings of modern ("deep") neural networks. Students will learn about the most prominent network architectures from the 1950s through today -- including perceptrons, multi-layer feed-forward neural networks, convolutional neural networks (CNNs), and recurrent neural networks (RNNs) -- as well as optimization and regularization techniques used to train them -- including back-propagation, stochastic gradient descent, dropout, pooling, batch normalization, etc. Connections to related machine learning techniques and algorithms, such as probabilistic graphical models and variational inference, will be explored. The course will consist of both theory and practice, and students will have the opportunity to train neural networks for a wide range of possible applications (e.g., object detection, facial expression recognition, handwriting analysis, natural language processing) within the domains of perception, prediction, and control. A significant portion of the coursework will consist of a final research project, as well as an accompanying research paper, that is intended to be synergistic with students' own research interests.
Prerequisites:Linear algebra, calculus, and an undergraduate or graduate machine learning course.
CS 525. SPECIAL TOPICS: Urban Networks: Methods and Analysis (SPRING 2017)
Professor: Yanhua Li
In recent years, urban infrastructures have undergone a fast expansion,
where big urban issues emerge over time, such as pollution, traffic
congestion, etc. Urban Network Analysis aims to identify and solve
various urban challenges by integrating and analyzing heterogeneous
urban network data sources, such as human mobility, transactions, power
consumption, weather, etc. This course introduces the framework of urban
network analysis, with techniques in urban sensing, data management,
data analytics, and services. This is a seminar style course, with
discussions and weekly presentations on the state-of-the-art literature.
There are two team projects involving analyzing large-scale real urban
data to tackle urban challenges.
Prerequisites: DS 501 (Introduction to Data Science) or DS 502 / MA 543 (Statistical Methods for Data Science) or DS 503 / CS 585 (Big Data Management) or an equivalent graduate level course in Data Mining, Machine Learning, or Data Management, and proficiency in a high level programming language.
CS 525-T. SPECIAL TOPICS: Theory and Practice of Computing Education: A Research Seminar (SPRING 2017)
Professor: Kathryn Fisler
Teaching intro computer science is easy, right? Show students a bunch
of constructs and programs in a currently-popular language, then tell
them to write a bunch of different programs that do something cool,
right?. A growing body of research is unpacking how people actually
learn computing, and it's a lot more subtle than most of us realize.
This seminar will cover core material on how people understand and
learn computing. We'll look at papers about learning in both novices
and experts, in a variety of contexts, on topics including but beyond
intro programming. Each student will read, present, and discuss
papers, and complete a course project (individual topics to be
determined in consultation with the instructor). Students will gain
an appreciation for the subtleties of learning and teaching about
computing, particularly as it applies to national trends around MOOCs,
K-12, and exploding interest in learning computer science both in and
out of formal schooling.
Schedule: Tues/Thurs 4 - 5:40 (ending 5pm on Tuesdays)
CS 525. SPECIAL TOPICS:Introduction to Applied Computer Science with Data Structures and Algorithms (FALL 2016)
Professor: Thierry Petit
This course an introductory graduate course teaching core computer science topics typically found in an undergraduate Computer Science curriculum, but at a graduate-level pace. It is primarily intended for students with little formal preparation in Computer Science to gain experience with fundamental Computer Science topics. The main objective of this course will be a review of programming concepts, including object programming. After this review, the focus of the course will be on data structures from the point of view of the operations performed upon the data and to apply analysis and design techniques to non-numeric algorithms that act on data structures. The data structures covered include lists, stacks, queues, trees and graphs. Projects will focus on the writing of programs to appropriately integrate data structures and algorithms for a variety of applications. Programs will be written using Python 3, a modern language popular in many scientific and engineering disciplines. Along the way, students will learn key notions that will help them to learn how to be effective in other languages. End of course will include a short introduction to Java.
This course may not be used to satisfy degree requirements for a B.S., M.S or Ph.D. degree in Computer Science or a minor in Computer Science. It may satisfy the requirements for other degree programs at the discretion of the program review committee for the particular degree.
Schedule: Aug 25 - Dec 16, Monday and Wednesday 4-5:20PM
CS 525-S. SPECIAL TOPICS:Computer Networks and Security (FALL 2016)
Professor: Scott Doremus
This course provides a comprehensive introduction to the field of computer and network security as it applies to the power transmission and distribution industry. The course has been tailored to the power industry, and deals with topics not generally covered in similar courses, such as the nature of the NERC CIP standards and how they can/should be implemented, as well as emphasis on Supervisory Control and Data Acquisition (SCADA) networks, Programmable Logic Controllers (PLCs) the Smart Grid, and similar industry-specific concerns. Security architectures and protocols and their impact on computers and networks are examined. Critical computer and network security aspects are identified and examined from the standpoints of both the user and the attacker. Computer system and network vulnerabilities are examined, and mitigating approaches are identified and evaluated. Both the principles and practice of computer and network security are introduced. The basic issues to be addressed by a computer and network security capability are explored.
CS525-T. SPECIAL TOPICS: INTERNET OF THINGS
INCLUDING WIRELESS SENSOR NETWORKS (Fall
Professor: Bob Kinicki
This course explores new emerging issues around the concept known as the Internet of Things (IoT). The course will use the current literature to investigate topics that include broader issues such as the interdependencies between the Internet of Things to current activities such as M2M (machine-to-machine) protocols, Cloud support, Big Data issues and anticipating the impact of future IoT traffic on current network infrastructure that includes cellular 4G LTE and WiFi networks. Part of the course will focus on Wireless Sensor Networks (WSNs) as they apply to IoT issues and consider current issues in the IoT community about new initiatives both academic and corporate that involve IoT topologies, networking standards, protocol stacks and security issues. Students taking the course need to have fundamental knowledge of computer networks as found in CS4516, CS513 or ECE506. While prior network programming experience will be useful, course prerequisites do not include a strong programming background.
CS 525-F. DIGITAL FORENSICS (Fall
Professor: Suzanne Mello-Stark
This course examines forensic science techniques and explores ways in which to apply them to the discovery, collection and analysis of digital evidence. Students practice extracting data from computer hardware, operating systems, networks and/or mobile devices. This class also delves into the legal considerations surrounding digital forensic investigations. Topics include studying how to document forensic procedures and providing expert testimony. This class requires students to engage in current research and a course project that further develops these themes. Students from all departments are welcome. (Prerequisites: a graduate or undergraduate course in security or equivalent experience.) (3 credits)
CS 525-B. BIOINFORMATICS OF DISEASE (Fall 2015)
Professor: Dmitry Korkin
The goal of this course is to introduce the students to the bioinformatics and data mining methods that focus on studying diseases. The course introduces basic molecular principles behind the diseases, formulate main challenges to solve, and describe in detail the computational methodology used to solve these challenges. Both, classical and state-of-the art computational methods are introduced. Three main classes of diseases are covered: Mendelian diseases, infectious diseases, and complex genetic disorders. Computational methodology covered in the course include sequence analysis, structural bioinformatics, network analysis, cell informatics, GWAS, biomedical visualization, and computational epidemiology. As a part of the course, students will be engaged in a course-long research project.
CS 525-A. INTRODUCTION TO APPLICATIONS OF CS WITH DATA
STRUCTURES AND ALGORITHMS (Fall 2015)
Professor: Thierry Petit
This is an introductory graduate course teaching core computer science topics typically found in an undergraduate Computer Science curriculum, but at a graduate-level pace. It is primarily intended for students with little formal preparation in Computer Science to gain experience with fundamental Computer Science topics.
After a review of programming concepts the focus of the course will be on data structures from the point of view of the operations performed upon the data and to apply analysis and design techniques to non-numeric algorithms that act on data structures. The data structures covered include lists, stacks, queues, trees and graphs. Projects will focus on the writing of programs to appropriately integrate data structures and algorithms for a variety of applications.
This course may not be used to satisfy degree requirements for a B.S., M.S., or Ph.D. degree in Computer Science or a minor in Computer Science. It may satisfy the requirements for other degree programs at the discretion of the program review committee for the particular degree.
CS 525-*. (Fall 2015)
This course acquaints participants with the fundamental concepts and state-of-the-art computer science research in online instructional systems. Advanced interactive instructional systems serve as tutors, as learning companions or both. This course introduces their design, the technology that powers them, the learning theories that motivate them and results from experimental evaluations. We will cover both the learning theory, and how to design and build systems consist with existing theories. The course consists of weekly presentations on current advanced literature, discussions and a term project. Prerequisite: Proficiency in a high level programming language.
CS 525-P. PRIVACY PROTECTIONS, TECHNICAL AND
OTHERWISE (Spring 2016)
Professor: Susan Landau
This course will cover privacy from a technical viewpoint, with a strong dose of law, policy, and the real world. The focus will be on technical solutions but policy and legal privacy protections will also be covered at some depth, as will how these three aspects of privacy protections interact. The course will study various privacy technologies, including cryptography (very briefly), k-anonymity, differential privacy, and data provenance. We'll consider the limitations of, and attacks on, these privacy protections, and to what extent these protections realistically solve the problems. Finally, we will consider privacy within the context of applications such as identity management. Prior knowledge of cryptography, such as ECE/CS 578, Cryptography and Data Security is not assumed, but would be a welcome complement.
DS 595/CS 525-G. Graph Mining And Network Analysis (Spring 2016)
Professor: Xiangnan Kong
This course focuses on graph mining and network analytics, exploring the leading research, applications, and methods in mining graph and network data. The course will cover a range of multidisciplinary topics, including community detection in social networks, analyzing biomedical networks, mining urban networks, searches for functional modules in biological pathways and structural analysis in chemical compounds. These topics will be pursued through independent reading, class discussion, and a final project. We are going to discuss the state-of-the-art research results and identify potential topics for graduate research in graph mining.
Prerequisites: undergraduate/graduate data mining or machine learning, programming experience.