A Solution for the Bandwidth Optimization Problem with 2 Stations Rahul Bijlani, Louis Deaett and Maksim Orlovich.

Slides:



Advertisements
Similar presentations
Comp 122, Spring 2004 Greedy Algorithms. greedy - 2 Lin / Devi Comp 122, Fall 2003 Overview  Like dynamic programming, used to solve optimization problems.
Advertisements

Greedy Algorithms Greed is good. (Some of the time)
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
Chapter 4 The Greedy Approach. Minimum Spanning Tree A tree is an acyclic, connected, undirected graph. A spanning tree for a given graph G=, where E.
EMIS 8374 Vertex Connectivity Updated 20 March 2008.
CSC401 – Analysis of Algorithms Lecture Notes 14 Graph Biconnectivity
Chapter 10: Iterative Improvement The Maximum Flow Problem The Design and Analysis of Algorithms.
Lectures on Network Flows
Covering Trains by Stations or The power of Data Reduction Karsten Weihe, ALEX98, 1998 Presented by Yantao Song.
A general approximation technique for constrained forest problems Michael X. Goemans & David P. Williamson Presented by: Yonatan Elhanani & Yuval Cohen.
DAST 2005 Tirgul 11 (and more) sample questions. DAST 2005 Q.Let G = (V,E) be an undirected, connected graph with an edge weight function w : E→R. Let.
Applications of Depth-First Search
A 2-Approximation algorithm for finding an optimum 3-Vertex-Connected Spanning Subgraph.
1 Section 8.4 Connectivity. 2 Paths In an undirected graph, a path of length n from u to v, where n is a positive integer, is a sequence of edges e 1,
Linear Programming – Max Flow – Min Cut Orgad Keller.
CSE 421 Algorithms Richard Anderson Lecture 22 Network Flow.
Packing Element-Disjoint Steiner Trees Mohammad R. Salavatipour Department of Computing Science University of Alberta Joint with Joseph Cheriyan Department.
GRAPH Learning Outcomes Students should be able to:
Theory of Computing Lecture 10 MAS 714 Hartmut Klauck.
MST Many of the slides are from Prof. Plaisted’s resources at University of North Carolina at Chapel Hill.
GRAPHS CSE, POSTECH. Chapter 16 covers the following topics Graph terminology: vertex, edge, adjacent, incident, degree, cycle, path, connected component,
CSE 421 Algorithms Richard Anderson Lecture 24 Network Flow Applications.
UNC Chapel Hill Lin/Foskey/Manocha Minimum Spanning Trees Problem: Connect a set of nodes by a network of minimal total length Some applications: –Communication.
Applications of the Max-Flow Min-Cut Theorem. S-T Cuts SF D H C A NY S = {SF, D, H}, T={C,A,NY} [S,T] = {(D,A),(D,C),(H,A)}, Cap [S,T] =
Data Structures & Algorithms Graphs
1/24 Introduction to Graphs. 2/24 Graph Definition Graph : consists of vertices and edges. Each edge must start and end at a vertex. Graph G = (V, E)
10. Lecture WS 2014/15 Bioinformatics III1 V10 Metabolic networks - Graph connectivity Graph connectivity is related to analyzing biological networks for.
Connectivity and Paths 報告人:林清池. Connectivity A separating set of a graph G is a set such that G-S has more than one component. The connectivity of G,
CSCI-256 Data Structures & Algorithm Analysis Lecture Note: Some slides by Kevin Wayne. Copyright © 2005 Pearson-Addison Wesley. All rights reserved. 25.
GRAPHS. Graph Graph terminology: vertex, edge, adjacent, incident, degree, cycle, path, connected component, spanning tree Types of graphs: undirected,
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
CSEP 521 Applied Algorithms Richard Anderson Lecture 8 Network Flow.
CSE 421 Algorithms Richard Anderson Lecture 22 Network Flow.
1 Assignment #3 is posted: Due Thursday Nov. 15 at the beginning of class. Make sure you are also working on your projects. Come see me if you are unsure.
12. Lecture WS 2012/13Bioinformatics III1 V12 Menger’s theorem Borrowing terminology from operations research consider certain primal-dual pairs of optimization.
Iterative Improvement for Domain-Specific Problems Lecturer: Jing Liu Homepage:
Lecture 12 Algorithm Analysis Arne Kutzner Hanyang University / Seoul Korea.
Leda Demos By: Kelley Louie Credits: definitions from Algorithms Lectures and Discrete Mathematics with Algorithms by Albertson and Hutchinson graphics.
TU/e Algorithms (2IL15) – Lecture 8 1 MAXIMUM FLOW (part II)
More NP-Complete and NP-hard Problems
Maximum Flow c v 3/3 4/6 1/1 4/7 t s 3/3 w 1/9 3/5 1/1 3/5 u z 2/2
Lectures on Network Flows
Richard Anderson Lecture 23 Network Flow
Lecture 22 Network Flow, Part 2
Lecture 12 Algorithm Analysis
3.3 Applications of Maximum Flow and Minimum Cut
Maximum Flow c v 3/3 4/6 1/1 4/7 t s 3/3 w 1/9 3/5 1/1 3/5 u z 2/2
Network Flow and Connectivity in Wireless Sensor Networks
Richard Anderson Lecture 25 Open Pit Mining
CS 583 Analysis of Algorithms
Connectivity Section 10.4.
V11 Metabolic networks - Graph connectivity
Richard Anderson Lecture 23 Network Flow
Richard Anderson Lecture 23 Network Flow
Lecture 12 Algorithm Analysis
Vertex Covers, Matchings, and Independent Sets
5.4 T-joins and Postman Problems
Algorithms (2IL15) – Lecture 7
EE5900 Advanced Embedded System For Smart Infrastructure
Maximum Flow c v 3/3 4/6 1/1 4/7 t s 3/3 w 1/9 3/5 1/1 3/5 u z 2/2
V11 Metabolic networks - Graph connectivity
Richard Anderson Lecture 22 Network Flow
Lecture 21 Network Flow, Part 1
Lecture 12 Algorithm Analysis
V11 Metabolic networks - Graph connectivity
Lecture 22 Network Flow, Part 2
Chapter 23: Minimum Spanning Trees: A graph optimization problem
Constructing a m-connected k-Dominating Set in Unit Disc Graphs
Maximum Flow Problems in 2005.
Minimum Spanning Trees
Presentation transcript:

