L13. Capacitated and uncapacitated network design problems D. Moltchanov, TUT, Fall 2017 D. Moltchanov, TUT, Spring 2008
Network dimensioning problems
NDP: network model The general uncapacitated NDP problem Minimize cost of routing Given demand volumes, network topology and cost of routing How much capacity we need over the links? Example we consider V = 4 nodes E = 5 links D = 3 bidirectional demands Link rates ce are unknowns! Demands: hd=15, hd=20, hd=10 Demands d: Pd paths, p = 1,2,…,Pd sets of path for demand d flow variables
NDP: specifying paths and flows Demand d = 1, first path path consists of two links 2 and 4 the set of path for d=1 one flow possible: Are there other paths? Sure, there are We just excluded them! What is the reason for exclusions Quite arbitrary, length, external requirements, anything… In this case: don’t want path longer than 1 hop for this demand Given topology it is up to us to decide which paths to allow!
NDP: specifying paths and flows Demand d = 2, two paths set of paths for d = 2: flow variables: other paths are disallowed by us! Demand d = 3: two paths set of paths for d = 3:
NDP: example Let the vectors of flows for demands be the vector of all allocations is Flows of a demand must satisfy this demand, thus, these are demand constraints In our particular case we have
NDP: example Second set of constraints Note the following links are not exceeded by flows called capacity constraints Note the following LHS: link loads due to flows We need to know relationship between links and paths Can be formally specified by link-path incidence coefficients
NDP: example Link-path incidence relation table provides indication which flows appears in LHS whether path p of demand d uses link e? Example: d=1 path entries are set to 1 Example: d=3 path entries are set to 1
NDP: example Why we introduced ? The link load on link e is given by Now the capacity constraints are which is a compact form of we will also define a vector
NDP: example We are interested in minimizing the capacity cost where is cost of a capacity unit on link e The whole problem Minimize Subject to
NDP: example Equivalent to this extended one Minimize Subject to Demand constraints: Capacity constraints: Non-negativity constraints:
NDP: example Compare with three nodes example Minimize (routing cost) subject to flow constraints and link constraints difference and positivity constraints
NDP: example Compare with three nodes example Three nodes example Demands were given Link capacities were given We minimized the total routing cost That is called “capacitated design problem” Current four nodes example Demands are given Link capacities are unknown Link unit costs are given Minimizing capacity cost required to route demands This is called “uncapacitated design problem” Both problems are of linear programming (LP) type. Why?
NDP: solution Note the following What are the reasons? When variables are continuous we have equalities What are the reasons? why should we pay for unused capacity? that is link load by flows should equal the capacity of this link
NDP: solution Consider a solution Is this optimal? No… Just an instance of First: Then: via The link rate vector total cost Is this optimal? No… Path for d=2 carrying Expensive as Another path is with cost Cost path is found in general using
NDP: solution What to do? Other observations Move all the flow from to That is, set Savings per unit: Overall savings: Other observations Flow is optimal (only one path!) Flows are optimal Why? paths are of the same cost: Any split of is optimal! Infinitely many optimal solutions:
NDP: short path allocation rule Remember we had multiple paths? Demand d=1: Demand d=2: Demand d=3: Uncapacitated NDP only! 2 1 1 3 1
NDP: modification 1 Why not to add for d=1? Should be better for the cost! Recall costs Modifications to constraints and objective function Demand constraints
NDP: modification 1 Capacity constraints
NDP: modification 1 Objective function remains the same Solution to this modified problem We already have Paths have costs Our rule: allocate all to Can we? Why not? We are dealing with uncapacitated problem! Savings: per unit overall Optimal solution with
NDP: non-bifurcated flows We may request non-bifurcated solution Splitting of flows are not allowed One flow for one demand AKA: unplittable or single path NDP For our settings Already only one path allowed for d=1: For d=2: one out of two allowed For d=3: one out of two allowed May not be unique Bifurcated solution Non-bifurcated ones:
NDP: modular links We assumed links of any rates! Is this realistic? No! Modular links needs to be used… e.g. T1/E1/STM-1 etc. Let’s assume 1 LCU = M DVU What are the implications? Allocation may not obey the shortest path allocation rule One can see it using huge values of M Optimal link capacity is not the same as optimal link load So far we used these terms interchangeably Optimal link capacity optimal link load Bifurcated solutions are “more optimal” in general Splitting is good when M is moderate with respect to demands For huge M non-bifurcated solutions are often obvious Non-bifurcated with modular links is a complex problem!
NDP: modular links Let M = 35, 1 LCU = 35 DVU Non-modular Modular 2 1 Recall One module at e = 1 One more at e = 5 Non-modular Modular 2 1 35 1 3 1 35
NDP: capacitated problem Uncapacitated design problem We are given a network, demands, paths, link costs Link rates are what we need to find Such that the cost is minimized Capacitated design problem We are given a network, demands, paths Link rates are given (links are installed already) Flow allocation is what we need to find Such that routing cost are minimized Important difference between these two No link costs in capacitated problem Cost of using a link could be given (called routing cost) As a special case: cost of routing for all links may have cost 1
NDP: capacitated problem Given demand constraints And capacity constraints Minimize where is the cost of routing over link e
NDP: capacitated problem Letting in our example Capacities routing costs And allowing one more path for d=1, There is bifurcated solution with paths No non-bifurcated solutions… This is often the case 10 5 5 10 30
NDP: capacitated vs. uncapacitated minimize subject to Capacitated minimize subject to Solution: LP solvers, e.g. Mathlab, CPLEX, Maple, etc.