# BSc.CSIT Fourth Semester Syllabus | TU Syllabus

## BSc.CSIT Fourth Semester Syllabus Overview

BSc.CSIT Fourth Semester course code is shown below in table:

### Course Title 1 : Theory of Computation

Full Marks: 60 + 20 + 20

Course No: CSC257

Pass Marks: 24 + 8 + 8 Nature of the Course: Theory + Lab

Credit Hrs: 3

Semester: IV

Course Description: This course presents a study of Finite State Machines and their languages. It covers the details of finite state automata, regular expressions, context free grammars.  More, the course includes design of the Push-down automata and Turing Machines.  The course also includes basics of undecidabilty and intractability.

Course Objectives: The main objective of the course is to introduce concepts of the models of computation and formal language approach to computation.  The general objectives of this course are to, introduce concepts in automata theory and theory of computation, design different finite state machines and grammars and recognizers for different formal languages, identify different formal language classes and their relationships, determine the decidability and intractability of computational problems.

Course Contents:

#### Unit I: Basic Foundations (3 Hrs.)

1.1.Review of Set Theory, Logic, Functions, Proofs

1.2.Automata, Computability and Complexity: Complexity Theory, Computability Theory, Automata Theory

1.3.Basic concepts of Automata Theory: Alphabets, Power of Alphabet, Kleen Closure Alphabet, Positive Closure of Alphabet, Strings, Empty String, Substring of a string, Concatenation of strings, Languages, Empty Language

#### Unit II: Introduction to Finite Automata (8 Hrs.)

2.1Introduction to Finite Automata, Introduction of Finite State Machine

2.2Deterministic Finite Automata (DFA), Notations for DFA,  Language of DFA, Extended Transition Function of DFA Non-Deterministic Finite Automaton (NFA), Notations for NFA, Language of NFA, Extended Transition

2.3Equivalence of DFA and NFA, Subset-Construction

2.4Method for reduction of NFA to DFA, Theorems for equivalence of Language accepted by DFA and NFA

2.5Finite Automaton with Epsilon Transition (ε – NFA), Notations for ε – NFA, Epsilon Closure of a State, Extended Transition Function of ε – NFA, Removing Epsilon Transition using the concept of Epsilon Closure, Equivalence of NFA and ε –NFA,

Equivalence of DFA and ε – NFA

2.6Finite State Machines with output: Moore machine and Mealy Machines

#### Unit III: Regular Expressions (6 Hrs.)

3.1Regular Expressions, Regular Operators, Regular Languages and their applications, Algebraic Rules for Regular Expressions

3.2Equivalence of Regular Expression and Finite Automata, Reduction of Regular Expression to ε – NFA, Conversion of DFA to Regular Expression

3.3Properties of Regular Languages, Pumping Lemma, Application of Pumping Lemma, Closure Properties of Regular Languages over (Union, Intersection, Complement) Minimization of Finite State Machines: Table Filling Algorithm

#### Unit IV:  Context Free Grammar (9 Hrs.)

4.1Introduction to Context Free Grammar (CFG), Components of CFG, Use of CFG, Context Free Language (CFL)

4.2Types of derivations: Bottomup and Topdown approach, Leftmost and Rightmost, Language of a grammar

4.3Parse tree and its construction, Ambiguous grammar, Use of parse tree to show ambiguity in grammar

4.4Regular Grammars: Right Linear and Left Linear, Equivalence of regular grammar and finite automata

4.5Simplification of CFG: Removal of Useless symbols, Nullable Symbols, and Unit

Productions, Chomsky Normal Form (CNF), Greibach Normal Form (GNF), BackusNaur Form (BNF)

4.6Context Sensitive Grammar, Chomsky Hierarchy Pumping Lemma for CFL, Application of Pumping Lemma, Closure Properties of CFL

#### Unit V:  Push Down Automata (7 Hrs.)

5.1Introduction to Push Down Automata (PDA), Representation of PDA, Operations of PDA, Move of a PDA, Instantaneous Description for PDA

5.2Deterministic PDA, Non Deterministic PDA, Acceptance of strings by PDA, Language of PDA

5.3Construction of PDA by Final State , Construction of PDA by Empty Stack,

5.4Conversion of PDA by Final State to PDA accepting by Empty Stack and vice-versa,  Conversion of CFG to PDA, Conversion of PDA to CFG

#### Unit VI:  Turing Machines (10 Hrs.)

