• CS 4730

    Computer Game Design
     Rating

    4.33

     Difficulty

    3.50

     GPA

    3.61

    Last Taught

    Spring 2026

    This course will introduce students to the concepts and tools used in the development of modern 2-D and 3-D real-time interactive computer video games. Topics covered in this include graphics, parallel processing, human-computer interaction, networking, artificial intelligence, and software engineering. Prerequisite: CS 3140 with a grade of C- or better

  • CS 4993

    Independent Study
     Rating

    5.00

     Difficulty

    4.00

     GPA

    3.77

    Last Taught

    Spring 2026

    In-depth study of a computer science or computer engineering problem by an individual student in close consultation with departmental faculty. The study is often either a thorough analysis of an abstract computer science problem or the design, implementation, and analysis of a computer system (software or hardware). Prerequisite: Instructor permission.

  • CS 2993

    Independent Study
     Rating

     Difficulty

     GPA

    Last Taught

    Spring 2026

    In-depth study of a computer science or computer engineering problem by an individual student in close consultation with departmental faculty.

  • CS 4330

    Advanced Computer Architecture
     Rating

     Difficulty

     GPA

    Last Taught

    Spring 2026

    Provides an overview of modern microprocessor design. The topics covered in the course will include the design of super-scalar processors and their memory systems, and the fundamentals of multi-core processor design. Prerequisite: CS 3330 with a grade of C- or better

  • CS 4770

    Natural Language Processing
     Rating

     Difficulty

     GPA

    Last Taught

    Spring 2026

    This course explores Natural Language Processing (NLP), examining how computers are trained to understand and process human language. Students will gain a thorough understanding of both core NLP concepts and advanced techniques, including text analysis, language modeling, machine translation, question answering, text generation, conversation modeling, and the latest advancements in large language models. Prerequisite: CS 3100 with a grade of a C- or better and APMA 3080 or equivalent.

  • CS 4771

    Reinforcement Learning
     Rating

     Difficulty

     GPA

    Last Taught

    Spring 2026

    This course aims to give an introduction to basic ideas and concepts of RL while avoiding deep dive in mathematical treatments. The course will help the student build an intuitive understanding of RL and give students hands-on experience on small-scale RL problems. Prerequisite: CS 2100 with a grade of C- or better or successfully complete the CS 2100 place out test.

  • CS 4790

    Cryptocurrency
     Rating

     Difficulty

     GPA

    Last Taught

    Spring 2026

    This course is a general introduction to cryptocurrencies and blockchain applications. Students will understand the theoretical concepts that underlay cryptocurrencies, and implement both their own cryptocurrencies as well as develop applications that run on existing cryptocurrencies. Students will see the ethics, legal, and policy aspects pertaining to the subject. Prerequisite: CS 3100 with a grade of C- or better

  • CS 4980

    Capstone Research
     Rating

     Difficulty

     GPA

    3.91

    Last Taught

    Spring 2026

    This course is one option in the CS fourth-year thesis track. Students will seek out a faculty member as an advisor, and do an independent project with said advisor. Instructors can give the 3 credits across multiple semesters, if desired. This course is designed for students who are doing research, and want to use that research for their senior thesis. Note that this track could also be an implementation project, including a group-based project. Prerequisite: CS 3140 with a grade of C- or higher, and BSCS major.

  • CS 4998

    Distinguished BA Majors Research
     Rating

     Difficulty

     GPA

    Last Taught

    Spring 2026

    Required for Distinguished Majors completing the Bachelor of Arts degree in the College of Arts and Sciences. An introduction to computer science research and the writing of a Distinguished Majors thesis. Prerequisites: CS 3100 with a grade of C- or higher, and a BACS major

  • CS 6763

    Cyber-Physical Systems: Formal Methods, Safety and Security
     Rating

     Difficulty

     GPA

    3.94

    Last Taught

    Spring 2026

    Cyber-physical systems (CPS) are smart systems that include co-engineered interacting networks of physical and computational components. This course will teach students the required skills to analyze the CPS that are all around us, so that when they contribute to the design of CPS, they are able to understand important safety and security aspects and feel confident designing and analyzing CPS systems.