Computer Science Elective Courses
- Mobile OS Development - Develop apps for Android phones!
- High Performance Computing - Run your code on a Cray supercomputer, even one at a DoD center or national lab!
- Natural Language Processing - Learn how computers can gain understanding from text, such as inferring sentiment from social media posts!
- Artificial Intelligence - Learn the fundamentals of how computers can act as Agents, by planning, learning, and making inferences!
- Computer Graphics - Understand the mathematics and computing technology behind the rendering of 2D and 3D graphical images!
- Computer and Network Security - Learn about cryptography, analyze network security vulnerabilities and apply appropriate defensive mechanisms!
- Advanced Web and Internet Programming - See the latest cutting-edge techniques for building complex, interactive web applications!
- And many more...
Sequencing Elective Courses for Added Depth
Because the CS and IT major matrices both contain three elective courses (one restricted and two unrestricted), students have an opportunity to study certain topic areas in greater depth by taking courses in sequence, such as:
- Artificial Intelligence (SI420), followed by Machine Learning and Data Science (SI470), as well as Natural Language Processing (SI425) or Intelligent Robotics (SI475).
- Web and Internet Programming (IT350) followed by Advanced Web and Internet Programming (IT452)
- Applied Database Systems (IT360) or Database Systems (SI440) followed by Advanced Database Systems (IT460)
- Computer and Network Security (IT430) followed by Advanced Computer and Network Security (IT432)
- Computer Networks (IC322) followed by Advanced Computer Networks (SI455)
Elective sequences allow midshipmen to pursue an area of interest in greater depth. Elective sequences do not change the matrices or graduation requirements for the CS or IT major and they do not require modification to existing major courses.
Example: Artificial Intelligence and Data Science Elective Sequence
The Artificial Intelligence (AI) and Data Science (DS) elective sequence is intended for those Computer Science and Information Technology majors interested in pursuing depth in the areas of AI, Data Science, and Machine Learning. Our goal is to leverage the department’s significant faculty expertise in AI to graduate officers who are highly competent in using, interpreting, and creating solutions to real-world problems using techniques from these powerful and transformative fields. Midshipmen completing the sequence are awarded a department certificate.
To complete the sequence, midshipmen must take at least three of the following courses, one of which must be SI420: Artificial Intelligence.
- SI420: Artificial Intelligence. (typically taken 2/c spring)
- SI425: Natural Language Processing.
- SI458: High Performance Computing.
- SI470: Machine Learning and Data Science.
- SI475: Intelligent Robotics.
See a list of midshipmen who have completed this elective sequence here.
Data Science Science Elective Courses
Data Science students are required to take 4 elective courses. One of these courses must be taught by the Math or Computer Science Departments, and one must be taught by another department. The remaining two electives are up to the student from the list of offered courses. Some electives offered to Computer Science students may also be open to Data Science students. Departments including Oceanography, Electrical Engineering, and History are preparing elective courses that will teach students about how to apply data science skills to diverse problems in their fields. More information on specific courses will be available in the Spring of 2023.