Carnegie Mellon University in Qatar follows the curriculum of the CMU School of Computer Science. One of the first computer science schools in the world, the School of Computer Science consistently ranks among the top computer science programs.
Students in the Computer Science Program acquire skills that transcend technological trends. The program encourages teamwork and communication in both technical and multi-disciplinary contexts.
- Computer science students have identical graduation requirements as students on the main campus
- CMU-Q graduates have CMU degrees, conferred from the main campus
The Bachelor of Science degree in Computer Science provides students with a core set of skills: mathematical reasoning, algorithmic thinking, and the fundamentals of programming.
Through mathematics and probability courses, students develop the formal foundations to remain current as technologies change. Intensive project-oriented courses provide insight into the practical issues of building and maintaining systems, and a required minor or concentration offers substantial depth in a second field.
The Carnegie Mellon computer science curriculum provides a common, solid foundation. Students are then encouraged to obtain in-depth knowledge in specific areas of computer science based on their interests.
Artificial Intelligence and Robotics
Many traditional roles are being automated so they can be done more safely and efficiently. Different areas of computing merge to enable technologies that include industrial automated factories, disaster area navigation and driverless vehicles.
Big Data and Machine Learning
Many applications, businesses, and scientific disciplines must collect, store, clean and analyze massive amounts of data. Students learn machine learning techniques to extract information, create large-scale database management systems, and leverage cloud systems and architectures to process this information.
Robust and Secure Systems
Security is a critical area in our fully connected world. Students develop a solid understanding of the system software, including device operating systems, networked systems and protocols, and fundamental distributed systems challenges.
Cutting-edge Applications
Many applications have become so popular that they are now sub-disciplines within computer science, including web applications, natural language processing, and computational biology.
Theory and Logic
Knowing how to program is the first step; knowing how to program well is the next challenge. Theory and logic courses explore areas such as sequential and parallel algorithms, complexity, languages and automata and graph theory.
Programming Paradigms
Programming is our way of communicating with computers and a basic tool for every computer scientist. At CMU-Q, students learn how to program imperative, functional and object-oriented paradigms, with emphasis on proving programs correct.
Students in the computer science program acquire skills that transcend technological trends. The program encourages creativity and provides the fundamental skills to develop new technologies.
This is a small sample of course projects that CMU-Q students have worked on:
- CMUQ Flix: movie recommendation application using a three-tier architecture
- Natural language processing applications, such as statistical machine translation or question answering systems
- Multi-robot simultaneous localization and mapping
- Systems projects that include implementing services that interface with the basic operating system
- Bittorrent-like application for peer-to-peer data transfer
- Flying robot navigation using convolutional neural networks
- The assembly, annotation and protein-by-protein analysis of bacteriophages
- Adaptive video streaming application using content distribution networks
- Remote file storage and access
- Building scalable and concurrent web servers
- Simultaneous task allocation and path discovery in multi-robot systems
- Collaborative games involving robots and humans
- Embedded systems projects such as self-parking cars, wireless helicopters, and virtual pianos
- Sound direction source detector
- Parallel algorithms for image segmentation and scaling, computational geometry and database search
- Implementation of a theorem prover
- Design and implementation of a programming language, including proofs about it