SYS 3501: Computational Methods for AI Systems Fall 2025

Instructor: Laura Barnes (lb3dp@virginia.edu), Office Hours: Monday, 11:00 AM - 12:00 PM in Link Lab 277, Thursday, 11:00 AM - 12:00 PM on Zoom.
Instructor: Matthew L. Bolton (mlb4b@virginia.edu), Office Hours: Tuesday, 12:00 PM - 1:00 PM, and Wednesday, 11:00 AM - 12:00 PM, both in Olsson Hall 101E and on Zoom.
Teaching Assistant: Ariful Islam (xef4hb@virginia.edu),
Teaching Assistant: Yeonbin Son (ybson@virginia.edu), Office Hours: Tuesday, 4:00 PM - 6:00 PM in Olsson 103.
Teaching Assistant: Tracy Hua (njn4gb@virginia.edu), Office Hours: 1:00 PM - 2:00 PM in Olsson 111J and Wednesday, 5:00PM - 6:00PM on Zoom.
Teaching Assistant: Mia deLadurantaye (jmb4fk@virginia.edu), Office Hours: Monday, 3:30 PM - 4:45 PM in Olsson 111G and Tuesday, 11:00 AM - 12:00 PM on Zoom.
Class Time: Monday and Wednesday between 9:30AM and 10:45PM (ET) in Olsson 018.
Discussion Forum: Piazza 3501-001

Main | Class Description | Schedule | Student Evaluation | Course Policies

Basic Course Information


Course Description:

Artificial intelligence is embedded in engineered systems all around us, from personalizing our movie and music experiences to assisting with tasks like autonomous parking and smart navigation. This course demystifies the building blocks and computational methods necessary to design and evaluate AI-driven systems using a scientific, data-driven approach. We will explore fundamental questions such as: How can unstructured smartphone data be transformed into meaningful features for predicting mental health? How does an email spam filter learn to differentiate between spam and important messages? How can AI models be systematically tested, refined, and validated?

This course introduces computational methods for AI systems, with an emphasis on applying the scientific method to AI system design. Students will learn how to formulate hypotheses, collect and preprocess data, conduct exploratory analysis, and iteratively refine AI models based on empirical evaluation. Topics include data visualization, feature engineering, and supervised and unsupervised learning. Students will gain hands-on experience in R and Python, use version control tools (Git/GitHub), and leverage generative AI responsibly as a coding assistant. Additionally, the course will cover handling missing data, working with unstructured text and spatial data, and evaluating model performance through systematic experimentation. By the end of the course, students will have the skills to design, implement, and critically assess AI systems through a structured, evidence-based approach, culminating in a project-based assessment that applies these principles to real-world challenges.

Learning Objectives:
  • Apply the scientific method to AI system design, including hypothesis formulation, data collection, model evaluation, and iterative refinement.
  • Develop proficiency in programming with R and Python, understanding when to use different tools and frameworks for AI-driven applications.
  • Utilize key libraries and packages in R (tidyverse, ggplot, dplyr) and Python (numpy, scikit-learn, pandas) to analyze and visualize data.
  • Curate, clean, manipulate, and engineer features from diverse data sources, including structured and unstructured data, for AI modeling.
  • Perform exploratory data analysis (EDA) to uncover patterns, detect missing data, and assess data quality before model development.
  • Design, build, and evaluate machine learning models, applying both supervised and unsupervised learning techniques to AI system development.
  • Assess model performance systematically, using rigorous testing, validation strategies, and empirical evaluation methods.
  • Debug, test, and refine AI systems, ensuring reliability and performance through systematic experimentation.
  • Leverage GitHub for software version control and collaborative AI system development.
  • Incorporate Generative AI tools responsibly to enhance the programming and AI development process.
  • Implement an end-to-end AI system, integrating data preprocessing, model training, and evaluation in a final project-based assessment.
Prerequisites:

CS 1110 or equivalent.

Textbook:

No required textbook to purchase, but below texts will be referenced and students are encouraged to read chapters from:

Schedule


Disclaimer: The professor reserves to right to make changes to the syllabus, including weekly lab, project, and exam due dates. These changes will be announced as early as possible.

