Course Structure
All incoming undergraduates at Ahmedabad University start with the Foundation programme, an interdisciplinary course that covers fields from Mathematics to Literature through projectbased learning.
Core Courses
Discrete Mathematics

Computer Programming Probability and Stochastic Processes

Advanced Data Structures and Algorithms

Computation Structures

Programming Language Concepts and Paradigms

Design and A nalysis of Algorithms Theory of Computing

Computer Systems and Networking

Introduction to Artificial Intelligence

Introduction to Bioinformatics

Electives
Theoretical Computer Science
Approximation Algorithms

Complexity Theory

Enumerative Combinatorics and Graph Theory

Network and Combinatorial Optimization

Linear Programming and Stochastic Optimization

Information Theory and Quantum Computation

Systems
Software Engineering

Networking and Distributed Computing

Parallel and Distributed Computing

Computer and Network Security

Supply Chain Management

Operations Research

Financial Engineering

Artificial Intelligence
Introduction to Machine Learning

Natural Language Processing

Computer Vision

Neural Networks and Deep learning

Robotics

Information Retrieval

Biocomputing
Introduction to Computational Biology

Introduction to Systems Biology

Algorithms for Pattern Matching

Sequence Analysis: Genes, Proteins and Genomes

Molecular Phylogenetics and Evolution

Statistical Methods in Bioinformatics

Data Science
Linear Algebra and Optimization

Mathematical Statistics

Data Analytics and Visualization

Big Data Analytics

Machine Learning

Computational Science
Advanced Statistics

Natural Language Processing

Computational Social Science

Computational Linguistics

Quantum Computing
Linear Algebra

Information Theory and Quantum Computation

Complexity Theory

Quantum Information Theory

Quantum communication

Quantum electronics

As with all majors at Ahmedabad University, students pursue their own interests with a thesis or capstone project which they complete in their final year.
Sample Course Structure
Semester

1

2

3

4


I

Foundation Programme

Statistics

Communications

Introduction to Programming


II

Foundation Programme

Discrete Mathematics

Computer Organisation

Scientific Computing

Programming Lab I

III

Data Structures and Algorithms

Data Structures Lab

Fundamentals of Programming Languages

Programming Lab II


IV

Probability and Statistics

Design and Analysis of Algorithms

Theory of Computation

GER (Social Science)


V

Modern Operating Systems

Specialisation Elective

Specialisation Elective

GER (Humanities)


VI

Specialisation Elective

Specialisation Elective

Free Elective

GER (Performing and Visual Arts)


VII

UG Thesis Part I

Specialisation Elective

Specialisation Elective

Free Elective


VIII

UG Thesis Part II

UG Thesis Part II

UG Thesis Part II

UG Thesis Part II


Career Pathways
Students can choose to work in industry or go on to pursue higher studies. Upon completion of higher studies, students can take up senior positions in industry and research laboratories, start their own venture or pursue research and teaching in academic institutions.
There are various areas where students can work, depending upon their interests and vacancies in the market.
Software Developers, Software Testing, Data Architect, Database Developer, Data Modeler, Quality Assurance Associate / Analyst, Mobile Applications Developer, UI/UX DesignerSoftware Quality Assurance (QA), Game Designer, Website/ Mobile Application Designer, Information Technology Auditor, Data Engineer, Data Analyst, Decision Scientist
Eligibility
The Bachelor of Science (Honours) with Majors in Computer Science is open to anyone who has completed class 12 or equivalent with Mathematics.