Modeling, Analysis and Optimization of Networks. Alberto Ceselli

Similar documents
Stanford University CS261: Optimization Handout 9 Luca Trevisan February 1, 2011

Graphs and Network Flows IE411. Lecture 14. Dr. Ted Ralphs

Algorithms and Data Structures: Network Flows. 24th & 28th Oct, 2014

MASSACHUSETTS INSTITUTE OF TECHNOLOGY

Math236 Discrete Maths with Applications

CSE 573 Problem Set 1. Answers on 10/17/08

Game Theory and Randomized Algorithms

Edge-disjoint tree representation of three tree degree sequences

Greedy Algorithms. Kleinberg and Tardos, Chapter 4

TOPOLOGY, LIMITS OF COMPLEX NUMBERS. Contents 1. Topology and limits of complex numbers 1

Dijkstra s Algorithm (5/9/2013)

Lower Bounds for the Number of Bends in Three-Dimensional Orthogonal Graph Drawings

How (Information Theoretically) Optimal Are Distributed Decisions?

4.4 Shortest Paths in a Graph Revisited

NON-OVERLAPPING PERMUTATION PATTERNS. To Doron Zeilberger, for his Sixtieth Birthday

Problem Set 4 Due: Wednesday, November 12th, 2014

Link State Routing. Brad Karp UCL Computer Science. CS 3035/GZ01 3 rd December 2013

Lecture 2. 1 Nondeterministic Communication Complexity

Permutations. = f 1 f = I A

Topic 1: defining games and strategies. SF2972: Game theory. Not allowed: Extensive form game: formal definition

Heuristic Search with Pre-Computed Databases

MA 524 Midterm Solutions October 16, 2018

Notes for Recitation 3

Mobility Tolerant Broadcast in Mobile Ad Hoc Networks

Neighborhood based heuristics for a Two-level Hierarchical Location Problem with modular node capacities

arxiv: v2 [cs.cc] 20 Nov 2018

CS100: DISCRETE STRUCTURES. Lecture 8 Counting - CH6

Network-building. Introduction. Page 1 of 6

Tutorial 1. (ii) There are finite many possible positions. (iii) The players take turns to make moves.

With Question/Answer Animations. Chapter 6

arxiv: v1 [cs.ds] 17 Jul 2013

Distance-Vector Routing

Combinatorics and Intuitive Probability

In how many ways can we paint 6 rooms, choosing from 15 available colors? What if we want all rooms painted with different colors?

Lecture 18 - Counting

UCSD CSE 21, Spring 2014 [Section B00] Mathematics for Algorithm and System Analysis

28,800 Extremely Magic 5 5 Squares Arthur Holshouser. Harold Reiter.

EXPLAINING THE SHAPE OF RSK

Senior Math Circles February 10, 2010 Game Theory II

Diffusion of Networking Technologies

On the Capacity of Multi-Hop Wireless Networks with Partial Network Knowledge

A Unified Graph Labeling Algorithm for Consecutive-Block Channel Allocation in SC- FDMA

3-2 Lecture 3: January Repeated Games A repeated game is a standard game which isplayed repeatedly. The utility of each player is the sum of

The tenure game. The tenure game. Winning strategies for the tenure game. Winning condition for the tenure game

Game Theory and Economics of Contracts Lecture 4 Basics in Game Theory (2)

Enumeration of Two Particular Sets of Minimal Permutations

Maximizing Number of Satisfiable Routing Requests in Static Ad Hoc Networks

CSE 527: Introduction to Computer Vision

Problem Set 8 Solutions R Y G R R G

Fast Sorting and Pattern-Avoiding Permutations

Discrete Mathematics with Applications MATH236

REU 2006 Discrete Math Lecture 3

Computational aspects of two-player zero-sum games Course notes for Computational Game Theory Section 3 Fall 2010

Design and Analysis of Algorithms Prof. Madhavan Mukund Chennai Mathematical Institute. Module 6 Lecture - 37 Divide and Conquer: Counting Inversions

Three of these grids share a property that the other three do not. Can you find such a property? + mod

DVA325 Formal Languages, Automata and Models of Computation (FABER)

Convergence in competitive games

Non-overlapping permutation patterns

STAJSIC, DAVORIN, M.A. Combinatorial Game Theory (2010) Directed by Dr. Clifford Smyth. pp.40

Game Theory and Algorithms Lecture 19: Nim & Impartial Combinatorial Games

Network Layer (Routing)

SF2972: Game theory. Mark Voorneveld, February 2, 2015

Low-Latency Multi-Source Broadcast in Radio Networks

