Anda di halaman 1dari 6

Department of Information Technology

VR Siddhartha Engineering College

IT 5001: Design And Analysis of Algorithms


Programme: B.Tech (_IT_) Course : Elective Course Context and Overview (100 words): Year : III/IV Semester : V Hours :4

Credits : 3

Design and Analysis of Algorithms is a core course included in V Semester for the B.Tech(IT) curriculum. The prerequisite for this course is Data structures, learned in III semester. The course mainly focuses on the design of algorithms with various techniques. The main objective of the course is to determine the complexities in terms of time and space. The students can be flourished with distinct areas of algorithms such as devise, validate, analyze and test an algorithm. Students learn various techniques like Divide and Conquer, Greedy method, Dynamic programming method, Backtracking and Branch and bound methods in designing the algorithms. The students also learn in applying the techniques to find the solutions to several problems such as traveling salesperson problem, Knapsack problem, Graph coloring and Hamming distance.
Prerequisites Courses: Data Structures with C or CPP Textbook references (IEEE format):

[1] E. Horowitz, et al., Fundamentals of Computer Algorithms: Galgotia Publications Pvt. Ltd. Reference Books: [2] M.T.Goodrich and R.Tomassia, Algorithm Design: Foundations, Analysis and Internet examples: John Wiley and sons. [3] T.H.Cormen, et al., Introduction to Algorithms, 2 ed.: PHI Pvt. Ltd. / Pearson Education. [4] A. Weiss, Data structures and Algorithm Analysis in C++ vol. 2: Pearson Education
Additional Resources (NPTEL, MIT Video Lectures, Web resources etc.):

[5] Abhiram.Lecture videos on algorithms http://nptel.iitm.ac.in/video.php?courseId=1065 [6] Charles. Lecture on Algorithms MIT http://academicearth.org/courses/introduction-to-algorithms
Course Learning Objectives: The Objectives of this Course are

To understand the concepts of asymptotic notation in measuring algorithm behavior To compute the complexities in terms of time and space for

Correlates to Program Educational Objectives (PEOs) I, II, III

I, II, III

Course Design Template version 1.0

Department of Information Technology

VR Siddhartha Engineering College

different algorithms To understand various algorithm techniques like Divide and Conquer, Greedy method, Dynamic programming method, Backtracking and Branch and bound.

II, III, V

To determine solutions for several applications like II, III traveling salesperson problem, Knapsack problem, Graph coloring and Hamming distance To get familiar with the concepts of Non deterministic II, III algorithms
Course Topics: (Example Course topics given for Computer Graphics Course) Topics UNIT - I 1. Introduction Lecture Hours

1.1.
1.2.

Algorithm, Pseudo code for expressing algorithm Performance analysis-Space complexity, Time complexity

1 1 1 6 1

1.3.
1.4

Asymptotic Notation- Big oh notation, Omega notation, Theta notation and Little oh notation Probabilistic analysis, Amortized analysis. Disjoint Sets, disjoint set operations, union Finding algorithms, spanning trees, connected components and biconnected components.

1.5

UNIT - II

2. Divide and conquer 1.4. General method 1.5. Applications-Binary search 2.3 Quick sort 2.4 Merge sort 2.5 Strassens matrix multiplication 3. Greedy method 3.1 General method 3.2 Applications-Job sequencing with deadlines 3.4 knapsack problem 3.5 Minimum cost spanning trees 3.6 Optimal storage on tapes 3.7 Optimal merge patterns 3.8 Single source shortest path problem
UNIT - III

1 1 1 1 1 1 1 2 4 1 1 2

12

14

4. Dynamic Programming

Course Design Template version 1.0

Department of Information Technology

VR Siddhartha Engineering College

General method 4.2 Applications-Matrix chain multiplication 4.3 Multi stage graph problem 4.4 Optimal binary search trees 4.5 0/1 knapsack problem 4.6 All pairs shortest path problem 4.7 Traveling sales person problem 5. Backtracking 5.1 General method 5.2 Applications-n-queen problem 5.3 Sum of subsets problem 5.4 Graph coloring 5.5 Hamiltonian cycles 5.6 0/1 knapsack problem
UNIT - IV 6. Branch and Bound 6.1 General method 6.2 Applications- Traveling sales person problem 6.3 0/1 knapsack problem 6.3.1 LC Branch and Bound solution 6.3.2 FIFO Branch and Bound solution 7. NP-Hard and NP-Complete problems 7.1 Basic concepts 7.2 Non deterministic algorithms 7.3 NP Hard classes 7.4 NP Complete classes 7.5 Cooks theorem

4.1

1 1 3 3 3 1 2 1 2 1 1 1 2

1 2 2 2 1 1 1 1 1