Date Topic Assignment
Wed, Aug 27th Course Intro & Starting R
Mon, Sep 1st Intro to Git & Github Release Lab 1: Data Characteristics & R Basics
Monday Sept 1st, 9:00am (ET).
Wed, Sep 3rd R Basics Assign Homework 1: R Data Camp
Mon, Sep 8th R Data Exploration & Visualization
Wed, Sep 10th Programming with LLMs as a Co-Pilot Assign Homework 2: LLM Programming
Friday, Sep 12th, 11:59pm (ET) Due Lab 1
Mon, Sep 15th R Data Exploration & Visualization Release Lab 2: R Data Exploration, Visualization & Analysis
Monday September 15th, 9:00am (ET).
Wed, Sep 17th R Data Exploration & Visualization
Mon, Sep 22nd R Data Exploration, Visualization & RMD Notebooks
Wed, Sep 24th R Data Exploration & Visualization -- In-Class Activity
Friday, Sept 26th, 11:59pm (ET) Due Lab 2
Mon, Sep 29th Coding in R with LLMs in VS Code Release Lab 3: Midterm Review R
Monday September 29th, 9:00am (ET).
Wed, Oct 1st Handling Missing Data
Mon, Oct 6th Missing Data Review
Wed, Oct 8th Midterm Review
Friday, Oct 12th, 11:59pm (ET) Due Lab 3: Midterm Review R
Mon, Oct 13th No Class -- Fall Break
Wed, Oct 15th Midterm Exam - In-Class
Mon, Oct 20th Python Introduction Assign Homework 3: Python Data Camp
Monday October 20th, 9:00am (ET).
Mon, Oct 20th Release Course Final Project
Due: Wednesday December 18th, 11:59 PM (ET).
Wed, Oct 22nd Python Programming Release Lab 4: Python Programming
Wednesday October 22nd, 9:00am (ET).
Mon, Oct 27th Python In-Class Assignment and Start Machine Learning
Wed, Oct 29th Machine Learning Concepts
Mon, Nov 3rd Machine Learning Basics
Wed, Nov 5th Feature Engineering and Model Evaluation Release Lab 5: Python ML
Wednesday Nov 5, 9:00am (ET).
Friday, Nov 7th, 11:59pm (ET) Due Lab 4
Mon, Nov 10th Machine Learning Algorithms
Wed, Nov 12th Python ML - Coding Session
Mon, Nov 17th In-Class Activity - Kaggle Competition
Wed, Nov 19th Python Text Mining
Friday, Nov 21st, 11:59pm (ET) Due Lab 5
Mon, Nov 24th Project Consulting Day Release Lab 6: Final Exam Review (Bonus)
Monday December 1st, 9:00am (ET).
Wed, Nov 26th No Class -- Thanksgiving
Mon, Dec 1st Course Recap & Project Work
Wed, Dec 3rd Course Recap & Project Work
Mon, Dec 8th Final Exam - In-Class Due Lab 6: Final Exam Review
Monday December 8th, 9:00am (ET).
Friday, Dec 19th, 11:59pm (ET) Due Course Project

Student Evaluation and Assessment


Grading:

  • Labs: 15%
  • Hands-On Activities: 10%
  • Homework: 20%
  • Mini Exams (2): 30%
  • Course Project: 25%
  • Class Participation: +% (extra) -- includes in-class participation + Piazza.

Labs:

Laboratory assignments (lab quizzes) will be posted on the course Canvas site (via the Quizzes feature) on a roughly bi-weekly basis (typically Fridays). You will generally have about two weeks to complete each lab. These assignments provide hands-on exercises in R and Python programming, along with conceptual questions that supplement class material and form the foundation for course projects. Labs are open-resource: you may consult textbooks, online references, and generative AI tools, provided your use fully complies with the course policy on generative AI. This includes properly endorsing, documenting, and crediting your use of any generative AI for labs.

While there is no time limit for these assignments, they are designed not to take more than an hour. Laboratory work is excellent preparation for exams and for applying analysis skills under real-world time constraints. Important: the generative AI policy for labs is not the same as for exams. While generative AI may be used for labs in accordance with the course policy, exams must be completed without the use of generative AI or other online resources. For exams, you may only use permitted materials such as your own course notes and code examples provided in class.

Hands-On Activities:

Hands-on activities will be used throughout the course to allow you to practice the methods covered in class, recognize opportunities to apply them in your own work, and discover their shortcomings. Students will submit their activity on Canvas for credit.

Homework:

The class will have homework assignments for some topics. While these are individual submissions, students can collaborate as long as the submitted work is their own. For these exercises, students will typically submit a PDF and their source code on Canvas and GitHub.

