0% found this document useful (0 votes)
92 views25 pages

Optimization Background For Network Design

This document provides an overview of optimization techniques for network design. It discusses how optimization formulations are used to minimize network costs when designing metro and wide area networks. Various network design tools that use optimization are mentioned, including WANDL, VPISystems, OPNET and RSOFT. Basic concepts of optimization are reviewed, such as seeking to maximize or minimize an objective function subject to constraints. Types of optimization problems discussed include linear programming, integer programming, and nonlinear programming. Linear programming is explained in more detail through an example of allocating steel production.

Uploaded by

mcclaink06
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
92 views25 pages

Optimization Background For Network Design

This document provides an overview of optimization techniques for network design. It discusses how optimization formulations are used to minimize network costs when designing metro and wide area networks. Various network design tools that use optimization are mentioned, including WANDL, VPISystems, OPNET and RSOFT. Basic concepts of optimization are reviewed, such as seeking to maximize or minimize an objective function subject to constraints. Types of optimization problems discussed include linear programming, integer programming, and nonlinear programming. Linear programming is explained in more detail through an example of allocating steel production.

Uploaded by

mcclaink06
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 25

Optimization Background for

Network Design

David Tipper
Associate Professor
Department of Information Science
and
Telecommunications
University of Pittsburgh
[email protected]
Slides 5
http://www.sis.pitt.edu/~dtipper/2110.html

Network Design Tools


• Optimization formulation to try and minimize cost
– Metro and WANS Designed using computer aid tools
– User provides set of traffic demands, geographic locations, and
performance requirements

Telcom 2110
Telcom 2120Spring
2 2006 2

1
Network Design Tools
• Variety of tools available
– WANDL, VPISystems, OPNET, RSOFT, etc. – trend is to
develop tools for internal use only make money on consulting

Telcom 2110
Telcom 2120Spring
3 2006 3

Optimization Review
• Optimization Techniques
– Seek to find maximum or minimum of a objective function
– Set of unknown decision variables
– Constraints limit the possible values for the variables

• Definition
– “A Mathematical Programming Model is a mathematical
decision model for planning (programming) decisions that
optimize an objective function and satisfy limitations
imposed by mathematical constraints.” **1

**1 T.W. Knowles, Management Science: Building and Using Models, Irwin, 1989.

Telcom 2110
Telcom 2120Spring
4 2006 4

2
Types of Optimization Problems

Telcom 2110
Telcom 2120Spring
5 2006 5

Simple Continuous Optimization

• If Unconstrained
– objective function F(X) is continuous function of x and
x is continuous
– Find MAX/MIN of F(x) by differentiation (set derivative = 0)
– Determine if MAX or MIN by second derivative
– If multi-dimensional – calculate gradient – use numerical gradient
search methods
– Newton's method gives rise to a wide and important class of
algorithms that require computation of the gradient vector

∂φ ∂φ ∂φ
∇φ ( x , y , z ) = xˆ + yˆ + zˆ
∂x ∂y ∂z

Telcom 2110
Telcom 2120Spring
6 2006 6

3
Constrained Optimization
• General Symbolic Model

Maximize (or minimize): f ( x1 , x2 K xn ) Objective

Subject to: g1 ( x1 , x2 K xn ) {≤, ≥, =} b1


g 2 ( x1 , x2 K xn ) {≤, ≥, =} b2
Constraints


g m ( x1 , x2 K xn ) {≤, ≥, =} bm

… where x1 , x2 K xn are the decision variables

Telcom 2110
Telcom 2120Spring
7 2006 7

Mathematical Programming
• Types of Mathematical Programs:
– Linear Programs (LP): the objective and constraint functions
are linear and the decision variables are continuous.

– Integer (Linear) Programs (IP): one or more of the


decision variables are restricted to integer values only and the
functions are linear.
• Pure IP: all decision variables are integer.
• Mixed IP (MIP): some decision variables are integer, others
are continuous.
• 1/0 MIP: some or all decision variables are further restricted
to be valued either “1” or “0”.

– Nonlinear Programs: one or more of the functions is not