Column Generation. A short Introduction. Martin Riedler. AC Retreat

CMSC 426, Fall 2012 Problem Set 4 Due October 25

Math 3338: Probability (Fall 2006)

CSE 312: Foundations of Computing II Quiz Section #2: Combinations, Counting Tricks (solutions)

Outline for today s lecture Informed Search Optimal informed search: A* (AIMA 3.5.2) Creating good heuristic functions Hill Climbing

Teacher s Notes. Problem of the Month: Courtney s Collection

Introduction to Coding Theory

SMS Dictionary. Solution hint. Input format. Output format. (Indian National Olympiad in Informatics, INOI, 2007)

Lectures: Feb 27 + Mar 1 + Mar 3, 2017

Topics to be covered

Quotients of the Malvenuto-Reutenauer algebra and permutation enumeration

Math 152: Applicable Mathematics and Computing

Block 1 - Sets and Basic Combinatorics. Main Topics in Block 1:

17. Symmetries. Thus, the example above corresponds to the matrix: We shall now look at how permutations relate to trees.

Outline. Sets of Gluing Data. Constructing Manifolds. Lecture 3 - February 3, PM

CARD GAMES AND CRYSTALS

and problem sheet 7

Pedigree Reconstruction using Identity by Descent

Connected Identifying Codes

COMPSCI 223: Computational Microeconomics - Practice Final

Algorithms. Abstract. We describe a simple construction of a family of permutations with a certain pseudo-random

Q(A) - Balance Super Edge Magic Graphs Results

Histogram equalization

The Art of Counting. Bijections, Double Counting. Peng Shi. September 16, Department of Mathematics Duke University

Some Fine Combinatorics

Feedback via Message Passing in Interference Channels

Combinatorial Problems in Multi-Robot Battery Exchange Systems

Counting integral solutions

Introduction to Algorithms / Algorithms I Lecturer: Michael Dinitz Topic: Algorithms and Game Theory Date: 12/4/14

LECTURE 7: POLYNOMIAL CONGRUENCES TO PRIME POWER MODULI

From Wireless Network Coding to Matroids. Rico Zenklusen

Lecture 7: The Principle of Deferred Decisions

Problem 1 (15 points: Graded by Shahin) Recall the network structure of our in-class trading experiment shown in Figure 1

On Achieving Local View Capacity Via Maximal Independent Graph Scheduling

Graphs of Tilings. Patrick Callahan, University of California Office of the President, Oakland, CA

Communication Theory II

Axiom A-1: To every angle there corresponds a unique, real number, 0 < < 180.

Transcription:

Modeling, Analysis and Optimization of Networks Alberto Ceselli alberto.ceselli@unimi.it Università degli Studi di Milano Dipartimento di Informatica Doctoral School in Computer Science A.A. 2015/2016

Summary of Lecture 1 Networks are pervasive Networks are too complex in features and size to be managed without advanced tools A suitable formal framework is known to model network flows that is «compact» is flexible is tractable

Summary of Lecture 1 Given : a graph G(V,A), with two special nodes s and t capacity on each arc Find: an optimal flow from s to t 8 1 9 2 10 2 10 1 1 1 8 0 9 0 3 0 7 0

Summary of Lecture 1 The framework allows also to Take into account circulations instead of s-t flows Have additional capacities on nodes Have flow lower bounds (on both arcs and nodes) Have multiple sources and multiple sinks Have source and demand points by simple modeling gadgets... and therefore without any increase in the complexity of the resolution algorithms.

Basic model Summary 9 8 10 10 1 8 9 3 7

Flow circulation Summary 9 8 10 10 20

Summary Capacities on nodes 9 4 8 8 10 10 12 20

Flow lower bounds Summary [2,9] 4 [1,8] 8 [3,10] [0,10] 12 [4,20]

Summary Multiple sources and multiple sinks [2,9] 4 [1,8] 8 [3,10] [0,10] 12 [4,20]

+4 Summary Multiple «production» and «demand» points -3 [2,9] 4 [1,8] 8 [3,10] +2 [0,10] -10 +7 12 [4,20]

Examples Analysis of (telecom) network connectivity Single path Link disjoint paths «robustness» against link failures Tango dancing problem (max matching) Matrix rounding problem

Example 4: survey design Taken from J. Kleinberg, E. Tardos, «Algorithm Design» We would like to design a survey of products used by consumers (i.e., «Consumer i: what did you think of product j?»). The ith consumer agreed in advance to answer a certain number of questions in the range [c i, d i ] Similarly, for each product j we would like to have at least p j opinions about it, but not more than q j Each consumer can be asked about a subset of the products which they consumed. The question is how to assign questions to consumers, so that we get all the informations we need, and each consumer is being asked a valid number of questions.