6.1Introduction to Turing Machines (TM), Notations of Turing Machine, Language of a Turing Machine, Instantaneous Description for Turing Machine, Acceptance of a string by a Turing Machines

6.2Turing Machine as a Language Recognizer, Turing Machine as a Computing Function, Turing Machine with Storage in its State, Turing Machine as a enumerator of stings of a language, Turing Machine as Subroutine

6.3Turing Machine with Multiple Tracks, Turing Machine with Multiple Tapes, Equivalence of Multitape-TM and Multitrack-TM, Non-Deterministic Turing Machines, Restricted Turing Machines: With Semi-infinite Tape, Multistack Machines, Counter Machines

6.4Curch Turing Thesis, Universal Turing Machine, Turing Machine and Computers,  Encoding of Turing Machine, Enumerating Binary Strings, Codes of Turing Machine, Universal Turing Machine for encoding of Turing Machine

#### Unit VII: Undecidability and Intractability (5 Hrs.)

7.1Computational Complexity, Time and Space complexity of A Turing Machine,

Intractability

7.2Complexity Classes, Problem and its types: Absract, Decision, Optimization

7.3Reducibility, Turing Reducible, Circuit Satisfiability, Cook’s Theorem,

7.4Undecidability, Undecidable Problems: Post’s Correspondence Problem, Halting Problem and its proof, Undecidable Problem about Turing Machines

#### Laboratory Works:

The laboratory work consists of design and implementation of finite state machines like DFA,

NFA, PDA, and Turing Machine. Students are highly recommended to construct Tokenizers/ Lexers over/for some language. Students are advised to use regex and Perl (for using regular expressions), or any other higher level language for the laboratory works.

Text Books:

1.John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman, Introduction to Automata Theory, Languages, and Computation,3rd Edition, Pearson – Addison-Wesley.

#### Reference Books:

1. Harry R. Lewis and Christos H. Papadimitriou, Elements of the Theory of Computation,2nd Edition, Prentice Hall.
2. Michael Sipser, Introduction to the Theory of Computation, 3rd Edition, Thomson Course Technology
3. Efim Kinber, Carl Smith, Theory of Computing: A Gentle introduction, Prentice- Hall.
4. John Martin, Introduction to Languages and the Theory of Computation, 3rd Edition, Tata McGraw Hill.
5. Kenneth H. Rosen, Discrete Mathematics and its Applications to Computers Science, WCB/Mc-Graw Hill.

### Course Title 2: Computer Networks

Full Marks: 60 + 20 + 20

Course No: CSC258

Pass Marks: 24 + 8 + 8

Nature of the Course: Theory + Lab

Credit Hrs: 3

Semester: IV

Course Description:This course introduces concept of computer networking and discuss the different layers of networking model.

Course Objective: The main objective of this course is to introduce the understanding of the concept of computer networking with its layers, topologies, protocols & standards, IPv4/IPv6 addressing, Routing and Latest Networking Standards

Course Contents:

#### Unit 1: Introduction to Computer Network (6Hrs.)

1.1.Definitions, Uses, Benefits

1.2.Overview of Network Topologies (Star, Tree, Bus,…)

1.3.Overview of Network Types (PAN, LAN, CAN, MAN,…)

1.4.Networking Types (Client/Server, P2P)

1.5.Overview of Protocols and Standards

1.6.OSI Reference Model

1.7.TCP/IP Models and its comparison with OSI.

1.8.Connection and Connection-Oriented Network Services

1.9.Internet, ISPs, Backbone Network Overview

#### Unit 2: Physical Layer and Network Media (4Hrs.)

2.1.Network Devices: Repeater, Hub, Switch, Bridge, Router

2.2.Different types of transmission medias (wired: twisted pair, coaxial, fiber optic, Wireless: Radio waves, micro waves, infrared)

2.3.Ethernet Cable Standards (UTP & Fiber cable standards)

2.4.Circuit, Message & Packet Switching

2.5.ISDN: Interface and Standards

3.1.Function of Data Link Layer (DLL)

3.2.Overview of Logical Link Control (LLC) and Media Access Control (MAC)

3.3.Framing and Flow Control Mechanisms

3.4.Error Detection and Correction techniques

3.5.Channel Allocation Techniques (ALOHA, Slotted ALOHA)

3.6.Ethernet Standards (802.3 CSMA/CD, 802.4 Token Bus, 802.5 Token Ring)