linear.

Telcom 2110
Telcom 2120Spring
8 2006 8

4
Linear Programming
• General Symbolic Form
Maximize: c1 x1 + c2 x2 + K cn xn Objective

Subject to: a11 x1 + a12 x2 + K + a1n xn {≤, ≥, =} b1


a21 x1 + a22 x2 + K + a2 n xn {≤, ≥, =} b2
Constraints


a m1 x1 + a m 2 x 2 + K + a mn x n {≤ , ≥ , =} bm

0 ≤ xj, j = 1, K , n Bounds

… where aij , bj , c j are the model parameters.

Maximize : cT x

Telcom 2110
Telcom 2120Spring
9 2006 9

Linear Programming
• Can be written in matrix formulation
Maximize: cT x Objective

Subject to: Ax = b Constraints

0 ≤ xj ∀j Bounds

…where c, A, b are parameters

Telcom 2110
Telcom 2120Spring
10 2006 10

5
Linear Programming
• General Restrictions
– All decision variables must be nonnegative x ≥ 0.
– Constant terms cannot appear on the LHS of a constraint.
j

– No variable can appear on the RHS of a constraint.


– No variable can appear more than once in a function, i.e.
objective or constraint.

• Steps for Formulating LP Models


– Construct a verbal model.
– Define the decision variables.
– Construct the math model.

• Feasible solution - set of all points satisfying all LP’s constraints


and sign restrictions
Optimal solution to an LP – a point in the feasible region with
the largest objective function

Telcom 2110
Telcom 2120Spring
11 2006 11

Formulating LP Problems
• An example**2
– A steel company must decide how to allocate production time on
a rolling mill. The mill takes unfinished slabs of steel as input and
can produce either of two products: bands and coils.
The products come off the mill at different rates and also have
different profit-abilities:
Tons/hour Profit/ton
Bands 200 $25
Coils 140 $30

– The weekly production that can be justified based on current


and forecast orders are:
Maximum tons: Bands 6,000
Coils 4,000

**2 from, R. Fourer, D. Gay, B. Kernighan, AMPL, Boyd & Fraser, 1993, pp. 2-10.

Telcom 2110
Telcom 2120Spring
12 2006 12

6
Formulating LP Problems
• Example (cont’d)
– The question facing the company is:
If 40 hours of production time are available, how many tons of
bands and coils should be produced to bring in the greatest
total profit?

• Constructing the Verbal model


– Put the objective and constraints into words.
– For constraints, use the form

{a verbal description of the LHS} {a relationship} {an RHS constant}


Maximize: total profit
Subject to: total number of production hours ≤ 40
tons of bands produced ≤ 6,000
tons of coils produced ≤ 4,000

Telcom 2110
Telcom 2120Spring
13 2006 13

Formulating LP Problems
• Definine the Decision Variables
– XB number of tons of bands produced.
– XC number of tons of coils produced.

• Construct the Symbolic Model


Maximize: 25 X B + 30 X C

Subject to: (1 200)X B + (1 140)X C ≤ 40


0 ≤ X B ≤ 6000
0 ≤ X C ≤ 4000

Telcom 2110
Telcom 2120Spring
14 2006 14

7
Solving LP Problems

• Graphical Solution Method


Coils
Coils

Constraints 220K Profit


6000 6000
Hours
192K
XC XC
4000 4000
Optimal solution

2000 Feasible region 2000


120K

Bands 0 Bands
0
0 2000 4000 6000 8000 0 2000 4000 6000 8000

XB XB
Optimal Solution: XB = 6000, XC = 1400
Profit = 25*6000 + 30*1400
= $192,000
Telcom 2110
Telcom 2120Spring
15 2006 15

Solving LP Problems

• 4 Possible Outcomes

Unique Optimal Solution Alternate Optimal Solutions

No Feasible Solution Unbounded Optimal Solution

Telcom 2110
Telcom 2120Spring
16 2006 16

