Comprehensive Course Listing Across 8 Semesters
Semester | Course Code | Course Title | Credit Structure (L-T-P-C) | Prerequisites |
---|---|---|---|---|
1 | CS101 | Introduction to Programming | 3-0-2-4 | - |
1 | CS102 | Data Structures and Algorithms | 3-0-2-4 | CS101 |
1 | MA101 | Mathematics I | 3-0-0-3 | - |
1 | PH101 | Physics for Computer Science | 3-0-0-3 | - |
2 | CS201 | Database Management Systems | 3-0-2-4 | CS102 |
2 | CS202 | Computer Networks | 3-0-2-4 | CS102 |
2 | MA201 | Mathematics II | 3-0-0-3 | MA101 |
2 | EE201 | Digital Electronics | 3-0-0-3 | - |
3 | CS301 | Operating Systems | 3-0-2-4 | CS201 |
3 | CS302 | Software Engineering | 3-0-2-4 | CS201 |
3 | MA301 | Mathematics III | 3-0-0-3 | MA201 |
3 | CS303 | Object-Oriented Programming | 3-0-2-4 | CS102 |
4 | CS401 | Machine Learning | 3-0-2-4 | CS301 |
4 | CS402 | Cryptography and Network Security | 3-0-2-4 | CS202 |
4 | MA401 | Mathematics IV | 3-0-0-3 | MA301 |
4 | CS403 | Web Technologies | 3-0-2-4 | CS301 |
5 | CS501 | Advanced Algorithms | 3-0-2-4 | CS301 |
5 | CS502 | Computer Vision | 3-0-2-4 | CS401 |
5 | MA501 | Statistics and Probability | 3-0-0-3 | MA301 |
5 | CS503 | Mobile Application Development | 3-0-2-4 | CS301 |
6 | CS601 | Reinforcement Learning | 3-0-2-4 | CS401 |
6 | CS602 | Big Data Analytics | 3-0-2-4 | CS501 |
6 | CS603 | Cloud Computing | 3-0-2-4 | CS202 |
7 | CS701 | Research Methods in CS | 3-0-0-3 | - |
7 | CS702 | Capstone Project I | 0-0-6-6 | CS501 |
8 | CS801 | Capstone Project II | 0-0-6-6 | CS702 |
Detailed Descriptions of Advanced Departmental Electives
Machine Learning: This course delves into advanced topics in machine learning, including supervised and unsupervised learning algorithms, neural networks, deep learning frameworks, and reinforcement learning. Students gain hands-on experience with libraries like TensorFlow and PyTorch. The course emphasizes practical implementation and real-world problem-solving.
Cryptography and Network Security: Focused on securing digital communications, this course covers symmetric and asymmetric encryption, hash functions, digital signatures, key exchange protocols, and network security models. Practical sessions involve implementing cryptographic techniques using tools like OpenSSL and Wireshark.
Web Technologies: This elective explores modern web development practices including HTML5, CSS3, JavaScript frameworks, responsive design, RESTful APIs, and database integration. Students build full-stack web applications using technologies like React, Node.js, and MongoDB.
Computer Vision: Students learn to develop algorithms for image processing, feature detection, object recognition, and scene understanding. The course includes hands-on projects using OpenCV, Python, and deep learning models for visual data analysis.
Mobile Application Development: This course focuses on developing cross-platform mobile applications using frameworks like Flutter and React Native. Students learn about UI/UX design principles, backend integration, and deployment strategies for both iOS and Android platforms.
Big Data Analytics: Covering tools and techniques for handling large datasets, this course introduces Hadoop, Spark, and NoSQL databases. Practical labs involve processing real-world data sets using Apache tools to derive actionable insights.
Cloud Computing: Students explore cloud infrastructure, virtualization, containerization, and service models (IaaS, PaaS, SaaS). The course includes hands-on experience with AWS, Azure, and GCP platforms for deploying scalable applications.
Reinforcement Learning: This advanced elective covers Markov Decision Processes, Q-learning, policy gradients, and deep reinforcement learning. Students implement algorithms to solve complex decision-making problems in robotics, gaming, and autonomous systems.
Advanced Algorithms: Designed for students with strong algorithmic foundations, this course covers optimization techniques, graph algorithms, approximation algorithms, and computational complexity theory. It prepares students for competitive programming and research.
Artificial Intelligence: A comprehensive overview of AI concepts including knowledge representation, reasoning, planning, and learning. Students implement intelligent agents and work on projects involving natural language processing and robotics.
Distributed Systems: This course examines the architecture and design of distributed computing systems, covering topics like consensus algorithms, fault tolerance, and scalability. Practical sessions involve building distributed applications using frameworks like Apache Kafka and RabbitMQ.
Project-Based Learning Philosophy
The department strongly believes in experiential learning through project-based education. Students begin working on mini-projects from their second year onwards, allowing them to apply theoretical concepts to real-world scenarios. These projects are evaluated based on technical depth, creativity, documentation quality, and presentation skills.
Mini-projects typically last 3-4 months and involve small teams of 3-5 students. They are supervised by faculty members who provide guidance throughout the development cycle. Projects often lead to publications, patents, or startup ideas.
The final-year thesis/capstone project is a significant undertaking that spans 6 months. Students select projects aligned with their specialization and work closely with a faculty advisor. The project culminates in a formal presentation and submission of a detailed report.
Students have multiple avenues to choose their projects: they can propose ideas based on personal interest, collaborate with industry partners, or contribute to ongoing research initiatives within the department. Faculty mentors are assigned based on expertise matching and student preferences.