3.7.Wireless LAN: Spread Spectrum, Bluetooth, Wi-Fi

3.8.Overview Virtual Circuit Switching, Frame Relay& ATM

3.9.DLL Protocol: HDLC, PPP

#### Unit 4: Network Layer (10Hrs.)

4.1.Introduction and Functions

4.5.IPv4 and IPv6 Datagram Formats

4.6.Comparison of IPv4 and IPv6 Addressing

4.8.Routing

4.8.1.Introduction and Definition

4.8.2.Types of Routing (Static vs Dynamic, Unicast vs Multicast, Link State vs  Distance Vector, Interior vs Exterior)

4.8.3.Path Computation Algorithms: Bellman Ford, Dijkstra’s

4.8.4.Routing Protocols: RIP, OSPF & BGP

4.9.      Overview of IPv4 to IPv6 Transition Mechanisms

4.10.Overview of ICMP/ICMPv6&NATing

4.11.Overview of Network Traffic Analysis

4.12.Security Concepts: Firewall & Router Access Control

#### Unit 5: Transport Layer (6Hrs.)

5.1.Introduction, Functions and Services

5.2.Transport Protocols: TCP, UDP and Their Comparisons

5.3.Connection Oriented and Connectionless Services

5.4.Congestion Control: Open Loop & Closed Loop, TCP Congestion Control

5.5.Traffic Shaping Algorithms: Leaky Bucket & Token Bucket

5.6.Queuing Techniques for Scheduling

5.7.Introduction to Ports and Sockets, Socket Programming

#### Unit 6: Application Layer (7Hrs.)

6.1.Introduction and Functions

6.2.Web &HTTP

6.3.DNS and the Query Types

6.4.File Transfer and Email Protocols: FTP, SFTP, SMTP, IMAP, POP3

6.5.Overview of Application Server Concepts: Proxy, Web, Mail

6.6.Network Management: SNMP

#### Unit 7: Multimedia &Future Networking (4Hrs.)

7.1.Overview Multimedia Streaming Protocols: SCTP

7.2.Overview of SDN and its Features, Data and Control Plane

7.3.Overview of NFV

7.4.Overview of NGN

#### Laboratory Works:

The lab activities under this subject should accommodate at least the following;

1. Understanding of Network equipment, wiring in details
2. OS (Ubuntu/CentOS/Windows) installation, practice on basic Networking commands (ifconfig/ipconfig, tcpdump, netstat, dnsip, hostname, route…)
3. Overview of IP Addressing and sub-netting, static ip setting on Linux/windows machine, testing
4. Introduction to Packet Tracer, creating of a LAN and connectivity test in the LAN, creation of VLAN and VLAN trunking.
5. Basic Router Configuration, Static Routing Implementation
6. Implementation of  Dynamic/interior/exterior routing (RIP, OSPF, BGP)
7. Firewall Implementation, Router Access Control List (ACL)
8. Packet capture and header analysis by wire-shark (TCP,UDP,IP)
9. DNS, Web, FTP server configuration (shall use packet tracer, GNS3)
10. Case Study: Network Operation Center Visit (ISP, Telecom, University Network)
11. LAB Exam, Report and VIVA

Text Books:

1. Data Communications and Networking, 4th Edition, Behrouz A Forouzan. McGraw-Hill
2. Computer Networking; A Top Down Approach Featuring The Internet, 2nd Edition, Kurose James F., Ross W. Keith PEARSON EDUCATION ASIA

### Course Title 3: Operating Systems

Full Marks:60+ 20+20

Course No: CSC259

Pass Marks: 24+8+8

Nature of the Course: Theory + Lab

Credit Hrs: 3

Semester: IV

Course Description: This course includes the basic concepts of operating system components. It consists of process management, deadlocks and process synchronization, memory management techniques, File system implementation, and I/O device management principles.  It also includes case study on Linux operating system.

Course Objectives:

• Describe need and role of operating system.
• Understand OS components such a scheduler, memory manager, file system handlers and I/O device managers.
• Analyze and criticize techniques used in OS components
• Demonstrate and simulate algorithms used in OS components
• Identify algorithms and techniques used in different components of Linux

Course Contents:

#### Unit 1: Operating System Overview (4 Hrs.)

1. Definition, Two views of operating system, Evolution of operating system, Types of OS.
1. System Call, Handling System Calls, System Programs, Operating System Structures, The Shell, Open Source Operating Systems