Selected subset of Program Outcomes for this Course as identified by NBA (from ABET): Program Outcome a. An ability to apply knowledge of mathematics, science, and Engineering Knowledge of Mathematical Induction is applied in algorithm techniques, Set theory is applied for finding spanning trees, Functions, Relations, and Recurrence relations are used for the development of algorithms and basics of graph theory is used in finding solutions to several problems. b. an ability to design and conduct experiments, as well as to analyze and interpret data The students will be able to design the algorithms for various problems and analyze the solution which is optimal c. an ability to design a system, component, or process to meet desired needs within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability d. an ability to function on multidisciplinary teams

e. an ability to identify, formulate, and solve engineering problem In this course student will be able to provide solutions for various problems using different techniques. f. an understanding of professional and ethical responsibility

Course Design Template version 1.0

Department of Information Technology

VR Siddhartha Engineering College

g.

An ability to communicate effectively

With this course the students can be assigned different problems to provide solutions with complexities in best-average-worst cases
h. i. The broad education necessary to understand the impact of engineering solutions in a global, economic, environmental and societal context

A Recognition of the need for, and an ability to engage in life-long learning Students can get engaged with this fundamentals in developing algorithms j. Acknowledge of contemporary issues k. An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

The course helps the student in determining the solutions for various problems using algorithmic techniques.

Course Learning Outcomes, PO Levels, Instructional Methods, Knowledge Categories: CLO(Course Learning Outcome)/ Competencies: Note : Table need to be attached to justify CLOs At the end of the course the student should be able to Levels of coverage: Slightly-1, moderate-2, completely-3 (1:2 means Programme outcome 1 is met moderately by CLO 1 Cognitive Levels: Note : Table need to be attached to justify levels Remember, Understand, Apply, Analyze, Evaluate, Create Knowledge Categories: Factual, Conceptual, Procedural, Fundamental Design Concepts, Criteria and Specifications, Practical Constraints, Design Instrumentalities, Metacognitive.

Instructional Methods:
M1 - Lecture interspersed with discussions M3 - Tutorial M5 - Group Discussion M7 - Group Project Innovative Delivery Methods/ Technologies M9 - Promote Active Learning M11 - Video Lectures (NPTEL, SONET, MIT etc) M2 - Lecture with a quiz M4 - Laboratory M6 - Group Assignment M8 - Term Paper/Report M10 Course/ Learning Management System M12 - ICT tools

Note : this table needs to be modified with POs/levels CLO/ Competency POs - Levels Cognitive Level

Knowledge Category

Instructional Methods

Course Design Template version 1.0

Department of Information Technology

VR Siddhartha Engineering College

CL O1

CL O2

CL O3

CL O4

CL O5

To understand the concepts of asymptotic notation in measuring algorithm behavior To compute the complexities in terms of time and space for different algorithms To understand various algorithm techniques like Divide and Conquer, Greedy method, Dynamic programming method, Backtracking and Branch and bound. To determine solutions for several applications like traveling salesperson problem, Knapsack problem, Graph coloring and Hamming distance To get familiar with the concepts of Non deterministic algorithms

a:1,b:3,e:2,g:3,k:2 Understand

Conceptual, Fundamental Design Concepts Metacognitive

M1,M2

a:1,b:3,e:2,g:3,i: 3

Evaluate

M1,M2,M3,M5,M6 Understand Metacognitive M1,M2,M3,M5,M6

a:1,b:3,e:3,i:3,k:2

a:2,b:3,g:2,i:3,k:3

Evaluate

Metacognitive

M1,M2,M3,M6

a:1,b:2,e:2,k:2

Remember

Factual

M1,M2,M3

CLO/ Competency PO Matrix: Note : this table needs to be modified Relationship of Course Learning Outcomes to Computer Science & Engineering Program outcomes Comp. a b c d e f g h I J K CLO 1 CLO 2 CLO 3 CLO 4 CLO 5 1 1 1 2 1 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3

Evaluation Methods:

Course Design Template version 1.0

Department of Information Technology

VR Siddhartha Engineering College

Item Assignment1 Assignment2 Home Assignment1 Sessional1 Sessional2 Regularity to the classes Final Examination

Weightage 10 5 10 05 70

Tests and Examination have to be designed with specified weightages to different cognitive levels. The weightages will depend on Nature of the subject Competencies chosen by the instructor. Time at which the test is conducted and the competencies that student were supposed to acquire Cognitive Assignment 1 Assignment 2 Sessional 1 Sessional 2 Home Level Assignment Remember 5 3 5 3 Understand 5 3 5 3 Apply 2 2 2 Analyze 2 2 1 Create 2

Additional Contents covered in the Course to meet Programme Outcomes: This course teaches designs, covering various design patterns and analyzing the algorithm.

Prepared By: Mrs.G.JayaLakshmi Last Update: 19-12-11

Course Design Template version 1.0

Anda mungkin juga menyukai