Fall 2024

CMPSC 350: Computational Narrative

A study of the craft and deployment of procedurally-generated digital narratives, placing an emphasis on using data sources and computational methods as storytelling media. Students focus on critical, close reading of professional and student works while completing a single long-form work of their own. Topics include natural language processing (NLP), procedural illustration, computational constraint, and the development of conceptual documentary works.

Course Organization

Spring 2024

CMPSC 304: Robotic Agents

A study of the design and implementation of autonomous robotic systems that individually and cooperatively complete complex tasks. In addition to examining techniques for robot navigation, coordination, and manipulation, students learn how to apply the field’s technologies to address the challenges facing local and global communities. Participating in hands-on activities that often require teamwork, students develop and evaluate several autonomous robot systems, while also reflecting on the civic issues surrounding the use of these systems. During a weekly laboratory session students use industry-grade technology to complete projects, reporting on their results through both written documents and oral presentations.

Course Organization

Robotics Enrichment Program

Fall 2023

Robotics Enrichment Program

CMPSC 100: Computational Expression

An introduction to the principles of computer science with an emphasis on creative expression through the medium of a programming language. Participating in hands-on activities that often require teamwork, students learn the computational structures needed to solve problems and produce computational artifacts which address these problems in real-world contexts. Students also learn how to organize and document a program’s source code so that it effectively communicates with the intended users and maintainers. Additionally, the introduction includes an overview of the discipline of computer science and computational thinking. During a weekly laboratory session students use industry-grade technology to complete projects, reporting on their results through both written documents and oral presentations. Students are invited to use their own departmentally approved laptop in this course; a limited number of laptops are available for use during class and lab sessions.

Course Organization

FS 101: Academic Discourse I

An exploration of oral and written communication with a focus on description and summary. The topical material covered in the seminar varies from section to section and year to year. All first-year students take Academic Discourse I during the fall semester.

Topic Description

An exploration of various texts produced by Artificial Intelligence technology. Students learn about natural language tools, including the companies and business models behind them, and investigate the types of texts these tools are able to produce. We also examine misuses, ethical issues, and existing and work-in-progress policies surrounding these technologies. Coursework emphasizes the development of effective oral and written communication skills with a focus on description, summary, and critical thinking.

Spring 2023

Enrichment Program

CMPSC 201: Programming Languages

A study of the fundamental concepts that arise in different programming language paradigms. Students learn how programming languages are designed and implemented, and how these factors affect the overall usability, performance, and effectiveness of computer software. Participating in hands-on activities that often require teamwork, students gain experience in leveraging the styles and features of programming languages to implement and evaluate correct and efficient computer software. During a weekly laboratory session, students use state-of-the-art technology to complete projects, reporting on their results through both written documents and oral presentations. Students are invited to use their own departmentally approved laptop in this course; a limited number of laptops are available for use during class and lab sessions.

Course Organization

CMPSC 310: Artificial Intelligence

A study of the design and implementation of intelligent computer systems that can learn, plan, and solve problems autonomously. In addition to examining techniques for designing intelligent software agents, students investigate the social, political, and ethical implications of intelligent systems. Through hands-on activities that often require team-work, students explore the application of artificial intelligence methods in areas such as computer vision, natural language processing, and video game development. During a weekly laboratory session students use state-of-the-art technology to complete projects, reporting on their results through both written documents and oral presentations. Students are invited to use their own departmentally approved laptop in this course; a limited number of laptops are available for use during class and lab sessions.

Course Organization

Fall 2022

CMPSC 203: Software Engineering

A human-centric study of the principles used during the engineering of high-quality software systems. In addition to examining the human behaviors and social processes undergirding software development methodologies, students participate in teams tasked with designing, developing, and delivering a significant software application for a customer. During a weekly laboratory session, students use state-of-the-art software engineering, management, and communication tools to complete projects, reporting on their results through both written documents and oral presentations. Students are invited to use their own departmentally approved laptop in this course; a limited number of laptops are available for use during class and lab sessions.

Course Organization

CMPSC 311: Robotic Agents

A study of the design and implementation of autonomous software agents and robotic systems that cooperatively complete complex tasks. In addition to examining techniques for large-scale coordination and group-based decision-making, students learn how to apply the field’s technologies to address the challenges facing local and global communities. Participating in hands-on activities that often require teamwork, students develop and evaluate several multi-agent or multi-robot systems, while also reflecting on the civic issues surrounding the use of these systems. During a weekly laboratory session students use state-of-the-art technology to complete projects, reporting on their results through both written documents and oral presentations. Students are invited to use their own departmentally approved laptop in this course; a limited number of laptops are available for use during class and lab sessions.

Course Organization