#### Unit 2: Process Management (10 Hrs.)

• Process vs Program, Multiprogramming, Process Model, Process States, Process Control Block.
• Inter Process Communication, Race Condition, Critical Section
• Implementing Mutual Exclusion: Mutual Exclusion with Busy Waiting (Disabling Interrupts, Lock Variables, Strict Alteration, Peterson’s Solution, Test and Set Lock), Sleep and Wakeup, Semaphore, Monitors, Message Passing,
• Classical IPC problems: Producer Consumer, Sleeping Barber, Dining Philosopher Problem
• Process Scheduling: Goals, Batch System Scheduling (First-Come First-Served, Shortest Job First, Shortest Remaining Time Next), Interactive System Scheduling (Round-Robin

Scheduling, Priority Scheduling, Multiple Queues), Overview of Real Time System

Scheduling

#### Unit 3: Process Deadlocks (6 Hrs.)

• Introduction, Deadlock Characterization, Preemptable and Non-preemptable Resources, Resource – Allocation Graph, Conditions for Deadlock

#### Unit 4: Memory Management(8 Hrs.)

• Introduction,          Monoprogramming     vs.        Multi-programming,    Modelling Multiprogramming, Multiprogramming with fixed and variable partitions, Relocation and Protection.
• Memory management (Bitmaps & Linked-list), Memory Allocation Strategies
• Virtual memory: Paging, Page Table, Page Table Structure, Handling Page Faults, TLB’s
• Page Replacement Algorithms: FIFO, Second Chance, LRU, Optimal, LFU, Clock, WS-

Clock, Concept of Locality of Reference, Belady’s Anomaly

• Segmentation:         Need     of            Segmentation, its           Drawbacks,     Segmentation with Paging(MULTICS)

#### Unit 5:  File Management (6 Hrs.)

• File Overview: File Naming, File Structure, File Types, File Access, File Attributes, File Operations, Single Level, two Level and Hierarchical Directory Systems, File System Layout.
• Implementing Files: Contiguous allocation, Linked List Allocation, Linked List Allocation using Table in Memory, Inodes.
• Directory Operations, Path Names, Directory Implementation, Shared Files
• Free Space Management: Bitmaps, Linked List

#### Unit 6: Device Management (6 Hrs.)

• Classification of IO devices, Controllers, Memory Mapped IO, DMA Operation, Interrupts
• Goals of IO Software, Handling IO(Programmed IO, Interrupt Driven IO, IO using DMA), IO Software Layers (Interrupt Handlers, Device Drivers)
• Disk Structure, Disk Scheduling (FCFS, SSTF, SCAN, CSCAN, LOOK, CLOOK), Disk Formatting (Cylinder Skew, Interleaving, Error handling), RAID

#### Unit 7: Linux Case Study (5 Hrs.)

7.1 History, Kernel Modules, Process Management, Scheduling, Inter-process Communication, Memory Management, File System Management Approaches, Device Management Approaches.

#### Laboratory Works:

The laboratory work includes solving problems in operating system. The lab work should include at least;

• Learn basic Linux Commands
• Create process, threads  and implement IPC techniques
• Simulate process Scheduling algorithms and deadlock detection algorithms
• Simulate page replacement algorithms
• Simulate free space management techniques and disk scheduling algorithms.

Text Books:

1.Modern Operating Systems: Andrew S. Tanenbaum, PH1 Publication, Third  edition, 2008

#### Reference Books:

1. Abraham Silberschatz, Peter Baer Galvin and Greg Gagne, “Operating System Concepts”, John Wiley & Sons (ASIA) Pvt. Ltd, Seventh edition, 2005.
2. Harvey M. Deitel, Paul J. Deitel, and David R. Choffnes, “Operating Systems, Prentice Hall, Third edition, 2003.

#### Course Title: Database Management System

Full Marks: 60 + 20 + 20

Course No: CSC260

Pass Marks: 24 + 8 + 8

Nature of the Course: Theory + Lab

Credit Hrs: 3

Semester: IV

Course Description: The course covers the basic concepts of databases, database system concepts and architecture, data modeling using ER diagram, relational model, SQL, relational algebra and calculus, normalization, transaction processing, concurrency control,  and database recovery.

Course Objective: The main objective of this course is to introduce the basic concepts of database, data modeling techniques using entity relationship diagram, relational algebra and calculus, basic and advanced features SQL, normalization, transaction processing, concurrency control, and recovery techniques.