Part II Properties of Flows Another good feature of Network Flows : structural properties can be proved by the design of efficient algorithms! i.e. theory and computation fit nicely!

Lecture Plan Shortest path problems and algorithms Flows and Cuts Max flow algortihms Combinatorial properties of max flows Application examples

Shortest Path Problems Given a graph G(V,A) Given a source node s and a destination node t Given a length function l: A R + Find a path from s to t of minimum overall length Path: sequence of adjacent nodes Length of a path: sum of lengths of arcs connecting pairs of subsequent nodes

Shortest Path Algorithms Most famous one: Dijkstra Keep a set of «labels» d(i), one for each i in V encoding «tentative» distances from s to i Iteratively pick one node, and try to improve the labels of its neighbors Until no more improvements are possible Procedure update(i) { foreach j in +(i) do } if d(j) > d(i) + l(i,j) then d(j) = d(i) + l(i,j)

Slides 8 12 from «Network Flows», by J. Orlin Dijkstra Algorithm example by J. Orlin Proof of correctness (blackboard) Summary: we have an efficient way for finding (special) paths between nodes of networks

Max Flow algorithms Working with residual networks, slides «Network Flows», by J. Orlin Ford Fulkerson Algorithm example by J. Orlin

Flows and Cuts Intuitively (s-t) Cut: a set of arcs whose removal makes sink unreachable from source (no more path exists going from s to t) Formally, a cut is a partition [S,V \ S] of the nodes of the graph (s-t cut if s is in S and t in V \ S) Arcs of the cut are those having one endpoint in S and the other in V \ S; forward arc: (i,j) with i in S and j in V \ S backward arc: (i,j) with i in V \ S and j in S The capacity of a cut is the sum of capacities of its forward arcs A cut is minimum if its capacity is minimum

Flows and cuts

Properties of max flows Obs. 1: if caps are integral, I always increment flows by integers, and therefore obtain only integral flows! Obs. 2: Intuitively, how can I detect if a flow is maximum? No more augm. path! Formally, I need to compare flows and cuts! Weak duality theorem for flows and cuts Optimality conditions for max flows

Weak duality for max flow Def. Flow across a cut [S,T] is the sum of flow on forward arcs minus the sum of flow on backward arcs Claim 1: If f() is a feasible flow and [S,T] is an (s-t) cut The the flow across the cut = flow from s = flow into t Proof: blackboard Claim 2: If f() is a feasible flow and [S,T] is an (s-t) cut Then the flow across the cut is at most equal to the capacity of the cut [S,T] Proof: blackboard If f() is a feasible flow and [S,T] is an (s-t) cut Then the flow from s to t is at most equal to the capacity of the cut [S,T]

Optimality conditions for max flows The following are equivalent : 1 - A flow f() is maximum 2 - There is no augmenting path in the residual network 3 - There is an (s-t) cut whose capacity equals the s-t flow of f() Proof: blackboard

Cuts and Flows Recall: find how many paths are there from source to destination, having no common arc? Menger s Theorem (1927). The max number of edge-disjoint s-t paths is equal to the min number of edges whose removal disconnects destination from source. K. Menger "Zur allgemeinen Kurventheorie". Fund. Math. 10: 96 115 (1927)

Cuts and Flows Let F be a subset of A Proof (suppose the removal of F disconnects t from s, and F = k) All s-t paths use at least one edge of F. Hence, the number of edge-disjoint paths is at most k. Proof (suppose max number of edge-disjoint paths is k) Then max flow value is k. A cut (S, T) of capacity k exists (max flow min cut duality) Let F be set of edges going from S to T. F = k, and F disconnects t from s.

Example 6: image segmentation Taken from J. Kleinberg, E. Tardos, «Algorithm Design» You are given an image, say a set V of pixels For each pixel i in V : a i is the likelihood that i is foreground b i is the likelihood that i is background p ij is the similarity between i and j Goal: find a partition of pixels in foreground and background, optimizing accuracy and smoothness

Example 7: project management Taken from J. Kleinberg, E. Tardos, «Algorithm Design» Set of possible projects P Each project i has an associated coefficient p i Profit if p i > 0 Cost if p i < 0 Set of prerequisites E: if (i,j) in E, i cannot be done unless also j is done A subset A of projects is feasible if each prerequisite of a project in A is also in A Goal: find a feasible subset of projects of maximum revenue (maximum weight closure problem)