8
Solving LP Problems
• In general problem is too complex for graphical solution
• Simplex method
– Efficient algorithm to solve LP problems by performing matrix
operations on the LP Tableau
– Developed by George Dantzig (1947)
– Can be used to solve small LP problems by hand
– Equivalent to checking corner points
• For large problems interior point methods used which
make steps through the middle of the feasible space in
checking corner points.
• Many software packages implement LP
– General math/stats packages: Matlab, MS Excel, Maple, etc.
– Specialized optimization packages : Lindo, AMPL/CPLEX,
Minos, etc.

Telcom 2120 17

Simplex Method

• Find a basic feasible solution (maybe slack


variable with base variable set to zero), move
from corner to corner via swapping columns and
eliminating slack variables.
• Algorithm
1. Find a basic feasible solution and form tableau
2. Repeat
1. If call coefficients in objective row => 0 stop
2. Else, pick column with most negative coefficient
3. Pick row with least positive ratio of rhs/(column value)
4. Normalize Row so pivot value =one
5. Use Gaussian elimination to remove make rest of column
zero

Telcom 2120 18

9
LP Example
• Two types of leather belts: deluxe and regular, each requires
1 sq. yard of leather
• Each week: only 40 sq yard leather & 60 hrs of labor skill
available
• Regular belt: 1 hr labor -> $3 profit
Deluxe belt: 2 hr labor -> $4 profit
• Variable: x1 = # deluxe belts produced/wk
x2 = # regular belts produced/wk

• LP: maximize profit z = 4x1 + 3x2


s.t. x1 + x2 <= 40
2x1 +x2 <= 60
x1, x2 >= 0

Telcom 2110
Telcom 2120Spring
19 2006 20

Simplex method for standard Max problem


• From previous problem:
maximize profit z = 4x1 + 3x2
subject to x1 + x2 <= 40
2x1 +x2 <= 60
x1, x2 >= 0

• Step1: Convert LP to standard form


– Add slack variable to each inequality constraint
– Turn constraints to equations
z - 4x1 - 3x2 =0
s.t. x1 + x2 + s1 = 40
2x1+ x2 + s2 = 60

Telcom 2110
Telcom 2120Spring
20 2006 1

10
Simplex method for standard Max problem
• Step2: Write down the simplex tableau
– Start with NBV = {x1, x2} and BV = {z, s1, s2}

z x1 x2 s1 s2 rhs BV
1 -4 -3 0 0 0 z=0
0 1 1 1 0 40 s1 = 40
0 2 1 0 1 60 s2 = 60

• Step3: Choose entering variable and do test ratio


– entering variable: x1 (increase x1 one unit -> z increases 4
units)
– Pivot row: row2
z x1 x2 s1 s2 rhs BV ratio
Row 0: 1 -4 -3 0 0 0 z=0
Row 1: 0 1 1 1 0 40 s1 = 40 x1 <= 40
Row 2: 0 2 1 0 1 60 s2 = 60 x1 <= 30

Telcom 2110
Telcom 2120Spring
21 2006 2

Simplex method for standard Max problem


• Step4: Perform pivoting
– Make coefficient of x1 in row2 to be one and all other rows
to be zeros
– departing variable: s2 and BV = {z, s1, x1}
z x1 x2 s1 s2 rhs BV
1 0 -1 0 2 120 z = 120
0 0 0.5 1 -0.5 10 s1 = 10
0 1 0.5 0 0.5 30 x1 = 30

• Repeat step 3-4


– entering variable: x2 (increase x2 one unit -> z increases
one unit)
– Pivot row: row1
z x1 x2 s1 s2 rhs BV ratio
Row 0: 1 0 -1 0 2 120 z = 120
Row 1: 0 0 0.5 1 -0.5 10 s1 = 10 x2 <= 20
Row 2: 0 1 0.5 0 0.5 30 x1 = 30 x2 <= 60

Telcom 2110
Telcom 2120Spring
22 2006 3

11
Simplex method for standard Max problem
• Optimal solution is reached
– No new entering variable is found
– x1 = 20, x2 = 20 with maximum profit at
z = 4(20) + 3(20) = $140 per week
Same Solution as graphical approach