Course Contents:

#### Unit 1: Database and Database Users (2 Hrs.)

Introduction; Characteristics of the Database Approach; Actors on the Scene; Workers behind the Scene; Advantages of Using the DBMS Approach

#### Unit 2: Database System – Concepts and Architecture (3 Hrs.)

Data Models, Schemas, and Instances; Three-Schema Architecture and Data Independence; Database Languages and Interfaces; the Database System Environment; Centralized and Client/Server Architectures for DBMSs; Classification of Database Management Systems

#### Unit 3: Data Modeling Using the Entity-Relational Model (6 Hrs.)

Using High-Level Conceptual Data Models for Database Design; Entity Types, Entity Sets, Attributes, and Keys; Relationship Types, Relationship Sets, Roles, and Structural Constraints; Weak Entity Types; ER Diagrams, Naming Conventions, and Design Issues; Relationship Types of Degree Higher Than Two; Subclasses, Superclasses, and Inheritance; Specialization and Generalization; Constraints and Characteristics of Specialization and Generalization

#### Unit 4: The Relational Data Model and Relational Database Constraints (3 Hrs.)

Relational Model Concepts; Relational Model Constraints and Relational Database Schemas; Update Operations, Transactions, and Dealing with Constraint Violations

#### Unit 5: The Relational Algebra and Relational Calculus (5 Hrs.)

Unary Relational Operations: SELECT and PROJECT; Relational Algebra Operations from Set Theory; Binary Relational Operations: JOIN and DIVISION; Additional Relational Operations; the Tuple Relational Calculus; the Domain Relational Calculus

#### Unit 6: SQL (8 Hrs.)

Data Definition and Data Types; Specifying Constraints; Basic Retrieval Queries; Complex

Retrieval Queries; INSERT, DELETE, and UPDATE Statements; Views

#### Unit 7: Relational Database Design (7 Hrs.)

Relational Database Design Using ER-to-Relational Mapping; Informal Design Guidelines for Relational Schemas; Functional Dependencies; Normal Forms Based on Primary Keys; General Definitions of Second and Third Normal Forms; Boyce-Codd Normal Form; Multivalued Dependency and Fourth Normal Form; Properties of Relational Decomposition

#### Unit 8: Introduction to Transaction Processing Concepts and Theory (4 Hrs.)

Introduction to Transaction Processing; Transaction and System Concepts; Desirable Properties of Transactions; Characterizing Schedules Based on Recoverability; Characterizing Schedules Based on Serializability

#### Unit 9: Concurrency Control Techniques (4 Hrs.)

Two-Phase Locking Technique; Timestamp Ordering; Multiversion Concurrency Control; Validation (Optimistic) Techniques and Snapshot Isolation Concurrency Control

#### Unit 10: Database Recovery Techniques (3 Hrs.)

Recovery Concepts; NO-UNDO/REDO Recovery Based on Deferred Update; Recovery Technique Based on Immediate Update; Shadow Paging; Database Backup and Recovery from Catastrophic Failures

#### Laboratory Works:

The laboratory work includes writing database programs to create and query databases using basic and advanced features of structured query language (SQL).

Text Books:

1. Fundamentals of Database Systems; Seventh Edition; Ramez Elmasri, Shamkant B. Navathe; Pearson Education
2. Database System Concepts; Sixth Edition; Avi Silberschatz, Henry F Korth, S Sudarshan; McGraw-Hill

#### Reference Books:

1. Database Management Systems; Third Edition; Raghu Ramakrishnan, Johannes Gehrke; McGraw-Hill
2. A First Course in Database Systems; Jaffrey D. Ullman, Jennifer Widom; Third Edition; Pearson Education Limited

### Course Title 5 : Artificial Intelligence

Full Marks: 60 + 20 + 20

Course No: CSC261

Pass Marks: 24 + 8 + 8

Nature of the Course: Theory + Lab

Credit Hrs: 3

Semester: IV

Course Description: The course introduces the ideas and techniques underlying the principles and design of artificial intelligent systems. The course covers the basics and applications of AI, including: design of intelligent agents, problem solving, searching, knowledge representation systems, probabilistic reasoning, neural networks, machine learning and natural language processing.