Exams:

The two exams are based on classroom material and discussions, assigned readings, and laboratory assignments. Each exam will include a closed-resource section with short-answer questions, where no outside materials are allowed, and an open-resource section requiring analytical problem-solving, where you may use your own course notes and code examples but strictly prohibits the use of generative AI tools or other online resources . The Midterm will cover R and conceptual material from the first half of the course, while the Final will be comprehensive with respect to conceptual material and focus on Python.

Course Project:

The course project will be a detailed data analysis of a topic and dataset of your choosing using Python and shared and usable by others on GitHub. We encourage you to do something related to your own interests and are happy to work with you in selecting a data source and defining a project. You must submit your topic description and data sources for your final project at the specified date on Canvas. In your final project, you must show competence in a subset of topics discussed in the class. Project deliverables are due on the last day of course. More information will be available at the midpoint in the semester.

Course Policies


Submission and Late Submission Policy:

On the day an assignment is due, you must submit an electronic copy in pdf (NOT doc or docx, etc.) along with source code as instructed on the Canvas site and pledge your submission. No late assignments will be accepted in this class, unless the student has procured special accommodations for warranted circumstances.

Illness:

We try to create a safe environment, not only for our students, but also for our faculty and our staff. To that end, please stay home or in your dorm room if you are ill with or are symptomatic for any communicable disease. I would rather you stay home and work something out with me for making up work or taking an exam than for an illness to spread through the class. If you believe you are sick, please contact Student Health for appropriate treatment or testing.

Religious Accommodations:

It is the University's long-standing policy and practice to reasonably accommodate students so that they do not experience an adverse academic consequence when sincerely held religious beliefs or observances conflict with academic requirements.

Students who wish to request academic accommodation for a religious observance should submit their request to us by private message on Piazza as far in advance as possible. Students who have questions or concerns about academic accommodations for religious observance or religious beliefs may contact the University's Office for Equal Opportunity and Civil Rights (EOCR) at UVAEOCR@virginia.edu or 434-924-3200.

Accessibility Statement:

It is my goal to create a learning experience that is as accessible as possible. If you anticipate any issues related to the format, materials, or requirements of this course, please meet with me outside of class so we can explore potential options. Students with disabilities may also wish to work with the Student Disability Access Center (SDAC) to discuss a range of options to removing barriers in this course, including official accommodations. We are fortunate to have an SDAC advisor, Courtney MacMasters, physically located in Engineering. You may email her at sdac.studenthealth.virginia.edu. If you have already been approved for accommodations through SDAC, please send me your accommodation letter and meet with me so we can develop an implementation plan together.

Academic Integrity Statement:

"The School of Engineering and Applied Science relies upon and cherishes its community of trust. We firmly endorse, uphold, and embrace the University's Honor principle that students will not lie, cheat, or steal, nor shall they tolerate those who do. We recognize that even one honor infraction can destroy an exemplary reputation that has taken years to build. Acting in a manner consistent with the principles of honor will benefit every member of the community both while enrolled in the Engineering School and in the future. Students are expected to be familiar with the university honor code, including the section on academic fraud."

In summary, if assignments are individual then no two students should submit the same source code -- any overlap in source code of sufficient similarity will be potentially flagged as failure to abide to the Honor Code. You can discuss, you can share resources, you can talk about the assignment but not share code as this would potentially incur on an honor code violation. Regardless of circumstances we will assume that any source code, text, or images submitted alongside reports or projects are of the authorship of the individual students unless otherwise explicitly stated through appropriate means. Any missing information regarding sources will be regarded potentially as a failure to abide by the academic integrity statement even if that was not the intent. Please be careful clearly stating what is your original work and what is not in all assignments.

The Use of Generative AI:

Generative artificial intelligence tools—software that creates new text, images, computer code, audio, video, and other content—have become widely available. Well-known examples include ChatGPT for text and DALL•E for images. This policy governs all such tools, including those released during our semester together. You may use generative AI tools on assignments in this course when I explicitly permit you to do so. Otherwise, you should refrain from using such tools.

If you do use generative AI tools on assignments in this class, you must properly document and credit the tools themselves. Cite the tool you used, following the pattern for computer software given in the specified style guide. Additionally, please include a brief description of how you used the tool. If you choose to use generative AI tools, please remember that they are typically trained on limited datasets that may be out of date. Additionally, generative AI datasets are trained on pre-existing material, including copyrighted material; therefore, relying on a generative AI tool may result in plagiarism or copyright violations.

