MS 101 Algorithms Instructor Neelima Gupta nguptacs du

  • Slides: 22
Download presentation
MS 101: Algorithms Instructor Neelima Gupta ngupta@cs. du. ac. in

MS 101: Algorithms Instructor Neelima Gupta ngupta@cs. du. ac. in

Table of Contents Five representative problems

Table of Contents Five representative problems

Five Representative Problems Interval Scheduling : can be solved by a greedy approach. Weighted

Five Representative Problems Interval Scheduling : can be solved by a greedy approach. Weighted Interval Scheduling : Natural greedy doesn’t work, no other greedy is known, more sophisticated technique DP solves the problem. Maximum Bipartite Matching Independent Set Competitive Facility Location

Interval Scheduling Problem P(1)=10 P(2)=3 P(3)=4 P(4)=20 P(5)=2 0 1 2 3 4 5

Interval Scheduling Problem P(1)=10 P(2)=3 P(3)=4 P(4)=20 P(5)=2 0 1 2 3 4 5 6 7 Thanks to Neha (16) 8 9 Time

Examples Jobs submitted to an operating system, Resource: CPU. An HR of a company

Examples Jobs submitted to an operating system, Resource: CPU. An HR of a company needs to schedule meetings of some committees in a meeting room, resource is meeting room Scheduling classes in a room, resource is class-room

Greedy Approach : Increasing Finishing Times P(1)=10 P(2)=3 P(3)=4 P(4)=20 P(5)=2 0 1 2

Greedy Approach : Increasing Finishing Times P(1)=10 P(2)=3 P(3)=4 P(4)=20 P(5)=2 0 1 2 3 4 5 6 7 8 9 Time . Thanks to Neha (16) back

Weighted Interval Scheduling P(1)=10 P(2)=3 P(3)=4 P(4)=20 P(5)=2 0 1 2 3 4 5

Weighted Interval Scheduling P(1)=10 P(2)=3 P(3)=4 P(4)=20 P(5)=2 0 1 2 3 4 5 6 7 Thanks to Neha (16) 8 9 Time

Examples Jobs submitted to an operating system, Resource: CPU. Weights: profit by executing the

Examples Jobs submitted to an operating system, Resource: CPU. Weights: profit by executing the job

Greedy Approach P(1)=10 P(2)=3 P(3)=4 P(4)=20 P(5)=2 0 1 2 3 4 5 6

Greedy Approach P(1)=10 P(2)=3 P(3)=4 P(4)=20 P(5)=2 0 1 2 3 4 5 6 7 . Thanks to Neha (16) 8 9 Time

Greedy does not work P(1)=10 P(2)=3 Optimal schedule P(3)=4 P(4)=20 P(5)=2 Schedule chosen by

Greedy does not work P(1)=10 P(2)=3 Optimal schedule P(3)=4 P(4)=20 P(5)=2 Schedule chosen by greedy app Time 7 2 3 4 5 6 8 9 Greedy approach takes job 2, 3 and 5 as best schedule and makes profit of 7. While optimal schedule is job 1 and job 4 making profit of 30 (10+20). Hence greedy will not work 0 1 Thanks to Neha (16)

Example of a Bipartite graph : u 1 v 1 u 2 v 2

Example of a Bipartite graph : u 1 v 1 u 2 v 2 u 3 v 3 u 2 u 4 V 1 V 2 Figur e 1 Edge like this is not acceptable in Bipartite Graph (Thanks to Aditya(04), Abhishek(03)-Msc 2014)

Examples There is a set T of teachers with a set C of courses.

Examples There is a set T of teachers with a set C of courses. A teacher can teach only some set of courses represented by the edges in the bipartite graph. Thus, bipartite graphs are used to represent relationships between two distinct sets of objects…teachers and courses here. Jobs/Employers and Applicants: An employer receives several applications but only few of them qualify for the interview. Similarly an applicant applies for many jobs but qualify only for few for them for interview. An edge (a, e) in the bipartite graph represents that the applicant ‘a’ qualifies for the interview for job ‘e’.

Maximum Bipartite Matching Problem Maximum Matching is a matching of maximum Cardinality. u 1

Maximum Bipartite Matching Problem Maximum Matching is a matching of maximum Cardinality. u 1 v 1 u 2 v 2 By Applying the definition of matching, If we choose the edge (u 1, v 1) first And then (u 2, v 2) So no more edge can be included, hence matching in this case is : u 3 v 3 (u 1, v 1) , (u 2, v 2) u 4 V 1 V 2 (Thanks to Aditya(04), Abhishek(03)-Msc 2014)

u 1 v 1 u 2 v 2 But instead of picking (u 2,

u 1 v 1 u 2 v 2 But instead of picking (u 2, v 2) , if we pick • (u 2 , v 3) after (u 1 , v 1) then • ( u 4 , v 2). u 3 v 3 Hence the Maximum Matching is : u 4 (u 1, v 1) , (u 2, v 3 ) , (u 4 , v 2) V V 2 1 So, the problem is to find the Matching with MAXIMUM CARDINALITY in a given Bipartite graph. (Thanks to Aditya(04), Abhishek(03)-Msc 2014)

Examples There is a set T of teachers with a set C of courses.

Examples There is a set T of teachers with a set C of courses. A teacher can teach only some set of courses represented by the edges in the bipartite graph. A teacher needs to be assigned at most one course and one course must be taught by only one teacher. Suppose a number of committee meetings are to be scheduled in various meeting rooms during the time 3 pm 4 pm. A committee meeting can be held only in few rooms (may be because other rooms are smaller in size than the committee size etc). An edge (c, r) represents that committee ‘c’ can be scheduled in room ‘r’. A committee needs to be assigned one room and one room must be assigned to only one committee.

Maximum Bipartite Matching from Abhishek Aditya

Maximum Bipartite Matching from Abhishek Aditya

Maximum Bipartite Matching from Abhishek Aditya

Maximum Bipartite Matching from Abhishek Aditya

Maximum Bipartite Matching from Abhishek Aditya

Maximum Bipartite Matching from Abhishek Aditya

Independent Set Given a graph G = (V, E), a subset S of V

Independent Set Given a graph G = (V, E), a subset S of V is said to be independent if no two nodes in S are joined by an edge in G.

Maximal Independent set of size 2 Thanks to: Sonia Verma (25, MCS '09)

Maximal Independent set of size 2 Thanks to: Sonia Verma (25, MCS '09)

Maximal Independent set of size 3 …also Maximum Thanks to: Sonia Verma (25, MCS

Maximal Independent set of size 3 …also Maximum Thanks to: Sonia Verma (25, MCS '09)

More on Independent Set and Comp. FLP from Anurag

More on Independent Set and Comp. FLP from Anurag