Course Objectives: The main objective of the course is to introduce fundamental concepts of Artificial Intelligence.  The general objectives are to learn about computer systems that exhibit intelligent behavior, design intelligent agents, identify AI problems and solve the problems, design knowledge representation and  expert systems, design neural networks for solving problems, identify different machine learning paradigms and identify their practical applications.

Course Contents:

#### Unit I: Introduction (3 Hrs.)

1.1.Artificial Intelligence (AI), AI Perspectives: acting and thinking humanly, acting and thinking rationally

1.2.History of AI

1.3.Foundations of AI

1.4.Applications of AI

#### Unit II: Intelligent Agents (4 Hrs.)

2.1.Introduction of agents, Structure of Intelligent agent, Properties of Intelligent Agents

2.2.Configuration of Agents, PEAS description of Agents

2.3.Types of Agents: Simple Reflexive, Model Based, Goal Based, Utility Based.

2.4.Environment Types: Deterministic, Stochastic, Static, Dynamic, Observable, Semiobservable, Single Agent, Multi Agent

#### Unit III: Problem Solving by Searching (9 Hrs.)

3.1.Definition, Problem as a state space search, Problem formulation, Well-defined problems,

3.2.Solving Problems by Searching, Search Strategies, Performance evaluation of search techniques

3.3.Uninformed Search: Depth First Search, Breadth First Search, Depth Limited Search, Iterative Deepening Search, Bidirectional Search

3.4.Informed Search: Greedy Best first search, A* search, Hill Climbing, Simulated Annealing

3.5.Game playing, Adversarial search techniques, Mini-max Search, Alpha-Beta Pruning.

3.6.Constraint Satisfaction Problems

#### Unit IV:  Knowledge Representation (14 Hrs.)

4.1.Definition and importance of Knowledge, Issues in Knowledge Representation, Knowledge Representation Systems, Properties of Knowledge Representation Systems.

4.2.Types of Knowledge Representation Systems: Semantic Nets, Frames, Conceptual Dependencies, Scripts,  Rule Based Systems, Propositional Logic, Predicate Logic

4.3.Propositional Logic(PL): Syntax, Semantics, Formal logic-connectives, truth tables, tautology, validity, well-formed-formula,  Inference using Resolution, Backward Chaining and Forward Chaining

4.4.Predicate Logic: FOPL, Syntax, Semantics, Quantification, Inference with FOPL: By converting into PL (Existential and universal instantiation), Unification and lifting, Inference using resolution

4.5.Handling Uncertain Knowledge, Radom Variables, Prior and Posterior Probability, Inference using Full Joint Distribution, Bayes’ Rule and its use, Bayesian Networks, Reasoning in Belief Networks

4.6.Fuzzy Logic

#### Unit V:  Machine Learning (9 Hrs.)

5.1.Introduction to Machine Learning, Concepts of Learning, Supervised, Unsupervised and Reinforcement Learning

5.2.Statistical-based Learning: Naive Bayes Model

5.3.Learning by Genetic Algorithm

5.4.Learning with Neural Networks: Introduction, Biological Neural Networks Vs. Artificial Neural Networks (ANN), Mathematical Model of ANN, Types of ANN: Feed-forward, Recurrent, Single Layered, Multi-Layered, Application of Artificial Neural Networks, Learning by Training ANN, Supervised vs. Unsupervised Learning, Hebbian Learning, Perceptron Learning, Back-propagation Learning

#### Unit VI: Applications of AI (6 Hrs.)

6.1.Expert Systems, Development of  Expert Systems

6.2.Natural Language Processing: Natural Language Understanding and Natural Language Generation, Steps of Natural Language Processing

6.3.Machine Vision Concepts

6.4.Robotics

#### Laboratory Works:

The laboratory work consists of design and implementation of intelligent agents and expert systems, searching techniques, knowledge representation systems and machine learning techniques. Students are also advised to implement Neural Networks, Genetic Algorithms for solving practical problems of AI. Students are advised to use LISP, PROLOG, or any other high level language.

#### Text Books:

1.Stuart Russel and Peter Norvig, Artificial Intelligence A Modern Approach, Pearson Reference Books:

1. E. Rich, K. Knight, Shivashankar B. Nair, Artificial Intelligence, Tata McGraw Hill.
2. George F. Luger, Artificial Intelligence: Structures and Strategies for Complex Problem Solving, Benjamin/Cummings Publication
3. D. W. Patterson, Artificial Intelligence and Expert Systems, Prentice Hall.
4. P. H. Winston, Artificial Intelligence, Addison Wesley.