z x1 x2 s1 s2 rhs BV ratio
1 0 0 2 1 140 z = 140
0 0 1 2 -1 20 x2 = 20
0 1 0 -1 1 20 x1 = 20

Telcom 2110
Telcom 2120Spring
23 2006 3

Solving LP problems
• Simplex method
– Easy to use but to solve large problems need to use
computer
• AMPL and CPLEX
– AMPL: modeling language (and software) for designing large
and complex LP/IP problems.
– CPLEX: software package (“solver”) to solve large and
complex LP/IP problems.

Telcom 2110
Telcom 2120Spring
26 2006 17

12
Example: Simplex Algorithm
• Look at the LP problem (slide 14) solved graphically:
Maximize: 25 X B + 30 X C

Subject to: (1 200 )X B + (1 140 )X C ≤ 40


0 ≤ X B ≤ 6000
0 ≤ X C ≤ 4000
• Adding slack variables and covert LP to standard form
Maximize: Z = 25 X B + 30 X C

Subject to: (1 200 ) X B + (1 140 ) X C + S1 = 40


X B + S 2 = 6000
X C + S3 = 4000
X B , X C , S1 , S2 , S3 ≥ 0

Telcom 2110
Telcom 2120Spring
27 2006 18

Simple AMPL Example


• Typing AMPL’s description into a file – prod0.mod
var XB;
var XC;
maximize Profit: 25*XB + 30*XC;
subject to Time: (1/200) * XB + (1/140) * XC <= 40;
subject to B_limit: 0 <= XB <= 6000;
subject to C_limit: 0 <= XC <= 4000;

• Call AMPL commands:


ampl: model prod0.mod
ampl: solve;
MINOS 5.5: optimal solution found
2 iterations, objective 192000
ampl: display XB, XC;
XB = 6000
XC = 1400
ampl: quit

Telcom 2110
Telcom 2120Spring
28 2006 19

13
Matlab Example
• Look at the LP problem (slide 14) solved graphically:
Maximize: 25 X B + 30 X C
Subject to: (1 200 ) X B + (1 140 )X C ≤ 40
0 ≤ X B ≤ 6000
0 ≤ X C ≤ 4000
In Matlab formulate LP problems as >> f = [-25 -30];
>>A = [1/200 1/140; 1 0; 0 1];
Minimize fx >> b = [40 6000 4000];
>> b = b';
s.t. Ax <= b
>> [x,fval]=linprog(f,A,b)
Optimization terminated.
x=
1.0e+003 *
6.0000
1.4000

fval = -1.9200e+005

Telcom 2110
Telcom 2120Spring
29 2006 18

Integer Programming
• Many problems in Network Design involve variables that are
restricted to Integer Values – problems with such constraints are
called Integer Programs
• Consider previous LP Example (slides 12-14)
– Assume that orders for bands and coils are placed (and filled) in
1,000s of pounds only.
– Although feasible region is greatly reduced, problem becomes much
more difficult.

• New Symbolic Model


– Let the new decision variables be the number of 1000 pound “units”
or orders of bands and coils.

Maximize: 25000 X B′ + 30000 X C′

Subject to: (1000 200)X B′ + (1000 140)X C′ ≤ 40


0 ≤ X B′ ≤ 6, integer
0 ≤ X C′ ≤ 4, integer

Telcom 2110
Telcom 2120Spring
30 2006 23

14
Integer Programming

• Graphical Solution Method

Coils
X’C
6
$185K

Optimal integer solution ($185K)


4

Feasible integer solutions


0 Bands
0 2 4 6 8
X’B

Telcom 2110
Telcom 2120Spring
31 2006 24

