Offline Algorithmic Techniques for Several Content Delivery Problems in Some Restricted Types of Distributed Systems Mugurel Ionut Andreica, Nicolae Tapus.

Slides:



Advertisements
Similar presentations
Traveling Salesperson Problem
Advertisements

Multicast in Wireless Mesh Network Xuan (William) Zhang Xun Shi.
Greedy Algorithms Amihood Amir Bar-Ilan University.
Gossip Scheduling for Periodic Streams in Ad-hoc WSNs Ercan Ucan, Nathanael Thompson, Indranil Gupta Department of Computer Science University of Illinois.
Minimum Dissatisfaction Personnel Scheduling Mugurel Ionut Andreica Politehnica University of Bucharest Computer Science Department Romulus Andreica, Angela.
1 Sensor Relocation in Mobile Sensor Networks Guiling Wang, Guohong Cao, Tom La Porta, and Wensheng Zhang Department of Computer Science & Engineering.
Chapter 3 The Greedy Method 3.
Efficient Algorithmic Techniques for Several Multidimensional Geometric Data Management and Analysis Problems Mugurel Ionut Andreica Politehnica University.
1 Efficient Broadcasting and Gathering in Wireless Ad-Hoc Networks Melih Onus (ASU) Kishore Kothapalli (JHU) Andrea Richa (ASU) Christian Scheideler (JHU)
Chapter 7 Dynamic Programming 7.
3 -1 Chapter 3 The Greedy Method 3 -2 The greedy method Suppose that a problem can be solved by a sequence of decisions. The greedy method has that each.
Chapter 9: Greedy Algorithms The Design and Analysis of Algorithms.
Cache Placement in Sensor Networks Under Update Cost Constraint Bin Tang, Samir Das and Himanshu Gupta Department of Computer Science Stony Brook University.
Scheduling Algorithms for Wireless Ad-Hoc Sensor Networks Department of Electrical Engineering California Institute of Technology. [Cedric Florens, Robert.
1 More On Dynamic programming Algorithms Shortest path with edge constraint: Let G=(V, E) be a directed graph with weighted edges. Let s and v be two vertices.
LPT for Data Aggregation in Wireless Sensor networks Marc Lee and Vincent W.S Wong Department of Electrical and Computer Engineering, University of British.
Online Data Gathering for Maximizing Network Lifetime in Sensor Networks IEEE transactions on Mobile Computing Weifa Liang, YuZhen Liu.
Greedy Algorithms Like dynamic programming algorithms, greedy algorithms are usually designed to solve optimization problems Unlike dynamic programming.
Optimal binary search trees
Priority Models Sashka Davis University of California, San Diego June 1, 2003.
1 Algorithms for Bandwidth Efficient Multicast Routing in Multi-channel Multi-radio Wireless Mesh Networks Hoang Lan Nguyen and Uyen Trang Nguyen Presenter:
TECH Computer Science Graph Optimization Problems and Greedy Algorithms Greedy Algorithms  // Make the best choice now! Optimization Problems  Minimizing.
UCSC 1 Aman ShaikhICNP 2003 An Efficient Algorithm for OSPF Subnet Aggregation ICNP 2003 Aman Shaikh Dongmei Wang, Guangzhi Li, Jennifer Yates, Charles.
1 Shortest Path Calculations in Graphs Prof. S. M. Lee Department of Computer Science.
The greedy method Suppose that a problem can be solved by a sequence of decisions. The greedy method has that each decision is locally optimal. These.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Decision Optimization Techniques for Efficient Delivery of Multimedia Streams Mugurel Ionut Andreica, Nicolae Tapus Politehnica University of Bucharest,
IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS 2007 (TPDS 2007)
© The McGraw-Hill Companies, Inc., Chapter 3 The Greedy Method.
Operations Research Assistant Professor Dr. Sana’a Wafa Al-Sayegh 2 nd Semester ITGD4207 University of Palestine.
Networks and the Shortest Path Problem.  Physical Networks  Road Networks  Railway Networks  Airline traffic Networks  Electrical networks, e.g.,
Reliability Analysis of Tree Networks Applied to Balanced Content Replication Mugurel Ionut Andreica, Nicolae Tapus Polytechnic University of Bucharest.
SPANNING TREES Lecture 21 CS2110 – Spring
WAN technologies and routing Packet switches and store and forward Hierarchical addresses, routing and routing tables Routing table computation Example.
Optimal Scheduling of File Transfers with Divisible Sizes on Multiple Disjoint Paths Mugurel Ionut Andreica Polytechnic University of Bucharest Computer.
7 -1 Chapter 7 Dynamic Programming Fibonacci sequence Fibonacci sequence: 0, 1, 1, 2, 3, 5, 8, 13, 21, … F i = i if i  1 F i = F i-1 + F i-2 if.
Low-Power Gated Bus Synthesis for 3D IC via Rectilinear Shortest-Path Steiner Graph Chung-Kuan Cheng, Peng Du, Andrew B. Kahng, and Shih-Hung Weng UC San.
De-Nian Young Ming-Syan Chen IEEE Transactions on Mobile Computing Slide content thanks in part to Yu-Hsun Chen, University of Taiwan.
Graph Algorithms. Definitions and Representation An undirected graph G is a pair (V,E), where V is a finite set of points called vertices and E is a finite.
Module 5 – Networks and Decision Mathematics Chapter 23 – Undirected Graphs.
Maximum Reliability K-Hop Multicast Strategy in Tree Networks Mugurel Ionut Andreica, Nicolae Tapus Polytechnic University of Bucharest Computer Science.
Expanders via Random Spanning Trees R 許榮財 R 黃佳婷 R 黃怡嘉.
Distributed Algorithms Rajmohan Rajaraman Northeastern University, Boston May 2012 Chennai Network Optimization WorkshopDistributed Algorithms1.
CAMP: Fast and Efficient IP Lookup Architecture Sailesh Kumar, Michela Becchi, Patrick Crowley, Jonathan Turner Washington University in St. Louis.
Network Optimization Problems
Solution to HW1. Problem 1 Need to find shortest path from a single source s to a single destination d. Have a condition in the Dijkstra algo loop which.
Efficient Data Structures for Online QoS-Constrained Data Transfer Scheduling Mugurel Ionut Andreica, Nicolae Tapus Politehnica University of Bucharest.
알고리즘 설계 및 분석 Foundations of Algorithm 유관우. Digital Media Lab. 2 Chap4. Greedy Approach Grabs data items in sequence, each time with “best” choice, without.
1 COMMONWEALTH OF AUSTRALIA Copyright Regulations 1969 WARNING This material has been reproduced and communicated to you by or on behalf.
InterConnection Network Topologies to Minimize graph diameter: Low Diameter Regular graphs and Physical Wire Length Constrained networks Nilesh Choudhury.
Agenda Review: –Planar Graphs Lecture Content:  Concepts of Trees  Spanning Trees  Binary Trees Exercise.
CSCE350 Algorithms and Data Structure Lecture 19 Jianjun Hu Department of Computer Science and Engineering University of South Carolina
SPANNING TREES Lecture 20 CS2110 – Fall Spanning Trees  Definitions  Minimum spanning trees  3 greedy algorithms (incl. Kruskal’s & Prim’s)
A Framework for Reliable Routing in Mobile Ad Hoc Networks Zhenqiang Ye Srikanth V. Krishnamurthy Satish K. Tripathi.
Efficient Resource Allocation for Wireless Multicast De-Nian Yang, Member, IEEE Ming-Syan Chen, Fellow, IEEE IEEE Transactions on Mobile Computing, April.
Self-stabilizing energy-efficient multicast for MANETs.
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
HYPERCUBE ALGORITHMS-1
1Computer Sciences Department. 2 Advanced Design and Analysis Techniques TUTORIAL 7.
CSCI-256 Data Structures & Algorithm Analysis Lecture Note: Some slides by Kevin Wayne. Copyright © 2005 Pearson-Addison Wesley. All rights reserved. 10.
Introduction to NP Instructor: Neelima Gupta 1.
Dynamic Proxy Tree-Based Data Dissemination Schemes for Wireless Sensor Networks Wensheng Zhang, Guohong Cao and Tom La Porta Department of Computer Science.
Construction of Optimal Data Aggregation Trees for Wireless Sensor Networks Deying Li, Jiannong Cao, Ming Liu, and Yuan Zheng Computer Communications and.
Introduction Wireless Ad-Hoc Network  Set of transceivers communicating by radio.
Lecture 20. Graphs and network models 1. Recap Binary search tree is a special binary tree which is designed to make the search of elements or keys in.
Greedy Technique.
Advanced Computer Networks
Greedy Algorithms Alexandra Stefan.
Lecture 19 Linear Program
More Graphs Lecture 19 CS2110 – Fall 2009.
Presentation transcript:

Offline Algorithmic Techniques for Several Content Delivery Problems in Some Restricted Types of Distributed Systems Mugurel Ionut Andreica, Nicolae Tapus Politehnica University of Bucharest Computer Science Department

Offline Algorithmic Techniques for Several Content Delivery Problems in Some Restricted Types of Distributed Systems 2 Summary Motivation Minimum Broadcast Time Strategy in Directed Tree Networks Minimizing Frequency Conversion Costs in Wireless Sensor Networks Multicasts Packet Scheduling and Ordering –Outgoing Packet Scheduling over Multiple TCP Streams –Minimum Cost Packet Reordering Time Constrained Path using a Minimum Cost Rechargeable Resource (Constrained) Bottleneck Paths (Trees) Conclusions

Offline Algorithmic Techniques for Several Content Delivery Problems in Some Restricted Types of Distributed Systems 3 Motivation efficient communication – important in many domains (scientific computing, multimedia streaming, Grid file transfers) efficient content distribution (broadcast) strategies + communication scheduling techniques => important for efficient communication optimal offline techniques –of great theoretical interest –not applicable directly in a practical setting –first step towards efficient online (real-time) techniques –useful for performance evaluation of online techniques

Offline Algorithmic Techniques for Several Content Delivery Problems in Some Restricted Types of Distributed Systems 4 Minimum Broadcast Time Strategy in Directed Tree Networks (1/4) directed tree root node -> need to broadcast content to the other nodes at each time step –each node who (already) received the content : sends the content to a node in its subtree (e.g. optical path) all simultaneous paths (the same time step) => vertex-disjoint applications to optical tree networks

Offline Algorithmic Techniques for Several Content Delivery Problems in Some Restricted Types of Distributed Systems 5 Minimum Broadcast Time Strategy in Directed Tree Networks (2/4)

Offline Algorithmic Techniques for Several Content Delivery Problems in Some Restricted Types of Distributed Systems 6 Minimum Broadcast Time Strategy in Directed Tree Networks (3/4) dynamic programming solution T min (u, step)=the minimum time required to broadcast the message in T(u)\(T(snd(u,1))U T(snd(u,2)) U … U T(snd(u, step))) –T(u)=the subtree of vertex u –snd(u,i)=the vertex which receives the message from vertex u at step i in the optimal strategy of broadcasting the message in T(u) (starting from u) step=0 (vertex=u) –binary search T min (u,0) –T=remaining time counter (initialized to the candidate value) –each son s(u,j) -> a state state(s(u,j)) (initially 0)

Offline Algorithmic Techniques for Several Content Delivery Problems in Some Restricted Types of Distributed Systems 7 Minimum Broadcast Time Strategy in Directed Tree Networks (4/4) while (T>0) and (there are sons to consider): –consider the son s(u,x) with max. T min (s(u,x), state(s(u,x)) (if several, the one with the lexicographically max. sequence T min (s(u,x), j≥state(s(u,x))) –if (T>T min (s(u,x), state(s(u,x))) send content to s(u,x) desconsider s(u,x) from now in –else if (T=T min (s(u,x), state(s(u,x))) send message to snd(s(u,x), state(s(u,x))) state(s(u,x)) += 1 –else => the candidate value is too small –T-- step>0 (vertex=u) –send the message to snd(u,j) (1≤j≤step) => set state(s(u,x)) accordingly (or ignore s(u,x), if it received a message from u previously) –binary search T min (u,step) (only difference=different initial states for the sons s(u,*) + some sons ignored)

Offline Algorithmic Techniques for Several Content Delivery Problems in Some Restricted Types of Distributed Systems 8 Minimizing Frequency Conversion Costs in Wireless Sensor Networks Multicasts multicast tree source vertex starts sending message on a frequency from a given set S (at most k frequencies) to the leaves (fixed receiving freq.) each node: –c(u,fin,fout)=the cost of converting the message from the (receiving) freq. fin to the (sending) freq. fout –can choose the sending frequency fixed source –dynamic programming: C min (u, fin, fout)=the minimum total cost for disseminating the data from u in T(u), if u receives the message on frequency fin and sends the message further on frequency fout => O(n·k 2 ) source can be selected arbitrarily –select any source : then run the algorithm above => O(n 2 ·k 2 ) –can do better: run the fixed source algo for a root r (bottom-up) “piggy-back” the changes to parent-son relationships (when a parent p is made the son of a previous son u, we keep it that way until we process all the vertices in T(u)) => O(n·k 2 ) overall (for all the sources)

Offline Algorithmic Techniques for Several Content Delivery Problems in Some Restricted Types of Distributed Systems 9 Outgoing Packet Scheduling over Multiple TCP Streams m (identical) data packets n parallel TCP steams (sender -> destination) –stream i: A i packets per time unit + B i time units back-off (waiting time) objective: minimize time after which all the packets are sent when all parameters are (small) integers: dynamic programming solution –T min (k, c 0, …, c BM-1 )=the minimum time of sending k packets and the TCP stream used from (i+1) time units ago until i time units ago was c i (0≤i≤BM-1) –BM=max{B i } –2 (types of) options for each state (k, c0,..., cBM-1) wait: update T min (k, c 0 ’=0, c 1 ’=c 0, …, c i+1 ’=c i, …, c BM-1 ’=c BM-2 ) use an available TCP stream i to send more packets: update T min ( min{k+A i,m}, c 0 ’=i, c 1 ’=c 0, c 2 ’=c 1, …, c BM-1 ’=c BM-2 comparison against the “natural” greedy strategy –at each time step, send packets on an available TCP stream which can send the most packets => wait only if no TCP stream available (only forced waits) exhaustive testing: m=100, n=3, A i =0 to 4, B i =0 to 7 –10,227 cases (out of 42,875) => DP better than greedy –32,648 cases (out of 42,875) => DP = greedy

Offline Algorithmic Techniques for Several Content Delivery Problems in Some Restricted Types of Distributed Systems 10 Minimum Cost Packet Reordering n packets, in the order: p(1),..., p(n) (in the receiving buffer) move them to the application buffer, in correct order (1,2,...,n) application buffer=linked-list => add a packet at the front or at the back (at any time, it contains a sequence of consecutive packets) move cost: c(i, pos(j, i-1)) –pos(j,i) denotes the position of packet j in receiving buffer after i moves were performed objective: minimize aggregate cost –aggregation function=sum or max C min (i,j)=the minimum aggregate cost of obtaining in the application buffer the sequence of packets j, j+1, …, j+i-1 after i steps => O(n 2 ) time to compute all these values C min (n,1)=the minimum aggregate cost

Offline Algorithmic Techniques for Several Content Delivery Problems in Some Restricted Types of Distributed Systems 11 Time Constrained Path using a Minimum Cost Rechargeable Resource (un)directed graph G: each edge (u,v) => rc(u,v) and t(u,v) set of rechargeable resources: cap(i), cost(i) (cap(i) cost(i)<cost(j)) find a path from s to t with: –minimum cost rechargeable resource –total distance ≤ T max binary search the smallest index of a feasible resource feasibility test (index i): –(u,w) (0≤w≤cap(i)) : vertices of an expanded graph EG –directed edge between a pair (u 1, w 1 ) and (u 2, w 2 ) in EG edge (u 1,u 2 ) exists in G and w 2 =w 1 -rc(u 1,u 2 ) => length=t(u 1,u 2 ) charging_point(u 1 )=true, u 2 =u 1, w 2 >w 1 => length=tcharge(u,w 1,w 2 ) –shortest path from (s,cap(i)) to (t,*)

Offline Algorithmic Techniques for Several Content Delivery Problems in Some Restricted Types of Distributed Systems 12 (Constrained) Bottleneck Paths (Trees) (un)directed network each edge (u,v): cap(u,v) and t(u,v) find a path P (from s to t), s.t. –total delay of the path≤T max –path capacity = as large as possible binary search the path capacity –ignore edges with cap. < Cap cand –compute shortest path using the remaining edges (check the length agains T max ) tree: source s + set of destinations D –objective: max. capacity + a) longest path ≤ T max b) sum of edge delays ≤ T max case a): the same algorithm; verify that shortest path to every destination ≤ T max case b): binary search + minimum spanning tree (on edges with cap(u,v)≥Cap cand ) can extend the solutions to the case where the capacities are monotonically non-increasing functions over time

Offline Algorithmic Techniques for Several Content Delivery Problems in Some Restricted Types of Distributed Systems 13 Conclusions offline content delivery problems –broadcast in directed (optical) tree networks –multicast in wireless sensor networks –packet routing and ordering –optimal constrained paths and trees efficient algorithms for the discussed problems work – mostly theoretical in nature practical applications –on local parts of a (distributed) system –performance evaluation of online content delivery strategies

Offline Algorithmic Techniques for Several Content Delivery Problems in Some Restricted Types of Distributed Systems 14 Thank You !