Aits Bos Theory III I
Aits Bos Theory III I
Unit I Introduction 09
Introduction: What is AI, Foundations of AI, History of AI, The State of Art
Intelligent Agents: Agents and Environments, Good Behaviour: The Concept of Rationality, The
Nature of Environments, The Structure of Agents.
09
Problem Solving Agents, Example problems, Searching for Solutions, Uninformed Search
Strategies, Informed search strategies, Heuristic Functions, Beyond Classical Search: Local
Search Algorithms and Optimization Problems, Local Search in Continues Spaces, Searching
with Nondeterministic Actions, Searching with partial observations, online search agents and
unknown environments.
Knowledge-Based Agents and the Wumpus World, Propositional Logic: Syntax, Semantics, and
Theorem Proving, Agents based on Propositional Logic and Model Checking, First-Order Logic:
Syntax, Semantics, and Inference Mechanisms, Unification, Forward and Backward Chaining,
and Resolution, Knowledge Engineering and Ontological Representation, Introduction to
Classical Planning and Planning Algorithm
Department of Computer Science and Engineering
Prescribed Textbooks:
1. Stuart J.Russell, Peter Norvig, ―Artificial Intelligence A Modern Approach‖, 3rd Edition,
Pearson Education, 2019.
Reference Books:
1. Nilsson, Nils J., and Nils Johan Nilsson. Artificial intelligence: a new synthesis. Morgan
Kaufmann, 1998.
2. Johnson, Benny G., Fred Phillips, and Linda G. Chase. "An intelligent tutoring system for
the accounting cycle: Enhancing textbook homework with artificial intelligence." Journal
of Accounting Education 27.1 (2009): 3039.
Online Learning Resources:
http://peterindia.net/AILinks.html
http://nptel.ac.in/courses/106106139/
https://nptel.ac.in/courses/106/105/106105152/
Department of Computer Science and Engineering
Course Outcomes:
Textbooks:
Reference Books:
1. Forouzan, Datacommunications and Networking, 5th Edition, McGraw Hill Publication.
2. Youlu Zheng, Shakil Akthar, ―Networks for Computer Scientists and Engineers‖, Oxford Publishers,
2016.
Online Learning Resources:
1. https://nptel.ac.in/courses/106105183/25
2. http://www.nptelvideos.in/2012/11/computer-networks.html
3. https://nptel.ac.in/courses/106105183/3
Department of Computer Science and Engineering
Course Objectives:
1. Able to understand the concept of abstract machines, construct FA, Regular Expressions for the
regular languages and equivalent FSMs.
2. Able to construct pushdown automata equivalent to Context free Grammars, construct Turing
Machines and understand undecidability.
3. Emphasize the concepts learnt in phases of compiler, lexical analyser and Top-down parser.
4. Able to understand the concepts of Bottom-up parser, Intermediate Code Generation.
5. Able to understand the concepts of Code optimizer and Code Generation.
Course Outcomes:
1. Demonstrate knowledge on Automata Theory, Regular Expression and Analyze and Design of
finite automata, and prove equivalence of various finite automata.
2. Demonstrate knowledge on context free grammar, Analyze and design of PDA and TM.
3. Understand the basic concept of compiler design, and its different phases which will be helpful
to construct new tools like LEX, YACC, etc.
4. Ability to implement semantic rules into a parser that performs attribution while parsing and
apply error detection and correction methods.
5. Apply the code optimization techniques to improve the space and time complexity of programs
while programming and Ability to design a compiler.
TEXT BOOKS:
1. Introduction to Automata Theory, Languages and Computation, J. E. Hopcroft, R. Motwani
and J. D. Ullman, 3rd Edition, Pearson, 2008.
2. Compilers Principles, Techniques and Tools Aho, Ullman, Ravisethi, Pearson Education.
REFERENCES:
1. Introduction to Languages and Theory of Computation, John C Martin, 1/e, 2009, Tata McGraw Hill
Education, Hyderabad, India.
2. Introduction to Theory of Computation, Sipser, 2/e, 2005, Thomson, Australia.
3. Compiler Construction: Principles And Practice, Kenneth C. Louden, Thomson/ Delmar Cengage
Learning, 2006.
4. Engineering a compiler, Keith Cooper and Linda Torczon, 2 nd Edition, Morgan Kaufmann, 2011.
e-Resources:
1) https://nptel.ac.in/courses/106/104/106104028/
2) https://nptel.ac.in/courses/106/104/106104123/
Department of Computer Science and Engineering
Course Outcomes
1. Explain core quantum principles in a non-mathematical manner.
2. Compare classical and quantum information systems.
3. Identify theoretical issues in building quantum computers.
4. Discuss quantum communication and computing concepts.
5. Recognize applications, industry trends, and career paths in quantum technology
Textbooks:
1. Michael A. Nielsen, Isaac L. Chuang, Quantum Computation and Quantum
Information, Cambridge University Press, 10th Anniversary Edition, 2010.
2. Eleanor Rieffel and Wolfgang Polak, Quantum Computing: A Gentle Introduction, MIT
Press, 2011.
3. Chris Bernhardt, Quantum Computing for Everyone, MIT Press, 2019.
Reference Books:
1. David McMahon, Quantum Computing Explained, Wiley, 2008.
2. Phillip Kaye, Raymond Laflamme, Michele Mosca, An Introduction to Quantum
Computing, Oxford University Press, 2007.
3. Scott Aaronson, Quantum Computing Since Democritus, Cambridge University Press,
2013.
4. Alastair I.M. Rae, Quantum Physics: A Beginner's Guide, Oneworld Publications,
Revised Edition, 2005.
5. Eleanor G. Rieffel, Wolfgang H. Polak, Quantum Computing: A Gentle Introduction,
MIT Press, 2011.
6. Leonard Susskind, Art Friedman, Quantum Mechanics: The Theoretical Minimum,
Basic Books, 2014.
7. Bruce Rosenblum, Fred Kuttner, Quantum Enigma: Physics Encounters
Consciousness, Oxford University Press, 2nd Edition, 2011.
8. GiulianoBenenti, GiulioCasati, GiulianoStrini, Principles of Quantum Computation
and Information, Volume I: Basic Concepts, World Scientific Publishing, 2004.
9. K.B. Whaley et al., Quantum Technologies and Industrial Applications: European
Roadmap and Strategy Document, Quantum Flagship, European Commission, 2020.
10. Department of Science & Technology (DST), Government of India, National Mission
on Quantum Technologies & Applications – Official Reports and Whitepapers,
MeitY/DST Publications, 2020 onward.
Department of Computer Science and Engineering
Course Objectives:
1. Describe the activities in the different phases of the object-oriented development lifecycle.
2. Understand the concepts of object-oriented model with the E-R and EER models.
3. Model a real-world application by using UML diagram.
4. Design architectural modelling.
5. Describing an application of UML.
Course Outcomes:
Unit 1 09
Introduction to UML: Importance of modelling, principles of modelling, object-oriented
modelling, conceptual model of the UML, Architecture, Software Development Life Cycle.
Unit 2 09
Basic Structural Modelling: Classes, Relationships, common Mechanisms, and diagrams.
Advanced Structural Modelling: Advanced classes, advanced relationships, Interfaces, Types and
Roles, Packages. Class & Object Diagrams: Terms, concepts, modelling techniques for Class &
Object Diagrams.
Unit 3
09
Basic Behavioural Modelling-I: Interactions, Interaction diagrams. Basic Behavioural Modelling-
II: Use cases, Use case Diagrams, Activity Diagrams.
Unit 4 09
Advanced Behavioral Modelling: Events and signals, state machines, processes and Threads, time
and space, state chart diagrams. Architectural Modelling: Component, Deployment, Component
diagrams and Deployment diagrams.
Department of Computer Science and Engineering
Unit 5 09
Patterns and Frameworks, Artifact Diagrams. Case Study: The Unified Library application.
Text Books:
1. Grady Booch, James Rumbaugh, Ivar Jacobson: The Unified Modelling Language User Guide,
Pearson Education 2nd Edition.
2. Object-Oriented Analysis and Design with the Unified Process By John W. Satzinger, Robert
B Jackson and Stephen D Burd, Cengage Learning
Reference Books:
1. Meilir Page-Jones: Fundamentals of Object-Oriented Design in UML, Pearson Education.
2. Pascal Roques: Modelling Software Systems Using UML2, WILEY-Dreamtech India Pvt. Ltd.
3. Atul Kahate: Object Oriented Analysis & Design, The McGraw-Hill Companies.
4. Mark Priestley: Practical Object-Oriented Design with UML, TMH.
5. Appling UML and Patterns: An introduction to Object – Oriented Analysis and Design and
Unified Process, Craig Larman, Pearson Education.
Department of Computer Science and Engineering
Course Objectives:
Course Outcomes:
Unit 1
Introduction to Soft Computing: Evolutionary Computing, "Soft" computing versus "Hard"
computing, Soft Computing Methods, Recent Trends in Soft Computing, Characteristics of Soft
computing, Applications of Soft Computing Techniques.
Unit 2
Fuzzy Systems: Fuzzy Sets, Fuzzy Relations, Fuzzy Logic, Fuzzy Rule-Based Systems
Unit 3
Fuzzy Decision Making, Particle Swarm Optimization.
Unit 4
Genetic Algorithms: Basic Concepts, Basic Operators for Genetic Algorithms, Crossover and
Mutation Properties, Genetic Algorithm Cycle, Fitness Function, Applications of Genetic
Algorithm.
Unit 5
Rough Sets, Rough Sets, Rule Induction, and Discernibility Matrix, Integration of Soft
Computing Techniques.
Department of Computer Science and Engineering
TEXT BOOK:
1. Soft Computing – Advances and Applications - Jan 2015 by B.K. Tripathy and J. Anuradha –
Cengage Learning
REFERENCE BOOKS:
1. S. N. Sivanandam & S. N. Deepa, ―Principles of Soft Computing‖, 2nd edition, Wiley India,
2008.
2. David E. Goldberg, ―Genetic Algorithms-In Search, optimization and Machine learning‖,
Pearson Education.
3. J. S. R. Jang, C.T. Sun and E.Mizutani, ―Neuro-Fuzzy and Soft Computing‖, Pearson
Education, 2004.
4. G.J. Klir & B. Yuan, ―Fuzzy Sets & Fuzzy Logic‖, PHI, 1995.
5. Melanie Mitchell, ―An Introduction to Genetic Algorithm‖, PHI, 1998.
6. Timothy J. Ross, ―Fuzzy Logic with Engineering Applications‖, McGraw- Hill International
editions, 1995.
Department of Computer Science and Engineering
Course Objectives:
1. To comprehend the architecture, operation, and configurations of the 8086 microprocessors
2. To get familiar with 8086 programming concepts, instruction set, and assembly language
development tools.
3. To study the interfacing of 8086 with memory, peripherals, and controllers for
various applications.
4. To learn the architecture, instruction set, and programming of the 8051 microcontrollers.
5. To understand microcontroller interfacing techniques, peripheral programming,
and processor comparisons.
Course Outcomes:
Unit 1
8086 Architecture: Main features, pin diagram/description, 8086 microprocessor family, internal
architecture, bus interfacing unit, execution unit, interrupts and interrupt response, 8086 system
timing, minimum mode and maximum mode configuration.
Unit 2
8086 Programming: Program development steps, instructions, addressing modes, assembler
directives, writing simple programs with an assembler, assembly language program development
tools.
Unit 3
8086 Interfacing: Semiconductor memories interfacing (RAM, ROM), Intel 8255 programmable
peripheral interface, Interfacing switches and LEDS, Interfacing seven segment displays,
software and hardware interrupt applications, Intel 8251 USART architecture and interfacing,
Intel 8237a DMA controller, stepper motor, A/D and D/A converters, Need for 8259
programmable interrupt controllers.
Department of Computer Science and Engineering
Unit 4
Microcontroller - Architecture of 8051 – Special Function Registers (SFRs) - I/O Pins Ports and
Circuits - Instruction set - Addressing modes - Assembly language programming.
Unit 5
Interfacing Microcontroller - Programming 8051 Timers - Serial Port Programming - Interrupts
Programming – LCD & Keyboard Interfacing - ADC, DAC & Sensor Interfacing - External
Memory Interface- Stepper Motor and Waveform generation - Comparison of Microprocessor,
Microcontroller, PIC and ARM processors
Textbooks:
1. Microprocessors and Interfacing – Programming and Hardware by Douglas V Hall, SSSP
Rao, Tata McGraw Hill Education Private Limited, 3rdEdition,1994.
2. K M Bhurchandi, A K Ray, Advanced Microprocessors and Peripherals, 3rd edition,
McGraw Hill Education, 2017.
3. Raj Kamal, Microcontrollers: Architecture, Programming, Interfacing and System Design,
2nd edition, Pearson, 2012.
References:
1. Ramesh S Gaonkar, Microprocessor Architecture Programming and Applications with the
8085, 6th edition, Penram International Publishing, 2013.
2. Kenneth J. Ayala, The 8051 Microcontroller, 3rd edition, Cengage Learning, 2004.
Department of Computer Science and Engineering
Course Objectives:
Course Outcomes:
Unit 1 09
Basic Concepts – Data Warehousing Components – Building a Data Warehouse – Database
Architectures for Parallel Processing – Parallel DBMS Vendors – Multidimensional Data Model
– Data Warehouse Schemas for Decision Support, Concept Hierarchies -Characteristics of OLAP
Systems – Typical OLAP Operations, OLAP and OLTP.
Unit 2 09
Introduction to Data Mining Systems – Knowledge Discovery Process – Data Mining Techniques
– Issues – applications- Data Objects and attribute types, Statistical description of data, Data
Preprocessing – Cleaning, Integration, Reduction, Transformation and discretization, Data
Visualization, Data similarity and dissimilarity measures.
Unit 3 08
Mining Frequent Patterns, Associations and Correlations – Mining Methods- Pattern Evaluation
Method – Pattern Mining in Multilevel, Multi Dimensional Space – Constraint Based Frequent
Pattern Mining, Classification using Frequent Patterns.
09
Department of Computer Science and Engineering
Unit 4
Decision Tree Induction – Bayesian Classification – Rule Based Classification – Classification
by Back Propagation – Support Vector Machines –– Lazy Learners – Model Evaluation and
Selection- Techniques to improve Classification Accuracy. Clustering Techniques – Cluster
analysis-Partitioning Methods – Hierarchical Methods – Density Based Methods – Grid Based
Methods – Evaluation of clustering – Clustering high dimensional data- Clustering with
constraints, Outlier analysis-outlier detection methods.
TEXT BOOK:
1. Jiawei Han and Micheline Kamber, ―Data Mining Concepts and Techniques,
Third Edition, Elsevier, 2012.
REFERENCES:
1. Alex Berson and Stephen J.Smith, ―Data Warehousing, Data Mining & OLAP‖,
Tata McGraw – Hill Edition, 35th Reprint 2016.
2. K.P. Soman, Shyam Diwakar and V. Ajay, ―Insight into Data Mining Theory and
Practice, Eastern Economy Edition, Prentice Hall of India, 2006.
3. Ian H.Witten and Eibe Frank, ―Data Mining: Practical Machine Learning Tools
and Techniques, Elsevier, Second Edition.
Department of Computer Science and Engineering
Course Objectives:
1. To teach the methods of implementing algorithms using artificial intelligence techniques
2. To illustrate search algorithms
3. To demonstrate the building of intelligent agents
Course Outcomes:
After completion of the course, students will be able to
1. Implement search algorithms.
2. Solve Artificial intelligence problems
3. Design chatbot and virtual assistant
Exercise 1
1. Write a program to implement DFS and BFS
Exercise 2
2. Write a Program to find the solution for traveling salesman Problem
Exercise 3
3. Write a program to implement Simulated Annealing Algorithm
Exercise 4
4.Write a program to find the solution for the wumpus world problem
Exercise 5
5. Write a program to implement 8 puzzle problem
Exercise 6
6. Write a program to implement Towers of Hanoi problem
Exercise 7
6. Write a program to implement A* Algorithm
Department of Computer Science and Engineering
Exercise 8
8. Write a program to implement Hill Climbing Algorithm
Exercise 9
9. Build a Chatbot using AWS Lex, Pandora bots.
Exercise 10
10. Build a bot that provides all the information related to your college.
Exercise 11
11. Build a virtual assistant for Wikipedia using Wolfram Alpha and Python
Exercise 12
12. The following is a function that counts the number of times a string occurs in another string:
# Count the number of times string s1 is found in string s2 defcountsubstring(s1,s2):
count = 0
for i in range(0,len(s2)- len(s1)+1): if s1 == s2[i:i+len(s1)]:
count += 1
return count
For instance, count substring (‘ab‘,‘cabalaba‘) returns 2.
Write a recursive version of the above function. To get the rest of a string (i.e. everything but the
first character).
Exercise 13
13. Higher order functions. Write a higher-order function count that counts the number of
elements in a list that satisfy a given test. For instance: count (lambda x: x>2, [1, 2, 3, 4, 5])
should return 3, as there are three elements in the list larger than 2. Solve this task without using
any existing higher order function
Exercise 14
14. Brute force solution to the Knapsack problem. Write a function that allows you to generate
random problem instances for the knapsack program. This function should generate a list of
items containing N items that each have a unique name, a random size in the range 1….5 and
a random value in the range 1…….10.
Next, you should perform performance measurements to see how long the given knapsack solver
take to solve different problem sizes. You should perform at least 10 runs with different randomly
generated problem instances for the problem sizes 10,12,14,16,18,20 and 22. Use a backpack size
of 2:5 x N for each value problem size N. Please note that the method used to generate
random numbers can also affect performance, since different distributions of values can make the
initial conditions of the problem slightly more or less demanding.
How much longer time does it take to run this program when we increase the number of items?
Does the backpack size affect the answer?
Try running the above tests again with a backpack size of 1 x N and with 4:0 x N.
Department of Computer Science and Engineering
Exercise 15
15. Assume that you are organising a party for N people and have been given a list L of people
who, for social reasons, should not sit at the same table. Furthermore, assume that you have C
tables (that are infinitely large).
Write a function layout (N,C,L) that can give a table placement (i.e. a number from 0 : : :C -1)
for each guest such that there will be no social mishaps.
For simplicity we assume that you have a unique number 0 N-1 for each guest and that the
list of restrictions is of the form [(X, Y) ] denoting guests X, Y that are not allowed to sit
together. Answer with a dictionary mapping each guest into a table assignment, if there are no
possible layouts of the guests you should answer False.
References:
1. David Poole, Alan Mack worth, Randy Goebel,‖ Computational Intelligence: a logical
approach‖, Oxford University Press, 2004.
2. G. Luger, ―Artificial Intelligence: Structures and Strategies for complex problem
solving‖, Fourth Edition, Pearson Education, 2002.
3. J. Nilsson, ―Artificial Intelligence: A new Synthesis‖, Elsevier Publishers, 1998.
4. Artificial Neural Networks, B. Yagna Narayana, PHI
5. Artificial Intelligence, 2nd Edition, E.Rich and K.Knight, TMH.
6. Artificial Intelligence and Expert Systems, Patterson, PHI.
Course Objectives:
1. To understand the working principle of various communication protocols.
2. To understand the network simulator environment and visualize a network topology and observe its
performance
3. To analyze the traffic flow and the contents of protocol frames.
4. Familiarize with the applications of Internet.
Course Outcomes:
After completion of the course, students will be able to
1. To understand the working principle of various communication protocols.
2. To understand the network simulator environment and visualize a network topologyand observe its
performance.
3. To analyze the traffic flow and the contents of protocol frames.
4. Critique the existing routing protocols
Exercise 1
Implement the data link layer framing methods such as character, character-stuffing and bit
stuffing.
Exercise 2
Write a program to compute CRC code for the polynomials CRC-12, CRC-16 and CRC CCIP
Exercise 3
Develop a simple data link layer that performs the flow control using the sliding window protocol,
and loss recovery using the Go-Back-N mechanism.
Exercise 4
Implement Dijkastra‘s algorithm to compute the shortest path through a network
Exercise 5
Take an example subnet of hosts and obtain a broadcast tree for the subnet.
Exercise 6
Implement distance vector routing algorithm for obtaining routing tables at each node.
Department of Computer Science and Engineering
Exercise 7
Implement data encryption and data decryption
Exercise 8
Write a program for congestion control using Leaky bucket algorithm.
Exercise 9
Write a program for frame sorting technique used in buffers.
Exercise 10
Programs using Wireshark
i. Packet Capture Using Wire shark
ii. Starting Wire shark
iii. Viewing Captured Traffic
iv. Analysis and Statistics & Filters..
Exercise 11
How to run Nmap scan
Exercise 12
Operating System Detection using Nmap
Exercise 13
Do the following using NS2 Simulator
i. NS2 Simulator-Introduction
ii. Simulate to Find the Number of Packets Dropped
iii. Simulate to Find the Number of Packets Dropped by TCP/UDP
iv. Simulate to Find the Number of Packets Dropped due to Congestion
v. Simulate to Compare Data Rate& Throughput.
vi. Simulate to Plot Congestion for Different Source/Destination
vii. Simulate to Determine the Performance with respect to transmission of
Packets
Text Books:
1. Andrew S.Tanenbaum, David j.wetherall, Computer Networks, 6th Edition,
PEARSON.
2. James F.Kurose, Keith W. Ross, Computer Networking: A Top-Down 6th edition,
Pearson, 2019. 2. Computer Networks: A Systems Approach-Bruce Davie,
VMware-Larry Peterson, Princeton University-2019.
Department of Computer Science and Engineering
References:
Course Outcomes:
CO1: Building fast and interactive UIs
CO2: Applying Declarative approach for developing web apps
CO3: Understanding ES6 features to embrace modern JavaScript
CO4: Building reliable APIs with Express. Js
CO5: Create and manage Git repositories, track changes, and push code to GitHub.
Exercise 1
1. Introduction to Modern JavaScript and DOM
a. Write a JavaScript program to link JavaScript file with the HTML page
b. Write a JavaScript program to select the elements in HTML page using selectors
c. Write a JavaScript program to implement the event listeners
d. Write a JavaScript program to handle the click events for the HTML button elements
e. Write a JavaScript program to With three types of functions
i. Function declaration
ii. Function definition
iii. Arrow functions
Department of Computer Science and Engineering
Exercise 2
2. Basics of React. Js
a. Write a React program to implement a counter button using react class components
b. Write a React program to implement a counter button using react functional components
c. Write a React program to handle the button click events in functional component
d. Write a React program to conditionally render a component in the browser
e. Write a React program to display text using String literals
Exercise 3
3.Important concepts of React. js
a. Write a React program to implement a counter button using React use State hook
b. Write a React program to fetch the data from an API using React use Effect hook
c. Write a React program with two react components sharing data using Props.
d. Write a React program to implement the forms in react
e. Write a React program to implement the iterative rendering using map() function
Exercise 4
Setup
o Install Git on local machine.
o Configure Git (user name, email).
o Create GitHub account and generate a personal access token.
b. Basic Git Workflow
o Create a local repository using git init
o Create and add files → git add .
o Commit files → git commit -m "Initial commit"
o Connect to GitHub remote → git remote add origin <repo_url>
o Push to GitHub → git push -u origin main
c. Branching and Collaboration
o Create a branch → git checkout -b feature1
o Merge branch to main → git merge feature1
o Resolve merge conflicts (guided)
Exercise 5
Upload React Project to GitHub
Create a new React app using npx create-react-app myapp
o Initialize a git repo and push to GitHub
o Use .gitignore to exclude node_modules
o Create multiple branches: feature/navbar, feature/form
o Practice merge and pull requests (can use GitHub GUI)
Exercise 6
Introduction to Node. js and Express. js
a. Write a program to implement the ‗hello world‘ message in the route through the browser using
Express
b. Write a program to develop a small website with multiple routes using Express. js
c. Write a program to print the ‗hello world‘ in the browser console using Express. Js
Department of Computer Science and Engineering
Exercise 7
Introduction to My SQL
a. Write a program to create a Database and table inside that database using My SQL
Command line client
b. Write a My SQL queries to create table, and insert the data, update the data in the table
c. Write a My SQL queries to implement the subqueries in the My SQL command line
client
d. Write a My SQL program to create the script files in the My SQL workbench
e. Write a My SQL program to create a database directory in Project and initialize a
database. sql file to integrate the database into API
Exercise 8
Introduction to My SQL
• Form groups of 2–3 students
• Create a shared GitHub repo
• Assign tasks and work in branches
• Use Issues, Pull Requests, and Code Reviews
• Document code with README.md
Textbooks:
1. Web Design with HTML, CSS, JavaScript and JQuery Set Book by Jon Duckett
Professional JavaScript for Web Developers Book by Nicholas C. Zakas
2. John Dean, Web Programming with HTML5, CSS and JavaScript, Jones & Bartlett
Learning, 2019.
3. Pro MERN Stack: Full Stack Web App Development with Mongo, Express, React, and
Node, Vasan Subramanian, 2nd edition, APress, O‘Reilly.
4. Learning PHP, MySQL, JavaScript, CSS & HTML5: A Step-by-Step Guide to
Creating Dynamic Websites by Robin Nixon
5. AZAT MARDAN, Full Stack Java Script: Learn Back bone. js, Node.jsand
Mongo DB.2015
Reference Books:
1. Full-Stack JavaScript Development by Eric Bush.
2. Programming the World Wide Web, 7th Edition, Robet W Sebesta, Pearson, 2013.
3. Tomasz Dyl , Kamil Przeorski , Maciej Czarnecki, Mastering Full Stack React Web
Development 2017
Department of Computer Science and Engineering
1. https://ict.iitk.ac.in/product/full-stack-developer-html5-css3-js-bootstrap-php-4/
2. https://www.w3schools.com/html
3. https://www.w3schools.com/css
4. https://www.w3schools.com/js/
5. https://www.w3schools.com/nodejs
6. https://www.w3schools.com/typescript
Department of Computer Science and Engineering
The aim of tinkering lab for engineering students is to provide a hands-on learning environment where
students can explore, experiment, and innovate by building and testing prototypes. These labs are designed
to demonstrate practical skills that complement theoretical knowledge.
These labs bridge the gap between academia and industry, providing students with the practical experience.
Some students may also develop entrepreneurial skills, potentially leading to start ups or innovation-driven
careers. Tinkering labs aim to cultivate the next generation of engineers by giving them the tools, space,
and mind-set to experiment, innovate, and solve real-world challenges.
List of experiments:
1) Make your own parallel and series circuits using breadboard for any application of your choice.
2) Design and 3D print a Walking Robot
3) Design and 3D Print a Rocket.
4) Temperature & Humidity Monitoring System (DHT11 + LCD)
5) Water Level Detection and Alert System
6) Automatic Plant Watering System
7) Bluetooth-Based Door Lock System
8) Smart Dustbin Using Ultrasonic Sensor
9) Fire Detection and Alarm System
10) RFID-Based Attendance System
11) Voice-Controlled Devices via Google Assistant
12) Heart Rate Monitoring Using Pulse Sensor
13) Soil Moisture-Based Irrigation
14) Smart Helmet for Accident Detection
15) Milk Adulteration Detection System
16) Water Purification via Activated Carbon
17) Solar Dehydrator for Food Drying
18) Temperature-Controlled Chemical Reactor
Department of Computer Science and Engineering
Note: The students can also design and implement their own ideas, apart from the list of
experiments mentioned above.
Note: A minimum of 8 to 10 experiments must be completed by the students.
Department of Computer Science and Engineering
Course Outcomes:
After completion of the course, students will be able to:
Support Vector Machines: Concepts, Kernels, Hyperplane and Margin Concepts, Kernel Tricks:
RBF and Polynomial, Ensemble Learning: Bagging, Boosting, and Voting, Gradient Boosting,
AdaBoost, and XGBoost, Model Tuning and Hyperparameter Optimization.
Department of Computer Science and Engineering
Reinforcement Learning Basics and Markov Decision Processes, Introduction to Neural Networks
and Deep Learning, Cross-Validation Techniques: k-Fold, Leave-One-Out, Feature Engineering and
Feature Selection, Deployment of ML Models (Flask, Streamlit, etc.), Case Studies: Medical
Diagnosis, Spam Detection, Credit Scoring.
Textbooks:
1.Tom Mitchell, Machine Learning, McGraw-Hill Education.
2.Aurélien Géron, Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow,
O‘Reilly Media.
3.Ethem Alpaydin, Introduction to Machine Learning, MIT Press.
Reference Books:
1.Trevor Hastie, Robert Tibshirani, Jerome Friedman, The Elements of Statistical Learning,
Springer..
2. Kevin P. Murphy, Machine Learning: A Probabilistic Perspective, MIT Press.
3. Christopher Bishop, Pattern Recognition and Machine Learning, Springer.
Online Learning Resources:
Course Objectives:
1. To explain the evolving computer model called cloud computing.
2. To introduce the various levels of services that can be achieved by cloud.
3. To describe the security aspects in cloud
Course Outcomes:
After completion of the course, students will be able to
1. Ability to create cloud computing environment
2. Ability to design applications for Cloud environment
3. Design & develop back up strategies for cloud data based on features.
4. Use and Examine different cloud computing services.
5. Apply different cloud programming model as per need.
Hadoop Map Reduce: Apache Hadoop, Hadoop Map Reduce Job Execution, Hadoop
Schedulers, Hadoop Cluster setup.
Cloud Application Design: Reference Architecture for Cloud Applications, Cloud
Application Design Methodologies, Data Storage Approaches.
Python Basics: Introduction, Installing Python, Python data Types & Data Structures,
Control flow, Function, Modules, Packages, File handling, Date/Time Operations, Classes.
Department of Computer Science and Engineering
Textbooks:
1. Cloud computing A hands - on Approach ‖By Arshdeep Bahga, Vijay Madisetti,
Universities Press, 2016
2. Cloud Computing Principles and Paradigms: By RajKumar Buyya, James Broberg,
Andrzej Goscinski, Wiley, 2016
Reference Books:
1. Mastering Cloud Computing by Rajkumar Buyya, Christian Vecchiola, S Thamarai Selvi, TMH
2. Cloud computing AHands-On Approach by Arshdeep Bahga and Vijay Madisetti.
Department of Computer Science and Engineering
Online Learning
1. The concepts of classical encryption techniques and concepts of finite fields and number
theory
2. Working principles and utilities of various crypto graphic algorithms including secret key
cryptography, hashes, and message digests, and public key algorithms
3. Design issues and working principles of various authentication protocols, PKI standards
4. Various secure communication standards including Kerberos, I Psec, TLS and email
5. Concepts of cryptographic utilities and authentication mechanisms to design secure
applications
Course Outcomes:
Computer and Network Security Concepts: Computer Security Concepts, The OSI Security
Architecture, Security Attacks, Security Services, Security Mechanisms, A Model for Network
Security, Classical Encryption Techniques: Symmetric Cipher Model, Substitution
Techniques, Transposition Techniques, Steganography,
Department of Computer Science and Engineering
Block Ciphers: Traditional Block Cipher Structure, The Data Encryption Standard, Advanced
Encryption Standard: AES Structure, AES Transformation Functions
Unit 2 Number Theory 09
The Euclidean Algorithm, Modular Arithmetic, Fermat‘s and Euler‘s Theorems, The Chinese
Remainder Theorem, Discrete Logarithms, Finite Fields: Finite Fields of the Form GF(p), Finite
Fields of the Form GF(2n) .Public Key Cryptography: Principles, Public Key Cryptography
Algorithms, RSA Algorithm, Diffie Hellman Key Exchange, Elliptic Curve Cryptography.
Transport Level Security: Web Security Requirements, Transport Layer Security (TLS),
HTTPS, Secure Shell (SSH).
Firewalls: Fire wall Character is tics and Access Policy, Types of Fire walls, Fire wall
Location and Configurations.
Textbooks:
1) Cryptography and Network Security – William Stallings, Pearson Education, 8th Edition.
2) Cryptography, Network Security and Cyber Laws–Bernard Menezes,Cengage Learning,
2010 edition
Reference Books:
1) Cryptography and Network Security-BehrouzA Forouzan, Debdeep Mukhopadhyaya, Mc-
Graw Hill, 3rd Edition, 2015.
2) Network Security Illustrated, Jason Albanese and Wes Sonnenreich, MGH Publishers, 2003.
Course Outcomes:
1. Know the basic concepts of software testing and its essentials.
2. Able to identify the various bugs and correcting them after knowing the consequences of the
bug.
3. Use of program‘s control flow as a structural model is the corner stone of testing.
4. Performing functional testing using control flow and transaction flow graphs.
Unit 1 09
Unit 2 08
Domain Testing:-domains and paths, Nice & ugly domains, domain testing, domains and
interfaces testing, domain and interface testing, domains and testability.
Department of Computer Science and Engineering
Unit 4 09
Paths, Path products and Regular expressions:- path products &path expression, reduction
procedure, applications, regular expressions & flow anomaly detection. Logic Based Testing:-
over view, decision tables, path expressions, kv charts, specifications.
State, State Graphs and Transition testing:- state graphs, good & bad state graphs, state testing,
Testability tips. Graph Matrices and Application:-Motivational overview, matrix of graph,
relations, power of a matrix, node reduction algorithm, building tools
Textbooks:
The course is designed to provide awareness on different cybercrimes, cyber offenses, tools and
methods used in cybercrime.
Course Outcomes:
Introduction, How Criminals plan the Attacks, Social Engineering, Cyber stalking, Cyber
cafe and Cybercrimes, Botnets: The Fuel for Cybercrime, Attack Vector, Cloud Computing
Introduction, Proliferation of Mobile and Wireless Devices, Trends in Mobility, Credit card
Frauds in Mobile and Wireless Computing Era, Security Challenges Posed by Mobile Devices,
Registry Settings for Mobile Devices, Authentication service Security, Attacks on Mobile/Cell
Phones.
Mobile Devices:
Security Implications for Organizations, Organizational Measures for Handling Mobile,
Organizational Security Policies and Measures in Mobile Computing Era, Laptops.
Department of Computer Science and Engineering
Introduction, Proxy Servers and Anonymizers, Phishing, Password Cracking, Key loggers and
Spywares, Virus and Worms, Trojan Horse and Backdoors, Steganography, DoS and DDoS
attacks, SQL Injection, Buffer Overflow.
Introduction, Cost of Cybercrimes and IPR issues, Web threats for Organizations, Security and
Privacy Implications, Social media marketing: Security Risks and Perils for Organizations,
Social Computing and the associated challenges for Organizations.
Prescribed Textbooks:
Reference Books:
1. Cyber Security Essentials, James Graham, Richard Howard and Ryan Otson, CRC Press.
2. Introduction to Cyber Security, Chwan- Hwa(john) Wu,J. David Irwin.CRC Press
T&F Group
Course Outcomes:
After completion of the course, students will be able to
1. Enumerate the principles of continuous development and deployment, automation of
configuration management, inter-team collaboration, and IT serviceability
2. Describe Dev Ops & Dev Sec Ops methodologies and their key concepts
3. Illustrate the types of version control systems, continuous integration tools, continuous
monitoring tools, and cloud models
4. Setup Complete private Infrastructure using Version Control systems and CI/CD tools
Unit 1 8
Dev Ops: An Overview, Dev Ops: Origins, Dev Ops: Roots, Dev Ops: Practices Dev Ops:
Culture. Adopting Dev Ops: Developing the Playbook. Developing a Business Case for a Dev
Ops: Developing the Business Case
Unit 2 9
Completing the Business Model Canvas, Customer Segments, Value Segments, Value
Propositions, Channels, Customer Relationships, Revenue Streams, Key Resources, Key
Activities, Key Partnerships, Cost Structures. Dev Ops Plays for Optimizing the delivery
Pipeline: Dev Ops as an optimization Exercise, Core Themes, The Dev Ops Plays, Specializing
Core Plays
Unit 3 8
Dev Ops Plays for Driving Innovation: Optimize to Innovate, The Uber Syndrome, Innovation
and the Role of Technology, Core Themes, play: Build a Dev Ops Platform, play: Deliver Micro
services Architectures, play: DevOps an API Economy, play: Organizing for Innovation.
Department of Computer Science and Engineering
Unit 4 10
Scaling Dev Ops for the Enterprise: Core Themes, play: Dev Ops Centre of Competency, play:
Developing Culture of Innovation at Scale, play: Developing a Culture of continuous
Improvement, play: Team Models for Dev Ops, play: Standardization of Tools and Process,
play: Security Considerations for Dev Ops, Play: Dev Ops and Outsourcing.
Unit 5 10
Leading Dev Ops Adoption in the Enterprise: Play: Dev Ops as a transformation Exercise,
play: Developing a Culture of Collaboration and Trust, play: Dev Ops Thinking for the Line
of Business, play: starting with Pilot Projects, Play: Rearing Unicorns on an Aircrafts Carrier.
Appendix Case Study: Example Dev Ops Adoption Roadmap Organization Background,
Roadmap Structure, Adoption Roadmap.
Prescribed Textbooks:
1. Sanjeev Sharma, The Dev Ops Adoption Playbook, Published by John Wiley & Sons,
Inc.2017
Reference Books:
1. Sanjeev Sharma & Bernie Coyne, Dev Ops for Dummies, Published by John Wiley &
Sons, Inc.
2.Michael Huttermann, Dev Ops for Developers, Apress publishers,2012.
Online Learning Resources:
Learning DevOps through terra form infrastructure Automation Course | Udemy
Department of Computer Science and Engineering
Course Outcomes:
Core of the embedded system-general purpose and domain specific processors, ASICs, PLDs,
COTs; Memory-ROM, RAM, memory according to the type of interface, memory shadowing,
memory selection for embedded systems, Sensors, actuators, I/O components: seven segment
LED, relay, piezo buzzer, push button switch, other sub-systems: reset circuit, brownout
protection circuit, oscillator circuit real time clock, watch dog timer.
Text books:
1. Introduction to Embedded Systems - Shibu KV, Mc Graw Hill Education.
2. Computers as Components –Wayne Wolf, Morgan Kaufmann (second edition).
References:
1. Embedded System Design -Frank Vahid, Tony Grivargis, john Wiley.
2. Embedded Systems- An integrated approach - Lyla b das, Pearson education 2012.
3. Embedded Systems – Raj Kamal, TMH
Department of Computer Science and Engineering
Course Objectives:
This course is designed to enable the students to understand the fundamental principles of
Software Project management & will also have a good knowledge of the responsibilities of a
project manager and how to handle them.
Course Outcomes:
After completion of the course, students will be able to
1. Describe the fundamentals of Project Management
2. Recognize and use Project Scheduling Techniques
3. Familiarize with Project Control Mechanisms
4. Understand Team Management
5. Recognize the importance of Project Documentation and Evaluation
Unit 1 9
Conventional Software Management: The water fall model, conventional software Management
performance Evolution of Software Economics: Software Economics. Pragmatic Software Cost
Estimation Improving Software Economics: Reducing Software Product Size, Improving
Software Processes, Improving Team Effectiveness, Improving Automation, Achieving Required
Quality, Peer Inspections.
Unit 2 9
The old way and the new: The principles of conventional software Engineering, principles of
modern software management, transitioning to an iterative process.
Lifecycle phases: Engineering and production stages, inception, Elaboration, construction,
transition phases.
Artifacts of the process: The artifact sets, Management artifacts, Engineering artifacts,
programmatic artifacts
Unit 3 9
Workflows of the process: Software process workflows, Inter Trans workflows. Check points of
the Process: Major Mile Stones, Minor Milestones, Periodic status assessments. Iterative
Department of Computer Science and Engineering
Process Planning: work break down structures, planning guidelines, cost and schedule estimating,
Iteration planning process, Pragmatic planning
Unit 4 9
Unit 5 9
Text books:
1. PankajJalote,―SoftwareProjectManagementinpractice‖,5thEdition,PearsonEducation,
2017.
2. Murali K.Chemuturi,Thomas M.Cagley Jr.‖Mastering Software Project Management:
Best Practices, Tools and Techniques‖, J.Ross Publishing, 2010
3. SanjayMohapatra,―SoftwareProjectManagement‖,CengageLearning,2011
http://nptel.ac.in/courses/106101061/29
Department of Computer Science and Engineering
Course Objectives:
Course Outcomes:
Unit 3
Basics of Wireless, Sensors and Applications:
Applications, Classification of sensor networks, Architecture of sensor network, Physical layer,
MAC layer, Link layer.
Unit 4
Data Retrieval in Sensor Networks:
Routing layer, Transport layer, High-level application layer support, Adapting to the
inherent dynamic nature of WSNs, Sensor Networks and mobile robots-Security: Security in
Adhoc networks, Key management, Secure routing, Cooperation in MANETs, Intrusion
Detection systems.
Unit 5
Sensor Network Platforms and Tools: Sensor Network Hardware, Berkeley motes,
Sensor Network Programming Challenges, Node-Level Software Platforms -Operating System:
Tiny OS -Imperative Language: nesC, Data flow style language: Tiny GALS, Node Level
Simulators, ns-2 and its sensor network extension.
TEXT BOOKS:
1. Ad Hoc and Sensor Networks –Theory and Applications, Carlos Corderio Dharma
P. Aggarwal,World Scientific Publications, March 2006,ISBN –981-256-681-3
2. Wireless Sensor Networks: An Information Processing Approach, Feng Zhao, Leonidas
Guibas, Elsevier Science, ISBN –978-1-55860-914-3 ( Morgan Kauffman)
Department of Computer Science and Engineering
Course Objectives:
1. Explain and apply fundamental algorithms and techniques in the area of natural
language processing(NLP)
2. Discuss approaches to syntax and semantics in NLP.
3. Examine current methods for statistical approaches to machine translation.
4. Teach machine learning techniques used in NLP.
Course Outcomes:
After completion of the course, students will be able to
1.Understand the various NLP Applications and Organization of Natural language, able to
learn and implement realistic applications using Python.
2.Apply the various Parsing techniques, Bayes Rule, Shannon game, Entropy and Cross
Entropy.
3.Understand the fundamentals of CFG and parsers and mechanisms in ATN‘s.
4.Apply Semantic Interpretation and Language Modelling.
5.Apply the concept of Machine Translation and multilingual Information Retrieval systems
and Automatic Summarization.
Grammars and Parsing – Top – Down and Bottom-Up Parsers, Transition Network Grammars,
Feature Systems and Augmented Grammars, Morphological Analysis and the Lexicon, Parsing
Department of Computer Science and Engineering
with Features, Augmented Transition Networks, Bayes Rule, Shannon game, Entropy and
Cross Entropy.
Semantic Interpretation: Semantic & Logical form, Word senses & ambiguity, The basic
logical form language, Encoding ambiguity in the logical Form, Verbs & States in logical
form, The maticroles, Speech acts & embedded sentences, Defining semantics structure model
theory
Language Modelling: Introduction, n- Gram Models, Language model Evaluation, Parameter
Estimation, Language Model Adaption, Types of Language Models, Language-Specific
Modelling Problems, Multilingual and Cross lingual Language Modelling
Unit 5
Machine Translation
Survey: Introduction, Problems of Machine Translation, Is Machine Translation Possible, Brief
History, Possible Approaches, Current Status . Anusarakaor Language Accessor: Background,
Cutting the GordianKnot, The Problem, Structure of Anusaraka System, User Interface,
Linguistic Area, Giving up Agreement in Anusarsaka Output, Language Bridges.
Multilingual Information Retrieval
Introduction, Document Pre-processing, Monolingual Information Retrieval, CLIR, MLIR,
Evaluation in Information Retrieval, Tools, Software and Resources.
Multilingual Automatic Summarization
Introduction, Approaches to Summarization, Evaluation, How to Builda Summarizer,
Competitions and Datasets.
Textbooks:
1. James Allen, Natural Language Understanding, 2nd Edition, 2003, Pearson Education.
2. Multilingual Natural Language Processing Applications: From Theory To Practice-
Daniel M.Bikel and ImedZitouni, Pearson Publications.
3. Natural Language Processing, A paninian perspective, Akshar Bharathi,
Vineetchaitanya,Prentice –Hall of India.
Reference Books:
1. Charniack, Eugene, Statistical Language Learning, MITPress,1993.
2. Jurafsky, Dan and Martin, James, Speech and Language Processing, 2nd Edition,
Prentice Hall,2008.
Department of Computer Science and Engineering
1. To study, learn, and understand the main concepts of advanced operating systems
(parallel
processing systems, distributed systems, real time systems, network operating
systems,
and open source operating systems)
2. Hardware and software features that support these systems.
Course Outcomes:
1. Understand the design approaches of advanced operating systems
2. Analyze the design issues of distributed operating systems
3. Evaluate design issues of multi processor operating systems.
4. Identify the requirements Distributed File System and Distributed Shared Memory.
5. Formulate the solutions to schedule the real time applications.
Unit 1
Unit 4
Unit 5
TEXT BOOK:
REFERENCE BOOK:
1. Distributed Systems: Andrew S. Tanenbaum, Maarten Van Steen, Pearson Prentice Hall,
Edition – 2, 2007.
Department of Computer Science and Engineering
Course Outcomes:
After completion of the course, students will be able to
1. Understand the Mathematical and statistical prospectives of machine learning algorithms through
python programming
2. Appreciate the importance of visualization in the data analytics solution.
3. Derive insights using Machine learning algorithms
List of Experiments:
Note:
Write a program to demonstrate the working of the decision tree based ID3 algorithm. Use an
appropriate data set for building the decision tree and apply this knowledge to classify a new
sample.
Exercise 4
Build an Artificial Neural Network by implementing the Back-propagation algorithm and test
the same using appropriate data sets.
Exercise 5
Write a program to implement the naïve Bayesian classifier for a sample training data set stored
as a .CSV file. Compute the accuracy of the classifier, considering few test data sets.
Exercise 6
Assuming a set of documents that need to be classified, use the naïve Bayesian Classifier model
to perform this task. Built-in Java classes/API can be used to write the program. Calculate the
accuracy, precision, and recall for your data set.
Exercise 7
Write a program to construct a Bayesian network considering medical data. Use this model to
demonstrate the diagnosis of heart patients using standard Heart Disease Data Set. You can use
Java/Python ML library classes/API.
Exercise 8
Apply EM algorithm to cluster a set of data stored in a .CSV file. Use the same data set for
clustering using k-Means algorithm. Compare the results of these two algorithms and comment
on the quality of clustering. You can add Java/Python ML library classes/API in the program.
Exercise 9
Write a program to implement k-Nearest Neighbour algorithm to classify the iris data set. Print
both correct and wrong predictions. Java/Python ML library classes can be used for this problem.
Exercise 10
Implement the non-parametric Locally Weighted Regression algorithm in order to fit data points.
Select appropriate data set for your experiment and draw graphs..
Projects
1. Predicting the Sale price of a house using Linear regression
2. Spam classification using Naïve Bayes algorithm
3. Predict car sale prices using Artificial Neural Networks
4. Predict Stock market trends using LSTM
5. Detecting faces from images
References:
Exercise 1
Write a C program that contains a string (char pointer) with a value Hello world‘. The program
should XOR each character in this string with 0 and displays the result.
Exercise 2
Write a C program that contains a string (char pointer) with a value Hello world‘. The program
should AND or and XOR each character in this string with 127 and display the result.
Exercise 3
Write a Java program to perform encryption and decryption using the following algorithms
a. Ceaser cipher b. Substitution cipher c. Hill Cipher
Exercise 4
Write a C/JAVA program to implement the DES algorithm logic.
Exercise 5
Write a C/JAVA program to implement the Blowfish algorithm logic.
Exercise 6
Write a C/JAVA program to implement the Rijndael algorithm logic.
Exercise 7
Write the RC4 logic in Java Using Java cryptography; encrypt the text ―Hello world‖ using
Blowfish. Create your own key using Java key tool.
Exercise 8
Write a Java program to implement RSA algorithm.
Exercise 9
Implement the Diffie-Hellman Key Exchange mechanism using HTML and JavaScript.
Department of Computer Science and Engineering
Exercise 10
Calculate the message digest of a text using the SHA-1 algorithm in JAVA.
Exercise 11
Calculate the message digest of a text using the MD5 algorithm in JAVA.