Solving IP Problems
• Branch-and-Bound Procedure
– The solution space consists of a tree of LP subproblems, in which each
integer variable is either fixed or its integrality constraint is “relaxed.”
– The root node of the tree is the LP relaxation of the problem, i.e. all
integer variables are relaxed.
– The relaxation can result in an all integer solution, or a fractional
solution (some decision variables are non-integer).
– If the solution of the relaxation has fractional-valued integer variables,
a fractional variable is selected for branching and two new
subproblems are generated, each with more restrictive bounds on the
branching variable.
– The subproblems can result in an all integer solution, an infeasible
problem or another fractional solution.
– If the solution is fractional, the process is repeated.
– Branches are “fathomed” if the subproblem is infeasible, the objective
value is worse than the current best integer solution or the subproblem
gives an integer solution.

Telcom 2110
Telcom 2120Spring
32 2006 25

15
Solving MIP Problems
• Branch-and-Bound Tree (Example)
SP1:Bounds Solution
0<=XB<=6 Obj. = 192K
0 0<=XC<=4 XB = 6.00
XC = 1.40
1 3

2
SP2:Bounds Solution SP3:Bounds Solution
0<=XB<=6 Obj. = 180K 0<=XB<=6 Obj. = 189K
1 2
0<=XC<=1 XB = 6.00 2<=XC<=4 XB = 5.14
XC = 1.00 4 XC = 2.00
10

9
SP4:Bounds Solution SP7:Bounds Solution
0<=XB<=5 Obj. = 188K 6<=XB<=6 *Infeasible
3 6
2<=XC<=4 XB = 5.00 2<=XC<=4
XC = 2.10
5 7

6 8
SP5:Bounds Solution SP6:Bounds Solution
0<=XB<=5 Obj. = 185K 0<=XB<=5 Obj. = 183K
4 5
2<=XC<=2 XB = 5.00 3<=XC<=4 XB = 3.71
XC = 2.00 XC = 3.00

Telcom 2110
Telcom 2120Spring
33 2006 26

Branch-and-Bound (cont’d)

• Subproblem1: start with • Subproblem2: 0<=XB<=6


optimum LP solution 0<=XC<=1
Coils Coils

6 6

XC XC
4 4

2 XB=6, XC=1.4 => Z = $192K 2 XB=6, XC=1 => Z = $180K

0 Bands 0 Bands
0 2 4 6 8 0 2 4 6 8
XB XB

Telcom 2110
Telcom 2120Spring
34 2006 27

16
Branch-and-Bound (cont’d)

• Subproblem3: 0<=XB<=6 • Subproblem4: 0<=XB<=5


2<=XC<=4 2<=XC<=4
Coils Coils

6 6

XC XC
4 4

XB=5.14, XC=2 => Z = $188.57K XB=5, XC=2.1 => Z = $188K


2 2

0 Bands 0
0 2 4 6 8 0 2 4 6 8
XB XB

Telcom 2110
Telcom 2120Spring
35 2006 28

Branch-and-Bound (cont’d)

• Subproblem5: 0<=XB<=5 • Subproblem6: 0<=XB<=5


2<=XC<=2 3<=XC<=4
Coils Coils

6 6

XC XC
4 4

XB=5, XC=2 => Z = $185K XB=3.7, XC=3 => Z = $182.5K


2 2

0 Bands 0
0 2 4 6 8 0 2 4 6 8
XB XB

Telcom 2110
Telcom 2120Spring
36 2006 29

17
Branch-and-Bound (cont’d)

• Subproblem7: 6<=XB<=6
2<=XC<=4
Coils

XC
4

NO Feasible Solution
2

0 Bands
0 2 4 6 8
XB

Telcom 2110
Telcom 2120Spring
37 2006 30

Algebraic Expression of LP/IP Problems


• Why use it?
– Most LP/IP problems are quite large and it becomes very
cumbersome to describe them by explicitly giving each linear
function, equality, and inequality in full.

– It is desirable to model problems in a more general fashion


(e.g. give an IP for optimally designing a mesh-restorable
network in general as opposed to doing so for a specific
network).
– Formulate with Matrix Vector or Sum format

Telcom 2110
Telcom 2120Spring
38 2006 31

18
Algebraic Expression of LP/IP Problems
• Basic Production Model (Revisited)
Original Model Algebraic Model

Problem name: prob.lp Given: P, a set of products

a j = tons per hour of product j, for each j∈P


