Special topics courses provide an opportunity for in-depth study of topics not offered elsewhere and of topics of current significance.
- CIS4930 for undergraduate students
- CIS6930 for graduate students
Brief descriptions and expected prerequisites can be found below.
CIS4930/CIS6930 Collective Action Problem: A Computational Perspective (co-taught undergrad and grad sections)
Instructor: Meera Sitharam
Expected background: COP4533 Algorithm Abstraction and Design OR COT5405 Analysis of Algorithms or equivalent experience preferred, but can be substituted by fluency with mathematical proofs in Discrete Math, Linear Algebra and Asymptotic Complexity of Algorithms
Description: The Collective Action Problem is a situation/game in which all agents will be better off cooperating but fail to do so due to conflicting short term interests, insufficient trust or information, communication complexity, transaction costs or other reasons. This well-studied, but poorly understood problem, closely related to the free-rider problem, is blamed for the crippling paralysis that hinders action in the context of climate change, pandemics, voting, workplace organization, and more. The course will begin with the problem’s formalization in the social sciences by Garrett Hardin, Mancur Olson and others, with standard examples in non-cooperative game theory including the prisoners’ dillemma, tragedy of commons etc. This will followed by concepts in cooperative game theory including coalitions, fair division and coordination games, with an algorithmic perspective emphasized throughout. Less common, but relevant complexity theoretic concepts such as the basics of communication complexity will be touched upon. The course will additionally cover developments in related areas including the Agreement theorem, Byzantine Generals Problem and Distributed Ledgers, and Dynamical models of collective behavior and action. Finally, the course will attempt to arrive at an appropriate computational view of a breakthrough analysis by Elinor Ostrom and study of inequity aversion and fairness by Fehr and Rabin.
CIS4930/CIS6930 Cyber-physical Systems Security (co-taught undergrad and grad sections)
Instructor: Sara Rampazzi
Expected background: None
Description: Covers foundational concepts of cyber-physical system security. In particular, hardware and software threats and mitigation strategies of integrating sensing and actuation, AI computation, infrastructure control, and networking. Students will analyze research papers, write technical essays, present security research problems, conduct hands-on testing, and learn the challenges of building secure systems.
CIS4930/CIS6930 Probability and Computing (co-taught undergrad and grad sections)
Instructor: Thomas Shrimpton
Expected background: Undergraduate course in data structures/algorithms (e.g., COP3530)
Description: Randomness and probabilisitic analysis play a key role in modern computer science: cryptography, algorithms, networks, ML/AI, optimization, automated theorem proving, and data mining (to name just a few) all make heavy use of probabilistic methods and reasoning. This course explores the use of randomness in CS applications, and probabilistic techniques that have become essential to the design and analysis of modern algorithms and data structures. Topics include: discrete random variables, occupancy problems, Markov chains, martingales, sampling and Monte Carlo methods, tail bounds, the probabilisitic method, random graphs, entropy, error deamplification. The course explores a variety of CS applications, including randomized algorithms (e.g., skip lists) and probabilistic data structures (e.g., bloom filters) for job scheduling, load balancing, network routing; computational proof and argument systems (heavily used in blockchains); randomness extraction; shuffling algorithms and distribution shaping; sampling from large data sets; summaries of streaming data.
CIS4930 Neuroscience and AI (undergrad only)
Instructor: Arunava Banerjee
Expected background: Linear algebra, differential equations, some knowledge of biology
Description: The only embodied intelligence that we know of are animals (humans, vertebrates, insects, etc.) What do we know about the brains of these animals and how does that relate to the AI concepts that have been proposed over the years? This course will walk students thru what research in Neuroscience has uncovered about the brain.
CIS4930 Adversarial Cybersecurity Tradecraft (undergrad only)
Instructor: Joseph N. Wilson
Expected background: Computer Science student (CS, CpE)
Description: The course introduces a theory of adversarial engagement and related game theoretic concepts. It addresses the theory and associated practice through conflict principles from both offense and defense along the dimensions of deception, physical access, humanity, economy, planning, innovation, and time. Students engage in weekly exercises putting these theories into practice in adversarial competitions. Students will be able to identify and employ these concepts in both offensive and defensive cyber activities.
CIS4930 Enterprise Software Engineering Practices (undergrad only)
Instructor: Shae Esmaeili
Expected background: Recommended Course Prerequisites: CEN 3031 Intro to Software Engineering
*Students without this prereq course should be familiar with git, how to make open source contributions, agile/scrum methodologies, and developing software as part of a team.
Description: This course will introduce students to modern software engineering practices used to build software in large enterprises. Students will learn about frameworks and tools that help organizations with hundreds or even thousands of engineers collaborating to deliver software. Students will expand upon their knowledge of the Software Development Life Cycle to better understand how to contribute code to existing codebases, automate testing and deployment activities, and proactively monitor and support their software. Students will learn how to evaluate requirements from a business and customer perspective, ensuring that they contribute software that is impactful. These real-world skills will help students stand out as they pursue full-time software engineering opportunities and hit the ground running in their first industry jobs.
The course will be delivered via synchronous online sessions.
CIS6930 Data Engineering (grad only)
Instructor: Christan Grant
Expected background: None
Description: Data are the fundamental units in Artificial Intelligence (AI) and Machine Learning (ML) systems. Effectively harnessing this data is the responsibility of software engineers and data scientists. In this course, we will survey the landscape of AI/ML systems to understand how data flows through the systems. We will look at the engineer’s responsibilities for developing performant systems ethically and responsibly. Students will learn how to design, build, and evaluate data pipelines. We will cover the theoretical underpinnings of fairness and bias throughout data systems. Students will produce a comprehensive project using state-of-the-art systems that integrate best practices.
CIS4930 Intro to Competitive Programming (undergrad only)
Instructor: Rong Zhang
Expected background: COP 3530 and COT 3100 with minimum grade of B, and MAC 2234, MAC 2312, MAC 3473 or MAC 3512. MAS 3114 Computational Linear Algebra
Description: Introducing techniques for attacking and solving challenging computational problems. Topics including search, divide and conquer, dynamic programming, graph, string processing, and computational geometry.
CIS4930 Introduction to Virtual Reality (UF Online- Summer)
Instructor: Alexandre Gomes de Siqueira
Expected background: None
Description: This course explores the theory and practice necessary to develop effective immersive virtual environments. It discusses techniques for achieving real-time, dynamic generation of synthetic audio, visual, and haptic stimuli. It includes hands-on experience with head-mounted displays and other AR and VR technologies, and requires, as a final project, the design and construction of a virtual environment.
CIS6930 AI Ethics for Technology Leaders (co-listed with EGN6933)
Instructor: Sonja Schmer-Galunder
Expected background: None
Description: This course will enable future technology leaders to understand the ethical considerations of leveraging AI in professional settings. We will look at real-world scenarios where technology leaders have faced ethical challenges, assess the impact of AI systems within a global context, and learn to navigate complex ethical issues in AI, while respecting and incorporating diverse social and cultural values. By the end of the course, students will better understand AI as part of a larger socio-technical system and will be able to evaluate the impact of AI on society and individuals on a global scale.
CIS4930 Introduction to Machine Learning (Summer and Fall)
Instructor: Mohammad Al-Saad
Expected background: Proficiency in a programming language (Python) Linear Algebra, Calculus
Description: Machine learning is a specialized area within artificial intelligence focused on enabling computer programs to autonomously enhance their functionality and efficiency by acquiring (learning) experience. The primary goals of this course are to equip students with a comprehensive introduction to machine learning methods and techniques, and to delve into the investigation of research problems within machine learning and its applications, which may lead to work on a project or a dissertation. The course is intended primarily for computer science and artificial intelligence students. Additionally, students from various fields who possess a keen interest and a robust background in artificial intelligence may also find this course interesting.
CIS6930 Measurement and Learning in Networked Systems
Instructor: Shigang Chen
Expected background: CNT5106
Description: Large networked systems are often complex in their flow structures and dynamic flow interactions under the constraints of network resources. The performance of such systems critically relies on measurement and prediction of flow dynamics in real time. This course covers the fundamental theories, algorithms, data structures, and deep learning models for measurement and prediction tasks in two example systems, the Internet and vehicular road networks, in a multi-dimensional tradeoff space of performance, accuracy, privacy and efficiency.
CIS4030/6930 Advanced Learning Technology
Instructor: Xiaoyi Tian
Expected background: Programming skills (Python, R, or other) recommended
Description: This course explores how technologies can support human learning. We will cover topics such as learning science theories, personalized and adaptive learning, learning analytics and educational data mining, pedagogical agents, computer-supported collaborative learning, and interaction and interface design.