Finally, keep in mind that the goal of generative AI tools is to produce content that seems to have been produced by a human, not to produce accurate or reliable content; therefore, relying on a generative AI tool may result in your submission of inaccurate content. It is your responsibility—not the tool's—to assure the quality, integrity, and accuracy of work you submit in any college course. If you use generative AI tools to complete assignments in this course, in ways that I have not explicitly authorized, I reserve the right to apply the Honor Code to your specific case. In addition, you must be wary of unintentional plagiarism or fabrication of data. Please act with integrity, for the sake of both your personal character and your academic record.

In this course, the following policy dictates the acceptable use of generative AI tools, such as ChatGPT and other similar technologies. This is a programming course and while I recognize that generative AI can be a tremendous learning tool, it is my expectation that these technologies do not impede you learning the programming concepts taught in class. However, these technologies can be used to enhance your learning experience much like one would use Stack Overflow on assignments with the exception of on exams and lab quizzes which must be utilized without generative AI.

Additional Resources


Support for Career Development:

Engaging in your career development is an important part of your student experience. For example, presenting at a research conference, attending an interview for a job or internship, or participating in an extern/shadowing experience are not only necessary steps on your path but are also invaluable lessons in and of themselves. I wish to encourage and support you in activities related to your career development. To that end, please notify me by email as far in advance as possible to arrange for appropriate accommodations.

Student Support Team:

You have many resources available to you when you experience academic or personal stresses. In addition to your professors, the School of Engineering and Applied Science has staff members located in Thornton Hall who you can contact to help manage academic or personal challenges. Please do not wait until the end of the semester to ask for help!

Learning:
Lisa Lampe, Assistant Dean for Undergraduate Affairs
Georgina Nembhard, , Director of Student Success
Courtney MacMasters, Accessibility Specialist
Free tutoring is available for most classes

Health and Well-being:
Kelly Garrett, Assistant Dean of Students, Student Safety and Support
Elizabeth Ramirez-Weaver, CAPS counselor
Katie Fowler, CAPS counselor

You may schedule time with the CAPS counselors through Student Health. When scheduling, be sure to specify that you are an Engineering student. You are also urged to use TimelyCare for either scheduled or on-demand 24/7 mental health care.

Community and Identity:

The Center for Connection (The Connect) is a dedicated student space within UVA Engineering that fosters academic success and personal growth. Through its programs and initiatives, The Connect helps students strengthen their engineering identity while providing resources to help them thrive during their studies and beyond. Our work centers on three key areas: student belonging and development, academic support, and community programming grounded in intentional, data-driven strategies. The Connect features an open study area, a flexible event space, and on-site staff who provide direct support and advising to students. It is part of the Office of Community, Opportunity, and Engagement.

Harrassment, Discrimination and Interpersonal Violence:

The University of Virginia is dedicated to providing a safe and equitable learning environment for all students. If you or someone you know has been affected by power-based personal violence, more information can be found on the UVA Sexual Violence website that describes reporting options and resources available - www.virginia.edu/sexualviolence.

The same resources and options for individuals who experience sexual misconduct are available for discrimination, harassment, and retaliation. UVA prohibits discrimination and harassment based on age, color, disability, family medical or genetic information, gender identity or expression, marital status, military status, national or ethnic origin, political affiliation, pregnancy (including childbirth and related conditions), race, religion, sex, sexual orientation, veteran status. UVA policy also prohibits retaliation for reporting such behavior.

If you witness or are aware of someone who has experienced prohibited conduct, you are encouraged to submit a report to Just Report It (justreportit.virginia.edu) or contact EOCR, the office of Equal Opportunity and Civil Rights.

If you would prefer to disclose such conduct to a confidential resource where what you share is not reported to the University, you can turn to Counseling & Psychological Services ("CAPS") and Women's Center Counseling Staff and Confidential Advocates (for students of all genders).

As your professors, know that we care about you and your well-being and stand ready to provide support and resources as we can. As faculty members, we are responsible employees, which means that we are required by University policy and by federal law to report certain kinds of conduct that you report to us to the University's Title IX Coordinator. The Title IX Coordinator's job is to ensure that the reporting student receives the resources and support that they need, while also determining whether further action is necessary to ensure survivor safety and the safety of the University community.