Maximize
25 XB + 30 XC b = hours available at the mill
cj = profit per ton of product j, for each j∈P
Subject To
0.005 XB + 0.007143 XC <= 40 uj = maximum tons of product j, for each j∈P

Define variables: Xj = tons of product j to be made, for each j∈P


Bounds
0 <= XB <= 6000
0 <= XC <= 4000 Maximize: ∑c X
j∈P
j j

End
Subject to: ∑ (1 a )X
j∈P
j j ≤b

0 ≤ X j ≤ u j , ∀j ∈ P

Telcom 2110
Telcom 2120Spring
39 2006 32

AMPL model
• Basic AMPL model (revisited) -prod0.mod
set P;
param a {j in P};
param b;
param c {j in P};
param u {j in P};
var X {j in P};
maximize Total_Profit: sum {j in P} c[j] * X[j];
subject to Time: sum {j in P} (1/a[j]) * X[j] <= b;
subject to Limit {j in P}: 0 <= X[j] <= u[j];

• model data – prod0.dat


set P := bands coils;
param: a c u :=
bands 200 25 6000
coils 140 30 4000;
param b := 40;

Telcom 2110
Telcom 2120Spring
40 2006 33

19
Network Design Optimization
Formulations
• Optimization Based Formulations widely
used as a starting point in network design
tools
• Good Reference is M. Pioro and D. Medhi
book Routing, Flow and Capacity Design in
Communication and Computer Networks
• Consider a couple of simple examples
– Max Flow Assignment (routing problem)
– Telephone Capacity Assignment

Telcom 2120 41

Network Flow LP Formulations


Example: LP to find max
flow between nodes 1-5 20 2 10
Edge capacities: 4
1
2 5
8
3 5
20
Define directional flow variables:
x42
x12 2
x24 4
“trans-shipment nodes”
1 x32
source x23 x45
x13
3 5 sink
x35

Source: W. D. Grover, ECE 681, UofA, Fall 2004

Telcom 2120 42

20
Network Flow LP Formulations (2)
“transportation problem” or “arc-flow” approach

To maximize (1 → 5) flow : /* using lp_solve syntax */


max: x12 + x13 ; /* (or x35 + x45) */
subject to constraints:
c1: x12 + x13 = x45 + x35 ; /* source = sink */
c2: x12 + x32 - x23 + x42 - x24 = 0 ; /* node 2 trans-shipment*/
c3: x13 + x23 - x32 - x35 = 0 ; /* node 3 trans-shipment*/
c4: x24 - x45 - x42 = 0 ; /* node 4 trans-shipment*/
x42
x12 2
x24 4

1 x32
x23 x45
x13
3 5
x35
Source: W. D. Grover, ECE 681, UofA, Fall 2004

Telcom 2120 43

Network Flow LP Formulations (3)


“transportation problem” or “arc-flow” approach
Continued....
Also subject to (capacity constraints):
x12 < 20 ; 20 10
2
4
x13 < 8 ; 1
2 5
x24 < 10 ;
8
3 5
x42 < 10 ; 20

x23 < 2 ; x42


x12 2
x32 < 2 ; x24 4
1 x32 x
x35 < 20 ; 23 x45
x13
x45 < 5 ; 3 5
x35

Source: W. D. Grover, ECE 681, UofA, Fall 2004

Telcom 2120 44

21
Network Flow LP Formulations (4)
“transportation problem” or “arc-flow” approach

max ∑ x1i
Symbolically....

1,i∈E

s.t. ∑ x1i = ∑ xi5


1,i∈E 5,i∈E

∑ xij = ∑ xji
i , j∈E i , j∈E
∀i ∈ {N − {1,5}}

0 ≤ xij ≤ sij ∀ij ∈ E


Where:
E = set of edges that exist
N = set of nodes
sij = spare capacity on edge ij (= sji)
Source: W. D. Grover, ECE 681, UofA, Fall 2004

Telcom 2120 45

Network Flow LP Formulations


Alternate approach: “flow assignment to routes” or “arc-path” approach