A Solution for the Bandwidth Optimization Problem with 2 Stations Rahul Bijlani, Louis Deaett and Maksim Orlovich

Definitions  A single memory access is called a 'Component'.  A 'Job' is a subset of the set of Components.  A 'Station' is a subset of the set of Components.   –o A non-empty set C containing n c Components, –o A set J containing n j Jobs, –o A partition of J into two disjoint subsets J 1 and J 2, –o And a set S containing exactly two Stations, S 1 and S 2,

Model Given (J,S,C) as described earlier, one may construct a simple undirected graph, with each vertex representing one of the elements of J, S or C – i.e. with vertices for jobs, stations and components. In this graph, each edge is constructed to connect a station or a job with a component it contains; for example, given a station {A,B,C}, one introduces edges –{A, {A,B,C}}, {B, {A,B,C}} and {C, {A,B,C}}

Example For example, consider: BFH CDG BCD BGH BCG FGH

Conversion into our Model F GH D BC BCG BFH BCD CDG BGH FGH

The Solution using our Model Note that without the loss of generality, we may assume that there are no two identical Jobs. Consider the significance of connectedness in the model: –If a Job is path-connected to a Station or another Job, they share at least one Component in direct or indirect form. –On the other hand, if there is no path between either of the Stations and a Job, then they share absolutely no Components in common.

Jobs that are disconnected from Stations For starters, we can merge all the ‘disconnected’ Jobs described above with the first Station. One can quickly search for these using DFS/Mark or BFS/Mark algorithms. If this leaves S 1 and S 2 disconnected, we are done.

Jobs that are connected to at least one Station Now consider the significance of a vertex cut of the graph using only Component Vertices, with S 1 and S 2 as the Source and the Sink respectively. –The Jobs are distributed to the Stations –Many of the Component vertices that were removed were used by Jobs/Stations on each side of the partition, so removing them in effect means that the Component the represent must be duplicated in both partitions.

Example Component removal – original graph F GH D BC BCG BFH BCD CDG BGH FGH

Example Component removal – after removing B F GH D C BCG BFH BCD CDG BGH FGH

Implication of a Minimal Vertex Cut Notice that if the removed vertex was not shared among the two sides of the partition, it didn’t really have to be removed. Hence, one could easily construct a smaller cut by just removing the vertices that need to be duplicated. But this means that in order to minimize the duplication, one needs to minimize the no. of vertices in the cut.

Reduction of the Bandwidth Optimization Problem T hus, the Bandwidth Optimization Problem is reducible to calculating a minimum vertex cut of the model graph over C, the set of Component vertices, with S 1 and S 2, the two Stations, as the two distinguished vertices that are to be in the two partitions of the graph.

Example Minimum Vertex Cut BCG BFH BCD CDG BGH FGH C D H F

Example Result Station 1: FGH –BFH –BGH BFGH Station 2: BCD –CDG –BCG BCDG

Reduction of Vertex Cut Problem to Edge Cut 1. Copy over all the vertices 2. For each edge of the graph, create two directed edges in both directions of infinite capacity. Note that this does not change connectivity. 3. Convert each of the Component Nodes into an edge of capacity one, connecting the edges incoming into the original vertex into the tails of the node, and those outgoing into the head.

Execution of a Min Edge Cut with S 1 as Source and S 2 as Sink The cost of the cut will be exactly equal to the number of vertices it corresponds to, since each of the Component Vertex edges has cost 1, so minimizing the number of vertices would minimize the number of vertices cut in the original graph.

A Solution for the Bandwidth Optimization Problem with 2 Stations Rahul Bijlani, Louis Deaett and Maksim Orlovich