Symbolically....
max ∑
i∈P15
fi

s.t. ∑
i∈P15
fi ⋅ δ ik ≤ sk ∀k ∈ E

fi ≥ 0 ∀i ∈ P15
Where:
E = set of edges that exist (indexed by k)
P 15= set of “eligible” distinct routes between nodes 1 and 5 (source-sink)
sk = spare capacity on edge k
δ ik = 1 if the i th distinct route crosses span k. Zero otherwise

Source: W. D. Grover, ECE 681, UofA, Fall 2004

Telcom 2120 46

22
Network Flow LP Formulations (6)
“flow assignment to routes” or “arc-path” approach - example

Identify all distinct routes between source- sink (set P15) ....

f1
2 f4
4 2 4
1
1
f2
3 5
3 5
f3

Route associated Route associated


flow variable flow variable
1-2-4-5 f1 1-3-5 f3
1-2-3-5 f2 1-3-2-4-5 f4

Source: W. D. Grover, ECE 681, UofA, Fall 2004

Telcom 2120 47

Network Flow LP Formulations (7)


“flow assignment to routes” or “arc-path” approach - example (2)
To maximize (1 -> 5) flow :
max: f1 + f2 + f3 + f4 ;
subject to constraints:
c1: f1 + f2 <= 20 ; /* link 12 capacity */
c2: f4 + f3 <= 8 ; /* link 13 capacity */
c3: f4 + f2 <= 2 ; /* link 23 capacity */
c4: f1 + f4 <= 10 ; /* link 24 */

f1
20 2 10 f4
4 2 4
1 20 10
2 1 2
5
8 f2 5
3 5 3 5
20 8
f3 20

Source: W. D. Grover, ECE 681, UofA, Fall 2004

Telcom 2120 48

23
Network Flow LP Formulations (8)
“flow assignment to routes” or “arc-path” approach - example (2)

What are the remaining constraints ? :


- for link 3-5 ... ?: c5: f3 + f2 <= 20; /*link 35 capacity */

- for link 4-5 ... ? c6: f4 + f1 <= 5; /*link 45 capacity */


(note this makes prior
constraint f4 + f1<=10
redundant )

f1
20 2 10 f4
4 2
20 10 4
1 1
2 5 2 5
8 f2
3 5 3 5
20 8
f3 20

Source: W. D. Grover, ECE 681, UofA, Fall 2004

Telcom 2120 49

Network Flow LP Formulations (9)


“flow assignment to routes” or “arc-path” approach - example (3)
• Note that the δ ik “indicator” parameters do not appear explicitly in the

executable model.

• Really they just represent our knowledge of the topology and the routes
being considered.

• Implicitly above, we only wrote the flow variables that had non-zero
coefficients.

Examples: δ 12 = 1 (flow1 crosses span 12) Hence f1 is in the first constraint


1
δ 35 = 1 (flow3 crosses span 35) Hence f3 is in the fifth constraint, etc.
3

Source: W. D. Grover, ECE 681, UofA, Fall 2004

Telcom 2120 50

24
Sonet/STM Design Problem

Telcom 2120 51

Complexity - Solving Design Problems


• Real world Network Design problems are quite large (have many variables and
constraints)
– Graph Theory and Optimization Based algorithms for network design are complex
– when can one use a technique?

• Complexity of an algorithm usually denotes O(.) which denotes the order of


time growth in the algorithm as a function of problem variables
– Dijkstra’s Algorithm for SPT O(N2) where N is number of nodes in graph
– Prim’s Algorithm for MST O(E log(N)) where N is # nodes, E # edges
• Problems that can be solved by a deterministic algorithm in a polynomial time
complexity denoted P that is O(Nk)
• Problems that can not be solved with P complexity denoted NP and don’t scale
well
– Linear Programming Problems have P complexity
– Integer Programming Problems have NP complexity
• Still Branch and Bound can be used for small problems !
• In general for NP problems use Sub-optimal algorithms (meta-heuristics)
– Simulated annealing
– Genetic algorithms
– Tabu search

Telcom 2120 52

25

You might also like