optimized assignment patterns in mobile edge cloud networks ·  · 2017-08-29optimized assignment...

25

Upload: letruc

Post on 30-May-2018

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

Optimized Assignment Patterns in Mobile Edge Cloud

Networks

Alberto Ceselli (albertoceselliunimiit)Dipartimento di Informatica Universitagrave Degli Studi di Milano Crema Italy

Marco Fiore (marcooreieiitcnrit)CNR-IEIIT Torino Italy

Marco Premoli (marcopremoliunimiit)Dipartimento di Informatica Universitagrave Degli Studi di Milano Crema Italy

Stefano Secci (stefanosecciupmcfr)UPMC Univ Paris 06 UMR 7606 LIP6 F-75005 Paris France

June 15th 2017

Abstract

Given an existing Mobile Edge Cloud (MEC) network including virtualization fa-cilities of limited capacity and a set of mobile Access Points (AP) whose data tracdemand changes over time we aim at nding plans for assigning APs trac to MECfacilities so that the demand of each AP is satised and MEC facility capacities arenot exceeded yielding high level of service to the users Since demands are dynamicwe allow each AP to be assigned to dierent MEC facilities at dierent points in timeaccounting for suitable switching costs We propose a general data-driven frameworkfor our application including an optimization core a data pre-processing module anda validation module to test plans accuracy Our optimization core entails a combina-torial problem that is a multi-period variant of the Generalized Assignment Problemwe design a branch-and-price algorithm that although exact in nature performs wellalso as a matheuristics when combined with early stopping Extensive experiments onboth synthetic and real-world datasets demonstrate that our approach is both com-putationally eective and accurate when employed for prescriptive analytics

Keywords Mobile Edge Computing Prescriptive Analytics Generalized Assign-ment Branch-and-Price

1 Introduction

Communication networks have been undergoing a rapid evolution in the last few yearsembracing software-based system virtualization as a way to optimize physical resourceeciency and network operational expenditures and to increase the users quality of expe-rience A particularly promising area of research is the one deriving from the installationof application servers into the access network by means of a virtualization system todecrease the network distance between users and servers hence oering higher reliabilityand performance to network connection besides an ideally lower energy foot-print on theInternet infrastructure In telecommunications standardization bodies and open sourcecode communities this rising area is referred to as Mobile Edge Computing (MEC) [1]

1

Thanks to MEC deployment the user experience can indeed be augmented because theserver access latency can be drastically reduced hence favoring collaborative networkingtactile Internet (ie communications made possible by an extremely low latency suchas augmented reality applications) [2] and more generally computation ooading to anearby cloud with the goals to control mobile device energy consumption and to runcomputationally heavy applications using tiny low-power devices [3]

Motivation and problem description In a MEC infrastructure virtualization clus-ters called `MEC facilities or `MEC hosts in the standardization documents or cloudletsin academic jargon are connected to access network nodes to deliver access to mobileapplication servers run as Virtual Machines (VMs) Various innovative operations to dealwith changing mobile access demands can be applied and include Access Point (AP) toMEC facility dynamic assignment VM capacity rescaling (addition or removal of com-puting power in terms of live memory or virtual processors) and VM migration (a VMstate is moved from one MEC facility to another one) An `orchestrator is in charge ofimplementing such decisions into the MEC virtualization layer Each orchestration actioncomes at a cost often referred to as migration or switching cost as it requires synchro-nizing states across a geographical network under stringent performance guarantees Thetechnology to perform MEC orchestration operations is becoming mature [4 5] Howeverthe MEC orchestrator intelligence is still being developed with as major goal to performboth reactive decisions to cope with sudden unpredicted changes and proactive decisionsto anticipate expectable network impairments

We precisely address the MEC orchestration challenge from an algorithmic perspectiveOur aim is to propose algorithms to take robust decisions about AP-MEC assignments andrelated trac routing while taking into consideration the corresponding VM switchingcosts

More in details our dynamic routing application contains a combinatorial core APshave associated mobile trac demand that changes over time Each MEC facility has acertain capacity limiting the overall amount of demand it can serve simultaneously APsmust be assigned to MEC facilities each assignment implies a cost for each user connectedto the AP in terms of latency for communicating with the associated MEC server Due tocapacity limits it might be not always a good decision to assign each AP to its MEC facilityof minimum latency furthermore since demand changes over time an assignment patternwould hardly remain an ecient one over the whole planning horizon We therefore leavethe option of changing assignments over time taking into account that each change impliesa switching cost for the network for example in terms of signaling to move session dataof active users An optimization problem therefore arises that is to assign APs to MECfacilities over time respecting capacity constraints and minimizing a combination of users(assignment) and network (switching) costs

Literature Review Our nal aim is to conceive a data-driven MEC management opti-mization framework data analytics for network management is indeed a relevant subjectto our research This represents an emerging eld in computer networks fostered by theexpected integration of analytics in the next generation of mobile networks [6] In ourframework we employ clustering techniques to unlink from noisy raw measurement dataIn particular we identify a limited number of typical congurations of the data tracdemand across the APs thus understanding suitable time discretization patterns As amatter of fact the data trac demand in mobile networks is characterized by signicantuctuations in space and time due to the diverse activities of subscribers at dierenttimes and locations [7] To accommodate such a variability 5G systems will build on newnetworking paradigms such as Cloud Radio Access Networks (C-RAN) Software Dened

2

Networking (SDN) and Network Function Virtualization (NFV) that allow the dynamic(re-)allocation of resources [8] There is thus a need for analytics that mine trac metadatadiscover relevant knowledge about the network status and ultimately drive the resourcemanagement process [9 10] However we currently miss substantial demonstrations ofhow data analytics can be leveraged in mobile network architectures

Our proposal is to equip the system with an optimization core exploiting preprocesseddata as input and producing solutions whose structure is explicitly encoded by mathe-matical programming models Our setting requires to tackle a multi-period extension ofthe famous Generalized Assignment Problem (GAP) [11] We point to [12] for a detailedreview on the GAP and its extensions Despite the large body of research available onthe GAP we are not aware of many papers directly dealing with its multi-period exten-sions In [13] the authors face a single-source allocation problem with a exible model andan eective branch-and-price algorithm however their model does not allow to handlelimited capacity which is a crucial feature in our application The multi-period alloca-tion problem discussed in [14] in which a dual ascent technique from [15] is adapted toa telecommunication networks applications is similarly missing the feature of handlinglimited capacities

Although our problem does not require to decide the location of the facilities which isinstead assumed to be optimized in a prior strategic planning [16] and given in input onemay expect features and computational challenges similar to those of multi-period locationproblems [17] Recent approaches on that eld include [18] the authors face a multi-periodconcentrator location and dimensioning problem providing MILP formulations and reduc-tion techniques and solving to optimality in less than one hour of computation instanceswith up to 30 clients 10 candidate location sites and 15 time periods or 100 clients 30candidate locations and 5 time periods In [19] the authors introduce exact methods fora capacitated multi-period facility location problem in which however unlike our casethe demand of each client can be fractionally served by multiple facilities Large scaleinstances with up to 200 facilities three periods and an arbitrary number of clients couldbe solved with their algorithms We nally mention the recent contribution of [20] wherethe authors propose MILP formulations and local search heuristics for an uncapacitatedp-median location problem involving two periods in the rst the location of facilities isgiven while in the second it can be changed at a price Clients are always assigned to thenearest facility They provide good approximations to instances with up to 400 facilitiesin a few minutes of computation

Contribution summary and paper outline Our research provides three types of con-tributions The rst is architectural we design a data-driven framework for the dynamicselection of AP to facility assignment in MEC networks which relies on (i) historical dataclustering analytics (ii) dedicated optimization techniques and (iii) validation by simu-lation The second is algorithmic we introduce mathematical programming formulationsand ad-hoc exact solution methods for a relevant multi-period extension of GAP The thirdis use case-oriented we evaluate our framework with real-world datasets which providespractical insights for MEC resource management We devote a substantial part of thepaper to the technical insights of our optimization core

The manuscript is structured as follows We rst detail our framework (Section 2)Then we focus on the optimization core component introducing a compact Mixed IntegerLinear Programming (MILP) formulation for our problem proving a few structural prop-erties and providing an extended counterpart by means of Dantzig-Wolfe decomposition(Section 3) we also design column generation procedures with ad-hoc pricing algorithmsrounding heuristics reduction techniques and branching rules to be embedded in a wholeexact solution method (Section 4) We show rst of all that our algorithms are eective

3

Figure 1 A data-driven MEC management optimization framework

from a computational point of view (Section 5) We then demonstrate the eectivenessof our optimization tools in practical scenarios using real-world trac demands collectedby a major mobile network operator in Milan Italy (Section 6) We nally draw someconclusions (Section 7)

2 A data-driven MEC management optimization framework

We propose a high-level data-driven MEC management optimization framework whosealgorithmic core architecture is sketched in Figure 1 The framework receives as inputa representation of the (time-varying) data trac demand recorded at each AP of theMEC network The framework output are (multiple) assignment patterns of APs to MECfacilities meant to be enforced by the orchestrator on the MEC network over time throughswitching operations

The input data is collected as historical records of the mobile trac demands in theMEC network Part of the data is reserved for testing by the Validation Tool module Partinstead is used for training ie it is fed to the Preprocessing and Data Mining modulewhich lters by meta-data and produces a suitable time (and possibly space) discretizationand a corresponding data aggregation The aggregated proles are sent to the OptimizationCore module which leverages them to compute candidate assignments The Orchestratormodule in turn receives the candidate assignments and queries the Validation Tool modulefor an evaluation on test data so as to determine their quality Based on the result theOrchestrator module nally chooses a suitable assignment and implements it in the MECnetwork

Preprocessing and Data Mining We assume that switching can occur only at cer-tain points in time (eg once every fteen minutes) due to practical limitations of theMEC technology this introduces an implicit time discretization of the system In orderto identify suitable discrete-time proles of the trac demand dierent strategies canbe employed in the Preprocessing and Data Mining module The simplest option is toaggregate the demand observed at each AP during every time step in the training dataThis returns one prole for each time step since switching between assignments cannotoccur at shorter timescales than the time step this is the highest resolution useful to theOptimization Core and the one deemed to return the highest-quality result However it

4

also creates a very large number of proles (eg in the order of thousands for hour-longtime steps over months of historical data) that may be computationally too expensive tomanage

Another option to identify suitable discrete-time proles of the trac demand is touse temporal clustering analytics on the historical data so as to group together time slotsthat feature very similar distributions of the mobile trac demand across the APs Inthis case the module returns a limited number of proles each of which corresponds tothe typical demand observed in a large set of time slots It is then possible to reduce thecomputational cost at the Optimization Core by feeding it with a small number of prolesHowever this comes at the expense of assignment quality since typical proles can onlyapproximate the actual MEC network load at a specic time step We provide an exampleof temporal clustering analytics which builds on the methodology of [21] in Section 61

Optimization Core Once the trac demand proles are dened the Optimization Corebuilds eective dynamic assignment plans on top of those Plans include for each timeslot the set of APs to be connected to which MEC facility and as a by-product the set ofswitching operations to be performed between subsequent time slots We consider dierentoperational options

bull single versus split assignment in the single assignment variant an AP is associatedto exactly one MEC facility in each point in time while in the split assignment

variant the AP demand can be served simultaneously by dierent facilities That isin the rst case we suppose that whenever connecting to a certain AP each user isrouted to the same facility while in the latter case an AP can route the trac ofeach user independently to dierent facilities

bull linear versus periodic assignment in the periodic variant we explicitly take intoaccount the potential switching cost between the last and the rst point in time ofour plan since it is meant to be repeated over a longer planning horizon This is notthe case in the linear model which assumes no system periodicity

Validation Tool Once a set of candidate plans is produced by the Optimization Corea Validation Tool is used to check their quality on test data In our case test data consistof a few weeks of raw trac demand data the Validation Tool evaluates the plan bysimulating its application in those weeks and computing quality measures

Orchestrator The MEC orchestrator is the functional element in charge of actuallysending VM orchestration instructions to MEC hosts monitoring the MEC system statusand the MEC network link states as well Legacy cloud orchestrator systems typically takeorchestration decisions based on simple best-t policies as data-center network resourcesare often over-dimensioned and a large set of clusters is made available the placement andassignment decision logic is therefore typically not bound to computing facility locationSuch orchestration algorithms however cannot be readily applied to a MEC context essen-tially because of the geographical nature of MEC networks and the capacity limitation ofMEC facilities This is typically done at the orchestrator subsystem level by adding anabstraction layer with a dedicated descriptive language to map computing resources tophysical location of servers

3 Optimization models

A key component of the data-driven MEC management optimization framework is theoptimization core Its task is to nd suitable assignments of APs to MEC facilities over

5

t = 1

A B

1 2 3

t = 2

A B

1 2 3

x12A x2

2B

y22AB

Figure 2 x and y variables

time together with corresponding user VMs migration patterns For the sake of readabilitywe focus on the single-assignment linear-plan variant a discussion on how to adapt ourmodels and methods to the other variants is provided in Section 46

Let us denote as A the set of APs and as K the set of MEC facilities We assumethe planning horizon to be discretized in a set T of time slots For each AP i isin A let usindicate as dti the mobile trac demand that has to be accommodated by AP i at timet isin T and as mik the physical distance between AP i and MEC facility k isin K Let Ck

be the capacity of MEC facility k isin K and lkprimekprimeprime be the network distance between MECfacilities kprime kprimeprime isin K We assume lkk = 0 for each k isin K where with network distance wemean a distance that can is directly proportional to the network latency (including packetprocessing latency at intermediate nodes) and the physical distance

Let xtik be binary variables taking value 1 if trac from AP i isin A at time t isin T is

routed to MEC facility k isin K 0 otherwise Let ytikprimekprimeprime be binary variables taking value1 if AP i isin A is associated to MEC facility kprime isin K at time t minus 1 and switches to MECfacility kprimeprime isin K at time t

Our Dynamic Assignment and Switching Problem (DASP) can be formulated as follows

min αsumtisinT

sumiisinA

sum(jk)isinKtimesK

dtiljkytijk + β

sumtisinT

sumiisinA

sumkisinK

dtimikxtik (1)

stsumiisinA

dtixtik le Ck forallt isin T forallk isin K (2)sum

kisinKxtik = 1 foralli isin Aforallt isin T (3)

xtik =sumlisinK

ytilk foralli isin Aforallt isin T 1 forallk isin K (4)

xtik =sumlisinK

yt+1ikl foralli isin Aforallt isin T T forallk isin K (5)

xtik isin 0 1 foralli isin A forallk isin Kforallt isin T (6)

ytikprimekprimeprime isin 0 1 foralli isin Aforallkprime kprimeprime isin Kforallt isin T (7)

the objective (1) aims at nding a trade-o between the minimization of network- anduser-related costs The former is generated by the change of AP-MEC facility associationsin consecutive time slots which produces control overhead due to the necessity of migratingVMs The latter is instead the latency experienced by the user with the current AP-MECfacility association Parameters α and β represent the relative weight of the network-and user-related costs in the objective function Constraints (2) impose that the overalldemand assigned to MEC facility k at time t does not exceed its capacity Constraints (3)impose that each AP is connected to a single MEC facility during a time slot Constraints(4) and (5) link x and y variables in a ow conservation fashion when xtik = 0 that is APi is not assigned to MEC facility k at time t they impose that no switching operation is

6

made when xtik = 1 instead they impose that a single switching operation assigns i to kat time t and reassigns it at time t+ 1 (possibly involving the same MEC facility in whichcase the switching cost is zero)

A sample instance with three APs (squares) two MEC facilities (circles) and two time-slots (left and right parts) is depicted in Figure 2 AP 2 is assigned to MEC facility A att = 1 and MEC facility B at time t = 2 therefore a switching operation from A to B needsto be performed

Model (1) (7) has a few interesting features

Observation 1 The DASP can be seen as a multi-period generalization of the Generalized

Assignment Problem (GAP)

In fact when |T | = 1 the DASP reduces to a GAP

Observation 2 For t gt 1 constraints (3) are redundant

Indeed for t gt 1 they are implied by constraints (4) and (5) andsum

kisinK x1ik = 1 for each

i isin A It is easy to check it by induction over t for each i isin A constraints (5) ensure thatif a k isin K exists such that xtminus1

ik = 1 thensum

lisinK ytikl = 1 then by aggregating constraints(4) we obtain that if

sumkisinK

sumlisinK ytikl = 1 then

sumkisinK xtik = 1 In turn since the x

variables are binarysum

kisinK xtik = 1 implies that a k isin K exists such that xtik = 1 All weneed to additionally enforce is the base case t = 1

Proposition 1 When all xtik variables take integer values the ytikl variables also (auto-

matically) take integer values in any feasible solution The converse is also true

In fact for each i isin A and each t isin T due to constraints (5) if xtik = 0 then yt+1ikl = 0 for

each l isin K If xtik = 1 assume by contradiction that a feasible solution exists containingfractional yt+1

ikl values each fractional yt+1ikl will appear in a dierent constraint of family (4)

that can be feasible only if xt+1ik = 1 for more than a single k isin K violating constraints (3)

yielding infeasibility and thus leading to a contradiction The converse is trivially impliedby both constraints (4) and (5)

That is in the search for optimal solutions by means of algorithms exploiting continuousrelaxations branching on ytikl variables is unnecessary

4 Optimization Algorithms

Unfortunately when the size of the MEC network is large even solving the continuousrelaxation of model (1) (7) turns out to be computationally hard Therefore we devisean ad-hoc exact solution approach based on decomposition

Following the Dantzig-Wolfe reformulation principle [22] let

P i = (xtik ytikl) (3) (4) (5) (6) (7)

represent the convex hull of the feasible region respect to constraints (3) (7) Let Ωi bethe set of corresponding extreme integer points and for each p isin Ωi let xtpik and ytpijk be

the coecients encoding point p Each element of P i can be represented as a linear convexcombination of points in Ωi Therefore we introduce a set of variables zp ge 0 expressingmultipliers in such a combination and we reformulate the continuous relaxation of (1) (7) as the following Master Problem (MP)

7

minsumiisinA

sumpisinΩi

(αsumtisinT

sum(jk)isinKtimesK

dtiljkytpijk + β

sumtisinT

sumkisinK

dtimikxtpik

)zp (8)

st minussumiisinA

sumpisinΩi

dtixtpik z

p ge minusCk forallt isin T forallk isin K (9)

sumpisinΩi

zp = 1 foralli isin A (10)

zp ge 0 (11)

The MP has an exponential number of variables We optimize it by column generationwe replace Ωi by a small representative subset Ωi (see subsection 41) and we solve theRestricted Master Problem (RMP) obtained in this way then for each i isin A we search ifany element of Ωi exists whose corresponding variable has negative reduced cost by solvinga pricing problem (see subsection 42) any such element is added to Ωi and the process isiterated Otherwise we stop the solution obtained by restricting to Ωi is optimal also forthe full problem

Such a solution provides a valid lower bound to the DASP It might indeed be fractionalIn such a case we run rounding heuristics (see subsection 43) to obtain a correspondingupper bound If upper and lower bounds do not match we rst perform probing topotentially x variables (see subsection 44) and then when needed we enter a recursivetree search phase (see subsection 45) Our algorithms can be easily adapted to the split-assignment and periodic-plan variants (see subsection 46)

41 Initialization

In order to populate the initial sets Ωi as well as obtaining an initial primal bound we runa simple greedy heuristic that builds the solution time-slot by time-slot and AP by APThe corresponding pseudo-code is reported as Algorithm 1 In particular for each timeslot APs are sorted by non-increasing demand and each AP is associated to a protableMEC facility following this order The choice for the most protable MEC facility to whichto associate an AP i at time t follows these rules let k be the MEC facility to which theAP i was associated in the previous time slot tminus 1

1 if t gt 1 and the demand of the AP i does not exceed the residual capacity of theMEC facility k assign i to k

2 otherwise nd the nearest MEC facility (in terms of distance mik) to which the APdemand does not exceed the residual capacity if no such a MEC facility exists stopin a FAIL state

This algorithm always terminates in O(|T ||A| log(|A|)|K|) time Unfortunately asfor a xed t the problem is a special instance of GAP even the problem of nding anarbitrary feasible solution is NP-Hard Indeed the algorithm might stop in a FAIL statewithout producing feasible solutions However in our computational experiments thatnever happened

Nevertheless to complete the population of the initial RMP we insert also a singledummy column of very high cost having coecient 0 in each constraint (9) This ensuresRMP feasibility also after branching

8

Algorithm 1 Greedy Binary AP-MEC facility assignment

ka = none foralla isin A MEC facility associated to AP a in previous time-slotfor all t isin T do

As = sortDec(dta|a isin A) sort AP for non-increasing demand at time tck = 0 forallk isin K used capacity of MEC facility kfor all a isin As do

k = ka rst choice is the previous assignmentif k = none or ck + dta le C then

k = nearestAvailable(a dta ck) get nearest MEC facility with enough residualcapacity

end if

xtak = 10

ck = ck + dta update used capacity of chosen MEC facilityif t gt 0 and k 6= ka thenytakak

= 10end if

ka = kend for

end for

42 Pricing algorithms

Let λtk be the (non-negative) dual variables corresponding to constraints (9) and ηi bethe (free) dual variables corresponding to constraints (10)

For each i isin A the problem of nding the element of Ωi corresponding to the variableof minimum reduced cost can be formulated as follows

minπi =minus ηi + αsumtisinT

sum(jk)isinKtimesK

dtiljky

tijk

+

+sumtisinT

sumkisinK

(βdt

imik + dt

iλtk)xtik

(12)

stsumkisinK

xtik

= 1 forallt isin T (13)

xtik

=sumjisinK

ytijk

forallt isin T 1forallk isin K (14)

xtik

=sumjisinK

yt+1ikj

forallt isin T Tforallk isin K (15)

x isin 0 1y isin 0 1 (16)

Proposition 2 The pricing problem (12) - (16) possesses the integrality property

In fact according to Observation 2 constraints (13) can be removed for t gt 1 and con-straints (14) used to replace xt

ikin (15) and then removed The remaining is basically a

network ow matrix which is known to be totally unimodular [22]On one hand Proposition 2 implies that the lower bound obtained by the MP through

column generation is equivalent to that obtained by optimally solving the continuous re-laxation of the original model (1) (7) On the other hand it allows to employ polynomialtime Linear Programming solution algorithms making us to expect the solution processto be fast Indeed we could exploit its structure even further as the elements of Ωi have a

9

Algorithm 2 Pricing Algorithm

for all i isin A do

c1k = a1

ik forallk isin K cost of path starting at MEC facility kp1k = k forallk isin K path starting at node kprime at timefor all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i

πlowast = c|T |klowast minus ηi

if πlowast lt 0minus ε thenadd variable related to minimum cost path pklowast to the model

end if

end for

particular combinatorial interpretation they correspond to all feasible association pathsthat is sequences of MEC facilities to which the AP i is assigned in consecutive time-slotsMore in details we build a directed layered graph G(NA) with a layer for each time-slotas follows Each layer has one node for each MEC facility each pair of nodes in consecutivelayers are connected by an arc Each node (t k) isin T times K modeling the assignment toMEC facility k at time t has an associated traversal cost given by atik = dti(βmik + λtk)while each arc connecting nodes (t j) and (t+ 1 k) has an associated traversal cost givenby btijk = dt+1

i αljk We also add a dummy source σ (resp sink τ) nodes having oneoutgoing arc to each node in layer t = 1 (resp one incoming arc from each node in layert = |T |) of zero cost Figure 3 sketches the structure of G for a certain AP i on a sampleinstance with two MEC facilities (A and B) a potential solution assigns i to A at timet = 1 to B at time t = 2 and so forth

In fact an optimal pricing solution corresponds to a shortest σ minus τ path in G

Proposition 3 For each i isin A the pricing problem can be solved in O(|T ||K|2) time

In fact for solving the pricing problems we devise a simple dynamic programming algo-rithm which is presented as Algorithm 2

t = 1

A

a1iAx1iA

B

t = 2

A

B

a2iBx2iB

t = |T |

A

a|T |iAx|T |iA

B

b2iAB

y2iAB

0 middot y3iBB

b|T |iBA

y|T |iBA

Figure 3 Pricing Problem Structure

10

Algorithm 3 Rounding heuristic

Input variable values x from a RMP fractional solutionOutput x = 0 y = 0 integer solutionfor all t isin T do

rk = Ck forallk isin K residual capacity of MEC facility kA = sort(AmaxkisinK xtik) sort the set of AP by non-increasing value of fractionalassignment to the most desirable MEC facilityfor all i isin A do

consider APs in such an orderif k isin K|dti le rk = empty thenFAIL no MEC facility with enough capacity exit with FAIL status

else

k = arg maxkisinK|dtilerk xtik get highest assignment

xtik = 10 x assignment with MEC facility

rk = rk minus dti update residual capacityend if

end for

end for

y = compute_shift(x) compute y variable values to be consistent with x

43 Rounding Heuristics

In order to nd good primal bounds a simple rounding algorithm (presented in Algorithm3) is executed at every column generation iteration Let z be the (possibly fractional)variable values of the RMP at a certain iteration we can compute the values of thecorresponding x variables as

xtik =sumpisinΩi

xtpik zp

For each time-slot t isin T for each APs i the highest xtik is retrieved For each AP sorted bydescending highest x value the assignment is made with the MEC facility correspondingto the highest x and with enough residual capacity Although no guarantee in feasibilityis given our computational experiments revealed it to be highly eective

44 Variables xing

We also experimented with probing techniques to potentially perform problem reductionduring the column generation process In particular we employed Lagrangean probing tox variables at a pricing level The main idea is to run the Pricing Problem ResolutionAlgorithm twice the rst time as described in 2 that is considering each layer t = 1 |T |in forward order the second time instead considering the layers in backward order that is

initializing c|T |k = 0 and updating each ctk = minklowastisinK ct+1

klowast +dt+1i (αlkklowast +βmiklowast +λt+1klowast)

In this way the cost χtk of the best path in which at time t an assignment is forced to MEC

facility k can be computed by summing the forward and backward labels ctkA valid dual bound LB can be computed at each column generation iteration as

LB = ρminussumiisinA

πi

where ρ is the value of the last RMP solution Let UB be the value of the best primal(integer) solution found so far

For each i isin A let s(t) be the MEC facility at which AP i has been assigned at time tin the optimal pricing solution returned by Algorithm 2 We perform the following xes

11

bull for each t isin T and k isin K if LB + χts(t) minus χ

tk ge UB then if assignment to MEC

facility k was forced no improvement in the primal bound would ever be obtainedTherefore node k can be removed from layer t without losing optimization powerthat means xing variable xtik = 0 in the original model

bull for each t isin T if LB+χts(t)minusminkisinKs(t) χ

tk ge UB then if such an assignment was

forbidden no improvement in the primal bound would ever be obtained Thereforeall nodes k 6= s(t) can be removed from layer t without losing optimization powerthat means xing variable xtis(t) = 1 in the original model

A similar xing procedure is run on arcs of the pricing graph thereby allowing to x ytkprimeprimekprimevariables in the original model

From an implementation point of view we always allowed a relative tolerance of 5eminus4in the xing test to prevent numerical troubles We run the xing procedure at the endof the column generation process of every node of the search tree additionally at the rootnode we run it whenever an improving primal solution is found

45 Branch-and-price

When upper and lower bounds at the end of the column generation process do not matchwe proceed to branching We branch on original variables x rather than on variables ofthe MP Fixing variable xtik to value 0 corresponds to xing to value 0 all variables zp isin Ωi

that assign AP i to MEC facility k at time t Similarly xing variable xtik to value 1corresponds to xing to value 0 all variables zp isin Ωi that do not assign AP i to MECfacility k at time t Neither forbidding nor forcing assignments change the structure of thepricing problem these conditions are easily included within the dynamic programmingalgorithm by simply removing nodes from the pricing graph According to Proposition 1no branching on y variables is needed

We considered the following two branching rules

1 considering all possible assignments of AP i at time t take the pair (iprime tprime) which hasgreatest number of variables xt

primeiprimek with strictly positive value that is that AP whose

assignment at a certain time is split among the greatest number of dierent MECfacilities Sort variables xt

primeiprimek by non-increasing value and partition this ordered set

in two the rst set containing variables in the odd positions of ordered set and thesecond set containing variables in the even positions A left (resp right) branch iscreated xing to zero all the variables in the rst (resp second) set

2 select the variable xtik whose value is closer to 05 ie the variable related to the mostfractional assignment Create two branches xing the selected variable respectivelyto value 0 or to value 1

We always consider branching rule 1 rst triggering rule 2 only when all (i t) pairshave at most two corresponding fractional xtik variables During preliminary experimentsa simple depth-rst exploration policy showed to perform best When rule 2 is used thextik = 1 branch is explored rst

46 Split assignment and periodic plans

We rst observe that global optimal split-assignment plans can be obtained by simplystopping at the root node and considering the (potentially fractional) solution of thecolumn generation master problem

12

Furthermore as discussed in the Introduction the application is periodic in naturethe decision maker creates a plan that is meant to be repeated over time Such a peri-odic variant can be managed by minor modications to our models and algorithms Inparticular model (1) (5) needs to be enriched adding constraints

x1ik =

sumlisinK

y|T |ilk foralli isin A forallk isin K

to the family (4) and constraints

x|T |ik =

sumlisinK

y1ikl foralli isin Aforallk isin K

to the family (5) these link the assignments made in the last and rst time-slots assign-ment hence closing the period of assignments The column generation master problemdoes not change The pricing problem instead requires to be adapted as cycles ratherthan paths need to be generated We therefore modied our pricing routine as presentedin Algorithm 4 Exactly solving the modied pricing problem via dynamic programmingrequires O(|T ||K|3) time for every AP The main idea is to tentatively x the assignmentat time 1 to all the |K| possible MEC facilities to solve each reduced problem and tochoose the best among the |K| solutions found in this way Since it is possible to create alayer |T | + 1 as a copy of the layer t = 1 after xing the assignment the pricing problemreduces to nding a minimum cost shortest path from the single xed node in layer t = 1to the single xed node in layer |T |+ 1

Any other detail of the algorithm remains unchanged

5 Computational evaluation

We implemented our algorithms in C++ using CPLEX 126 [23] to solve the master LPsubproblems running tests on an Intel i7 4GHz workstation equipped with 32 GB of RAM

Our rst investigation is computational benchmarking the eectiveness of our algo-rithms in comparison to the branch-and-cut ILP solver of CPLEX using formulation (1) (7)

51 Dataset

We have access to a dataset of real-world mobile trac demands [24] encompassing twomonths with a time granularity of fteen minutes The geographical area covered by thedataset extends for more than 2500 km2 The demand is not associated to access points ofthe mobile network whose location is unknown but rather to a geographical tessellationof the area in 1419 rectangular cells of dierent sizes with smaller (and more dense) cellsin the center of the area We select the centers of every rectangular cell as elements of theset A of access points locations

Then we create ten clusters of access points using a standard k-means model takingas input the euclidean distances between APs optimizing it with the classical heuristicsof [25] The centers of these clusters are selected to dene the locations of the set K ofMEC facilities The network distances mik and ljk are computed as euclidean distancesaccordingly and rounded to the nearest integer (hence supposing packet processing latencyis negligible)

Given this network infrastructure we generate dierent problem instances by randomlydrawing demands in each AP in dierent ways

In details we create two random datasets

13

Algorithm 4 Periodic Pricing Algorithm

for all i isin A do

πlowast = +infinplowast = emptyfor all k isin K do

c1k

= a1ikx MEC facility k at t = 1

c1k = +infin forallk isin K k forbid MEC facility k at t = 1p1k = k forallk isin K path starting at node k at time t = 1for all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

for all k isin K do

c|T |k = c

|T |k + b1

ikk+ a1

ikend for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i when starting at k

if c|T |klowast minus ηi lt πlowast then

πlowast = c|T |klowast minus ηi

plowast = p|T |klowast

end if

end for

if πlowast lt 0 thenadd variable related to minimum cost path plowast to the model

end if

end for

Dataset A is synthetic and aims at stressing our algorithms from a pure computational pointof view We consider a planning horizon of one day split in 96 consecutive fteen-minute time slots Let d (resp d) be the minimum (resp maximum) demandobserved in any AP and time slot in [24] Demands dti for each AP i at time t aredrawn uniformly at random independently in each fteen-minute time slot in therange [d d] That is demands do not follow particular trends even if falling into thesame range of real data

Dataset B is realistic reproducing the main features of the starting data We choose a singleday at random from the two months included in the dataset [24] we perform a directquery to the demand of each AP at each time slot in that day and then we perturball demands with noise uniformly drawn at random in the interval [minus5+5]

All demand values are rounded to the nearest integer Besides the initial horizon of 96time-slots we consider planning time horizons of 48 24 and 12 time-slots by mergingrespectively 2 3 or 4 subsequent time-slots setting their demands as the average on themerged time-slots Five instances are generated in both datasets A and B

We also consider a dataset of raw real demands

Dataset C is obtained by considering a random week taken from the dataset [24] and mergingthe time-slots in either 168 slots of 1 hour each (1h) 84 slots of 2 hours (2h) 56

14

slots of 3 hours (3h) 42 slots of 4 hours (4h) or 38 slots obtained by the clusteringmethods described in subsection 62 (clust) The demand of each AP in each slot tis taken as the maximum over the the fteen-minute time slots merged in t

For every instance each MEC facility capacity Ck is set to(

maxtisinTsum

iisinA dti|K|

)middot105

and parameters α and β are both set to value 05

52 Column Generation proling

We rst report on the computational behaviour of our Column Generation algorithm (CG)In this test we consider the single-assignment non-periodic variant

In Tables 1a 1b and 1c we include the details of the root node column generationprocess for each instance of datasets A B and C respectively A best known solutionvalue zlowast is taken from a previous run of exact algorithms (see subsection 53) Besidesinstance details (columns `|T | and `inst) we include the relative gap between the primalbound value (resp dual bound value) and zlowast the number of column generation iterationsneeded to reach convergence the overall CPU time spent for solving the pricing problemsand the CPU time required to complete the column generation process As benchmarkwe also report the performances of CPLEX 1263 ILP solver when stopped at the rootnode including the corresponding primal and dual bound gaps and the time required tocomplete its root node computation

We set a time limit of two hours to each computation marking in the tables as `TLthose computations hitting that limit

We rst note that CG has good convergence behaviour less than 90 iterations arealways enough to complete the computation The high number of pricing subproblemsyields to a high number of generated columns but thanks to our dynamic programmingalgorithm the overall pricing time remains low (below 10 seconds in all cases but one)

By rounding in CG we are always able to obtain good integer solutions (that is below1 from best known solutions in all cases but 4) CPLEX is not consistent in a fewinstances (eg block |T | = 48 of the Realistic Dataset B) it is able to nd very goodprimal solutions while in other cases (eg block |T | = 24 of Dataset B or block |T | = 48of Dataset A) only very weak primal bounds can be obtained

We also observe that CG and CPLEX dual bounds are always similar That is on onehand the integrality property of our pricing problem warns that no improvement can beobtained by CG with respect to the continuous relaxation of the original formulation onthe other hand CPLEX generic cuts have no signicant eect on strengthening the samecontinuous relaxation bound

Finally in more than 37 of the instances CPLEX is unable to terminate the rootnode computation within the time limit while CG always completes the computationWhen both CG and CPLEX terminate the CPU time required by CG is up to two ordersof magnitude lower that required by CPLEX

We highlight that the (possibly fractional) solution found by CG is a global optimalsolution for the split-assignment model variants no further computing is needed in thatcase

53 Exactly solving the DASP

In a second round of experiments we let both our Branch-and-Price (BaP) and CPLEX126 ILP solver (CPX) run for two hours also exploring their branching trees In Tables2a 2b 2c we report the results of this experiment on each instance of datasets A B and Crespectively In each Table we report the relative gap between the primal bound PB (respthe dual bound DB) at the end of computation and the best known integer solution valuezlowast and the number of explored branch-and-bound nodes for both our BaP and CPX

15

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0130 1212 19 10808 0 4 0724 1197 8642 0735 1955 14 8715 0 4 244932 1949 4103 0793 1351 13 7074 0 3 0167 1345 3284 0945 0999 14 7515 0 3 2824 0994 3445 1206 1630 13 7892 0 3 3052 1627 356

24

1 0061 1475 26 17027 1 15 0249 1471 28262 1202 1537 19 11429 1 11 274940 1533 19433 0867 2019 19 12296 0 13 267368 2015 18524 0846 1864 19 12525 0 12 123542 1860 18615 0909 1764 18 12077 0 12 267486 1761 1781

48

1 0463 1819 41 27035 6 114 246767 1816 TL2 0221 2468 32 20897 1 90 270039 2465 TL3 0746 2336 33 21468 4 95 269274 2332 TL4 0295 2036 31 20496 0 74 282422 2033 TL5 0265 2514 35 22707 0 106 258676 2510 TL

96

1 0176 2274 68 47500 5 949 259445 - TL2 0055 2633 59 42621 6 913 - - TL3 0034 2779 61 43107 9 863 - - TL4 0187 2528 61 42692 5 850 - - TL5 0124 2568 60 41913 6 815 272834 - TL

(a) Synthetic Dataset A

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0809 0107 12 6542 1 2 0055 0105 1382 0917 0112 11 6150 0 2 0924 0110 1463 1043 0125 12 6611 0 2 0155 0123 1584 0797 0103 11 5843 0 2 349538 0102 1205 0781 0102 11 6548 0 2 349089 0101 113

24

1 0766 0425 15 9713 0 4 305781 0424 5322 0481 0280 16 9715 0 3 306562 0278 5873 0613 0576 15 9492 1 3 304188 0575 6224 0960 0183 17 10345 0 3 306874 0182 6155 0648 0221 16 10217 0 4 307199 0220 413

48

1 1031 0264 27 15539 1 16 0253 0262 21132 0782 0344 25 15636 2 15 0557 0343 22493 0500 0363 26 15286 1 15 0 0362 26744 0741 0314 26 15791 3 18 0049 0312 24455 0829 0296 29 16294 0 15 0651 0295 1878

96

1 0077 0933 51 29786 6 130 - - TL2 0315 0766 43 28272 3 125 - - TL3 0249 0853 46 28221 9 129 - - TL4 0395 0692 49 29320 5 126 - - TL5 0154 0726 48 29005 4 120 - - TL

(b) Realistic Dataset B

CG Root CPLEX Root

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast tclust 0590 0092 21 12928 2 9 0429 0091 4684h 0630 0272 30 20690 2 25 0175 0271 51913h 0513 0471 37 25960 3 58 0766 0470 28142h 0192 0724 50 31706 2 133 - - TL1h 0097 0905 85 56322 18 953 - - TL

(c) Raw Real Demand Dataset C

Table 1 Computational Results - CG Root vs CPLEX Root

16

(a) BaP vs CPLEX (b) BaP Detail

Figure 4 Primal Bound

We report no computing time because surprisingly neither BaP nor CPX could bringthe duality gap below 01 within the time limit except for instance 4 with |T | = 12 ofDataset A 5 with |T | = 12 of Dataset B and clust of Dataset C that CPX is able toclose (but still using more than 90 of the available CPU time)

In terms of nal dual bounds the results of both methods are very similar Our expla-nation for this phenomenon is the following the root dual bound is already very close tothe integer optimum value and therefore the real challenge is to nd an optimal primalsolution At the same time the high number of time-slots yields values of primal solutionson the order of magnitude of 108 as soon as the duality gap becomes small numericalapproximation issues prevent to coherently explore the remaining search tree

In terms of searching for good primal solutions in the inner nodes of the branching treeinstead BaP and CPX are not equivalent in Figure 4a we plot the typical primal boundvalue (y axis) improvements as the computation (x axis) proceeds (instance 1 |T | = 24dataset B) for the sake of comparison the x axis report relative values with respect tothe overall number of branch-and-bound nodes for CPX and the overall number of columngeneration iterations for BaP Eventually CPX is more numerically stable oering aftertwo hours of computation primal solutions values a few tenths of percentage points better(up to 05 of improvement) In turn BaP allows to nd near-optimal integer solutionsmuch more quickly that is in fact already at the root node The behaviour of BaP in theearly steps of computation is further detailed in Figure 4b the quality of the primal boundsteeply increase during the column generation iterations at the root node

As a synthetic nal assessment of our computational evaluation we can report thatwhen the number of time-slots is small and the planner has no particular need for quickoptimization algorithms both BaP and CPLEX might be viable alternatives to optimizethe DASP

BaP is faster especially when used heuristically stopping the computation either atthe root node or after exploring a few nodes of the branch-and-bound tree This makes itwell suited also when quick optimization is needed like in what-if-analyses

When the number of time-slots increases however using CPLEX is not an optionanymore

We repeated all the experiments with a periodic-plan model without nding substantialchanges in the computational behaviour of the methods Indeed the periodic-plan modelhas main impact only in the structure of the pricing problem of BaP but pricing involvesonly a small amount of the overall computational eort

17

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0 1208 17661 0411 1197 2032 0 1951 17038 0777 1949 3713 0198 1347 18572 0 1345 4524 0370 0997 19198 0 0993 5485 0020 1626 18013 0 1626 699

24

1 0 1473 8576 0249 1471 142 0 1535 8657 0855 1533 243 0 2018 9349 267368 2015 464 0 1863 9353 123542 1860 385 0 1763 10204 267486 1761 40

48

1 0 1818 2123 246767 1816 02 0 2468 2724 270039 2465 03 0 2335 2558 269274 2332 04 0 2036 3133 282422 2033 05 0 2514 2528 258676 2510 0

96

1 0 2274 113 259445 - TL2 0 2633 217 - - TL3 0 2779 168 - - TL4 0 2528 135 - - TL5 0 2568 207 272834 - TL

(a) Synthetic Dataset A

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0160 0105 35112 0 0103 23982 0235 0111 30708 0 0109 25793 0320 0124 26374 0 0122 18184 0406 0102 26490 0 0100 19325 0267 0100 24714 0 0098 1844

24

1 0133 0424 17961 0 0423 1442 0274 0279 18354 0 0278 1093 0 0576 20016 0717 0574 2254 0353 0183 17481 0 0182 2325 0284 0220 20446 0 0220 522

48

1 0312 0263 10738 0 0262 202 0249 0343 10465 0 0343 183 0113 0363 10482 0 0360 174 0227 0313 10321 0 0311 165 0226 0295 10818 0 0295 21

96

1 0 0932 3133 - - TL2 0 0765 3193 - - TL3 0 0852 3398 - - TL4 0 0691 3099 - - TL5 0 0726 3299 - - TL

(b) Realistic Dataset B

B-amp-P CPLEX

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

clust 0376 0091 13849 0 0091 8124h 0442 0272 8985 0 0270 303h 0403 0471 5086 0 0470 332h 0 0724 2864 - - TL1h 0 0905 370 - - TL

(c) Raw Real Demand Dataset C

Table 2 Computational Results - BaP vs CPLEX

18

6 Practical case study

Our nal aim is to assess the eectiveness of our optimization core in the context of thedata-driven MEC management optimization framework To this end we rely on the com-plete real-world dataset in [24] and run actual analytics on it so as to generate the demandproles We then feed our optimization models with such proles which ultimately letsus measure the quality of the assignment plans it returns in a practical case

61 Experimental setup

The real-world mobile trac data covers a planning period of eight weeks split in a set Tof fteen-minute snapshots The rst approach we take in order to infer demand prolesexploits a well-known property of mobile trac ie its weekly periodicity [26] Namely asingle week is taken as training data and the mobile trac recorded in each fteen-minutetime-slot is considered as a prole The tasks performed by the data mining and validationmodules are kept as simple as possible in order to highlight the eect of the optimizationcore

Training Conceptually the resulting 4 times 24 times 7 = 672 training proles are then usedas input for our optimization algorithms By optimizing over the training data we obtaina planning solution which becomes our assignment plan we apply such a plan to theremaining seven weeks of test data As an example optimizing over training data yields asolution including a specic assignment of APs to MEC facilities on Monday between 700am and 715 am we then blindly apply the same assignments on the 700-715 am timeslots of each Monday in the test data presuming that the demand conguration is similaron all Mondays at the same time In a sense this is a worst-case situation in which thedecision maker simply observes the system for one week before deciding on the planningfor the remaining weeks

Practically we do not directly use the 672 fteen-minutes time-slots for training Weassume instead that the preprocessing and data-mining module produces suitable ag-gregations We experimented therefore with simple aggregation of the proles mergingtime-slots sequentially over 1 2 3 or 4 hours Each aggregation step was performed byconsidering in each AP and in each aggregated time-slot the maximum demand value ofthat AP over the corresponding base time-slots The optimized solution was then dis-aggregated in post-processing simply replicating the same plan over the fteen-minutestime-slots composing each aggregated time-slot By choosing the maximum demand valuesduring aggregation we ensure that our optimized solutions remain feasible after disaggre-gation

It is apparent that less aggregated proles entail a higher potential for optimizationin the baseline scenario the assignment of APs to MEC facilities can be changed every15 minutes possibly assigning to the same MEC facility APs that experience very highpeaks of demand in subsequent time slots They are however more prone to overttingas peaks in particular hours of the training week do not necessarily correspond to peaksin the corresponding hour of testing weeks In addition they are more clearly expensivefrom a computational standpoint

More aggregated instances instead are more conservative two APs with very highdemand peaks in the same four-hours time slot cannot be assigned to the same MECfacility thus possibly preventing capacity violations in the test weeks if those peaks slightlymove in time They are also less demanding in terms of computational costs Howeveraggregation forces the a same conguration for longer timeframes making the optimizationpossibly oblivious of fast dynamics in the demand

19

Figure 5 Time-Clustering resulting from [21]

In order to further balance the aggressive optimization process during the trainingphase of low aggregation instances we found empirically useful to set the Ck capacityvalues to

(maxtisinT

sumiisinA d

ti|K|

)middot 105 in each test That is one-hour time-slot instances

are optimized with lower capacity values

Test To ensure fairness in the comparison during the test phase only disaggregatedsolutions are considered That is independently on the aggregation used for training onlysolutions dened over the original fteen-minutes time-slots are compared Similarly thereference MEC capacity value was xed to

(maxtisinT

sumiisinA d

ti|K|

)middot110 in any comparison

Clearly neither the cost nor the capacity usage are guaranteed to remain the samewhen the planning obtained with training data is applied to test data as uctuations inthe demand may occur across weeks The quality of our solutions is therefore evaluatedaccording to two measures (i) the assignment and switching cost of the planning and (ii)

the amount of violations in capacity constraints both measured on test data The latteris computed as follows

maxtisinT

sumkisinK

maxsum

iisinA dtix

tik minus Ck 0

Ck

that is the overall amount of violation in capacity constraints as a relative value respectto the available capacity in the worst time-slot

These measures are computed for each plan by the validation module through simplesimulation on the seven weeks of test data

Advanced Clustering Benchmark An alternative to employing our ad-hoc techniqueon the optimization module would be to perform a more aggressive aggregation over timeproducing instances that are small enough to be optimized by CPLEX We experimentedon such an option adapting the temporal clustering solution presented in [21] to our needsSpecically we take the following steps (i) we generate a median week of mobile tracdemand by computing the median load recorded at each AP during every hour of the weekusing it as training data (ii) we perform two separate hierarchical clusterings respectivelyusing the total volume and normalized distance metrics introduced in [21] (iii) we ndthe intersection of the two cluster sets obtained at the previous point

Figure 5 shows the resulting clustering of one-hour time slots ve typical demandproles are identied which can be associated to working hours (denoted by 0 in thegure) relax hours in the late afternoons and weekends (1) morning commuting hours(2) night hours (3) and late evening hours (4) Very few time-slots are actually producedthis way allowing CPLEX to optimize the corresponding instances Consecutive time-slots

20

InstWeek

train 1 2 3 4 5 6 7

Bench-CPLEX 959 703 571 425 257 388 1468 951Bench-CG 959 676 548 408 245 410 1434 927

4h 209 154 172 066 000 254 1163 2923h 194 142 148 110 125 158 1107 2982h 220 258 199 119 226 282 1122 4151h 284 238 417 114 192 404 1065 547

Table 3 Time-Slot Peak Exceeded Capacity Over Available Capacity

belonging to the same cluster are then aggregated The aggregated instance is optimizedand the solution obtained in this way is then disaggregated in fteen-minute time-slotsplans as in the previous case during post-processing before being compared on test data

62 Experimental evaluation

Following the computational results of Section 5 our core optimization module alwaysemploys our Branch-and-Price as a heuristic (HBP) stopping its computation at the rootnode except for the aggregated instances produced by time-clustering Having |T | = 38these are manageable eciently even by general purpose solvers CPLEX 1263 ILP solverwas then used to solve them to proven optimality The scatter plot in Figure 6 summarizesour results Each point represents the outcome on a single week of test data Dierentshapes refer to dierent demand prole aggregation methods obtained by merging 1 2 3 or4 consecutive one-hour time slots as well as using the Advanced Clustering and CPLEX(Bench-CPLEX) The y axis coordinate of each point represents the capacity violationmeasure as introduced above the x axis coordinate of each point represents the solutioncost measure expressed as percentage value of that of the optimal solution employing theAdvanced Clustering Benchmark method Therefore negative (resp positive) percentagesmap to a performance improvement (resp reduction) with respect to the benchmarkAs a reference we report also the results obtained by using HBP instead of CPLEX foroptimizing the Advanced Clustering Benchmark instances (Bench-CG) The details aboutcapacity violation measures are reported also in Table 3 for each week in the training set(columns) and for each demand prole aggregation method (rows)

A rst remarkable result is that in all cases our HBP with sequential clustering allows forsolutions with less capacity violations In particular HBP with either four-hours or three-hours aggregation oer almost no capacity violations coming at the price of three to vepercent increase in solutions cost HBP with two-hours aggregation always outperforms thebenchmark method both in terms of exceeded capacity and in terms of solution costs HBPwith one-hour aggregation further decrease costs at the price of slightly higher capacityviolation

We also experimented on using the full BaP instead of the truncated HBP Our resultsare reported in Figure 7 no signicant change was observed Similarly no signicantchange was observed by using HBP instead of CPLEX on the benchmark clustering

63 Eect of periodic planning

Finally we measure the impact in solution switching costs yielded by choosing a periodmodel instead of a non-periodic one In Table 4 we report for each aggregation listedin the previous subsection the change in switching costs between inner time-slots of theweek (intra-week) between border time-slots of dierent weeks (inter-week) as well as thetotal switching cost the total assignment cost and the overall cost of the solution Using a

21

Figure 6 1-Week Plan - Time Aggreg Comparison

(a) Total Costs (b) Exceeded Capacity

Figure 7 Mean Costs And Exceeded Capacity - CG Root vs BaP

22

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 2: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

Thanks to MEC deployment the user experience can indeed be augmented because theserver access latency can be drastically reduced hence favoring collaborative networkingtactile Internet (ie communications made possible by an extremely low latency suchas augmented reality applications) [2] and more generally computation ooading to anearby cloud with the goals to control mobile device energy consumption and to runcomputationally heavy applications using tiny low-power devices [3]

Motivation and problem description In a MEC infrastructure virtualization clus-ters called `MEC facilities or `MEC hosts in the standardization documents or cloudletsin academic jargon are connected to access network nodes to deliver access to mobileapplication servers run as Virtual Machines (VMs) Various innovative operations to dealwith changing mobile access demands can be applied and include Access Point (AP) toMEC facility dynamic assignment VM capacity rescaling (addition or removal of com-puting power in terms of live memory or virtual processors) and VM migration (a VMstate is moved from one MEC facility to another one) An `orchestrator is in charge ofimplementing such decisions into the MEC virtualization layer Each orchestration actioncomes at a cost often referred to as migration or switching cost as it requires synchro-nizing states across a geographical network under stringent performance guarantees Thetechnology to perform MEC orchestration operations is becoming mature [4 5] Howeverthe MEC orchestrator intelligence is still being developed with as major goal to performboth reactive decisions to cope with sudden unpredicted changes and proactive decisionsto anticipate expectable network impairments

We precisely address the MEC orchestration challenge from an algorithmic perspectiveOur aim is to propose algorithms to take robust decisions about AP-MEC assignments andrelated trac routing while taking into consideration the corresponding VM switchingcosts

More in details our dynamic routing application contains a combinatorial core APshave associated mobile trac demand that changes over time Each MEC facility has acertain capacity limiting the overall amount of demand it can serve simultaneously APsmust be assigned to MEC facilities each assignment implies a cost for each user connectedto the AP in terms of latency for communicating with the associated MEC server Due tocapacity limits it might be not always a good decision to assign each AP to its MEC facilityof minimum latency furthermore since demand changes over time an assignment patternwould hardly remain an ecient one over the whole planning horizon We therefore leavethe option of changing assignments over time taking into account that each change impliesa switching cost for the network for example in terms of signaling to move session dataof active users An optimization problem therefore arises that is to assign APs to MECfacilities over time respecting capacity constraints and minimizing a combination of users(assignment) and network (switching) costs

Literature Review Our nal aim is to conceive a data-driven MEC management opti-mization framework data analytics for network management is indeed a relevant subjectto our research This represents an emerging eld in computer networks fostered by theexpected integration of analytics in the next generation of mobile networks [6] In ourframework we employ clustering techniques to unlink from noisy raw measurement dataIn particular we identify a limited number of typical congurations of the data tracdemand across the APs thus understanding suitable time discretization patterns As amatter of fact the data trac demand in mobile networks is characterized by signicantuctuations in space and time due to the diverse activities of subscribers at dierenttimes and locations [7] To accommodate such a variability 5G systems will build on newnetworking paradigms such as Cloud Radio Access Networks (C-RAN) Software Dened

2

Networking (SDN) and Network Function Virtualization (NFV) that allow the dynamic(re-)allocation of resources [8] There is thus a need for analytics that mine trac metadatadiscover relevant knowledge about the network status and ultimately drive the resourcemanagement process [9 10] However we currently miss substantial demonstrations ofhow data analytics can be leveraged in mobile network architectures

Our proposal is to equip the system with an optimization core exploiting preprocesseddata as input and producing solutions whose structure is explicitly encoded by mathe-matical programming models Our setting requires to tackle a multi-period extension ofthe famous Generalized Assignment Problem (GAP) [11] We point to [12] for a detailedreview on the GAP and its extensions Despite the large body of research available onthe GAP we are not aware of many papers directly dealing with its multi-period exten-sions In [13] the authors face a single-source allocation problem with a exible model andan eective branch-and-price algorithm however their model does not allow to handlelimited capacity which is a crucial feature in our application The multi-period alloca-tion problem discussed in [14] in which a dual ascent technique from [15] is adapted toa telecommunication networks applications is similarly missing the feature of handlinglimited capacities

Although our problem does not require to decide the location of the facilities which isinstead assumed to be optimized in a prior strategic planning [16] and given in input onemay expect features and computational challenges similar to those of multi-period locationproblems [17] Recent approaches on that eld include [18] the authors face a multi-periodconcentrator location and dimensioning problem providing MILP formulations and reduc-tion techniques and solving to optimality in less than one hour of computation instanceswith up to 30 clients 10 candidate location sites and 15 time periods or 100 clients 30candidate locations and 5 time periods In [19] the authors introduce exact methods fora capacitated multi-period facility location problem in which however unlike our casethe demand of each client can be fractionally served by multiple facilities Large scaleinstances with up to 200 facilities three periods and an arbitrary number of clients couldbe solved with their algorithms We nally mention the recent contribution of [20] wherethe authors propose MILP formulations and local search heuristics for an uncapacitatedp-median location problem involving two periods in the rst the location of facilities isgiven while in the second it can be changed at a price Clients are always assigned to thenearest facility They provide good approximations to instances with up to 400 facilitiesin a few minutes of computation

Contribution summary and paper outline Our research provides three types of con-tributions The rst is architectural we design a data-driven framework for the dynamicselection of AP to facility assignment in MEC networks which relies on (i) historical dataclustering analytics (ii) dedicated optimization techniques and (iii) validation by simu-lation The second is algorithmic we introduce mathematical programming formulationsand ad-hoc exact solution methods for a relevant multi-period extension of GAP The thirdis use case-oriented we evaluate our framework with real-world datasets which providespractical insights for MEC resource management We devote a substantial part of thepaper to the technical insights of our optimization core

The manuscript is structured as follows We rst detail our framework (Section 2)Then we focus on the optimization core component introducing a compact Mixed IntegerLinear Programming (MILP) formulation for our problem proving a few structural prop-erties and providing an extended counterpart by means of Dantzig-Wolfe decomposition(Section 3) we also design column generation procedures with ad-hoc pricing algorithmsrounding heuristics reduction techniques and branching rules to be embedded in a wholeexact solution method (Section 4) We show rst of all that our algorithms are eective

3

Figure 1 A data-driven MEC management optimization framework

from a computational point of view (Section 5) We then demonstrate the eectivenessof our optimization tools in practical scenarios using real-world trac demands collectedby a major mobile network operator in Milan Italy (Section 6) We nally draw someconclusions (Section 7)

2 A data-driven MEC management optimization framework

We propose a high-level data-driven MEC management optimization framework whosealgorithmic core architecture is sketched in Figure 1 The framework receives as inputa representation of the (time-varying) data trac demand recorded at each AP of theMEC network The framework output are (multiple) assignment patterns of APs to MECfacilities meant to be enforced by the orchestrator on the MEC network over time throughswitching operations

The input data is collected as historical records of the mobile trac demands in theMEC network Part of the data is reserved for testing by the Validation Tool module Partinstead is used for training ie it is fed to the Preprocessing and Data Mining modulewhich lters by meta-data and produces a suitable time (and possibly space) discretizationand a corresponding data aggregation The aggregated proles are sent to the OptimizationCore module which leverages them to compute candidate assignments The Orchestratormodule in turn receives the candidate assignments and queries the Validation Tool modulefor an evaluation on test data so as to determine their quality Based on the result theOrchestrator module nally chooses a suitable assignment and implements it in the MECnetwork

Preprocessing and Data Mining We assume that switching can occur only at cer-tain points in time (eg once every fteen minutes) due to practical limitations of theMEC technology this introduces an implicit time discretization of the system In orderto identify suitable discrete-time proles of the trac demand dierent strategies canbe employed in the Preprocessing and Data Mining module The simplest option is toaggregate the demand observed at each AP during every time step in the training dataThis returns one prole for each time step since switching between assignments cannotoccur at shorter timescales than the time step this is the highest resolution useful to theOptimization Core and the one deemed to return the highest-quality result However it

4

also creates a very large number of proles (eg in the order of thousands for hour-longtime steps over months of historical data) that may be computationally too expensive tomanage

Another option to identify suitable discrete-time proles of the trac demand is touse temporal clustering analytics on the historical data so as to group together time slotsthat feature very similar distributions of the mobile trac demand across the APs Inthis case the module returns a limited number of proles each of which corresponds tothe typical demand observed in a large set of time slots It is then possible to reduce thecomputational cost at the Optimization Core by feeding it with a small number of prolesHowever this comes at the expense of assignment quality since typical proles can onlyapproximate the actual MEC network load at a specic time step We provide an exampleof temporal clustering analytics which builds on the methodology of [21] in Section 61

Optimization Core Once the trac demand proles are dened the Optimization Corebuilds eective dynamic assignment plans on top of those Plans include for each timeslot the set of APs to be connected to which MEC facility and as a by-product the set ofswitching operations to be performed between subsequent time slots We consider dierentoperational options

bull single versus split assignment in the single assignment variant an AP is associatedto exactly one MEC facility in each point in time while in the split assignment

variant the AP demand can be served simultaneously by dierent facilities That isin the rst case we suppose that whenever connecting to a certain AP each user isrouted to the same facility while in the latter case an AP can route the trac ofeach user independently to dierent facilities

bull linear versus periodic assignment in the periodic variant we explicitly take intoaccount the potential switching cost between the last and the rst point in time ofour plan since it is meant to be repeated over a longer planning horizon This is notthe case in the linear model which assumes no system periodicity

Validation Tool Once a set of candidate plans is produced by the Optimization Corea Validation Tool is used to check their quality on test data In our case test data consistof a few weeks of raw trac demand data the Validation Tool evaluates the plan bysimulating its application in those weeks and computing quality measures

Orchestrator The MEC orchestrator is the functional element in charge of actuallysending VM orchestration instructions to MEC hosts monitoring the MEC system statusand the MEC network link states as well Legacy cloud orchestrator systems typically takeorchestration decisions based on simple best-t policies as data-center network resourcesare often over-dimensioned and a large set of clusters is made available the placement andassignment decision logic is therefore typically not bound to computing facility locationSuch orchestration algorithms however cannot be readily applied to a MEC context essen-tially because of the geographical nature of MEC networks and the capacity limitation ofMEC facilities This is typically done at the orchestrator subsystem level by adding anabstraction layer with a dedicated descriptive language to map computing resources tophysical location of servers

3 Optimization models

A key component of the data-driven MEC management optimization framework is theoptimization core Its task is to nd suitable assignments of APs to MEC facilities over

5

t = 1

A B

1 2 3

t = 2

A B

1 2 3

x12A x2

2B

y22AB

Figure 2 x and y variables

time together with corresponding user VMs migration patterns For the sake of readabilitywe focus on the single-assignment linear-plan variant a discussion on how to adapt ourmodels and methods to the other variants is provided in Section 46

Let us denote as A the set of APs and as K the set of MEC facilities We assumethe planning horizon to be discretized in a set T of time slots For each AP i isin A let usindicate as dti the mobile trac demand that has to be accommodated by AP i at timet isin T and as mik the physical distance between AP i and MEC facility k isin K Let Ck

be the capacity of MEC facility k isin K and lkprimekprimeprime be the network distance between MECfacilities kprime kprimeprime isin K We assume lkk = 0 for each k isin K where with network distance wemean a distance that can is directly proportional to the network latency (including packetprocessing latency at intermediate nodes) and the physical distance

Let xtik be binary variables taking value 1 if trac from AP i isin A at time t isin T is

routed to MEC facility k isin K 0 otherwise Let ytikprimekprimeprime be binary variables taking value1 if AP i isin A is associated to MEC facility kprime isin K at time t minus 1 and switches to MECfacility kprimeprime isin K at time t

Our Dynamic Assignment and Switching Problem (DASP) can be formulated as follows

min αsumtisinT

sumiisinA

sum(jk)isinKtimesK

dtiljkytijk + β

sumtisinT

sumiisinA

sumkisinK

dtimikxtik (1)

stsumiisinA

dtixtik le Ck forallt isin T forallk isin K (2)sum

kisinKxtik = 1 foralli isin Aforallt isin T (3)

xtik =sumlisinK

ytilk foralli isin Aforallt isin T 1 forallk isin K (4)

xtik =sumlisinK

yt+1ikl foralli isin Aforallt isin T T forallk isin K (5)

xtik isin 0 1 foralli isin A forallk isin Kforallt isin T (6)

ytikprimekprimeprime isin 0 1 foralli isin Aforallkprime kprimeprime isin Kforallt isin T (7)

the objective (1) aims at nding a trade-o between the minimization of network- anduser-related costs The former is generated by the change of AP-MEC facility associationsin consecutive time slots which produces control overhead due to the necessity of migratingVMs The latter is instead the latency experienced by the user with the current AP-MECfacility association Parameters α and β represent the relative weight of the network-and user-related costs in the objective function Constraints (2) impose that the overalldemand assigned to MEC facility k at time t does not exceed its capacity Constraints (3)impose that each AP is connected to a single MEC facility during a time slot Constraints(4) and (5) link x and y variables in a ow conservation fashion when xtik = 0 that is APi is not assigned to MEC facility k at time t they impose that no switching operation is

6

made when xtik = 1 instead they impose that a single switching operation assigns i to kat time t and reassigns it at time t+ 1 (possibly involving the same MEC facility in whichcase the switching cost is zero)

A sample instance with three APs (squares) two MEC facilities (circles) and two time-slots (left and right parts) is depicted in Figure 2 AP 2 is assigned to MEC facility A att = 1 and MEC facility B at time t = 2 therefore a switching operation from A to B needsto be performed

Model (1) (7) has a few interesting features

Observation 1 The DASP can be seen as a multi-period generalization of the Generalized

Assignment Problem (GAP)

In fact when |T | = 1 the DASP reduces to a GAP

Observation 2 For t gt 1 constraints (3) are redundant

Indeed for t gt 1 they are implied by constraints (4) and (5) andsum

kisinK x1ik = 1 for each

i isin A It is easy to check it by induction over t for each i isin A constraints (5) ensure thatif a k isin K exists such that xtminus1

ik = 1 thensum

lisinK ytikl = 1 then by aggregating constraints(4) we obtain that if

sumkisinK

sumlisinK ytikl = 1 then

sumkisinK xtik = 1 In turn since the x

variables are binarysum

kisinK xtik = 1 implies that a k isin K exists such that xtik = 1 All weneed to additionally enforce is the base case t = 1

Proposition 1 When all xtik variables take integer values the ytikl variables also (auto-

matically) take integer values in any feasible solution The converse is also true

In fact for each i isin A and each t isin T due to constraints (5) if xtik = 0 then yt+1ikl = 0 for

each l isin K If xtik = 1 assume by contradiction that a feasible solution exists containingfractional yt+1

ikl values each fractional yt+1ikl will appear in a dierent constraint of family (4)

that can be feasible only if xt+1ik = 1 for more than a single k isin K violating constraints (3)

yielding infeasibility and thus leading to a contradiction The converse is trivially impliedby both constraints (4) and (5)

That is in the search for optimal solutions by means of algorithms exploiting continuousrelaxations branching on ytikl variables is unnecessary

4 Optimization Algorithms

Unfortunately when the size of the MEC network is large even solving the continuousrelaxation of model (1) (7) turns out to be computationally hard Therefore we devisean ad-hoc exact solution approach based on decomposition

Following the Dantzig-Wolfe reformulation principle [22] let

P i = (xtik ytikl) (3) (4) (5) (6) (7)

represent the convex hull of the feasible region respect to constraints (3) (7) Let Ωi bethe set of corresponding extreme integer points and for each p isin Ωi let xtpik and ytpijk be

the coecients encoding point p Each element of P i can be represented as a linear convexcombination of points in Ωi Therefore we introduce a set of variables zp ge 0 expressingmultipliers in such a combination and we reformulate the continuous relaxation of (1) (7) as the following Master Problem (MP)

7

minsumiisinA

sumpisinΩi

(αsumtisinT

sum(jk)isinKtimesK

dtiljkytpijk + β

sumtisinT

sumkisinK

dtimikxtpik

)zp (8)

st minussumiisinA

sumpisinΩi

dtixtpik z

p ge minusCk forallt isin T forallk isin K (9)

sumpisinΩi

zp = 1 foralli isin A (10)

zp ge 0 (11)

The MP has an exponential number of variables We optimize it by column generationwe replace Ωi by a small representative subset Ωi (see subsection 41) and we solve theRestricted Master Problem (RMP) obtained in this way then for each i isin A we search ifany element of Ωi exists whose corresponding variable has negative reduced cost by solvinga pricing problem (see subsection 42) any such element is added to Ωi and the process isiterated Otherwise we stop the solution obtained by restricting to Ωi is optimal also forthe full problem

Such a solution provides a valid lower bound to the DASP It might indeed be fractionalIn such a case we run rounding heuristics (see subsection 43) to obtain a correspondingupper bound If upper and lower bounds do not match we rst perform probing topotentially x variables (see subsection 44) and then when needed we enter a recursivetree search phase (see subsection 45) Our algorithms can be easily adapted to the split-assignment and periodic-plan variants (see subsection 46)

41 Initialization

In order to populate the initial sets Ωi as well as obtaining an initial primal bound we runa simple greedy heuristic that builds the solution time-slot by time-slot and AP by APThe corresponding pseudo-code is reported as Algorithm 1 In particular for each timeslot APs are sorted by non-increasing demand and each AP is associated to a protableMEC facility following this order The choice for the most protable MEC facility to whichto associate an AP i at time t follows these rules let k be the MEC facility to which theAP i was associated in the previous time slot tminus 1

1 if t gt 1 and the demand of the AP i does not exceed the residual capacity of theMEC facility k assign i to k

2 otherwise nd the nearest MEC facility (in terms of distance mik) to which the APdemand does not exceed the residual capacity if no such a MEC facility exists stopin a FAIL state

This algorithm always terminates in O(|T ||A| log(|A|)|K|) time Unfortunately asfor a xed t the problem is a special instance of GAP even the problem of nding anarbitrary feasible solution is NP-Hard Indeed the algorithm might stop in a FAIL statewithout producing feasible solutions However in our computational experiments thatnever happened

Nevertheless to complete the population of the initial RMP we insert also a singledummy column of very high cost having coecient 0 in each constraint (9) This ensuresRMP feasibility also after branching

8

Algorithm 1 Greedy Binary AP-MEC facility assignment

ka = none foralla isin A MEC facility associated to AP a in previous time-slotfor all t isin T do

As = sortDec(dta|a isin A) sort AP for non-increasing demand at time tck = 0 forallk isin K used capacity of MEC facility kfor all a isin As do

k = ka rst choice is the previous assignmentif k = none or ck + dta le C then

k = nearestAvailable(a dta ck) get nearest MEC facility with enough residualcapacity

end if

xtak = 10

ck = ck + dta update used capacity of chosen MEC facilityif t gt 0 and k 6= ka thenytakak

= 10end if

ka = kend for

end for

42 Pricing algorithms

Let λtk be the (non-negative) dual variables corresponding to constraints (9) and ηi bethe (free) dual variables corresponding to constraints (10)

For each i isin A the problem of nding the element of Ωi corresponding to the variableof minimum reduced cost can be formulated as follows

minπi =minus ηi + αsumtisinT

sum(jk)isinKtimesK

dtiljky

tijk

+

+sumtisinT

sumkisinK

(βdt

imik + dt

iλtk)xtik

(12)

stsumkisinK

xtik

= 1 forallt isin T (13)

xtik

=sumjisinK

ytijk

forallt isin T 1forallk isin K (14)

xtik

=sumjisinK

yt+1ikj

forallt isin T Tforallk isin K (15)

x isin 0 1y isin 0 1 (16)

Proposition 2 The pricing problem (12) - (16) possesses the integrality property

In fact according to Observation 2 constraints (13) can be removed for t gt 1 and con-straints (14) used to replace xt

ikin (15) and then removed The remaining is basically a

network ow matrix which is known to be totally unimodular [22]On one hand Proposition 2 implies that the lower bound obtained by the MP through

column generation is equivalent to that obtained by optimally solving the continuous re-laxation of the original model (1) (7) On the other hand it allows to employ polynomialtime Linear Programming solution algorithms making us to expect the solution processto be fast Indeed we could exploit its structure even further as the elements of Ωi have a

9

Algorithm 2 Pricing Algorithm

for all i isin A do

c1k = a1

ik forallk isin K cost of path starting at MEC facility kp1k = k forallk isin K path starting at node kprime at timefor all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i

πlowast = c|T |klowast minus ηi

if πlowast lt 0minus ε thenadd variable related to minimum cost path pklowast to the model

end if

end for

particular combinatorial interpretation they correspond to all feasible association pathsthat is sequences of MEC facilities to which the AP i is assigned in consecutive time-slotsMore in details we build a directed layered graph G(NA) with a layer for each time-slotas follows Each layer has one node for each MEC facility each pair of nodes in consecutivelayers are connected by an arc Each node (t k) isin T times K modeling the assignment toMEC facility k at time t has an associated traversal cost given by atik = dti(βmik + λtk)while each arc connecting nodes (t j) and (t+ 1 k) has an associated traversal cost givenby btijk = dt+1

i αljk We also add a dummy source σ (resp sink τ) nodes having oneoutgoing arc to each node in layer t = 1 (resp one incoming arc from each node in layert = |T |) of zero cost Figure 3 sketches the structure of G for a certain AP i on a sampleinstance with two MEC facilities (A and B) a potential solution assigns i to A at timet = 1 to B at time t = 2 and so forth

In fact an optimal pricing solution corresponds to a shortest σ minus τ path in G

Proposition 3 For each i isin A the pricing problem can be solved in O(|T ||K|2) time

In fact for solving the pricing problems we devise a simple dynamic programming algo-rithm which is presented as Algorithm 2

t = 1

A

a1iAx1iA

B

t = 2

A

B

a2iBx2iB

t = |T |

A

a|T |iAx|T |iA

B

b2iAB

y2iAB

0 middot y3iBB

b|T |iBA

y|T |iBA

Figure 3 Pricing Problem Structure

10

Algorithm 3 Rounding heuristic

Input variable values x from a RMP fractional solutionOutput x = 0 y = 0 integer solutionfor all t isin T do

rk = Ck forallk isin K residual capacity of MEC facility kA = sort(AmaxkisinK xtik) sort the set of AP by non-increasing value of fractionalassignment to the most desirable MEC facilityfor all i isin A do

consider APs in such an orderif k isin K|dti le rk = empty thenFAIL no MEC facility with enough capacity exit with FAIL status

else

k = arg maxkisinK|dtilerk xtik get highest assignment

xtik = 10 x assignment with MEC facility

rk = rk minus dti update residual capacityend if

end for

end for

y = compute_shift(x) compute y variable values to be consistent with x

43 Rounding Heuristics

In order to nd good primal bounds a simple rounding algorithm (presented in Algorithm3) is executed at every column generation iteration Let z be the (possibly fractional)variable values of the RMP at a certain iteration we can compute the values of thecorresponding x variables as

xtik =sumpisinΩi

xtpik zp

For each time-slot t isin T for each APs i the highest xtik is retrieved For each AP sorted bydescending highest x value the assignment is made with the MEC facility correspondingto the highest x and with enough residual capacity Although no guarantee in feasibilityis given our computational experiments revealed it to be highly eective

44 Variables xing

We also experimented with probing techniques to potentially perform problem reductionduring the column generation process In particular we employed Lagrangean probing tox variables at a pricing level The main idea is to run the Pricing Problem ResolutionAlgorithm twice the rst time as described in 2 that is considering each layer t = 1 |T |in forward order the second time instead considering the layers in backward order that is

initializing c|T |k = 0 and updating each ctk = minklowastisinK ct+1

klowast +dt+1i (αlkklowast +βmiklowast +λt+1klowast)

In this way the cost χtk of the best path in which at time t an assignment is forced to MEC

facility k can be computed by summing the forward and backward labels ctkA valid dual bound LB can be computed at each column generation iteration as

LB = ρminussumiisinA

πi

where ρ is the value of the last RMP solution Let UB be the value of the best primal(integer) solution found so far

For each i isin A let s(t) be the MEC facility at which AP i has been assigned at time tin the optimal pricing solution returned by Algorithm 2 We perform the following xes

11

bull for each t isin T and k isin K if LB + χts(t) minus χ

tk ge UB then if assignment to MEC

facility k was forced no improvement in the primal bound would ever be obtainedTherefore node k can be removed from layer t without losing optimization powerthat means xing variable xtik = 0 in the original model

bull for each t isin T if LB+χts(t)minusminkisinKs(t) χ

tk ge UB then if such an assignment was

forbidden no improvement in the primal bound would ever be obtained Thereforeall nodes k 6= s(t) can be removed from layer t without losing optimization powerthat means xing variable xtis(t) = 1 in the original model

A similar xing procedure is run on arcs of the pricing graph thereby allowing to x ytkprimeprimekprimevariables in the original model

From an implementation point of view we always allowed a relative tolerance of 5eminus4in the xing test to prevent numerical troubles We run the xing procedure at the endof the column generation process of every node of the search tree additionally at the rootnode we run it whenever an improving primal solution is found

45 Branch-and-price

When upper and lower bounds at the end of the column generation process do not matchwe proceed to branching We branch on original variables x rather than on variables ofthe MP Fixing variable xtik to value 0 corresponds to xing to value 0 all variables zp isin Ωi

that assign AP i to MEC facility k at time t Similarly xing variable xtik to value 1corresponds to xing to value 0 all variables zp isin Ωi that do not assign AP i to MECfacility k at time t Neither forbidding nor forcing assignments change the structure of thepricing problem these conditions are easily included within the dynamic programmingalgorithm by simply removing nodes from the pricing graph According to Proposition 1no branching on y variables is needed

We considered the following two branching rules

1 considering all possible assignments of AP i at time t take the pair (iprime tprime) which hasgreatest number of variables xt

primeiprimek with strictly positive value that is that AP whose

assignment at a certain time is split among the greatest number of dierent MECfacilities Sort variables xt

primeiprimek by non-increasing value and partition this ordered set

in two the rst set containing variables in the odd positions of ordered set and thesecond set containing variables in the even positions A left (resp right) branch iscreated xing to zero all the variables in the rst (resp second) set

2 select the variable xtik whose value is closer to 05 ie the variable related to the mostfractional assignment Create two branches xing the selected variable respectivelyto value 0 or to value 1

We always consider branching rule 1 rst triggering rule 2 only when all (i t) pairshave at most two corresponding fractional xtik variables During preliminary experimentsa simple depth-rst exploration policy showed to perform best When rule 2 is used thextik = 1 branch is explored rst

46 Split assignment and periodic plans

We rst observe that global optimal split-assignment plans can be obtained by simplystopping at the root node and considering the (potentially fractional) solution of thecolumn generation master problem

12

Furthermore as discussed in the Introduction the application is periodic in naturethe decision maker creates a plan that is meant to be repeated over time Such a peri-odic variant can be managed by minor modications to our models and algorithms Inparticular model (1) (5) needs to be enriched adding constraints

x1ik =

sumlisinK

y|T |ilk foralli isin A forallk isin K

to the family (4) and constraints

x|T |ik =

sumlisinK

y1ikl foralli isin Aforallk isin K

to the family (5) these link the assignments made in the last and rst time-slots assign-ment hence closing the period of assignments The column generation master problemdoes not change The pricing problem instead requires to be adapted as cycles ratherthan paths need to be generated We therefore modied our pricing routine as presentedin Algorithm 4 Exactly solving the modied pricing problem via dynamic programmingrequires O(|T ||K|3) time for every AP The main idea is to tentatively x the assignmentat time 1 to all the |K| possible MEC facilities to solve each reduced problem and tochoose the best among the |K| solutions found in this way Since it is possible to create alayer |T | + 1 as a copy of the layer t = 1 after xing the assignment the pricing problemreduces to nding a minimum cost shortest path from the single xed node in layer t = 1to the single xed node in layer |T |+ 1

Any other detail of the algorithm remains unchanged

5 Computational evaluation

We implemented our algorithms in C++ using CPLEX 126 [23] to solve the master LPsubproblems running tests on an Intel i7 4GHz workstation equipped with 32 GB of RAM

Our rst investigation is computational benchmarking the eectiveness of our algo-rithms in comparison to the branch-and-cut ILP solver of CPLEX using formulation (1) (7)

51 Dataset

We have access to a dataset of real-world mobile trac demands [24] encompassing twomonths with a time granularity of fteen minutes The geographical area covered by thedataset extends for more than 2500 km2 The demand is not associated to access points ofthe mobile network whose location is unknown but rather to a geographical tessellationof the area in 1419 rectangular cells of dierent sizes with smaller (and more dense) cellsin the center of the area We select the centers of every rectangular cell as elements of theset A of access points locations

Then we create ten clusters of access points using a standard k-means model takingas input the euclidean distances between APs optimizing it with the classical heuristicsof [25] The centers of these clusters are selected to dene the locations of the set K ofMEC facilities The network distances mik and ljk are computed as euclidean distancesaccordingly and rounded to the nearest integer (hence supposing packet processing latencyis negligible)

Given this network infrastructure we generate dierent problem instances by randomlydrawing demands in each AP in dierent ways

In details we create two random datasets

13

Algorithm 4 Periodic Pricing Algorithm

for all i isin A do

πlowast = +infinplowast = emptyfor all k isin K do

c1k

= a1ikx MEC facility k at t = 1

c1k = +infin forallk isin K k forbid MEC facility k at t = 1p1k = k forallk isin K path starting at node k at time t = 1for all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

for all k isin K do

c|T |k = c

|T |k + b1

ikk+ a1

ikend for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i when starting at k

if c|T |klowast minus ηi lt πlowast then

πlowast = c|T |klowast minus ηi

plowast = p|T |klowast

end if

end for

if πlowast lt 0 thenadd variable related to minimum cost path plowast to the model

end if

end for

Dataset A is synthetic and aims at stressing our algorithms from a pure computational pointof view We consider a planning horizon of one day split in 96 consecutive fteen-minute time slots Let d (resp d) be the minimum (resp maximum) demandobserved in any AP and time slot in [24] Demands dti for each AP i at time t aredrawn uniformly at random independently in each fteen-minute time slot in therange [d d] That is demands do not follow particular trends even if falling into thesame range of real data

Dataset B is realistic reproducing the main features of the starting data We choose a singleday at random from the two months included in the dataset [24] we perform a directquery to the demand of each AP at each time slot in that day and then we perturball demands with noise uniformly drawn at random in the interval [minus5+5]

All demand values are rounded to the nearest integer Besides the initial horizon of 96time-slots we consider planning time horizons of 48 24 and 12 time-slots by mergingrespectively 2 3 or 4 subsequent time-slots setting their demands as the average on themerged time-slots Five instances are generated in both datasets A and B

We also consider a dataset of raw real demands

Dataset C is obtained by considering a random week taken from the dataset [24] and mergingthe time-slots in either 168 slots of 1 hour each (1h) 84 slots of 2 hours (2h) 56

14

slots of 3 hours (3h) 42 slots of 4 hours (4h) or 38 slots obtained by the clusteringmethods described in subsection 62 (clust) The demand of each AP in each slot tis taken as the maximum over the the fteen-minute time slots merged in t

For every instance each MEC facility capacity Ck is set to(

maxtisinTsum

iisinA dti|K|

)middot105

and parameters α and β are both set to value 05

52 Column Generation proling

We rst report on the computational behaviour of our Column Generation algorithm (CG)In this test we consider the single-assignment non-periodic variant

In Tables 1a 1b and 1c we include the details of the root node column generationprocess for each instance of datasets A B and C respectively A best known solutionvalue zlowast is taken from a previous run of exact algorithms (see subsection 53) Besidesinstance details (columns `|T | and `inst) we include the relative gap between the primalbound value (resp dual bound value) and zlowast the number of column generation iterationsneeded to reach convergence the overall CPU time spent for solving the pricing problemsand the CPU time required to complete the column generation process As benchmarkwe also report the performances of CPLEX 1263 ILP solver when stopped at the rootnode including the corresponding primal and dual bound gaps and the time required tocomplete its root node computation

We set a time limit of two hours to each computation marking in the tables as `TLthose computations hitting that limit

We rst note that CG has good convergence behaviour less than 90 iterations arealways enough to complete the computation The high number of pricing subproblemsyields to a high number of generated columns but thanks to our dynamic programmingalgorithm the overall pricing time remains low (below 10 seconds in all cases but one)

By rounding in CG we are always able to obtain good integer solutions (that is below1 from best known solutions in all cases but 4) CPLEX is not consistent in a fewinstances (eg block |T | = 48 of the Realistic Dataset B) it is able to nd very goodprimal solutions while in other cases (eg block |T | = 24 of Dataset B or block |T | = 48of Dataset A) only very weak primal bounds can be obtained

We also observe that CG and CPLEX dual bounds are always similar That is on onehand the integrality property of our pricing problem warns that no improvement can beobtained by CG with respect to the continuous relaxation of the original formulation onthe other hand CPLEX generic cuts have no signicant eect on strengthening the samecontinuous relaxation bound

Finally in more than 37 of the instances CPLEX is unable to terminate the rootnode computation within the time limit while CG always completes the computationWhen both CG and CPLEX terminate the CPU time required by CG is up to two ordersof magnitude lower that required by CPLEX

We highlight that the (possibly fractional) solution found by CG is a global optimalsolution for the split-assignment model variants no further computing is needed in thatcase

53 Exactly solving the DASP

In a second round of experiments we let both our Branch-and-Price (BaP) and CPLEX126 ILP solver (CPX) run for two hours also exploring their branching trees In Tables2a 2b 2c we report the results of this experiment on each instance of datasets A B and Crespectively In each Table we report the relative gap between the primal bound PB (respthe dual bound DB) at the end of computation and the best known integer solution valuezlowast and the number of explored branch-and-bound nodes for both our BaP and CPX

15

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0130 1212 19 10808 0 4 0724 1197 8642 0735 1955 14 8715 0 4 244932 1949 4103 0793 1351 13 7074 0 3 0167 1345 3284 0945 0999 14 7515 0 3 2824 0994 3445 1206 1630 13 7892 0 3 3052 1627 356

24

1 0061 1475 26 17027 1 15 0249 1471 28262 1202 1537 19 11429 1 11 274940 1533 19433 0867 2019 19 12296 0 13 267368 2015 18524 0846 1864 19 12525 0 12 123542 1860 18615 0909 1764 18 12077 0 12 267486 1761 1781

48

1 0463 1819 41 27035 6 114 246767 1816 TL2 0221 2468 32 20897 1 90 270039 2465 TL3 0746 2336 33 21468 4 95 269274 2332 TL4 0295 2036 31 20496 0 74 282422 2033 TL5 0265 2514 35 22707 0 106 258676 2510 TL

96

1 0176 2274 68 47500 5 949 259445 - TL2 0055 2633 59 42621 6 913 - - TL3 0034 2779 61 43107 9 863 - - TL4 0187 2528 61 42692 5 850 - - TL5 0124 2568 60 41913 6 815 272834 - TL

(a) Synthetic Dataset A

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0809 0107 12 6542 1 2 0055 0105 1382 0917 0112 11 6150 0 2 0924 0110 1463 1043 0125 12 6611 0 2 0155 0123 1584 0797 0103 11 5843 0 2 349538 0102 1205 0781 0102 11 6548 0 2 349089 0101 113

24

1 0766 0425 15 9713 0 4 305781 0424 5322 0481 0280 16 9715 0 3 306562 0278 5873 0613 0576 15 9492 1 3 304188 0575 6224 0960 0183 17 10345 0 3 306874 0182 6155 0648 0221 16 10217 0 4 307199 0220 413

48

1 1031 0264 27 15539 1 16 0253 0262 21132 0782 0344 25 15636 2 15 0557 0343 22493 0500 0363 26 15286 1 15 0 0362 26744 0741 0314 26 15791 3 18 0049 0312 24455 0829 0296 29 16294 0 15 0651 0295 1878

96

1 0077 0933 51 29786 6 130 - - TL2 0315 0766 43 28272 3 125 - - TL3 0249 0853 46 28221 9 129 - - TL4 0395 0692 49 29320 5 126 - - TL5 0154 0726 48 29005 4 120 - - TL

(b) Realistic Dataset B

CG Root CPLEX Root

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast tclust 0590 0092 21 12928 2 9 0429 0091 4684h 0630 0272 30 20690 2 25 0175 0271 51913h 0513 0471 37 25960 3 58 0766 0470 28142h 0192 0724 50 31706 2 133 - - TL1h 0097 0905 85 56322 18 953 - - TL

(c) Raw Real Demand Dataset C

Table 1 Computational Results - CG Root vs CPLEX Root

16

(a) BaP vs CPLEX (b) BaP Detail

Figure 4 Primal Bound

We report no computing time because surprisingly neither BaP nor CPX could bringthe duality gap below 01 within the time limit except for instance 4 with |T | = 12 ofDataset A 5 with |T | = 12 of Dataset B and clust of Dataset C that CPX is able toclose (but still using more than 90 of the available CPU time)

In terms of nal dual bounds the results of both methods are very similar Our expla-nation for this phenomenon is the following the root dual bound is already very close tothe integer optimum value and therefore the real challenge is to nd an optimal primalsolution At the same time the high number of time-slots yields values of primal solutionson the order of magnitude of 108 as soon as the duality gap becomes small numericalapproximation issues prevent to coherently explore the remaining search tree

In terms of searching for good primal solutions in the inner nodes of the branching treeinstead BaP and CPX are not equivalent in Figure 4a we plot the typical primal boundvalue (y axis) improvements as the computation (x axis) proceeds (instance 1 |T | = 24dataset B) for the sake of comparison the x axis report relative values with respect tothe overall number of branch-and-bound nodes for CPX and the overall number of columngeneration iterations for BaP Eventually CPX is more numerically stable oering aftertwo hours of computation primal solutions values a few tenths of percentage points better(up to 05 of improvement) In turn BaP allows to nd near-optimal integer solutionsmuch more quickly that is in fact already at the root node The behaviour of BaP in theearly steps of computation is further detailed in Figure 4b the quality of the primal boundsteeply increase during the column generation iterations at the root node

As a synthetic nal assessment of our computational evaluation we can report thatwhen the number of time-slots is small and the planner has no particular need for quickoptimization algorithms both BaP and CPLEX might be viable alternatives to optimizethe DASP

BaP is faster especially when used heuristically stopping the computation either atthe root node or after exploring a few nodes of the branch-and-bound tree This makes itwell suited also when quick optimization is needed like in what-if-analyses

When the number of time-slots increases however using CPLEX is not an optionanymore

We repeated all the experiments with a periodic-plan model without nding substantialchanges in the computational behaviour of the methods Indeed the periodic-plan modelhas main impact only in the structure of the pricing problem of BaP but pricing involvesonly a small amount of the overall computational eort

17

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0 1208 17661 0411 1197 2032 0 1951 17038 0777 1949 3713 0198 1347 18572 0 1345 4524 0370 0997 19198 0 0993 5485 0020 1626 18013 0 1626 699

24

1 0 1473 8576 0249 1471 142 0 1535 8657 0855 1533 243 0 2018 9349 267368 2015 464 0 1863 9353 123542 1860 385 0 1763 10204 267486 1761 40

48

1 0 1818 2123 246767 1816 02 0 2468 2724 270039 2465 03 0 2335 2558 269274 2332 04 0 2036 3133 282422 2033 05 0 2514 2528 258676 2510 0

96

1 0 2274 113 259445 - TL2 0 2633 217 - - TL3 0 2779 168 - - TL4 0 2528 135 - - TL5 0 2568 207 272834 - TL

(a) Synthetic Dataset A

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0160 0105 35112 0 0103 23982 0235 0111 30708 0 0109 25793 0320 0124 26374 0 0122 18184 0406 0102 26490 0 0100 19325 0267 0100 24714 0 0098 1844

24

1 0133 0424 17961 0 0423 1442 0274 0279 18354 0 0278 1093 0 0576 20016 0717 0574 2254 0353 0183 17481 0 0182 2325 0284 0220 20446 0 0220 522

48

1 0312 0263 10738 0 0262 202 0249 0343 10465 0 0343 183 0113 0363 10482 0 0360 174 0227 0313 10321 0 0311 165 0226 0295 10818 0 0295 21

96

1 0 0932 3133 - - TL2 0 0765 3193 - - TL3 0 0852 3398 - - TL4 0 0691 3099 - - TL5 0 0726 3299 - - TL

(b) Realistic Dataset B

B-amp-P CPLEX

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

clust 0376 0091 13849 0 0091 8124h 0442 0272 8985 0 0270 303h 0403 0471 5086 0 0470 332h 0 0724 2864 - - TL1h 0 0905 370 - - TL

(c) Raw Real Demand Dataset C

Table 2 Computational Results - BaP vs CPLEX

18

6 Practical case study

Our nal aim is to assess the eectiveness of our optimization core in the context of thedata-driven MEC management optimization framework To this end we rely on the com-plete real-world dataset in [24] and run actual analytics on it so as to generate the demandproles We then feed our optimization models with such proles which ultimately letsus measure the quality of the assignment plans it returns in a practical case

61 Experimental setup

The real-world mobile trac data covers a planning period of eight weeks split in a set Tof fteen-minute snapshots The rst approach we take in order to infer demand prolesexploits a well-known property of mobile trac ie its weekly periodicity [26] Namely asingle week is taken as training data and the mobile trac recorded in each fteen-minutetime-slot is considered as a prole The tasks performed by the data mining and validationmodules are kept as simple as possible in order to highlight the eect of the optimizationcore

Training Conceptually the resulting 4 times 24 times 7 = 672 training proles are then usedas input for our optimization algorithms By optimizing over the training data we obtaina planning solution which becomes our assignment plan we apply such a plan to theremaining seven weeks of test data As an example optimizing over training data yields asolution including a specic assignment of APs to MEC facilities on Monday between 700am and 715 am we then blindly apply the same assignments on the 700-715 am timeslots of each Monday in the test data presuming that the demand conguration is similaron all Mondays at the same time In a sense this is a worst-case situation in which thedecision maker simply observes the system for one week before deciding on the planningfor the remaining weeks

Practically we do not directly use the 672 fteen-minutes time-slots for training Weassume instead that the preprocessing and data-mining module produces suitable ag-gregations We experimented therefore with simple aggregation of the proles mergingtime-slots sequentially over 1 2 3 or 4 hours Each aggregation step was performed byconsidering in each AP and in each aggregated time-slot the maximum demand value ofthat AP over the corresponding base time-slots The optimized solution was then dis-aggregated in post-processing simply replicating the same plan over the fteen-minutestime-slots composing each aggregated time-slot By choosing the maximum demand valuesduring aggregation we ensure that our optimized solutions remain feasible after disaggre-gation

It is apparent that less aggregated proles entail a higher potential for optimizationin the baseline scenario the assignment of APs to MEC facilities can be changed every15 minutes possibly assigning to the same MEC facility APs that experience very highpeaks of demand in subsequent time slots They are however more prone to overttingas peaks in particular hours of the training week do not necessarily correspond to peaksin the corresponding hour of testing weeks In addition they are more clearly expensivefrom a computational standpoint

More aggregated instances instead are more conservative two APs with very highdemand peaks in the same four-hours time slot cannot be assigned to the same MECfacility thus possibly preventing capacity violations in the test weeks if those peaks slightlymove in time They are also less demanding in terms of computational costs Howeveraggregation forces the a same conguration for longer timeframes making the optimizationpossibly oblivious of fast dynamics in the demand

19

Figure 5 Time-Clustering resulting from [21]

In order to further balance the aggressive optimization process during the trainingphase of low aggregation instances we found empirically useful to set the Ck capacityvalues to

(maxtisinT

sumiisinA d

ti|K|

)middot 105 in each test That is one-hour time-slot instances

are optimized with lower capacity values

Test To ensure fairness in the comparison during the test phase only disaggregatedsolutions are considered That is independently on the aggregation used for training onlysolutions dened over the original fteen-minutes time-slots are compared Similarly thereference MEC capacity value was xed to

(maxtisinT

sumiisinA d

ti|K|

)middot110 in any comparison

Clearly neither the cost nor the capacity usage are guaranteed to remain the samewhen the planning obtained with training data is applied to test data as uctuations inthe demand may occur across weeks The quality of our solutions is therefore evaluatedaccording to two measures (i) the assignment and switching cost of the planning and (ii)

the amount of violations in capacity constraints both measured on test data The latteris computed as follows

maxtisinT

sumkisinK

maxsum

iisinA dtix

tik minus Ck 0

Ck

that is the overall amount of violation in capacity constraints as a relative value respectto the available capacity in the worst time-slot

These measures are computed for each plan by the validation module through simplesimulation on the seven weeks of test data

Advanced Clustering Benchmark An alternative to employing our ad-hoc techniqueon the optimization module would be to perform a more aggressive aggregation over timeproducing instances that are small enough to be optimized by CPLEX We experimentedon such an option adapting the temporal clustering solution presented in [21] to our needsSpecically we take the following steps (i) we generate a median week of mobile tracdemand by computing the median load recorded at each AP during every hour of the weekusing it as training data (ii) we perform two separate hierarchical clusterings respectivelyusing the total volume and normalized distance metrics introduced in [21] (iii) we ndthe intersection of the two cluster sets obtained at the previous point

Figure 5 shows the resulting clustering of one-hour time slots ve typical demandproles are identied which can be associated to working hours (denoted by 0 in thegure) relax hours in the late afternoons and weekends (1) morning commuting hours(2) night hours (3) and late evening hours (4) Very few time-slots are actually producedthis way allowing CPLEX to optimize the corresponding instances Consecutive time-slots

20

InstWeek

train 1 2 3 4 5 6 7

Bench-CPLEX 959 703 571 425 257 388 1468 951Bench-CG 959 676 548 408 245 410 1434 927

4h 209 154 172 066 000 254 1163 2923h 194 142 148 110 125 158 1107 2982h 220 258 199 119 226 282 1122 4151h 284 238 417 114 192 404 1065 547

Table 3 Time-Slot Peak Exceeded Capacity Over Available Capacity

belonging to the same cluster are then aggregated The aggregated instance is optimizedand the solution obtained in this way is then disaggregated in fteen-minute time-slotsplans as in the previous case during post-processing before being compared on test data

62 Experimental evaluation

Following the computational results of Section 5 our core optimization module alwaysemploys our Branch-and-Price as a heuristic (HBP) stopping its computation at the rootnode except for the aggregated instances produced by time-clustering Having |T | = 38these are manageable eciently even by general purpose solvers CPLEX 1263 ILP solverwas then used to solve them to proven optimality The scatter plot in Figure 6 summarizesour results Each point represents the outcome on a single week of test data Dierentshapes refer to dierent demand prole aggregation methods obtained by merging 1 2 3 or4 consecutive one-hour time slots as well as using the Advanced Clustering and CPLEX(Bench-CPLEX) The y axis coordinate of each point represents the capacity violationmeasure as introduced above the x axis coordinate of each point represents the solutioncost measure expressed as percentage value of that of the optimal solution employing theAdvanced Clustering Benchmark method Therefore negative (resp positive) percentagesmap to a performance improvement (resp reduction) with respect to the benchmarkAs a reference we report also the results obtained by using HBP instead of CPLEX foroptimizing the Advanced Clustering Benchmark instances (Bench-CG) The details aboutcapacity violation measures are reported also in Table 3 for each week in the training set(columns) and for each demand prole aggregation method (rows)

A rst remarkable result is that in all cases our HBP with sequential clustering allows forsolutions with less capacity violations In particular HBP with either four-hours or three-hours aggregation oer almost no capacity violations coming at the price of three to vepercent increase in solutions cost HBP with two-hours aggregation always outperforms thebenchmark method both in terms of exceeded capacity and in terms of solution costs HBPwith one-hour aggregation further decrease costs at the price of slightly higher capacityviolation

We also experimented on using the full BaP instead of the truncated HBP Our resultsare reported in Figure 7 no signicant change was observed Similarly no signicantchange was observed by using HBP instead of CPLEX on the benchmark clustering

63 Eect of periodic planning

Finally we measure the impact in solution switching costs yielded by choosing a periodmodel instead of a non-periodic one In Table 4 we report for each aggregation listedin the previous subsection the change in switching costs between inner time-slots of theweek (intra-week) between border time-slots of dierent weeks (inter-week) as well as thetotal switching cost the total assignment cost and the overall cost of the solution Using a

21

Figure 6 1-Week Plan - Time Aggreg Comparison

(a) Total Costs (b) Exceeded Capacity

Figure 7 Mean Costs And Exceeded Capacity - CG Root vs BaP

22

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 3: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

Networking (SDN) and Network Function Virtualization (NFV) that allow the dynamic(re-)allocation of resources [8] There is thus a need for analytics that mine trac metadatadiscover relevant knowledge about the network status and ultimately drive the resourcemanagement process [9 10] However we currently miss substantial demonstrations ofhow data analytics can be leveraged in mobile network architectures

Our proposal is to equip the system with an optimization core exploiting preprocesseddata as input and producing solutions whose structure is explicitly encoded by mathe-matical programming models Our setting requires to tackle a multi-period extension ofthe famous Generalized Assignment Problem (GAP) [11] We point to [12] for a detailedreview on the GAP and its extensions Despite the large body of research available onthe GAP we are not aware of many papers directly dealing with its multi-period exten-sions In [13] the authors face a single-source allocation problem with a exible model andan eective branch-and-price algorithm however their model does not allow to handlelimited capacity which is a crucial feature in our application The multi-period alloca-tion problem discussed in [14] in which a dual ascent technique from [15] is adapted toa telecommunication networks applications is similarly missing the feature of handlinglimited capacities

Although our problem does not require to decide the location of the facilities which isinstead assumed to be optimized in a prior strategic planning [16] and given in input onemay expect features and computational challenges similar to those of multi-period locationproblems [17] Recent approaches on that eld include [18] the authors face a multi-periodconcentrator location and dimensioning problem providing MILP formulations and reduc-tion techniques and solving to optimality in less than one hour of computation instanceswith up to 30 clients 10 candidate location sites and 15 time periods or 100 clients 30candidate locations and 5 time periods In [19] the authors introduce exact methods fora capacitated multi-period facility location problem in which however unlike our casethe demand of each client can be fractionally served by multiple facilities Large scaleinstances with up to 200 facilities three periods and an arbitrary number of clients couldbe solved with their algorithms We nally mention the recent contribution of [20] wherethe authors propose MILP formulations and local search heuristics for an uncapacitatedp-median location problem involving two periods in the rst the location of facilities isgiven while in the second it can be changed at a price Clients are always assigned to thenearest facility They provide good approximations to instances with up to 400 facilitiesin a few minutes of computation

Contribution summary and paper outline Our research provides three types of con-tributions The rst is architectural we design a data-driven framework for the dynamicselection of AP to facility assignment in MEC networks which relies on (i) historical dataclustering analytics (ii) dedicated optimization techniques and (iii) validation by simu-lation The second is algorithmic we introduce mathematical programming formulationsand ad-hoc exact solution methods for a relevant multi-period extension of GAP The thirdis use case-oriented we evaluate our framework with real-world datasets which providespractical insights for MEC resource management We devote a substantial part of thepaper to the technical insights of our optimization core

The manuscript is structured as follows We rst detail our framework (Section 2)Then we focus on the optimization core component introducing a compact Mixed IntegerLinear Programming (MILP) formulation for our problem proving a few structural prop-erties and providing an extended counterpart by means of Dantzig-Wolfe decomposition(Section 3) we also design column generation procedures with ad-hoc pricing algorithmsrounding heuristics reduction techniques and branching rules to be embedded in a wholeexact solution method (Section 4) We show rst of all that our algorithms are eective

3

Figure 1 A data-driven MEC management optimization framework

from a computational point of view (Section 5) We then demonstrate the eectivenessof our optimization tools in practical scenarios using real-world trac demands collectedby a major mobile network operator in Milan Italy (Section 6) We nally draw someconclusions (Section 7)

2 A data-driven MEC management optimization framework

We propose a high-level data-driven MEC management optimization framework whosealgorithmic core architecture is sketched in Figure 1 The framework receives as inputa representation of the (time-varying) data trac demand recorded at each AP of theMEC network The framework output are (multiple) assignment patterns of APs to MECfacilities meant to be enforced by the orchestrator on the MEC network over time throughswitching operations

The input data is collected as historical records of the mobile trac demands in theMEC network Part of the data is reserved for testing by the Validation Tool module Partinstead is used for training ie it is fed to the Preprocessing and Data Mining modulewhich lters by meta-data and produces a suitable time (and possibly space) discretizationand a corresponding data aggregation The aggregated proles are sent to the OptimizationCore module which leverages them to compute candidate assignments The Orchestratormodule in turn receives the candidate assignments and queries the Validation Tool modulefor an evaluation on test data so as to determine their quality Based on the result theOrchestrator module nally chooses a suitable assignment and implements it in the MECnetwork

Preprocessing and Data Mining We assume that switching can occur only at cer-tain points in time (eg once every fteen minutes) due to practical limitations of theMEC technology this introduces an implicit time discretization of the system In orderto identify suitable discrete-time proles of the trac demand dierent strategies canbe employed in the Preprocessing and Data Mining module The simplest option is toaggregate the demand observed at each AP during every time step in the training dataThis returns one prole for each time step since switching between assignments cannotoccur at shorter timescales than the time step this is the highest resolution useful to theOptimization Core and the one deemed to return the highest-quality result However it

4

also creates a very large number of proles (eg in the order of thousands for hour-longtime steps over months of historical data) that may be computationally too expensive tomanage

Another option to identify suitable discrete-time proles of the trac demand is touse temporal clustering analytics on the historical data so as to group together time slotsthat feature very similar distributions of the mobile trac demand across the APs Inthis case the module returns a limited number of proles each of which corresponds tothe typical demand observed in a large set of time slots It is then possible to reduce thecomputational cost at the Optimization Core by feeding it with a small number of prolesHowever this comes at the expense of assignment quality since typical proles can onlyapproximate the actual MEC network load at a specic time step We provide an exampleof temporal clustering analytics which builds on the methodology of [21] in Section 61

Optimization Core Once the trac demand proles are dened the Optimization Corebuilds eective dynamic assignment plans on top of those Plans include for each timeslot the set of APs to be connected to which MEC facility and as a by-product the set ofswitching operations to be performed between subsequent time slots We consider dierentoperational options

bull single versus split assignment in the single assignment variant an AP is associatedto exactly one MEC facility in each point in time while in the split assignment

variant the AP demand can be served simultaneously by dierent facilities That isin the rst case we suppose that whenever connecting to a certain AP each user isrouted to the same facility while in the latter case an AP can route the trac ofeach user independently to dierent facilities

bull linear versus periodic assignment in the periodic variant we explicitly take intoaccount the potential switching cost between the last and the rst point in time ofour plan since it is meant to be repeated over a longer planning horizon This is notthe case in the linear model which assumes no system periodicity

Validation Tool Once a set of candidate plans is produced by the Optimization Corea Validation Tool is used to check their quality on test data In our case test data consistof a few weeks of raw trac demand data the Validation Tool evaluates the plan bysimulating its application in those weeks and computing quality measures

Orchestrator The MEC orchestrator is the functional element in charge of actuallysending VM orchestration instructions to MEC hosts monitoring the MEC system statusand the MEC network link states as well Legacy cloud orchestrator systems typically takeorchestration decisions based on simple best-t policies as data-center network resourcesare often over-dimensioned and a large set of clusters is made available the placement andassignment decision logic is therefore typically not bound to computing facility locationSuch orchestration algorithms however cannot be readily applied to a MEC context essen-tially because of the geographical nature of MEC networks and the capacity limitation ofMEC facilities This is typically done at the orchestrator subsystem level by adding anabstraction layer with a dedicated descriptive language to map computing resources tophysical location of servers

3 Optimization models

A key component of the data-driven MEC management optimization framework is theoptimization core Its task is to nd suitable assignments of APs to MEC facilities over

5

t = 1

A B

1 2 3

t = 2

A B

1 2 3

x12A x2

2B

y22AB

Figure 2 x and y variables

time together with corresponding user VMs migration patterns For the sake of readabilitywe focus on the single-assignment linear-plan variant a discussion on how to adapt ourmodels and methods to the other variants is provided in Section 46

Let us denote as A the set of APs and as K the set of MEC facilities We assumethe planning horizon to be discretized in a set T of time slots For each AP i isin A let usindicate as dti the mobile trac demand that has to be accommodated by AP i at timet isin T and as mik the physical distance between AP i and MEC facility k isin K Let Ck

be the capacity of MEC facility k isin K and lkprimekprimeprime be the network distance between MECfacilities kprime kprimeprime isin K We assume lkk = 0 for each k isin K where with network distance wemean a distance that can is directly proportional to the network latency (including packetprocessing latency at intermediate nodes) and the physical distance

Let xtik be binary variables taking value 1 if trac from AP i isin A at time t isin T is

routed to MEC facility k isin K 0 otherwise Let ytikprimekprimeprime be binary variables taking value1 if AP i isin A is associated to MEC facility kprime isin K at time t minus 1 and switches to MECfacility kprimeprime isin K at time t

Our Dynamic Assignment and Switching Problem (DASP) can be formulated as follows

min αsumtisinT

sumiisinA

sum(jk)isinKtimesK

dtiljkytijk + β

sumtisinT

sumiisinA

sumkisinK

dtimikxtik (1)

stsumiisinA

dtixtik le Ck forallt isin T forallk isin K (2)sum

kisinKxtik = 1 foralli isin Aforallt isin T (3)

xtik =sumlisinK

ytilk foralli isin Aforallt isin T 1 forallk isin K (4)

xtik =sumlisinK

yt+1ikl foralli isin Aforallt isin T T forallk isin K (5)

xtik isin 0 1 foralli isin A forallk isin Kforallt isin T (6)

ytikprimekprimeprime isin 0 1 foralli isin Aforallkprime kprimeprime isin Kforallt isin T (7)

the objective (1) aims at nding a trade-o between the minimization of network- anduser-related costs The former is generated by the change of AP-MEC facility associationsin consecutive time slots which produces control overhead due to the necessity of migratingVMs The latter is instead the latency experienced by the user with the current AP-MECfacility association Parameters α and β represent the relative weight of the network-and user-related costs in the objective function Constraints (2) impose that the overalldemand assigned to MEC facility k at time t does not exceed its capacity Constraints (3)impose that each AP is connected to a single MEC facility during a time slot Constraints(4) and (5) link x and y variables in a ow conservation fashion when xtik = 0 that is APi is not assigned to MEC facility k at time t they impose that no switching operation is

6

made when xtik = 1 instead they impose that a single switching operation assigns i to kat time t and reassigns it at time t+ 1 (possibly involving the same MEC facility in whichcase the switching cost is zero)

A sample instance with three APs (squares) two MEC facilities (circles) and two time-slots (left and right parts) is depicted in Figure 2 AP 2 is assigned to MEC facility A att = 1 and MEC facility B at time t = 2 therefore a switching operation from A to B needsto be performed

Model (1) (7) has a few interesting features

Observation 1 The DASP can be seen as a multi-period generalization of the Generalized

Assignment Problem (GAP)

In fact when |T | = 1 the DASP reduces to a GAP

Observation 2 For t gt 1 constraints (3) are redundant

Indeed for t gt 1 they are implied by constraints (4) and (5) andsum

kisinK x1ik = 1 for each

i isin A It is easy to check it by induction over t for each i isin A constraints (5) ensure thatif a k isin K exists such that xtminus1

ik = 1 thensum

lisinK ytikl = 1 then by aggregating constraints(4) we obtain that if

sumkisinK

sumlisinK ytikl = 1 then

sumkisinK xtik = 1 In turn since the x

variables are binarysum

kisinK xtik = 1 implies that a k isin K exists such that xtik = 1 All weneed to additionally enforce is the base case t = 1

Proposition 1 When all xtik variables take integer values the ytikl variables also (auto-

matically) take integer values in any feasible solution The converse is also true

In fact for each i isin A and each t isin T due to constraints (5) if xtik = 0 then yt+1ikl = 0 for

each l isin K If xtik = 1 assume by contradiction that a feasible solution exists containingfractional yt+1

ikl values each fractional yt+1ikl will appear in a dierent constraint of family (4)

that can be feasible only if xt+1ik = 1 for more than a single k isin K violating constraints (3)

yielding infeasibility and thus leading to a contradiction The converse is trivially impliedby both constraints (4) and (5)

That is in the search for optimal solutions by means of algorithms exploiting continuousrelaxations branching on ytikl variables is unnecessary

4 Optimization Algorithms

Unfortunately when the size of the MEC network is large even solving the continuousrelaxation of model (1) (7) turns out to be computationally hard Therefore we devisean ad-hoc exact solution approach based on decomposition

Following the Dantzig-Wolfe reformulation principle [22] let

P i = (xtik ytikl) (3) (4) (5) (6) (7)

represent the convex hull of the feasible region respect to constraints (3) (7) Let Ωi bethe set of corresponding extreme integer points and for each p isin Ωi let xtpik and ytpijk be

the coecients encoding point p Each element of P i can be represented as a linear convexcombination of points in Ωi Therefore we introduce a set of variables zp ge 0 expressingmultipliers in such a combination and we reformulate the continuous relaxation of (1) (7) as the following Master Problem (MP)

7

minsumiisinA

sumpisinΩi

(αsumtisinT

sum(jk)isinKtimesK

dtiljkytpijk + β

sumtisinT

sumkisinK

dtimikxtpik

)zp (8)

st minussumiisinA

sumpisinΩi

dtixtpik z

p ge minusCk forallt isin T forallk isin K (9)

sumpisinΩi

zp = 1 foralli isin A (10)

zp ge 0 (11)

The MP has an exponential number of variables We optimize it by column generationwe replace Ωi by a small representative subset Ωi (see subsection 41) and we solve theRestricted Master Problem (RMP) obtained in this way then for each i isin A we search ifany element of Ωi exists whose corresponding variable has negative reduced cost by solvinga pricing problem (see subsection 42) any such element is added to Ωi and the process isiterated Otherwise we stop the solution obtained by restricting to Ωi is optimal also forthe full problem

Such a solution provides a valid lower bound to the DASP It might indeed be fractionalIn such a case we run rounding heuristics (see subsection 43) to obtain a correspondingupper bound If upper and lower bounds do not match we rst perform probing topotentially x variables (see subsection 44) and then when needed we enter a recursivetree search phase (see subsection 45) Our algorithms can be easily adapted to the split-assignment and periodic-plan variants (see subsection 46)

41 Initialization

In order to populate the initial sets Ωi as well as obtaining an initial primal bound we runa simple greedy heuristic that builds the solution time-slot by time-slot and AP by APThe corresponding pseudo-code is reported as Algorithm 1 In particular for each timeslot APs are sorted by non-increasing demand and each AP is associated to a protableMEC facility following this order The choice for the most protable MEC facility to whichto associate an AP i at time t follows these rules let k be the MEC facility to which theAP i was associated in the previous time slot tminus 1

1 if t gt 1 and the demand of the AP i does not exceed the residual capacity of theMEC facility k assign i to k

2 otherwise nd the nearest MEC facility (in terms of distance mik) to which the APdemand does not exceed the residual capacity if no such a MEC facility exists stopin a FAIL state

This algorithm always terminates in O(|T ||A| log(|A|)|K|) time Unfortunately asfor a xed t the problem is a special instance of GAP even the problem of nding anarbitrary feasible solution is NP-Hard Indeed the algorithm might stop in a FAIL statewithout producing feasible solutions However in our computational experiments thatnever happened

Nevertheless to complete the population of the initial RMP we insert also a singledummy column of very high cost having coecient 0 in each constraint (9) This ensuresRMP feasibility also after branching

8

Algorithm 1 Greedy Binary AP-MEC facility assignment

ka = none foralla isin A MEC facility associated to AP a in previous time-slotfor all t isin T do

As = sortDec(dta|a isin A) sort AP for non-increasing demand at time tck = 0 forallk isin K used capacity of MEC facility kfor all a isin As do

k = ka rst choice is the previous assignmentif k = none or ck + dta le C then

k = nearestAvailable(a dta ck) get nearest MEC facility with enough residualcapacity

end if

xtak = 10

ck = ck + dta update used capacity of chosen MEC facilityif t gt 0 and k 6= ka thenytakak

= 10end if

ka = kend for

end for

42 Pricing algorithms

Let λtk be the (non-negative) dual variables corresponding to constraints (9) and ηi bethe (free) dual variables corresponding to constraints (10)

For each i isin A the problem of nding the element of Ωi corresponding to the variableof minimum reduced cost can be formulated as follows

minπi =minus ηi + αsumtisinT

sum(jk)isinKtimesK

dtiljky

tijk

+

+sumtisinT

sumkisinK

(βdt

imik + dt

iλtk)xtik

(12)

stsumkisinK

xtik

= 1 forallt isin T (13)

xtik

=sumjisinK

ytijk

forallt isin T 1forallk isin K (14)

xtik

=sumjisinK

yt+1ikj

forallt isin T Tforallk isin K (15)

x isin 0 1y isin 0 1 (16)

Proposition 2 The pricing problem (12) - (16) possesses the integrality property

In fact according to Observation 2 constraints (13) can be removed for t gt 1 and con-straints (14) used to replace xt

ikin (15) and then removed The remaining is basically a

network ow matrix which is known to be totally unimodular [22]On one hand Proposition 2 implies that the lower bound obtained by the MP through

column generation is equivalent to that obtained by optimally solving the continuous re-laxation of the original model (1) (7) On the other hand it allows to employ polynomialtime Linear Programming solution algorithms making us to expect the solution processto be fast Indeed we could exploit its structure even further as the elements of Ωi have a

9

Algorithm 2 Pricing Algorithm

for all i isin A do

c1k = a1

ik forallk isin K cost of path starting at MEC facility kp1k = k forallk isin K path starting at node kprime at timefor all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i

πlowast = c|T |klowast minus ηi

if πlowast lt 0minus ε thenadd variable related to minimum cost path pklowast to the model

end if

end for

particular combinatorial interpretation they correspond to all feasible association pathsthat is sequences of MEC facilities to which the AP i is assigned in consecutive time-slotsMore in details we build a directed layered graph G(NA) with a layer for each time-slotas follows Each layer has one node for each MEC facility each pair of nodes in consecutivelayers are connected by an arc Each node (t k) isin T times K modeling the assignment toMEC facility k at time t has an associated traversal cost given by atik = dti(βmik + λtk)while each arc connecting nodes (t j) and (t+ 1 k) has an associated traversal cost givenby btijk = dt+1

i αljk We also add a dummy source σ (resp sink τ) nodes having oneoutgoing arc to each node in layer t = 1 (resp one incoming arc from each node in layert = |T |) of zero cost Figure 3 sketches the structure of G for a certain AP i on a sampleinstance with two MEC facilities (A and B) a potential solution assigns i to A at timet = 1 to B at time t = 2 and so forth

In fact an optimal pricing solution corresponds to a shortest σ minus τ path in G

Proposition 3 For each i isin A the pricing problem can be solved in O(|T ||K|2) time

In fact for solving the pricing problems we devise a simple dynamic programming algo-rithm which is presented as Algorithm 2

t = 1

A

a1iAx1iA

B

t = 2

A

B

a2iBx2iB

t = |T |

A

a|T |iAx|T |iA

B

b2iAB

y2iAB

0 middot y3iBB

b|T |iBA

y|T |iBA

Figure 3 Pricing Problem Structure

10

Algorithm 3 Rounding heuristic

Input variable values x from a RMP fractional solutionOutput x = 0 y = 0 integer solutionfor all t isin T do

rk = Ck forallk isin K residual capacity of MEC facility kA = sort(AmaxkisinK xtik) sort the set of AP by non-increasing value of fractionalassignment to the most desirable MEC facilityfor all i isin A do

consider APs in such an orderif k isin K|dti le rk = empty thenFAIL no MEC facility with enough capacity exit with FAIL status

else

k = arg maxkisinK|dtilerk xtik get highest assignment

xtik = 10 x assignment with MEC facility

rk = rk minus dti update residual capacityend if

end for

end for

y = compute_shift(x) compute y variable values to be consistent with x

43 Rounding Heuristics

In order to nd good primal bounds a simple rounding algorithm (presented in Algorithm3) is executed at every column generation iteration Let z be the (possibly fractional)variable values of the RMP at a certain iteration we can compute the values of thecorresponding x variables as

xtik =sumpisinΩi

xtpik zp

For each time-slot t isin T for each APs i the highest xtik is retrieved For each AP sorted bydescending highest x value the assignment is made with the MEC facility correspondingto the highest x and with enough residual capacity Although no guarantee in feasibilityis given our computational experiments revealed it to be highly eective

44 Variables xing

We also experimented with probing techniques to potentially perform problem reductionduring the column generation process In particular we employed Lagrangean probing tox variables at a pricing level The main idea is to run the Pricing Problem ResolutionAlgorithm twice the rst time as described in 2 that is considering each layer t = 1 |T |in forward order the second time instead considering the layers in backward order that is

initializing c|T |k = 0 and updating each ctk = minklowastisinK ct+1

klowast +dt+1i (αlkklowast +βmiklowast +λt+1klowast)

In this way the cost χtk of the best path in which at time t an assignment is forced to MEC

facility k can be computed by summing the forward and backward labels ctkA valid dual bound LB can be computed at each column generation iteration as

LB = ρminussumiisinA

πi

where ρ is the value of the last RMP solution Let UB be the value of the best primal(integer) solution found so far

For each i isin A let s(t) be the MEC facility at which AP i has been assigned at time tin the optimal pricing solution returned by Algorithm 2 We perform the following xes

11

bull for each t isin T and k isin K if LB + χts(t) minus χ

tk ge UB then if assignment to MEC

facility k was forced no improvement in the primal bound would ever be obtainedTherefore node k can be removed from layer t without losing optimization powerthat means xing variable xtik = 0 in the original model

bull for each t isin T if LB+χts(t)minusminkisinKs(t) χ

tk ge UB then if such an assignment was

forbidden no improvement in the primal bound would ever be obtained Thereforeall nodes k 6= s(t) can be removed from layer t without losing optimization powerthat means xing variable xtis(t) = 1 in the original model

A similar xing procedure is run on arcs of the pricing graph thereby allowing to x ytkprimeprimekprimevariables in the original model

From an implementation point of view we always allowed a relative tolerance of 5eminus4in the xing test to prevent numerical troubles We run the xing procedure at the endof the column generation process of every node of the search tree additionally at the rootnode we run it whenever an improving primal solution is found

45 Branch-and-price

When upper and lower bounds at the end of the column generation process do not matchwe proceed to branching We branch on original variables x rather than on variables ofthe MP Fixing variable xtik to value 0 corresponds to xing to value 0 all variables zp isin Ωi

that assign AP i to MEC facility k at time t Similarly xing variable xtik to value 1corresponds to xing to value 0 all variables zp isin Ωi that do not assign AP i to MECfacility k at time t Neither forbidding nor forcing assignments change the structure of thepricing problem these conditions are easily included within the dynamic programmingalgorithm by simply removing nodes from the pricing graph According to Proposition 1no branching on y variables is needed

We considered the following two branching rules

1 considering all possible assignments of AP i at time t take the pair (iprime tprime) which hasgreatest number of variables xt

primeiprimek with strictly positive value that is that AP whose

assignment at a certain time is split among the greatest number of dierent MECfacilities Sort variables xt

primeiprimek by non-increasing value and partition this ordered set

in two the rst set containing variables in the odd positions of ordered set and thesecond set containing variables in the even positions A left (resp right) branch iscreated xing to zero all the variables in the rst (resp second) set

2 select the variable xtik whose value is closer to 05 ie the variable related to the mostfractional assignment Create two branches xing the selected variable respectivelyto value 0 or to value 1

We always consider branching rule 1 rst triggering rule 2 only when all (i t) pairshave at most two corresponding fractional xtik variables During preliminary experimentsa simple depth-rst exploration policy showed to perform best When rule 2 is used thextik = 1 branch is explored rst

46 Split assignment and periodic plans

We rst observe that global optimal split-assignment plans can be obtained by simplystopping at the root node and considering the (potentially fractional) solution of thecolumn generation master problem

12

Furthermore as discussed in the Introduction the application is periodic in naturethe decision maker creates a plan that is meant to be repeated over time Such a peri-odic variant can be managed by minor modications to our models and algorithms Inparticular model (1) (5) needs to be enriched adding constraints

x1ik =

sumlisinK

y|T |ilk foralli isin A forallk isin K

to the family (4) and constraints

x|T |ik =

sumlisinK

y1ikl foralli isin Aforallk isin K

to the family (5) these link the assignments made in the last and rst time-slots assign-ment hence closing the period of assignments The column generation master problemdoes not change The pricing problem instead requires to be adapted as cycles ratherthan paths need to be generated We therefore modied our pricing routine as presentedin Algorithm 4 Exactly solving the modied pricing problem via dynamic programmingrequires O(|T ||K|3) time for every AP The main idea is to tentatively x the assignmentat time 1 to all the |K| possible MEC facilities to solve each reduced problem and tochoose the best among the |K| solutions found in this way Since it is possible to create alayer |T | + 1 as a copy of the layer t = 1 after xing the assignment the pricing problemreduces to nding a minimum cost shortest path from the single xed node in layer t = 1to the single xed node in layer |T |+ 1

Any other detail of the algorithm remains unchanged

5 Computational evaluation

We implemented our algorithms in C++ using CPLEX 126 [23] to solve the master LPsubproblems running tests on an Intel i7 4GHz workstation equipped with 32 GB of RAM

Our rst investigation is computational benchmarking the eectiveness of our algo-rithms in comparison to the branch-and-cut ILP solver of CPLEX using formulation (1) (7)

51 Dataset

We have access to a dataset of real-world mobile trac demands [24] encompassing twomonths with a time granularity of fteen minutes The geographical area covered by thedataset extends for more than 2500 km2 The demand is not associated to access points ofthe mobile network whose location is unknown but rather to a geographical tessellationof the area in 1419 rectangular cells of dierent sizes with smaller (and more dense) cellsin the center of the area We select the centers of every rectangular cell as elements of theset A of access points locations

Then we create ten clusters of access points using a standard k-means model takingas input the euclidean distances between APs optimizing it with the classical heuristicsof [25] The centers of these clusters are selected to dene the locations of the set K ofMEC facilities The network distances mik and ljk are computed as euclidean distancesaccordingly and rounded to the nearest integer (hence supposing packet processing latencyis negligible)

Given this network infrastructure we generate dierent problem instances by randomlydrawing demands in each AP in dierent ways

In details we create two random datasets

13

Algorithm 4 Periodic Pricing Algorithm

for all i isin A do

πlowast = +infinplowast = emptyfor all k isin K do

c1k

= a1ikx MEC facility k at t = 1

c1k = +infin forallk isin K k forbid MEC facility k at t = 1p1k = k forallk isin K path starting at node k at time t = 1for all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

for all k isin K do

c|T |k = c

|T |k + b1

ikk+ a1

ikend for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i when starting at k

if c|T |klowast minus ηi lt πlowast then

πlowast = c|T |klowast minus ηi

plowast = p|T |klowast

end if

end for

if πlowast lt 0 thenadd variable related to minimum cost path plowast to the model

end if

end for

Dataset A is synthetic and aims at stressing our algorithms from a pure computational pointof view We consider a planning horizon of one day split in 96 consecutive fteen-minute time slots Let d (resp d) be the minimum (resp maximum) demandobserved in any AP and time slot in [24] Demands dti for each AP i at time t aredrawn uniformly at random independently in each fteen-minute time slot in therange [d d] That is demands do not follow particular trends even if falling into thesame range of real data

Dataset B is realistic reproducing the main features of the starting data We choose a singleday at random from the two months included in the dataset [24] we perform a directquery to the demand of each AP at each time slot in that day and then we perturball demands with noise uniformly drawn at random in the interval [minus5+5]

All demand values are rounded to the nearest integer Besides the initial horizon of 96time-slots we consider planning time horizons of 48 24 and 12 time-slots by mergingrespectively 2 3 or 4 subsequent time-slots setting their demands as the average on themerged time-slots Five instances are generated in both datasets A and B

We also consider a dataset of raw real demands

Dataset C is obtained by considering a random week taken from the dataset [24] and mergingthe time-slots in either 168 slots of 1 hour each (1h) 84 slots of 2 hours (2h) 56

14

slots of 3 hours (3h) 42 slots of 4 hours (4h) or 38 slots obtained by the clusteringmethods described in subsection 62 (clust) The demand of each AP in each slot tis taken as the maximum over the the fteen-minute time slots merged in t

For every instance each MEC facility capacity Ck is set to(

maxtisinTsum

iisinA dti|K|

)middot105

and parameters α and β are both set to value 05

52 Column Generation proling

We rst report on the computational behaviour of our Column Generation algorithm (CG)In this test we consider the single-assignment non-periodic variant

In Tables 1a 1b and 1c we include the details of the root node column generationprocess for each instance of datasets A B and C respectively A best known solutionvalue zlowast is taken from a previous run of exact algorithms (see subsection 53) Besidesinstance details (columns `|T | and `inst) we include the relative gap between the primalbound value (resp dual bound value) and zlowast the number of column generation iterationsneeded to reach convergence the overall CPU time spent for solving the pricing problemsand the CPU time required to complete the column generation process As benchmarkwe also report the performances of CPLEX 1263 ILP solver when stopped at the rootnode including the corresponding primal and dual bound gaps and the time required tocomplete its root node computation

We set a time limit of two hours to each computation marking in the tables as `TLthose computations hitting that limit

We rst note that CG has good convergence behaviour less than 90 iterations arealways enough to complete the computation The high number of pricing subproblemsyields to a high number of generated columns but thanks to our dynamic programmingalgorithm the overall pricing time remains low (below 10 seconds in all cases but one)

By rounding in CG we are always able to obtain good integer solutions (that is below1 from best known solutions in all cases but 4) CPLEX is not consistent in a fewinstances (eg block |T | = 48 of the Realistic Dataset B) it is able to nd very goodprimal solutions while in other cases (eg block |T | = 24 of Dataset B or block |T | = 48of Dataset A) only very weak primal bounds can be obtained

We also observe that CG and CPLEX dual bounds are always similar That is on onehand the integrality property of our pricing problem warns that no improvement can beobtained by CG with respect to the continuous relaxation of the original formulation onthe other hand CPLEX generic cuts have no signicant eect on strengthening the samecontinuous relaxation bound

Finally in more than 37 of the instances CPLEX is unable to terminate the rootnode computation within the time limit while CG always completes the computationWhen both CG and CPLEX terminate the CPU time required by CG is up to two ordersof magnitude lower that required by CPLEX

We highlight that the (possibly fractional) solution found by CG is a global optimalsolution for the split-assignment model variants no further computing is needed in thatcase

53 Exactly solving the DASP

In a second round of experiments we let both our Branch-and-Price (BaP) and CPLEX126 ILP solver (CPX) run for two hours also exploring their branching trees In Tables2a 2b 2c we report the results of this experiment on each instance of datasets A B and Crespectively In each Table we report the relative gap between the primal bound PB (respthe dual bound DB) at the end of computation and the best known integer solution valuezlowast and the number of explored branch-and-bound nodes for both our BaP and CPX

15

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0130 1212 19 10808 0 4 0724 1197 8642 0735 1955 14 8715 0 4 244932 1949 4103 0793 1351 13 7074 0 3 0167 1345 3284 0945 0999 14 7515 0 3 2824 0994 3445 1206 1630 13 7892 0 3 3052 1627 356

24

1 0061 1475 26 17027 1 15 0249 1471 28262 1202 1537 19 11429 1 11 274940 1533 19433 0867 2019 19 12296 0 13 267368 2015 18524 0846 1864 19 12525 0 12 123542 1860 18615 0909 1764 18 12077 0 12 267486 1761 1781

48

1 0463 1819 41 27035 6 114 246767 1816 TL2 0221 2468 32 20897 1 90 270039 2465 TL3 0746 2336 33 21468 4 95 269274 2332 TL4 0295 2036 31 20496 0 74 282422 2033 TL5 0265 2514 35 22707 0 106 258676 2510 TL

96

1 0176 2274 68 47500 5 949 259445 - TL2 0055 2633 59 42621 6 913 - - TL3 0034 2779 61 43107 9 863 - - TL4 0187 2528 61 42692 5 850 - - TL5 0124 2568 60 41913 6 815 272834 - TL

(a) Synthetic Dataset A

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0809 0107 12 6542 1 2 0055 0105 1382 0917 0112 11 6150 0 2 0924 0110 1463 1043 0125 12 6611 0 2 0155 0123 1584 0797 0103 11 5843 0 2 349538 0102 1205 0781 0102 11 6548 0 2 349089 0101 113

24

1 0766 0425 15 9713 0 4 305781 0424 5322 0481 0280 16 9715 0 3 306562 0278 5873 0613 0576 15 9492 1 3 304188 0575 6224 0960 0183 17 10345 0 3 306874 0182 6155 0648 0221 16 10217 0 4 307199 0220 413

48

1 1031 0264 27 15539 1 16 0253 0262 21132 0782 0344 25 15636 2 15 0557 0343 22493 0500 0363 26 15286 1 15 0 0362 26744 0741 0314 26 15791 3 18 0049 0312 24455 0829 0296 29 16294 0 15 0651 0295 1878

96

1 0077 0933 51 29786 6 130 - - TL2 0315 0766 43 28272 3 125 - - TL3 0249 0853 46 28221 9 129 - - TL4 0395 0692 49 29320 5 126 - - TL5 0154 0726 48 29005 4 120 - - TL

(b) Realistic Dataset B

CG Root CPLEX Root

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast tclust 0590 0092 21 12928 2 9 0429 0091 4684h 0630 0272 30 20690 2 25 0175 0271 51913h 0513 0471 37 25960 3 58 0766 0470 28142h 0192 0724 50 31706 2 133 - - TL1h 0097 0905 85 56322 18 953 - - TL

(c) Raw Real Demand Dataset C

Table 1 Computational Results - CG Root vs CPLEX Root

16

(a) BaP vs CPLEX (b) BaP Detail

Figure 4 Primal Bound

We report no computing time because surprisingly neither BaP nor CPX could bringthe duality gap below 01 within the time limit except for instance 4 with |T | = 12 ofDataset A 5 with |T | = 12 of Dataset B and clust of Dataset C that CPX is able toclose (but still using more than 90 of the available CPU time)

In terms of nal dual bounds the results of both methods are very similar Our expla-nation for this phenomenon is the following the root dual bound is already very close tothe integer optimum value and therefore the real challenge is to nd an optimal primalsolution At the same time the high number of time-slots yields values of primal solutionson the order of magnitude of 108 as soon as the duality gap becomes small numericalapproximation issues prevent to coherently explore the remaining search tree

In terms of searching for good primal solutions in the inner nodes of the branching treeinstead BaP and CPX are not equivalent in Figure 4a we plot the typical primal boundvalue (y axis) improvements as the computation (x axis) proceeds (instance 1 |T | = 24dataset B) for the sake of comparison the x axis report relative values with respect tothe overall number of branch-and-bound nodes for CPX and the overall number of columngeneration iterations for BaP Eventually CPX is more numerically stable oering aftertwo hours of computation primal solutions values a few tenths of percentage points better(up to 05 of improvement) In turn BaP allows to nd near-optimal integer solutionsmuch more quickly that is in fact already at the root node The behaviour of BaP in theearly steps of computation is further detailed in Figure 4b the quality of the primal boundsteeply increase during the column generation iterations at the root node

As a synthetic nal assessment of our computational evaluation we can report thatwhen the number of time-slots is small and the planner has no particular need for quickoptimization algorithms both BaP and CPLEX might be viable alternatives to optimizethe DASP

BaP is faster especially when used heuristically stopping the computation either atthe root node or after exploring a few nodes of the branch-and-bound tree This makes itwell suited also when quick optimization is needed like in what-if-analyses

When the number of time-slots increases however using CPLEX is not an optionanymore

We repeated all the experiments with a periodic-plan model without nding substantialchanges in the computational behaviour of the methods Indeed the periodic-plan modelhas main impact only in the structure of the pricing problem of BaP but pricing involvesonly a small amount of the overall computational eort

17

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0 1208 17661 0411 1197 2032 0 1951 17038 0777 1949 3713 0198 1347 18572 0 1345 4524 0370 0997 19198 0 0993 5485 0020 1626 18013 0 1626 699

24

1 0 1473 8576 0249 1471 142 0 1535 8657 0855 1533 243 0 2018 9349 267368 2015 464 0 1863 9353 123542 1860 385 0 1763 10204 267486 1761 40

48

1 0 1818 2123 246767 1816 02 0 2468 2724 270039 2465 03 0 2335 2558 269274 2332 04 0 2036 3133 282422 2033 05 0 2514 2528 258676 2510 0

96

1 0 2274 113 259445 - TL2 0 2633 217 - - TL3 0 2779 168 - - TL4 0 2528 135 - - TL5 0 2568 207 272834 - TL

(a) Synthetic Dataset A

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0160 0105 35112 0 0103 23982 0235 0111 30708 0 0109 25793 0320 0124 26374 0 0122 18184 0406 0102 26490 0 0100 19325 0267 0100 24714 0 0098 1844

24

1 0133 0424 17961 0 0423 1442 0274 0279 18354 0 0278 1093 0 0576 20016 0717 0574 2254 0353 0183 17481 0 0182 2325 0284 0220 20446 0 0220 522

48

1 0312 0263 10738 0 0262 202 0249 0343 10465 0 0343 183 0113 0363 10482 0 0360 174 0227 0313 10321 0 0311 165 0226 0295 10818 0 0295 21

96

1 0 0932 3133 - - TL2 0 0765 3193 - - TL3 0 0852 3398 - - TL4 0 0691 3099 - - TL5 0 0726 3299 - - TL

(b) Realistic Dataset B

B-amp-P CPLEX

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

clust 0376 0091 13849 0 0091 8124h 0442 0272 8985 0 0270 303h 0403 0471 5086 0 0470 332h 0 0724 2864 - - TL1h 0 0905 370 - - TL

(c) Raw Real Demand Dataset C

Table 2 Computational Results - BaP vs CPLEX

18

6 Practical case study

Our nal aim is to assess the eectiveness of our optimization core in the context of thedata-driven MEC management optimization framework To this end we rely on the com-plete real-world dataset in [24] and run actual analytics on it so as to generate the demandproles We then feed our optimization models with such proles which ultimately letsus measure the quality of the assignment plans it returns in a practical case

61 Experimental setup

The real-world mobile trac data covers a planning period of eight weeks split in a set Tof fteen-minute snapshots The rst approach we take in order to infer demand prolesexploits a well-known property of mobile trac ie its weekly periodicity [26] Namely asingle week is taken as training data and the mobile trac recorded in each fteen-minutetime-slot is considered as a prole The tasks performed by the data mining and validationmodules are kept as simple as possible in order to highlight the eect of the optimizationcore

Training Conceptually the resulting 4 times 24 times 7 = 672 training proles are then usedas input for our optimization algorithms By optimizing over the training data we obtaina planning solution which becomes our assignment plan we apply such a plan to theremaining seven weeks of test data As an example optimizing over training data yields asolution including a specic assignment of APs to MEC facilities on Monday between 700am and 715 am we then blindly apply the same assignments on the 700-715 am timeslots of each Monday in the test data presuming that the demand conguration is similaron all Mondays at the same time In a sense this is a worst-case situation in which thedecision maker simply observes the system for one week before deciding on the planningfor the remaining weeks

Practically we do not directly use the 672 fteen-minutes time-slots for training Weassume instead that the preprocessing and data-mining module produces suitable ag-gregations We experimented therefore with simple aggregation of the proles mergingtime-slots sequentially over 1 2 3 or 4 hours Each aggregation step was performed byconsidering in each AP and in each aggregated time-slot the maximum demand value ofthat AP over the corresponding base time-slots The optimized solution was then dis-aggregated in post-processing simply replicating the same plan over the fteen-minutestime-slots composing each aggregated time-slot By choosing the maximum demand valuesduring aggregation we ensure that our optimized solutions remain feasible after disaggre-gation

It is apparent that less aggregated proles entail a higher potential for optimizationin the baseline scenario the assignment of APs to MEC facilities can be changed every15 minutes possibly assigning to the same MEC facility APs that experience very highpeaks of demand in subsequent time slots They are however more prone to overttingas peaks in particular hours of the training week do not necessarily correspond to peaksin the corresponding hour of testing weeks In addition they are more clearly expensivefrom a computational standpoint

More aggregated instances instead are more conservative two APs with very highdemand peaks in the same four-hours time slot cannot be assigned to the same MECfacility thus possibly preventing capacity violations in the test weeks if those peaks slightlymove in time They are also less demanding in terms of computational costs Howeveraggregation forces the a same conguration for longer timeframes making the optimizationpossibly oblivious of fast dynamics in the demand

19

Figure 5 Time-Clustering resulting from [21]

In order to further balance the aggressive optimization process during the trainingphase of low aggregation instances we found empirically useful to set the Ck capacityvalues to

(maxtisinT

sumiisinA d

ti|K|

)middot 105 in each test That is one-hour time-slot instances

are optimized with lower capacity values

Test To ensure fairness in the comparison during the test phase only disaggregatedsolutions are considered That is independently on the aggregation used for training onlysolutions dened over the original fteen-minutes time-slots are compared Similarly thereference MEC capacity value was xed to

(maxtisinT

sumiisinA d

ti|K|

)middot110 in any comparison

Clearly neither the cost nor the capacity usage are guaranteed to remain the samewhen the planning obtained with training data is applied to test data as uctuations inthe demand may occur across weeks The quality of our solutions is therefore evaluatedaccording to two measures (i) the assignment and switching cost of the planning and (ii)

the amount of violations in capacity constraints both measured on test data The latteris computed as follows

maxtisinT

sumkisinK

maxsum

iisinA dtix

tik minus Ck 0

Ck

that is the overall amount of violation in capacity constraints as a relative value respectto the available capacity in the worst time-slot

These measures are computed for each plan by the validation module through simplesimulation on the seven weeks of test data

Advanced Clustering Benchmark An alternative to employing our ad-hoc techniqueon the optimization module would be to perform a more aggressive aggregation over timeproducing instances that are small enough to be optimized by CPLEX We experimentedon such an option adapting the temporal clustering solution presented in [21] to our needsSpecically we take the following steps (i) we generate a median week of mobile tracdemand by computing the median load recorded at each AP during every hour of the weekusing it as training data (ii) we perform two separate hierarchical clusterings respectivelyusing the total volume and normalized distance metrics introduced in [21] (iii) we ndthe intersection of the two cluster sets obtained at the previous point

Figure 5 shows the resulting clustering of one-hour time slots ve typical demandproles are identied which can be associated to working hours (denoted by 0 in thegure) relax hours in the late afternoons and weekends (1) morning commuting hours(2) night hours (3) and late evening hours (4) Very few time-slots are actually producedthis way allowing CPLEX to optimize the corresponding instances Consecutive time-slots

20

InstWeek

train 1 2 3 4 5 6 7

Bench-CPLEX 959 703 571 425 257 388 1468 951Bench-CG 959 676 548 408 245 410 1434 927

4h 209 154 172 066 000 254 1163 2923h 194 142 148 110 125 158 1107 2982h 220 258 199 119 226 282 1122 4151h 284 238 417 114 192 404 1065 547

Table 3 Time-Slot Peak Exceeded Capacity Over Available Capacity

belonging to the same cluster are then aggregated The aggregated instance is optimizedand the solution obtained in this way is then disaggregated in fteen-minute time-slotsplans as in the previous case during post-processing before being compared on test data

62 Experimental evaluation

Following the computational results of Section 5 our core optimization module alwaysemploys our Branch-and-Price as a heuristic (HBP) stopping its computation at the rootnode except for the aggregated instances produced by time-clustering Having |T | = 38these are manageable eciently even by general purpose solvers CPLEX 1263 ILP solverwas then used to solve them to proven optimality The scatter plot in Figure 6 summarizesour results Each point represents the outcome on a single week of test data Dierentshapes refer to dierent demand prole aggregation methods obtained by merging 1 2 3 or4 consecutive one-hour time slots as well as using the Advanced Clustering and CPLEX(Bench-CPLEX) The y axis coordinate of each point represents the capacity violationmeasure as introduced above the x axis coordinate of each point represents the solutioncost measure expressed as percentage value of that of the optimal solution employing theAdvanced Clustering Benchmark method Therefore negative (resp positive) percentagesmap to a performance improvement (resp reduction) with respect to the benchmarkAs a reference we report also the results obtained by using HBP instead of CPLEX foroptimizing the Advanced Clustering Benchmark instances (Bench-CG) The details aboutcapacity violation measures are reported also in Table 3 for each week in the training set(columns) and for each demand prole aggregation method (rows)

A rst remarkable result is that in all cases our HBP with sequential clustering allows forsolutions with less capacity violations In particular HBP with either four-hours or three-hours aggregation oer almost no capacity violations coming at the price of three to vepercent increase in solutions cost HBP with two-hours aggregation always outperforms thebenchmark method both in terms of exceeded capacity and in terms of solution costs HBPwith one-hour aggregation further decrease costs at the price of slightly higher capacityviolation

We also experimented on using the full BaP instead of the truncated HBP Our resultsare reported in Figure 7 no signicant change was observed Similarly no signicantchange was observed by using HBP instead of CPLEX on the benchmark clustering

63 Eect of periodic planning

Finally we measure the impact in solution switching costs yielded by choosing a periodmodel instead of a non-periodic one In Table 4 we report for each aggregation listedin the previous subsection the change in switching costs between inner time-slots of theweek (intra-week) between border time-slots of dierent weeks (inter-week) as well as thetotal switching cost the total assignment cost and the overall cost of the solution Using a

21

Figure 6 1-Week Plan - Time Aggreg Comparison

(a) Total Costs (b) Exceeded Capacity

Figure 7 Mean Costs And Exceeded Capacity - CG Root vs BaP

22

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 4: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

Figure 1 A data-driven MEC management optimization framework

from a computational point of view (Section 5) We then demonstrate the eectivenessof our optimization tools in practical scenarios using real-world trac demands collectedby a major mobile network operator in Milan Italy (Section 6) We nally draw someconclusions (Section 7)

2 A data-driven MEC management optimization framework

We propose a high-level data-driven MEC management optimization framework whosealgorithmic core architecture is sketched in Figure 1 The framework receives as inputa representation of the (time-varying) data trac demand recorded at each AP of theMEC network The framework output are (multiple) assignment patterns of APs to MECfacilities meant to be enforced by the orchestrator on the MEC network over time throughswitching operations

The input data is collected as historical records of the mobile trac demands in theMEC network Part of the data is reserved for testing by the Validation Tool module Partinstead is used for training ie it is fed to the Preprocessing and Data Mining modulewhich lters by meta-data and produces a suitable time (and possibly space) discretizationand a corresponding data aggregation The aggregated proles are sent to the OptimizationCore module which leverages them to compute candidate assignments The Orchestratormodule in turn receives the candidate assignments and queries the Validation Tool modulefor an evaluation on test data so as to determine their quality Based on the result theOrchestrator module nally chooses a suitable assignment and implements it in the MECnetwork

Preprocessing and Data Mining We assume that switching can occur only at cer-tain points in time (eg once every fteen minutes) due to practical limitations of theMEC technology this introduces an implicit time discretization of the system In orderto identify suitable discrete-time proles of the trac demand dierent strategies canbe employed in the Preprocessing and Data Mining module The simplest option is toaggregate the demand observed at each AP during every time step in the training dataThis returns one prole for each time step since switching between assignments cannotoccur at shorter timescales than the time step this is the highest resolution useful to theOptimization Core and the one deemed to return the highest-quality result However it

4

also creates a very large number of proles (eg in the order of thousands for hour-longtime steps over months of historical data) that may be computationally too expensive tomanage

Another option to identify suitable discrete-time proles of the trac demand is touse temporal clustering analytics on the historical data so as to group together time slotsthat feature very similar distributions of the mobile trac demand across the APs Inthis case the module returns a limited number of proles each of which corresponds tothe typical demand observed in a large set of time slots It is then possible to reduce thecomputational cost at the Optimization Core by feeding it with a small number of prolesHowever this comes at the expense of assignment quality since typical proles can onlyapproximate the actual MEC network load at a specic time step We provide an exampleof temporal clustering analytics which builds on the methodology of [21] in Section 61

Optimization Core Once the trac demand proles are dened the Optimization Corebuilds eective dynamic assignment plans on top of those Plans include for each timeslot the set of APs to be connected to which MEC facility and as a by-product the set ofswitching operations to be performed between subsequent time slots We consider dierentoperational options

bull single versus split assignment in the single assignment variant an AP is associatedto exactly one MEC facility in each point in time while in the split assignment

variant the AP demand can be served simultaneously by dierent facilities That isin the rst case we suppose that whenever connecting to a certain AP each user isrouted to the same facility while in the latter case an AP can route the trac ofeach user independently to dierent facilities

bull linear versus periodic assignment in the periodic variant we explicitly take intoaccount the potential switching cost between the last and the rst point in time ofour plan since it is meant to be repeated over a longer planning horizon This is notthe case in the linear model which assumes no system periodicity

Validation Tool Once a set of candidate plans is produced by the Optimization Corea Validation Tool is used to check their quality on test data In our case test data consistof a few weeks of raw trac demand data the Validation Tool evaluates the plan bysimulating its application in those weeks and computing quality measures

Orchestrator The MEC orchestrator is the functional element in charge of actuallysending VM orchestration instructions to MEC hosts monitoring the MEC system statusand the MEC network link states as well Legacy cloud orchestrator systems typically takeorchestration decisions based on simple best-t policies as data-center network resourcesare often over-dimensioned and a large set of clusters is made available the placement andassignment decision logic is therefore typically not bound to computing facility locationSuch orchestration algorithms however cannot be readily applied to a MEC context essen-tially because of the geographical nature of MEC networks and the capacity limitation ofMEC facilities This is typically done at the orchestrator subsystem level by adding anabstraction layer with a dedicated descriptive language to map computing resources tophysical location of servers

3 Optimization models

A key component of the data-driven MEC management optimization framework is theoptimization core Its task is to nd suitable assignments of APs to MEC facilities over

5

t = 1

A B

1 2 3

t = 2

A B

1 2 3

x12A x2

2B

y22AB

Figure 2 x and y variables

time together with corresponding user VMs migration patterns For the sake of readabilitywe focus on the single-assignment linear-plan variant a discussion on how to adapt ourmodels and methods to the other variants is provided in Section 46

Let us denote as A the set of APs and as K the set of MEC facilities We assumethe planning horizon to be discretized in a set T of time slots For each AP i isin A let usindicate as dti the mobile trac demand that has to be accommodated by AP i at timet isin T and as mik the physical distance between AP i and MEC facility k isin K Let Ck

be the capacity of MEC facility k isin K and lkprimekprimeprime be the network distance between MECfacilities kprime kprimeprime isin K We assume lkk = 0 for each k isin K where with network distance wemean a distance that can is directly proportional to the network latency (including packetprocessing latency at intermediate nodes) and the physical distance

Let xtik be binary variables taking value 1 if trac from AP i isin A at time t isin T is

routed to MEC facility k isin K 0 otherwise Let ytikprimekprimeprime be binary variables taking value1 if AP i isin A is associated to MEC facility kprime isin K at time t minus 1 and switches to MECfacility kprimeprime isin K at time t

Our Dynamic Assignment and Switching Problem (DASP) can be formulated as follows

min αsumtisinT

sumiisinA

sum(jk)isinKtimesK

dtiljkytijk + β

sumtisinT

sumiisinA

sumkisinK

dtimikxtik (1)

stsumiisinA

dtixtik le Ck forallt isin T forallk isin K (2)sum

kisinKxtik = 1 foralli isin Aforallt isin T (3)

xtik =sumlisinK

ytilk foralli isin Aforallt isin T 1 forallk isin K (4)

xtik =sumlisinK

yt+1ikl foralli isin Aforallt isin T T forallk isin K (5)

xtik isin 0 1 foralli isin A forallk isin Kforallt isin T (6)

ytikprimekprimeprime isin 0 1 foralli isin Aforallkprime kprimeprime isin Kforallt isin T (7)

the objective (1) aims at nding a trade-o between the minimization of network- anduser-related costs The former is generated by the change of AP-MEC facility associationsin consecutive time slots which produces control overhead due to the necessity of migratingVMs The latter is instead the latency experienced by the user with the current AP-MECfacility association Parameters α and β represent the relative weight of the network-and user-related costs in the objective function Constraints (2) impose that the overalldemand assigned to MEC facility k at time t does not exceed its capacity Constraints (3)impose that each AP is connected to a single MEC facility during a time slot Constraints(4) and (5) link x and y variables in a ow conservation fashion when xtik = 0 that is APi is not assigned to MEC facility k at time t they impose that no switching operation is

6

made when xtik = 1 instead they impose that a single switching operation assigns i to kat time t and reassigns it at time t+ 1 (possibly involving the same MEC facility in whichcase the switching cost is zero)

A sample instance with three APs (squares) two MEC facilities (circles) and two time-slots (left and right parts) is depicted in Figure 2 AP 2 is assigned to MEC facility A att = 1 and MEC facility B at time t = 2 therefore a switching operation from A to B needsto be performed

Model (1) (7) has a few interesting features

Observation 1 The DASP can be seen as a multi-period generalization of the Generalized

Assignment Problem (GAP)

In fact when |T | = 1 the DASP reduces to a GAP

Observation 2 For t gt 1 constraints (3) are redundant

Indeed for t gt 1 they are implied by constraints (4) and (5) andsum

kisinK x1ik = 1 for each

i isin A It is easy to check it by induction over t for each i isin A constraints (5) ensure thatif a k isin K exists such that xtminus1

ik = 1 thensum

lisinK ytikl = 1 then by aggregating constraints(4) we obtain that if

sumkisinK

sumlisinK ytikl = 1 then

sumkisinK xtik = 1 In turn since the x

variables are binarysum

kisinK xtik = 1 implies that a k isin K exists such that xtik = 1 All weneed to additionally enforce is the base case t = 1

Proposition 1 When all xtik variables take integer values the ytikl variables also (auto-

matically) take integer values in any feasible solution The converse is also true

In fact for each i isin A and each t isin T due to constraints (5) if xtik = 0 then yt+1ikl = 0 for

each l isin K If xtik = 1 assume by contradiction that a feasible solution exists containingfractional yt+1

ikl values each fractional yt+1ikl will appear in a dierent constraint of family (4)

that can be feasible only if xt+1ik = 1 for more than a single k isin K violating constraints (3)

yielding infeasibility and thus leading to a contradiction The converse is trivially impliedby both constraints (4) and (5)

That is in the search for optimal solutions by means of algorithms exploiting continuousrelaxations branching on ytikl variables is unnecessary

4 Optimization Algorithms

Unfortunately when the size of the MEC network is large even solving the continuousrelaxation of model (1) (7) turns out to be computationally hard Therefore we devisean ad-hoc exact solution approach based on decomposition

Following the Dantzig-Wolfe reformulation principle [22] let

P i = (xtik ytikl) (3) (4) (5) (6) (7)

represent the convex hull of the feasible region respect to constraints (3) (7) Let Ωi bethe set of corresponding extreme integer points and for each p isin Ωi let xtpik and ytpijk be

the coecients encoding point p Each element of P i can be represented as a linear convexcombination of points in Ωi Therefore we introduce a set of variables zp ge 0 expressingmultipliers in such a combination and we reformulate the continuous relaxation of (1) (7) as the following Master Problem (MP)

7

minsumiisinA

sumpisinΩi

(αsumtisinT

sum(jk)isinKtimesK

dtiljkytpijk + β

sumtisinT

sumkisinK

dtimikxtpik

)zp (8)

st minussumiisinA

sumpisinΩi

dtixtpik z

p ge minusCk forallt isin T forallk isin K (9)

sumpisinΩi

zp = 1 foralli isin A (10)

zp ge 0 (11)

The MP has an exponential number of variables We optimize it by column generationwe replace Ωi by a small representative subset Ωi (see subsection 41) and we solve theRestricted Master Problem (RMP) obtained in this way then for each i isin A we search ifany element of Ωi exists whose corresponding variable has negative reduced cost by solvinga pricing problem (see subsection 42) any such element is added to Ωi and the process isiterated Otherwise we stop the solution obtained by restricting to Ωi is optimal also forthe full problem

Such a solution provides a valid lower bound to the DASP It might indeed be fractionalIn such a case we run rounding heuristics (see subsection 43) to obtain a correspondingupper bound If upper and lower bounds do not match we rst perform probing topotentially x variables (see subsection 44) and then when needed we enter a recursivetree search phase (see subsection 45) Our algorithms can be easily adapted to the split-assignment and periodic-plan variants (see subsection 46)

41 Initialization

In order to populate the initial sets Ωi as well as obtaining an initial primal bound we runa simple greedy heuristic that builds the solution time-slot by time-slot and AP by APThe corresponding pseudo-code is reported as Algorithm 1 In particular for each timeslot APs are sorted by non-increasing demand and each AP is associated to a protableMEC facility following this order The choice for the most protable MEC facility to whichto associate an AP i at time t follows these rules let k be the MEC facility to which theAP i was associated in the previous time slot tminus 1

1 if t gt 1 and the demand of the AP i does not exceed the residual capacity of theMEC facility k assign i to k

2 otherwise nd the nearest MEC facility (in terms of distance mik) to which the APdemand does not exceed the residual capacity if no such a MEC facility exists stopin a FAIL state

This algorithm always terminates in O(|T ||A| log(|A|)|K|) time Unfortunately asfor a xed t the problem is a special instance of GAP even the problem of nding anarbitrary feasible solution is NP-Hard Indeed the algorithm might stop in a FAIL statewithout producing feasible solutions However in our computational experiments thatnever happened

Nevertheless to complete the population of the initial RMP we insert also a singledummy column of very high cost having coecient 0 in each constraint (9) This ensuresRMP feasibility also after branching

8

Algorithm 1 Greedy Binary AP-MEC facility assignment

ka = none foralla isin A MEC facility associated to AP a in previous time-slotfor all t isin T do

As = sortDec(dta|a isin A) sort AP for non-increasing demand at time tck = 0 forallk isin K used capacity of MEC facility kfor all a isin As do

k = ka rst choice is the previous assignmentif k = none or ck + dta le C then

k = nearestAvailable(a dta ck) get nearest MEC facility with enough residualcapacity

end if

xtak = 10

ck = ck + dta update used capacity of chosen MEC facilityif t gt 0 and k 6= ka thenytakak

= 10end if

ka = kend for

end for

42 Pricing algorithms

Let λtk be the (non-negative) dual variables corresponding to constraints (9) and ηi bethe (free) dual variables corresponding to constraints (10)

For each i isin A the problem of nding the element of Ωi corresponding to the variableof minimum reduced cost can be formulated as follows

minπi =minus ηi + αsumtisinT

sum(jk)isinKtimesK

dtiljky

tijk

+

+sumtisinT

sumkisinK

(βdt

imik + dt

iλtk)xtik

(12)

stsumkisinK

xtik

= 1 forallt isin T (13)

xtik

=sumjisinK

ytijk

forallt isin T 1forallk isin K (14)

xtik

=sumjisinK

yt+1ikj

forallt isin T Tforallk isin K (15)

x isin 0 1y isin 0 1 (16)

Proposition 2 The pricing problem (12) - (16) possesses the integrality property

In fact according to Observation 2 constraints (13) can be removed for t gt 1 and con-straints (14) used to replace xt

ikin (15) and then removed The remaining is basically a

network ow matrix which is known to be totally unimodular [22]On one hand Proposition 2 implies that the lower bound obtained by the MP through

column generation is equivalent to that obtained by optimally solving the continuous re-laxation of the original model (1) (7) On the other hand it allows to employ polynomialtime Linear Programming solution algorithms making us to expect the solution processto be fast Indeed we could exploit its structure even further as the elements of Ωi have a

9

Algorithm 2 Pricing Algorithm

for all i isin A do

c1k = a1

ik forallk isin K cost of path starting at MEC facility kp1k = k forallk isin K path starting at node kprime at timefor all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i

πlowast = c|T |klowast minus ηi

if πlowast lt 0minus ε thenadd variable related to minimum cost path pklowast to the model

end if

end for

particular combinatorial interpretation they correspond to all feasible association pathsthat is sequences of MEC facilities to which the AP i is assigned in consecutive time-slotsMore in details we build a directed layered graph G(NA) with a layer for each time-slotas follows Each layer has one node for each MEC facility each pair of nodes in consecutivelayers are connected by an arc Each node (t k) isin T times K modeling the assignment toMEC facility k at time t has an associated traversal cost given by atik = dti(βmik + λtk)while each arc connecting nodes (t j) and (t+ 1 k) has an associated traversal cost givenby btijk = dt+1

i αljk We also add a dummy source σ (resp sink τ) nodes having oneoutgoing arc to each node in layer t = 1 (resp one incoming arc from each node in layert = |T |) of zero cost Figure 3 sketches the structure of G for a certain AP i on a sampleinstance with two MEC facilities (A and B) a potential solution assigns i to A at timet = 1 to B at time t = 2 and so forth

In fact an optimal pricing solution corresponds to a shortest σ minus τ path in G

Proposition 3 For each i isin A the pricing problem can be solved in O(|T ||K|2) time

In fact for solving the pricing problems we devise a simple dynamic programming algo-rithm which is presented as Algorithm 2

t = 1

A

a1iAx1iA

B

t = 2

A

B

a2iBx2iB

t = |T |

A

a|T |iAx|T |iA

B

b2iAB

y2iAB

0 middot y3iBB

b|T |iBA

y|T |iBA

Figure 3 Pricing Problem Structure

10

Algorithm 3 Rounding heuristic

Input variable values x from a RMP fractional solutionOutput x = 0 y = 0 integer solutionfor all t isin T do

rk = Ck forallk isin K residual capacity of MEC facility kA = sort(AmaxkisinK xtik) sort the set of AP by non-increasing value of fractionalassignment to the most desirable MEC facilityfor all i isin A do

consider APs in such an orderif k isin K|dti le rk = empty thenFAIL no MEC facility with enough capacity exit with FAIL status

else

k = arg maxkisinK|dtilerk xtik get highest assignment

xtik = 10 x assignment with MEC facility

rk = rk minus dti update residual capacityend if

end for

end for

y = compute_shift(x) compute y variable values to be consistent with x

43 Rounding Heuristics

In order to nd good primal bounds a simple rounding algorithm (presented in Algorithm3) is executed at every column generation iteration Let z be the (possibly fractional)variable values of the RMP at a certain iteration we can compute the values of thecorresponding x variables as

xtik =sumpisinΩi

xtpik zp

For each time-slot t isin T for each APs i the highest xtik is retrieved For each AP sorted bydescending highest x value the assignment is made with the MEC facility correspondingto the highest x and with enough residual capacity Although no guarantee in feasibilityis given our computational experiments revealed it to be highly eective

44 Variables xing

We also experimented with probing techniques to potentially perform problem reductionduring the column generation process In particular we employed Lagrangean probing tox variables at a pricing level The main idea is to run the Pricing Problem ResolutionAlgorithm twice the rst time as described in 2 that is considering each layer t = 1 |T |in forward order the second time instead considering the layers in backward order that is

initializing c|T |k = 0 and updating each ctk = minklowastisinK ct+1

klowast +dt+1i (αlkklowast +βmiklowast +λt+1klowast)

In this way the cost χtk of the best path in which at time t an assignment is forced to MEC

facility k can be computed by summing the forward and backward labels ctkA valid dual bound LB can be computed at each column generation iteration as

LB = ρminussumiisinA

πi

where ρ is the value of the last RMP solution Let UB be the value of the best primal(integer) solution found so far

For each i isin A let s(t) be the MEC facility at which AP i has been assigned at time tin the optimal pricing solution returned by Algorithm 2 We perform the following xes

11

bull for each t isin T and k isin K if LB + χts(t) minus χ

tk ge UB then if assignment to MEC

facility k was forced no improvement in the primal bound would ever be obtainedTherefore node k can be removed from layer t without losing optimization powerthat means xing variable xtik = 0 in the original model

bull for each t isin T if LB+χts(t)minusminkisinKs(t) χ

tk ge UB then if such an assignment was

forbidden no improvement in the primal bound would ever be obtained Thereforeall nodes k 6= s(t) can be removed from layer t without losing optimization powerthat means xing variable xtis(t) = 1 in the original model

A similar xing procedure is run on arcs of the pricing graph thereby allowing to x ytkprimeprimekprimevariables in the original model

From an implementation point of view we always allowed a relative tolerance of 5eminus4in the xing test to prevent numerical troubles We run the xing procedure at the endof the column generation process of every node of the search tree additionally at the rootnode we run it whenever an improving primal solution is found

45 Branch-and-price

When upper and lower bounds at the end of the column generation process do not matchwe proceed to branching We branch on original variables x rather than on variables ofthe MP Fixing variable xtik to value 0 corresponds to xing to value 0 all variables zp isin Ωi

that assign AP i to MEC facility k at time t Similarly xing variable xtik to value 1corresponds to xing to value 0 all variables zp isin Ωi that do not assign AP i to MECfacility k at time t Neither forbidding nor forcing assignments change the structure of thepricing problem these conditions are easily included within the dynamic programmingalgorithm by simply removing nodes from the pricing graph According to Proposition 1no branching on y variables is needed

We considered the following two branching rules

1 considering all possible assignments of AP i at time t take the pair (iprime tprime) which hasgreatest number of variables xt

primeiprimek with strictly positive value that is that AP whose

assignment at a certain time is split among the greatest number of dierent MECfacilities Sort variables xt

primeiprimek by non-increasing value and partition this ordered set

in two the rst set containing variables in the odd positions of ordered set and thesecond set containing variables in the even positions A left (resp right) branch iscreated xing to zero all the variables in the rst (resp second) set

2 select the variable xtik whose value is closer to 05 ie the variable related to the mostfractional assignment Create two branches xing the selected variable respectivelyto value 0 or to value 1

We always consider branching rule 1 rst triggering rule 2 only when all (i t) pairshave at most two corresponding fractional xtik variables During preliminary experimentsa simple depth-rst exploration policy showed to perform best When rule 2 is used thextik = 1 branch is explored rst

46 Split assignment and periodic plans

We rst observe that global optimal split-assignment plans can be obtained by simplystopping at the root node and considering the (potentially fractional) solution of thecolumn generation master problem

12

Furthermore as discussed in the Introduction the application is periodic in naturethe decision maker creates a plan that is meant to be repeated over time Such a peri-odic variant can be managed by minor modications to our models and algorithms Inparticular model (1) (5) needs to be enriched adding constraints

x1ik =

sumlisinK

y|T |ilk foralli isin A forallk isin K

to the family (4) and constraints

x|T |ik =

sumlisinK

y1ikl foralli isin Aforallk isin K

to the family (5) these link the assignments made in the last and rst time-slots assign-ment hence closing the period of assignments The column generation master problemdoes not change The pricing problem instead requires to be adapted as cycles ratherthan paths need to be generated We therefore modied our pricing routine as presentedin Algorithm 4 Exactly solving the modied pricing problem via dynamic programmingrequires O(|T ||K|3) time for every AP The main idea is to tentatively x the assignmentat time 1 to all the |K| possible MEC facilities to solve each reduced problem and tochoose the best among the |K| solutions found in this way Since it is possible to create alayer |T | + 1 as a copy of the layer t = 1 after xing the assignment the pricing problemreduces to nding a minimum cost shortest path from the single xed node in layer t = 1to the single xed node in layer |T |+ 1

Any other detail of the algorithm remains unchanged

5 Computational evaluation

We implemented our algorithms in C++ using CPLEX 126 [23] to solve the master LPsubproblems running tests on an Intel i7 4GHz workstation equipped with 32 GB of RAM

Our rst investigation is computational benchmarking the eectiveness of our algo-rithms in comparison to the branch-and-cut ILP solver of CPLEX using formulation (1) (7)

51 Dataset

We have access to a dataset of real-world mobile trac demands [24] encompassing twomonths with a time granularity of fteen minutes The geographical area covered by thedataset extends for more than 2500 km2 The demand is not associated to access points ofthe mobile network whose location is unknown but rather to a geographical tessellationof the area in 1419 rectangular cells of dierent sizes with smaller (and more dense) cellsin the center of the area We select the centers of every rectangular cell as elements of theset A of access points locations

Then we create ten clusters of access points using a standard k-means model takingas input the euclidean distances between APs optimizing it with the classical heuristicsof [25] The centers of these clusters are selected to dene the locations of the set K ofMEC facilities The network distances mik and ljk are computed as euclidean distancesaccordingly and rounded to the nearest integer (hence supposing packet processing latencyis negligible)

Given this network infrastructure we generate dierent problem instances by randomlydrawing demands in each AP in dierent ways

In details we create two random datasets

13

Algorithm 4 Periodic Pricing Algorithm

for all i isin A do

πlowast = +infinplowast = emptyfor all k isin K do

c1k

= a1ikx MEC facility k at t = 1

c1k = +infin forallk isin K k forbid MEC facility k at t = 1p1k = k forallk isin K path starting at node k at time t = 1for all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

for all k isin K do

c|T |k = c

|T |k + b1

ikk+ a1

ikend for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i when starting at k

if c|T |klowast minus ηi lt πlowast then

πlowast = c|T |klowast minus ηi

plowast = p|T |klowast

end if

end for

if πlowast lt 0 thenadd variable related to minimum cost path plowast to the model

end if

end for

Dataset A is synthetic and aims at stressing our algorithms from a pure computational pointof view We consider a planning horizon of one day split in 96 consecutive fteen-minute time slots Let d (resp d) be the minimum (resp maximum) demandobserved in any AP and time slot in [24] Demands dti for each AP i at time t aredrawn uniformly at random independently in each fteen-minute time slot in therange [d d] That is demands do not follow particular trends even if falling into thesame range of real data

Dataset B is realistic reproducing the main features of the starting data We choose a singleday at random from the two months included in the dataset [24] we perform a directquery to the demand of each AP at each time slot in that day and then we perturball demands with noise uniformly drawn at random in the interval [minus5+5]

All demand values are rounded to the nearest integer Besides the initial horizon of 96time-slots we consider planning time horizons of 48 24 and 12 time-slots by mergingrespectively 2 3 or 4 subsequent time-slots setting their demands as the average on themerged time-slots Five instances are generated in both datasets A and B

We also consider a dataset of raw real demands

Dataset C is obtained by considering a random week taken from the dataset [24] and mergingthe time-slots in either 168 slots of 1 hour each (1h) 84 slots of 2 hours (2h) 56

14

slots of 3 hours (3h) 42 slots of 4 hours (4h) or 38 slots obtained by the clusteringmethods described in subsection 62 (clust) The demand of each AP in each slot tis taken as the maximum over the the fteen-minute time slots merged in t

For every instance each MEC facility capacity Ck is set to(

maxtisinTsum

iisinA dti|K|

)middot105

and parameters α and β are both set to value 05

52 Column Generation proling

We rst report on the computational behaviour of our Column Generation algorithm (CG)In this test we consider the single-assignment non-periodic variant

In Tables 1a 1b and 1c we include the details of the root node column generationprocess for each instance of datasets A B and C respectively A best known solutionvalue zlowast is taken from a previous run of exact algorithms (see subsection 53) Besidesinstance details (columns `|T | and `inst) we include the relative gap between the primalbound value (resp dual bound value) and zlowast the number of column generation iterationsneeded to reach convergence the overall CPU time spent for solving the pricing problemsand the CPU time required to complete the column generation process As benchmarkwe also report the performances of CPLEX 1263 ILP solver when stopped at the rootnode including the corresponding primal and dual bound gaps and the time required tocomplete its root node computation

We set a time limit of two hours to each computation marking in the tables as `TLthose computations hitting that limit

We rst note that CG has good convergence behaviour less than 90 iterations arealways enough to complete the computation The high number of pricing subproblemsyields to a high number of generated columns but thanks to our dynamic programmingalgorithm the overall pricing time remains low (below 10 seconds in all cases but one)

By rounding in CG we are always able to obtain good integer solutions (that is below1 from best known solutions in all cases but 4) CPLEX is not consistent in a fewinstances (eg block |T | = 48 of the Realistic Dataset B) it is able to nd very goodprimal solutions while in other cases (eg block |T | = 24 of Dataset B or block |T | = 48of Dataset A) only very weak primal bounds can be obtained

We also observe that CG and CPLEX dual bounds are always similar That is on onehand the integrality property of our pricing problem warns that no improvement can beobtained by CG with respect to the continuous relaxation of the original formulation onthe other hand CPLEX generic cuts have no signicant eect on strengthening the samecontinuous relaxation bound

Finally in more than 37 of the instances CPLEX is unable to terminate the rootnode computation within the time limit while CG always completes the computationWhen both CG and CPLEX terminate the CPU time required by CG is up to two ordersof magnitude lower that required by CPLEX

We highlight that the (possibly fractional) solution found by CG is a global optimalsolution for the split-assignment model variants no further computing is needed in thatcase

53 Exactly solving the DASP

In a second round of experiments we let both our Branch-and-Price (BaP) and CPLEX126 ILP solver (CPX) run for two hours also exploring their branching trees In Tables2a 2b 2c we report the results of this experiment on each instance of datasets A B and Crespectively In each Table we report the relative gap between the primal bound PB (respthe dual bound DB) at the end of computation and the best known integer solution valuezlowast and the number of explored branch-and-bound nodes for both our BaP and CPX

15

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0130 1212 19 10808 0 4 0724 1197 8642 0735 1955 14 8715 0 4 244932 1949 4103 0793 1351 13 7074 0 3 0167 1345 3284 0945 0999 14 7515 0 3 2824 0994 3445 1206 1630 13 7892 0 3 3052 1627 356

24

1 0061 1475 26 17027 1 15 0249 1471 28262 1202 1537 19 11429 1 11 274940 1533 19433 0867 2019 19 12296 0 13 267368 2015 18524 0846 1864 19 12525 0 12 123542 1860 18615 0909 1764 18 12077 0 12 267486 1761 1781

48

1 0463 1819 41 27035 6 114 246767 1816 TL2 0221 2468 32 20897 1 90 270039 2465 TL3 0746 2336 33 21468 4 95 269274 2332 TL4 0295 2036 31 20496 0 74 282422 2033 TL5 0265 2514 35 22707 0 106 258676 2510 TL

96

1 0176 2274 68 47500 5 949 259445 - TL2 0055 2633 59 42621 6 913 - - TL3 0034 2779 61 43107 9 863 - - TL4 0187 2528 61 42692 5 850 - - TL5 0124 2568 60 41913 6 815 272834 - TL

(a) Synthetic Dataset A

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0809 0107 12 6542 1 2 0055 0105 1382 0917 0112 11 6150 0 2 0924 0110 1463 1043 0125 12 6611 0 2 0155 0123 1584 0797 0103 11 5843 0 2 349538 0102 1205 0781 0102 11 6548 0 2 349089 0101 113

24

1 0766 0425 15 9713 0 4 305781 0424 5322 0481 0280 16 9715 0 3 306562 0278 5873 0613 0576 15 9492 1 3 304188 0575 6224 0960 0183 17 10345 0 3 306874 0182 6155 0648 0221 16 10217 0 4 307199 0220 413

48

1 1031 0264 27 15539 1 16 0253 0262 21132 0782 0344 25 15636 2 15 0557 0343 22493 0500 0363 26 15286 1 15 0 0362 26744 0741 0314 26 15791 3 18 0049 0312 24455 0829 0296 29 16294 0 15 0651 0295 1878

96

1 0077 0933 51 29786 6 130 - - TL2 0315 0766 43 28272 3 125 - - TL3 0249 0853 46 28221 9 129 - - TL4 0395 0692 49 29320 5 126 - - TL5 0154 0726 48 29005 4 120 - - TL

(b) Realistic Dataset B

CG Root CPLEX Root

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast tclust 0590 0092 21 12928 2 9 0429 0091 4684h 0630 0272 30 20690 2 25 0175 0271 51913h 0513 0471 37 25960 3 58 0766 0470 28142h 0192 0724 50 31706 2 133 - - TL1h 0097 0905 85 56322 18 953 - - TL

(c) Raw Real Demand Dataset C

Table 1 Computational Results - CG Root vs CPLEX Root

16

(a) BaP vs CPLEX (b) BaP Detail

Figure 4 Primal Bound

We report no computing time because surprisingly neither BaP nor CPX could bringthe duality gap below 01 within the time limit except for instance 4 with |T | = 12 ofDataset A 5 with |T | = 12 of Dataset B and clust of Dataset C that CPX is able toclose (but still using more than 90 of the available CPU time)

In terms of nal dual bounds the results of both methods are very similar Our expla-nation for this phenomenon is the following the root dual bound is already very close tothe integer optimum value and therefore the real challenge is to nd an optimal primalsolution At the same time the high number of time-slots yields values of primal solutionson the order of magnitude of 108 as soon as the duality gap becomes small numericalapproximation issues prevent to coherently explore the remaining search tree

In terms of searching for good primal solutions in the inner nodes of the branching treeinstead BaP and CPX are not equivalent in Figure 4a we plot the typical primal boundvalue (y axis) improvements as the computation (x axis) proceeds (instance 1 |T | = 24dataset B) for the sake of comparison the x axis report relative values with respect tothe overall number of branch-and-bound nodes for CPX and the overall number of columngeneration iterations for BaP Eventually CPX is more numerically stable oering aftertwo hours of computation primal solutions values a few tenths of percentage points better(up to 05 of improvement) In turn BaP allows to nd near-optimal integer solutionsmuch more quickly that is in fact already at the root node The behaviour of BaP in theearly steps of computation is further detailed in Figure 4b the quality of the primal boundsteeply increase during the column generation iterations at the root node

As a synthetic nal assessment of our computational evaluation we can report thatwhen the number of time-slots is small and the planner has no particular need for quickoptimization algorithms both BaP and CPLEX might be viable alternatives to optimizethe DASP

BaP is faster especially when used heuristically stopping the computation either atthe root node or after exploring a few nodes of the branch-and-bound tree This makes itwell suited also when quick optimization is needed like in what-if-analyses

When the number of time-slots increases however using CPLEX is not an optionanymore

We repeated all the experiments with a periodic-plan model without nding substantialchanges in the computational behaviour of the methods Indeed the periodic-plan modelhas main impact only in the structure of the pricing problem of BaP but pricing involvesonly a small amount of the overall computational eort

17

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0 1208 17661 0411 1197 2032 0 1951 17038 0777 1949 3713 0198 1347 18572 0 1345 4524 0370 0997 19198 0 0993 5485 0020 1626 18013 0 1626 699

24

1 0 1473 8576 0249 1471 142 0 1535 8657 0855 1533 243 0 2018 9349 267368 2015 464 0 1863 9353 123542 1860 385 0 1763 10204 267486 1761 40

48

1 0 1818 2123 246767 1816 02 0 2468 2724 270039 2465 03 0 2335 2558 269274 2332 04 0 2036 3133 282422 2033 05 0 2514 2528 258676 2510 0

96

1 0 2274 113 259445 - TL2 0 2633 217 - - TL3 0 2779 168 - - TL4 0 2528 135 - - TL5 0 2568 207 272834 - TL

(a) Synthetic Dataset A

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0160 0105 35112 0 0103 23982 0235 0111 30708 0 0109 25793 0320 0124 26374 0 0122 18184 0406 0102 26490 0 0100 19325 0267 0100 24714 0 0098 1844

24

1 0133 0424 17961 0 0423 1442 0274 0279 18354 0 0278 1093 0 0576 20016 0717 0574 2254 0353 0183 17481 0 0182 2325 0284 0220 20446 0 0220 522

48

1 0312 0263 10738 0 0262 202 0249 0343 10465 0 0343 183 0113 0363 10482 0 0360 174 0227 0313 10321 0 0311 165 0226 0295 10818 0 0295 21

96

1 0 0932 3133 - - TL2 0 0765 3193 - - TL3 0 0852 3398 - - TL4 0 0691 3099 - - TL5 0 0726 3299 - - TL

(b) Realistic Dataset B

B-amp-P CPLEX

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

clust 0376 0091 13849 0 0091 8124h 0442 0272 8985 0 0270 303h 0403 0471 5086 0 0470 332h 0 0724 2864 - - TL1h 0 0905 370 - - TL

(c) Raw Real Demand Dataset C

Table 2 Computational Results - BaP vs CPLEX

18

6 Practical case study

Our nal aim is to assess the eectiveness of our optimization core in the context of thedata-driven MEC management optimization framework To this end we rely on the com-plete real-world dataset in [24] and run actual analytics on it so as to generate the demandproles We then feed our optimization models with such proles which ultimately letsus measure the quality of the assignment plans it returns in a practical case

61 Experimental setup

The real-world mobile trac data covers a planning period of eight weeks split in a set Tof fteen-minute snapshots The rst approach we take in order to infer demand prolesexploits a well-known property of mobile trac ie its weekly periodicity [26] Namely asingle week is taken as training data and the mobile trac recorded in each fteen-minutetime-slot is considered as a prole The tasks performed by the data mining and validationmodules are kept as simple as possible in order to highlight the eect of the optimizationcore

Training Conceptually the resulting 4 times 24 times 7 = 672 training proles are then usedas input for our optimization algorithms By optimizing over the training data we obtaina planning solution which becomes our assignment plan we apply such a plan to theremaining seven weeks of test data As an example optimizing over training data yields asolution including a specic assignment of APs to MEC facilities on Monday between 700am and 715 am we then blindly apply the same assignments on the 700-715 am timeslots of each Monday in the test data presuming that the demand conguration is similaron all Mondays at the same time In a sense this is a worst-case situation in which thedecision maker simply observes the system for one week before deciding on the planningfor the remaining weeks

Practically we do not directly use the 672 fteen-minutes time-slots for training Weassume instead that the preprocessing and data-mining module produces suitable ag-gregations We experimented therefore with simple aggregation of the proles mergingtime-slots sequentially over 1 2 3 or 4 hours Each aggregation step was performed byconsidering in each AP and in each aggregated time-slot the maximum demand value ofthat AP over the corresponding base time-slots The optimized solution was then dis-aggregated in post-processing simply replicating the same plan over the fteen-minutestime-slots composing each aggregated time-slot By choosing the maximum demand valuesduring aggregation we ensure that our optimized solutions remain feasible after disaggre-gation

It is apparent that less aggregated proles entail a higher potential for optimizationin the baseline scenario the assignment of APs to MEC facilities can be changed every15 minutes possibly assigning to the same MEC facility APs that experience very highpeaks of demand in subsequent time slots They are however more prone to overttingas peaks in particular hours of the training week do not necessarily correspond to peaksin the corresponding hour of testing weeks In addition they are more clearly expensivefrom a computational standpoint

More aggregated instances instead are more conservative two APs with very highdemand peaks in the same four-hours time slot cannot be assigned to the same MECfacility thus possibly preventing capacity violations in the test weeks if those peaks slightlymove in time They are also less demanding in terms of computational costs Howeveraggregation forces the a same conguration for longer timeframes making the optimizationpossibly oblivious of fast dynamics in the demand

19

Figure 5 Time-Clustering resulting from [21]

In order to further balance the aggressive optimization process during the trainingphase of low aggregation instances we found empirically useful to set the Ck capacityvalues to

(maxtisinT

sumiisinA d

ti|K|

)middot 105 in each test That is one-hour time-slot instances

are optimized with lower capacity values

Test To ensure fairness in the comparison during the test phase only disaggregatedsolutions are considered That is independently on the aggregation used for training onlysolutions dened over the original fteen-minutes time-slots are compared Similarly thereference MEC capacity value was xed to

(maxtisinT

sumiisinA d

ti|K|

)middot110 in any comparison

Clearly neither the cost nor the capacity usage are guaranteed to remain the samewhen the planning obtained with training data is applied to test data as uctuations inthe demand may occur across weeks The quality of our solutions is therefore evaluatedaccording to two measures (i) the assignment and switching cost of the planning and (ii)

the amount of violations in capacity constraints both measured on test data The latteris computed as follows

maxtisinT

sumkisinK

maxsum

iisinA dtix

tik minus Ck 0

Ck

that is the overall amount of violation in capacity constraints as a relative value respectto the available capacity in the worst time-slot

These measures are computed for each plan by the validation module through simplesimulation on the seven weeks of test data

Advanced Clustering Benchmark An alternative to employing our ad-hoc techniqueon the optimization module would be to perform a more aggressive aggregation over timeproducing instances that are small enough to be optimized by CPLEX We experimentedon such an option adapting the temporal clustering solution presented in [21] to our needsSpecically we take the following steps (i) we generate a median week of mobile tracdemand by computing the median load recorded at each AP during every hour of the weekusing it as training data (ii) we perform two separate hierarchical clusterings respectivelyusing the total volume and normalized distance metrics introduced in [21] (iii) we ndthe intersection of the two cluster sets obtained at the previous point

Figure 5 shows the resulting clustering of one-hour time slots ve typical demandproles are identied which can be associated to working hours (denoted by 0 in thegure) relax hours in the late afternoons and weekends (1) morning commuting hours(2) night hours (3) and late evening hours (4) Very few time-slots are actually producedthis way allowing CPLEX to optimize the corresponding instances Consecutive time-slots

20

InstWeek

train 1 2 3 4 5 6 7

Bench-CPLEX 959 703 571 425 257 388 1468 951Bench-CG 959 676 548 408 245 410 1434 927

4h 209 154 172 066 000 254 1163 2923h 194 142 148 110 125 158 1107 2982h 220 258 199 119 226 282 1122 4151h 284 238 417 114 192 404 1065 547

Table 3 Time-Slot Peak Exceeded Capacity Over Available Capacity

belonging to the same cluster are then aggregated The aggregated instance is optimizedand the solution obtained in this way is then disaggregated in fteen-minute time-slotsplans as in the previous case during post-processing before being compared on test data

62 Experimental evaluation

Following the computational results of Section 5 our core optimization module alwaysemploys our Branch-and-Price as a heuristic (HBP) stopping its computation at the rootnode except for the aggregated instances produced by time-clustering Having |T | = 38these are manageable eciently even by general purpose solvers CPLEX 1263 ILP solverwas then used to solve them to proven optimality The scatter plot in Figure 6 summarizesour results Each point represents the outcome on a single week of test data Dierentshapes refer to dierent demand prole aggregation methods obtained by merging 1 2 3 or4 consecutive one-hour time slots as well as using the Advanced Clustering and CPLEX(Bench-CPLEX) The y axis coordinate of each point represents the capacity violationmeasure as introduced above the x axis coordinate of each point represents the solutioncost measure expressed as percentage value of that of the optimal solution employing theAdvanced Clustering Benchmark method Therefore negative (resp positive) percentagesmap to a performance improvement (resp reduction) with respect to the benchmarkAs a reference we report also the results obtained by using HBP instead of CPLEX foroptimizing the Advanced Clustering Benchmark instances (Bench-CG) The details aboutcapacity violation measures are reported also in Table 3 for each week in the training set(columns) and for each demand prole aggregation method (rows)

A rst remarkable result is that in all cases our HBP with sequential clustering allows forsolutions with less capacity violations In particular HBP with either four-hours or three-hours aggregation oer almost no capacity violations coming at the price of three to vepercent increase in solutions cost HBP with two-hours aggregation always outperforms thebenchmark method both in terms of exceeded capacity and in terms of solution costs HBPwith one-hour aggregation further decrease costs at the price of slightly higher capacityviolation

We also experimented on using the full BaP instead of the truncated HBP Our resultsare reported in Figure 7 no signicant change was observed Similarly no signicantchange was observed by using HBP instead of CPLEX on the benchmark clustering

63 Eect of periodic planning

Finally we measure the impact in solution switching costs yielded by choosing a periodmodel instead of a non-periodic one In Table 4 we report for each aggregation listedin the previous subsection the change in switching costs between inner time-slots of theweek (intra-week) between border time-slots of dierent weeks (inter-week) as well as thetotal switching cost the total assignment cost and the overall cost of the solution Using a

21

Figure 6 1-Week Plan - Time Aggreg Comparison

(a) Total Costs (b) Exceeded Capacity

Figure 7 Mean Costs And Exceeded Capacity - CG Root vs BaP

22

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 5: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

also creates a very large number of proles (eg in the order of thousands for hour-longtime steps over months of historical data) that may be computationally too expensive tomanage

Another option to identify suitable discrete-time proles of the trac demand is touse temporal clustering analytics on the historical data so as to group together time slotsthat feature very similar distributions of the mobile trac demand across the APs Inthis case the module returns a limited number of proles each of which corresponds tothe typical demand observed in a large set of time slots It is then possible to reduce thecomputational cost at the Optimization Core by feeding it with a small number of prolesHowever this comes at the expense of assignment quality since typical proles can onlyapproximate the actual MEC network load at a specic time step We provide an exampleof temporal clustering analytics which builds on the methodology of [21] in Section 61

Optimization Core Once the trac demand proles are dened the Optimization Corebuilds eective dynamic assignment plans on top of those Plans include for each timeslot the set of APs to be connected to which MEC facility and as a by-product the set ofswitching operations to be performed between subsequent time slots We consider dierentoperational options

bull single versus split assignment in the single assignment variant an AP is associatedto exactly one MEC facility in each point in time while in the split assignment

variant the AP demand can be served simultaneously by dierent facilities That isin the rst case we suppose that whenever connecting to a certain AP each user isrouted to the same facility while in the latter case an AP can route the trac ofeach user independently to dierent facilities

bull linear versus periodic assignment in the periodic variant we explicitly take intoaccount the potential switching cost between the last and the rst point in time ofour plan since it is meant to be repeated over a longer planning horizon This is notthe case in the linear model which assumes no system periodicity

Validation Tool Once a set of candidate plans is produced by the Optimization Corea Validation Tool is used to check their quality on test data In our case test data consistof a few weeks of raw trac demand data the Validation Tool evaluates the plan bysimulating its application in those weeks and computing quality measures

Orchestrator The MEC orchestrator is the functional element in charge of actuallysending VM orchestration instructions to MEC hosts monitoring the MEC system statusand the MEC network link states as well Legacy cloud orchestrator systems typically takeorchestration decisions based on simple best-t policies as data-center network resourcesare often over-dimensioned and a large set of clusters is made available the placement andassignment decision logic is therefore typically not bound to computing facility locationSuch orchestration algorithms however cannot be readily applied to a MEC context essen-tially because of the geographical nature of MEC networks and the capacity limitation ofMEC facilities This is typically done at the orchestrator subsystem level by adding anabstraction layer with a dedicated descriptive language to map computing resources tophysical location of servers

3 Optimization models

A key component of the data-driven MEC management optimization framework is theoptimization core Its task is to nd suitable assignments of APs to MEC facilities over

5

t = 1

A B

1 2 3

t = 2

A B

1 2 3

x12A x2

2B

y22AB

Figure 2 x and y variables

time together with corresponding user VMs migration patterns For the sake of readabilitywe focus on the single-assignment linear-plan variant a discussion on how to adapt ourmodels and methods to the other variants is provided in Section 46

Let us denote as A the set of APs and as K the set of MEC facilities We assumethe planning horizon to be discretized in a set T of time slots For each AP i isin A let usindicate as dti the mobile trac demand that has to be accommodated by AP i at timet isin T and as mik the physical distance between AP i and MEC facility k isin K Let Ck

be the capacity of MEC facility k isin K and lkprimekprimeprime be the network distance between MECfacilities kprime kprimeprime isin K We assume lkk = 0 for each k isin K where with network distance wemean a distance that can is directly proportional to the network latency (including packetprocessing latency at intermediate nodes) and the physical distance

Let xtik be binary variables taking value 1 if trac from AP i isin A at time t isin T is

routed to MEC facility k isin K 0 otherwise Let ytikprimekprimeprime be binary variables taking value1 if AP i isin A is associated to MEC facility kprime isin K at time t minus 1 and switches to MECfacility kprimeprime isin K at time t

Our Dynamic Assignment and Switching Problem (DASP) can be formulated as follows

min αsumtisinT

sumiisinA

sum(jk)isinKtimesK

dtiljkytijk + β

sumtisinT

sumiisinA

sumkisinK

dtimikxtik (1)

stsumiisinA

dtixtik le Ck forallt isin T forallk isin K (2)sum

kisinKxtik = 1 foralli isin Aforallt isin T (3)

xtik =sumlisinK

ytilk foralli isin Aforallt isin T 1 forallk isin K (4)

xtik =sumlisinK

yt+1ikl foralli isin Aforallt isin T T forallk isin K (5)

xtik isin 0 1 foralli isin A forallk isin Kforallt isin T (6)

ytikprimekprimeprime isin 0 1 foralli isin Aforallkprime kprimeprime isin Kforallt isin T (7)

the objective (1) aims at nding a trade-o between the minimization of network- anduser-related costs The former is generated by the change of AP-MEC facility associationsin consecutive time slots which produces control overhead due to the necessity of migratingVMs The latter is instead the latency experienced by the user with the current AP-MECfacility association Parameters α and β represent the relative weight of the network-and user-related costs in the objective function Constraints (2) impose that the overalldemand assigned to MEC facility k at time t does not exceed its capacity Constraints (3)impose that each AP is connected to a single MEC facility during a time slot Constraints(4) and (5) link x and y variables in a ow conservation fashion when xtik = 0 that is APi is not assigned to MEC facility k at time t they impose that no switching operation is

6

made when xtik = 1 instead they impose that a single switching operation assigns i to kat time t and reassigns it at time t+ 1 (possibly involving the same MEC facility in whichcase the switching cost is zero)

A sample instance with three APs (squares) two MEC facilities (circles) and two time-slots (left and right parts) is depicted in Figure 2 AP 2 is assigned to MEC facility A att = 1 and MEC facility B at time t = 2 therefore a switching operation from A to B needsto be performed

Model (1) (7) has a few interesting features

Observation 1 The DASP can be seen as a multi-period generalization of the Generalized

Assignment Problem (GAP)

In fact when |T | = 1 the DASP reduces to a GAP

Observation 2 For t gt 1 constraints (3) are redundant

Indeed for t gt 1 they are implied by constraints (4) and (5) andsum

kisinK x1ik = 1 for each

i isin A It is easy to check it by induction over t for each i isin A constraints (5) ensure thatif a k isin K exists such that xtminus1

ik = 1 thensum

lisinK ytikl = 1 then by aggregating constraints(4) we obtain that if

sumkisinK

sumlisinK ytikl = 1 then

sumkisinK xtik = 1 In turn since the x

variables are binarysum

kisinK xtik = 1 implies that a k isin K exists such that xtik = 1 All weneed to additionally enforce is the base case t = 1

Proposition 1 When all xtik variables take integer values the ytikl variables also (auto-

matically) take integer values in any feasible solution The converse is also true

In fact for each i isin A and each t isin T due to constraints (5) if xtik = 0 then yt+1ikl = 0 for

each l isin K If xtik = 1 assume by contradiction that a feasible solution exists containingfractional yt+1

ikl values each fractional yt+1ikl will appear in a dierent constraint of family (4)

that can be feasible only if xt+1ik = 1 for more than a single k isin K violating constraints (3)

yielding infeasibility and thus leading to a contradiction The converse is trivially impliedby both constraints (4) and (5)

That is in the search for optimal solutions by means of algorithms exploiting continuousrelaxations branching on ytikl variables is unnecessary

4 Optimization Algorithms

Unfortunately when the size of the MEC network is large even solving the continuousrelaxation of model (1) (7) turns out to be computationally hard Therefore we devisean ad-hoc exact solution approach based on decomposition

Following the Dantzig-Wolfe reformulation principle [22] let

P i = (xtik ytikl) (3) (4) (5) (6) (7)

represent the convex hull of the feasible region respect to constraints (3) (7) Let Ωi bethe set of corresponding extreme integer points and for each p isin Ωi let xtpik and ytpijk be

the coecients encoding point p Each element of P i can be represented as a linear convexcombination of points in Ωi Therefore we introduce a set of variables zp ge 0 expressingmultipliers in such a combination and we reformulate the continuous relaxation of (1) (7) as the following Master Problem (MP)

7

minsumiisinA

sumpisinΩi

(αsumtisinT

sum(jk)isinKtimesK

dtiljkytpijk + β

sumtisinT

sumkisinK

dtimikxtpik

)zp (8)

st minussumiisinA

sumpisinΩi

dtixtpik z

p ge minusCk forallt isin T forallk isin K (9)

sumpisinΩi

zp = 1 foralli isin A (10)

zp ge 0 (11)

The MP has an exponential number of variables We optimize it by column generationwe replace Ωi by a small representative subset Ωi (see subsection 41) and we solve theRestricted Master Problem (RMP) obtained in this way then for each i isin A we search ifany element of Ωi exists whose corresponding variable has negative reduced cost by solvinga pricing problem (see subsection 42) any such element is added to Ωi and the process isiterated Otherwise we stop the solution obtained by restricting to Ωi is optimal also forthe full problem

Such a solution provides a valid lower bound to the DASP It might indeed be fractionalIn such a case we run rounding heuristics (see subsection 43) to obtain a correspondingupper bound If upper and lower bounds do not match we rst perform probing topotentially x variables (see subsection 44) and then when needed we enter a recursivetree search phase (see subsection 45) Our algorithms can be easily adapted to the split-assignment and periodic-plan variants (see subsection 46)

41 Initialization

In order to populate the initial sets Ωi as well as obtaining an initial primal bound we runa simple greedy heuristic that builds the solution time-slot by time-slot and AP by APThe corresponding pseudo-code is reported as Algorithm 1 In particular for each timeslot APs are sorted by non-increasing demand and each AP is associated to a protableMEC facility following this order The choice for the most protable MEC facility to whichto associate an AP i at time t follows these rules let k be the MEC facility to which theAP i was associated in the previous time slot tminus 1

1 if t gt 1 and the demand of the AP i does not exceed the residual capacity of theMEC facility k assign i to k

2 otherwise nd the nearest MEC facility (in terms of distance mik) to which the APdemand does not exceed the residual capacity if no such a MEC facility exists stopin a FAIL state

This algorithm always terminates in O(|T ||A| log(|A|)|K|) time Unfortunately asfor a xed t the problem is a special instance of GAP even the problem of nding anarbitrary feasible solution is NP-Hard Indeed the algorithm might stop in a FAIL statewithout producing feasible solutions However in our computational experiments thatnever happened

Nevertheless to complete the population of the initial RMP we insert also a singledummy column of very high cost having coecient 0 in each constraint (9) This ensuresRMP feasibility also after branching

8

Algorithm 1 Greedy Binary AP-MEC facility assignment

ka = none foralla isin A MEC facility associated to AP a in previous time-slotfor all t isin T do

As = sortDec(dta|a isin A) sort AP for non-increasing demand at time tck = 0 forallk isin K used capacity of MEC facility kfor all a isin As do

k = ka rst choice is the previous assignmentif k = none or ck + dta le C then

k = nearestAvailable(a dta ck) get nearest MEC facility with enough residualcapacity

end if

xtak = 10

ck = ck + dta update used capacity of chosen MEC facilityif t gt 0 and k 6= ka thenytakak

= 10end if

ka = kend for

end for

42 Pricing algorithms

Let λtk be the (non-negative) dual variables corresponding to constraints (9) and ηi bethe (free) dual variables corresponding to constraints (10)

For each i isin A the problem of nding the element of Ωi corresponding to the variableof minimum reduced cost can be formulated as follows

minπi =minus ηi + αsumtisinT

sum(jk)isinKtimesK

dtiljky

tijk

+

+sumtisinT

sumkisinK

(βdt

imik + dt

iλtk)xtik

(12)

stsumkisinK

xtik

= 1 forallt isin T (13)

xtik

=sumjisinK

ytijk

forallt isin T 1forallk isin K (14)

xtik

=sumjisinK

yt+1ikj

forallt isin T Tforallk isin K (15)

x isin 0 1y isin 0 1 (16)

Proposition 2 The pricing problem (12) - (16) possesses the integrality property

In fact according to Observation 2 constraints (13) can be removed for t gt 1 and con-straints (14) used to replace xt

ikin (15) and then removed The remaining is basically a

network ow matrix which is known to be totally unimodular [22]On one hand Proposition 2 implies that the lower bound obtained by the MP through

column generation is equivalent to that obtained by optimally solving the continuous re-laxation of the original model (1) (7) On the other hand it allows to employ polynomialtime Linear Programming solution algorithms making us to expect the solution processto be fast Indeed we could exploit its structure even further as the elements of Ωi have a

9

Algorithm 2 Pricing Algorithm

for all i isin A do

c1k = a1

ik forallk isin K cost of path starting at MEC facility kp1k = k forallk isin K path starting at node kprime at timefor all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i

πlowast = c|T |klowast minus ηi

if πlowast lt 0minus ε thenadd variable related to minimum cost path pklowast to the model

end if

end for

particular combinatorial interpretation they correspond to all feasible association pathsthat is sequences of MEC facilities to which the AP i is assigned in consecutive time-slotsMore in details we build a directed layered graph G(NA) with a layer for each time-slotas follows Each layer has one node for each MEC facility each pair of nodes in consecutivelayers are connected by an arc Each node (t k) isin T times K modeling the assignment toMEC facility k at time t has an associated traversal cost given by atik = dti(βmik + λtk)while each arc connecting nodes (t j) and (t+ 1 k) has an associated traversal cost givenby btijk = dt+1

i αljk We also add a dummy source σ (resp sink τ) nodes having oneoutgoing arc to each node in layer t = 1 (resp one incoming arc from each node in layert = |T |) of zero cost Figure 3 sketches the structure of G for a certain AP i on a sampleinstance with two MEC facilities (A and B) a potential solution assigns i to A at timet = 1 to B at time t = 2 and so forth

In fact an optimal pricing solution corresponds to a shortest σ minus τ path in G

Proposition 3 For each i isin A the pricing problem can be solved in O(|T ||K|2) time

In fact for solving the pricing problems we devise a simple dynamic programming algo-rithm which is presented as Algorithm 2

t = 1

A

a1iAx1iA

B

t = 2

A

B

a2iBx2iB

t = |T |

A

a|T |iAx|T |iA

B

b2iAB

y2iAB

0 middot y3iBB

b|T |iBA

y|T |iBA

Figure 3 Pricing Problem Structure

10

Algorithm 3 Rounding heuristic

Input variable values x from a RMP fractional solutionOutput x = 0 y = 0 integer solutionfor all t isin T do

rk = Ck forallk isin K residual capacity of MEC facility kA = sort(AmaxkisinK xtik) sort the set of AP by non-increasing value of fractionalassignment to the most desirable MEC facilityfor all i isin A do

consider APs in such an orderif k isin K|dti le rk = empty thenFAIL no MEC facility with enough capacity exit with FAIL status

else

k = arg maxkisinK|dtilerk xtik get highest assignment

xtik = 10 x assignment with MEC facility

rk = rk minus dti update residual capacityend if

end for

end for

y = compute_shift(x) compute y variable values to be consistent with x

43 Rounding Heuristics

In order to nd good primal bounds a simple rounding algorithm (presented in Algorithm3) is executed at every column generation iteration Let z be the (possibly fractional)variable values of the RMP at a certain iteration we can compute the values of thecorresponding x variables as

xtik =sumpisinΩi

xtpik zp

For each time-slot t isin T for each APs i the highest xtik is retrieved For each AP sorted bydescending highest x value the assignment is made with the MEC facility correspondingto the highest x and with enough residual capacity Although no guarantee in feasibilityis given our computational experiments revealed it to be highly eective

44 Variables xing

We also experimented with probing techniques to potentially perform problem reductionduring the column generation process In particular we employed Lagrangean probing tox variables at a pricing level The main idea is to run the Pricing Problem ResolutionAlgorithm twice the rst time as described in 2 that is considering each layer t = 1 |T |in forward order the second time instead considering the layers in backward order that is

initializing c|T |k = 0 and updating each ctk = minklowastisinK ct+1

klowast +dt+1i (αlkklowast +βmiklowast +λt+1klowast)

In this way the cost χtk of the best path in which at time t an assignment is forced to MEC

facility k can be computed by summing the forward and backward labels ctkA valid dual bound LB can be computed at each column generation iteration as

LB = ρminussumiisinA

πi

where ρ is the value of the last RMP solution Let UB be the value of the best primal(integer) solution found so far

For each i isin A let s(t) be the MEC facility at which AP i has been assigned at time tin the optimal pricing solution returned by Algorithm 2 We perform the following xes

11

bull for each t isin T and k isin K if LB + χts(t) minus χ

tk ge UB then if assignment to MEC

facility k was forced no improvement in the primal bound would ever be obtainedTherefore node k can be removed from layer t without losing optimization powerthat means xing variable xtik = 0 in the original model

bull for each t isin T if LB+χts(t)minusminkisinKs(t) χ

tk ge UB then if such an assignment was

forbidden no improvement in the primal bound would ever be obtained Thereforeall nodes k 6= s(t) can be removed from layer t without losing optimization powerthat means xing variable xtis(t) = 1 in the original model

A similar xing procedure is run on arcs of the pricing graph thereby allowing to x ytkprimeprimekprimevariables in the original model

From an implementation point of view we always allowed a relative tolerance of 5eminus4in the xing test to prevent numerical troubles We run the xing procedure at the endof the column generation process of every node of the search tree additionally at the rootnode we run it whenever an improving primal solution is found

45 Branch-and-price

When upper and lower bounds at the end of the column generation process do not matchwe proceed to branching We branch on original variables x rather than on variables ofthe MP Fixing variable xtik to value 0 corresponds to xing to value 0 all variables zp isin Ωi

that assign AP i to MEC facility k at time t Similarly xing variable xtik to value 1corresponds to xing to value 0 all variables zp isin Ωi that do not assign AP i to MECfacility k at time t Neither forbidding nor forcing assignments change the structure of thepricing problem these conditions are easily included within the dynamic programmingalgorithm by simply removing nodes from the pricing graph According to Proposition 1no branching on y variables is needed

We considered the following two branching rules

1 considering all possible assignments of AP i at time t take the pair (iprime tprime) which hasgreatest number of variables xt

primeiprimek with strictly positive value that is that AP whose

assignment at a certain time is split among the greatest number of dierent MECfacilities Sort variables xt

primeiprimek by non-increasing value and partition this ordered set

in two the rst set containing variables in the odd positions of ordered set and thesecond set containing variables in the even positions A left (resp right) branch iscreated xing to zero all the variables in the rst (resp second) set

2 select the variable xtik whose value is closer to 05 ie the variable related to the mostfractional assignment Create two branches xing the selected variable respectivelyto value 0 or to value 1

We always consider branching rule 1 rst triggering rule 2 only when all (i t) pairshave at most two corresponding fractional xtik variables During preliminary experimentsa simple depth-rst exploration policy showed to perform best When rule 2 is used thextik = 1 branch is explored rst

46 Split assignment and periodic plans

We rst observe that global optimal split-assignment plans can be obtained by simplystopping at the root node and considering the (potentially fractional) solution of thecolumn generation master problem

12

Furthermore as discussed in the Introduction the application is periodic in naturethe decision maker creates a plan that is meant to be repeated over time Such a peri-odic variant can be managed by minor modications to our models and algorithms Inparticular model (1) (5) needs to be enriched adding constraints

x1ik =

sumlisinK

y|T |ilk foralli isin A forallk isin K

to the family (4) and constraints

x|T |ik =

sumlisinK

y1ikl foralli isin Aforallk isin K

to the family (5) these link the assignments made in the last and rst time-slots assign-ment hence closing the period of assignments The column generation master problemdoes not change The pricing problem instead requires to be adapted as cycles ratherthan paths need to be generated We therefore modied our pricing routine as presentedin Algorithm 4 Exactly solving the modied pricing problem via dynamic programmingrequires O(|T ||K|3) time for every AP The main idea is to tentatively x the assignmentat time 1 to all the |K| possible MEC facilities to solve each reduced problem and tochoose the best among the |K| solutions found in this way Since it is possible to create alayer |T | + 1 as a copy of the layer t = 1 after xing the assignment the pricing problemreduces to nding a minimum cost shortest path from the single xed node in layer t = 1to the single xed node in layer |T |+ 1

Any other detail of the algorithm remains unchanged

5 Computational evaluation

We implemented our algorithms in C++ using CPLEX 126 [23] to solve the master LPsubproblems running tests on an Intel i7 4GHz workstation equipped with 32 GB of RAM

Our rst investigation is computational benchmarking the eectiveness of our algo-rithms in comparison to the branch-and-cut ILP solver of CPLEX using formulation (1) (7)

51 Dataset

We have access to a dataset of real-world mobile trac demands [24] encompassing twomonths with a time granularity of fteen minutes The geographical area covered by thedataset extends for more than 2500 km2 The demand is not associated to access points ofthe mobile network whose location is unknown but rather to a geographical tessellationof the area in 1419 rectangular cells of dierent sizes with smaller (and more dense) cellsin the center of the area We select the centers of every rectangular cell as elements of theset A of access points locations

Then we create ten clusters of access points using a standard k-means model takingas input the euclidean distances between APs optimizing it with the classical heuristicsof [25] The centers of these clusters are selected to dene the locations of the set K ofMEC facilities The network distances mik and ljk are computed as euclidean distancesaccordingly and rounded to the nearest integer (hence supposing packet processing latencyis negligible)

Given this network infrastructure we generate dierent problem instances by randomlydrawing demands in each AP in dierent ways

In details we create two random datasets

13

Algorithm 4 Periodic Pricing Algorithm

for all i isin A do

πlowast = +infinplowast = emptyfor all k isin K do

c1k

= a1ikx MEC facility k at t = 1

c1k = +infin forallk isin K k forbid MEC facility k at t = 1p1k = k forallk isin K path starting at node k at time t = 1for all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

for all k isin K do

c|T |k = c

|T |k + b1

ikk+ a1

ikend for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i when starting at k

if c|T |klowast minus ηi lt πlowast then

πlowast = c|T |klowast minus ηi

plowast = p|T |klowast

end if

end for

if πlowast lt 0 thenadd variable related to minimum cost path plowast to the model

end if

end for

Dataset A is synthetic and aims at stressing our algorithms from a pure computational pointof view We consider a planning horizon of one day split in 96 consecutive fteen-minute time slots Let d (resp d) be the minimum (resp maximum) demandobserved in any AP and time slot in [24] Demands dti for each AP i at time t aredrawn uniformly at random independently in each fteen-minute time slot in therange [d d] That is demands do not follow particular trends even if falling into thesame range of real data

Dataset B is realistic reproducing the main features of the starting data We choose a singleday at random from the two months included in the dataset [24] we perform a directquery to the demand of each AP at each time slot in that day and then we perturball demands with noise uniformly drawn at random in the interval [minus5+5]

All demand values are rounded to the nearest integer Besides the initial horizon of 96time-slots we consider planning time horizons of 48 24 and 12 time-slots by mergingrespectively 2 3 or 4 subsequent time-slots setting their demands as the average on themerged time-slots Five instances are generated in both datasets A and B

We also consider a dataset of raw real demands

Dataset C is obtained by considering a random week taken from the dataset [24] and mergingthe time-slots in either 168 slots of 1 hour each (1h) 84 slots of 2 hours (2h) 56

14

slots of 3 hours (3h) 42 slots of 4 hours (4h) or 38 slots obtained by the clusteringmethods described in subsection 62 (clust) The demand of each AP in each slot tis taken as the maximum over the the fteen-minute time slots merged in t

For every instance each MEC facility capacity Ck is set to(

maxtisinTsum

iisinA dti|K|

)middot105

and parameters α and β are both set to value 05

52 Column Generation proling

We rst report on the computational behaviour of our Column Generation algorithm (CG)In this test we consider the single-assignment non-periodic variant

In Tables 1a 1b and 1c we include the details of the root node column generationprocess for each instance of datasets A B and C respectively A best known solutionvalue zlowast is taken from a previous run of exact algorithms (see subsection 53) Besidesinstance details (columns `|T | and `inst) we include the relative gap between the primalbound value (resp dual bound value) and zlowast the number of column generation iterationsneeded to reach convergence the overall CPU time spent for solving the pricing problemsand the CPU time required to complete the column generation process As benchmarkwe also report the performances of CPLEX 1263 ILP solver when stopped at the rootnode including the corresponding primal and dual bound gaps and the time required tocomplete its root node computation

We set a time limit of two hours to each computation marking in the tables as `TLthose computations hitting that limit

We rst note that CG has good convergence behaviour less than 90 iterations arealways enough to complete the computation The high number of pricing subproblemsyields to a high number of generated columns but thanks to our dynamic programmingalgorithm the overall pricing time remains low (below 10 seconds in all cases but one)

By rounding in CG we are always able to obtain good integer solutions (that is below1 from best known solutions in all cases but 4) CPLEX is not consistent in a fewinstances (eg block |T | = 48 of the Realistic Dataset B) it is able to nd very goodprimal solutions while in other cases (eg block |T | = 24 of Dataset B or block |T | = 48of Dataset A) only very weak primal bounds can be obtained

We also observe that CG and CPLEX dual bounds are always similar That is on onehand the integrality property of our pricing problem warns that no improvement can beobtained by CG with respect to the continuous relaxation of the original formulation onthe other hand CPLEX generic cuts have no signicant eect on strengthening the samecontinuous relaxation bound

Finally in more than 37 of the instances CPLEX is unable to terminate the rootnode computation within the time limit while CG always completes the computationWhen both CG and CPLEX terminate the CPU time required by CG is up to two ordersof magnitude lower that required by CPLEX

We highlight that the (possibly fractional) solution found by CG is a global optimalsolution for the split-assignment model variants no further computing is needed in thatcase

53 Exactly solving the DASP

In a second round of experiments we let both our Branch-and-Price (BaP) and CPLEX126 ILP solver (CPX) run for two hours also exploring their branching trees In Tables2a 2b 2c we report the results of this experiment on each instance of datasets A B and Crespectively In each Table we report the relative gap between the primal bound PB (respthe dual bound DB) at the end of computation and the best known integer solution valuezlowast and the number of explored branch-and-bound nodes for both our BaP and CPX

15

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0130 1212 19 10808 0 4 0724 1197 8642 0735 1955 14 8715 0 4 244932 1949 4103 0793 1351 13 7074 0 3 0167 1345 3284 0945 0999 14 7515 0 3 2824 0994 3445 1206 1630 13 7892 0 3 3052 1627 356

24

1 0061 1475 26 17027 1 15 0249 1471 28262 1202 1537 19 11429 1 11 274940 1533 19433 0867 2019 19 12296 0 13 267368 2015 18524 0846 1864 19 12525 0 12 123542 1860 18615 0909 1764 18 12077 0 12 267486 1761 1781

48

1 0463 1819 41 27035 6 114 246767 1816 TL2 0221 2468 32 20897 1 90 270039 2465 TL3 0746 2336 33 21468 4 95 269274 2332 TL4 0295 2036 31 20496 0 74 282422 2033 TL5 0265 2514 35 22707 0 106 258676 2510 TL

96

1 0176 2274 68 47500 5 949 259445 - TL2 0055 2633 59 42621 6 913 - - TL3 0034 2779 61 43107 9 863 - - TL4 0187 2528 61 42692 5 850 - - TL5 0124 2568 60 41913 6 815 272834 - TL

(a) Synthetic Dataset A

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0809 0107 12 6542 1 2 0055 0105 1382 0917 0112 11 6150 0 2 0924 0110 1463 1043 0125 12 6611 0 2 0155 0123 1584 0797 0103 11 5843 0 2 349538 0102 1205 0781 0102 11 6548 0 2 349089 0101 113

24

1 0766 0425 15 9713 0 4 305781 0424 5322 0481 0280 16 9715 0 3 306562 0278 5873 0613 0576 15 9492 1 3 304188 0575 6224 0960 0183 17 10345 0 3 306874 0182 6155 0648 0221 16 10217 0 4 307199 0220 413

48

1 1031 0264 27 15539 1 16 0253 0262 21132 0782 0344 25 15636 2 15 0557 0343 22493 0500 0363 26 15286 1 15 0 0362 26744 0741 0314 26 15791 3 18 0049 0312 24455 0829 0296 29 16294 0 15 0651 0295 1878

96

1 0077 0933 51 29786 6 130 - - TL2 0315 0766 43 28272 3 125 - - TL3 0249 0853 46 28221 9 129 - - TL4 0395 0692 49 29320 5 126 - - TL5 0154 0726 48 29005 4 120 - - TL

(b) Realistic Dataset B

CG Root CPLEX Root

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast tclust 0590 0092 21 12928 2 9 0429 0091 4684h 0630 0272 30 20690 2 25 0175 0271 51913h 0513 0471 37 25960 3 58 0766 0470 28142h 0192 0724 50 31706 2 133 - - TL1h 0097 0905 85 56322 18 953 - - TL

(c) Raw Real Demand Dataset C

Table 1 Computational Results - CG Root vs CPLEX Root

16

(a) BaP vs CPLEX (b) BaP Detail

Figure 4 Primal Bound

We report no computing time because surprisingly neither BaP nor CPX could bringthe duality gap below 01 within the time limit except for instance 4 with |T | = 12 ofDataset A 5 with |T | = 12 of Dataset B and clust of Dataset C that CPX is able toclose (but still using more than 90 of the available CPU time)

In terms of nal dual bounds the results of both methods are very similar Our expla-nation for this phenomenon is the following the root dual bound is already very close tothe integer optimum value and therefore the real challenge is to nd an optimal primalsolution At the same time the high number of time-slots yields values of primal solutionson the order of magnitude of 108 as soon as the duality gap becomes small numericalapproximation issues prevent to coherently explore the remaining search tree

In terms of searching for good primal solutions in the inner nodes of the branching treeinstead BaP and CPX are not equivalent in Figure 4a we plot the typical primal boundvalue (y axis) improvements as the computation (x axis) proceeds (instance 1 |T | = 24dataset B) for the sake of comparison the x axis report relative values with respect tothe overall number of branch-and-bound nodes for CPX and the overall number of columngeneration iterations for BaP Eventually CPX is more numerically stable oering aftertwo hours of computation primal solutions values a few tenths of percentage points better(up to 05 of improvement) In turn BaP allows to nd near-optimal integer solutionsmuch more quickly that is in fact already at the root node The behaviour of BaP in theearly steps of computation is further detailed in Figure 4b the quality of the primal boundsteeply increase during the column generation iterations at the root node

As a synthetic nal assessment of our computational evaluation we can report thatwhen the number of time-slots is small and the planner has no particular need for quickoptimization algorithms both BaP and CPLEX might be viable alternatives to optimizethe DASP

BaP is faster especially when used heuristically stopping the computation either atthe root node or after exploring a few nodes of the branch-and-bound tree This makes itwell suited also when quick optimization is needed like in what-if-analyses

When the number of time-slots increases however using CPLEX is not an optionanymore

We repeated all the experiments with a periodic-plan model without nding substantialchanges in the computational behaviour of the methods Indeed the periodic-plan modelhas main impact only in the structure of the pricing problem of BaP but pricing involvesonly a small amount of the overall computational eort

17

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0 1208 17661 0411 1197 2032 0 1951 17038 0777 1949 3713 0198 1347 18572 0 1345 4524 0370 0997 19198 0 0993 5485 0020 1626 18013 0 1626 699

24

1 0 1473 8576 0249 1471 142 0 1535 8657 0855 1533 243 0 2018 9349 267368 2015 464 0 1863 9353 123542 1860 385 0 1763 10204 267486 1761 40

48

1 0 1818 2123 246767 1816 02 0 2468 2724 270039 2465 03 0 2335 2558 269274 2332 04 0 2036 3133 282422 2033 05 0 2514 2528 258676 2510 0

96

1 0 2274 113 259445 - TL2 0 2633 217 - - TL3 0 2779 168 - - TL4 0 2528 135 - - TL5 0 2568 207 272834 - TL

(a) Synthetic Dataset A

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0160 0105 35112 0 0103 23982 0235 0111 30708 0 0109 25793 0320 0124 26374 0 0122 18184 0406 0102 26490 0 0100 19325 0267 0100 24714 0 0098 1844

24

1 0133 0424 17961 0 0423 1442 0274 0279 18354 0 0278 1093 0 0576 20016 0717 0574 2254 0353 0183 17481 0 0182 2325 0284 0220 20446 0 0220 522

48

1 0312 0263 10738 0 0262 202 0249 0343 10465 0 0343 183 0113 0363 10482 0 0360 174 0227 0313 10321 0 0311 165 0226 0295 10818 0 0295 21

96

1 0 0932 3133 - - TL2 0 0765 3193 - - TL3 0 0852 3398 - - TL4 0 0691 3099 - - TL5 0 0726 3299 - - TL

(b) Realistic Dataset B

B-amp-P CPLEX

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

clust 0376 0091 13849 0 0091 8124h 0442 0272 8985 0 0270 303h 0403 0471 5086 0 0470 332h 0 0724 2864 - - TL1h 0 0905 370 - - TL

(c) Raw Real Demand Dataset C

Table 2 Computational Results - BaP vs CPLEX

18

6 Practical case study

Our nal aim is to assess the eectiveness of our optimization core in the context of thedata-driven MEC management optimization framework To this end we rely on the com-plete real-world dataset in [24] and run actual analytics on it so as to generate the demandproles We then feed our optimization models with such proles which ultimately letsus measure the quality of the assignment plans it returns in a practical case

61 Experimental setup

The real-world mobile trac data covers a planning period of eight weeks split in a set Tof fteen-minute snapshots The rst approach we take in order to infer demand prolesexploits a well-known property of mobile trac ie its weekly periodicity [26] Namely asingle week is taken as training data and the mobile trac recorded in each fteen-minutetime-slot is considered as a prole The tasks performed by the data mining and validationmodules are kept as simple as possible in order to highlight the eect of the optimizationcore

Training Conceptually the resulting 4 times 24 times 7 = 672 training proles are then usedas input for our optimization algorithms By optimizing over the training data we obtaina planning solution which becomes our assignment plan we apply such a plan to theremaining seven weeks of test data As an example optimizing over training data yields asolution including a specic assignment of APs to MEC facilities on Monday between 700am and 715 am we then blindly apply the same assignments on the 700-715 am timeslots of each Monday in the test data presuming that the demand conguration is similaron all Mondays at the same time In a sense this is a worst-case situation in which thedecision maker simply observes the system for one week before deciding on the planningfor the remaining weeks

Practically we do not directly use the 672 fteen-minutes time-slots for training Weassume instead that the preprocessing and data-mining module produces suitable ag-gregations We experimented therefore with simple aggregation of the proles mergingtime-slots sequentially over 1 2 3 or 4 hours Each aggregation step was performed byconsidering in each AP and in each aggregated time-slot the maximum demand value ofthat AP over the corresponding base time-slots The optimized solution was then dis-aggregated in post-processing simply replicating the same plan over the fteen-minutestime-slots composing each aggregated time-slot By choosing the maximum demand valuesduring aggregation we ensure that our optimized solutions remain feasible after disaggre-gation

It is apparent that less aggregated proles entail a higher potential for optimizationin the baseline scenario the assignment of APs to MEC facilities can be changed every15 minutes possibly assigning to the same MEC facility APs that experience very highpeaks of demand in subsequent time slots They are however more prone to overttingas peaks in particular hours of the training week do not necessarily correspond to peaksin the corresponding hour of testing weeks In addition they are more clearly expensivefrom a computational standpoint

More aggregated instances instead are more conservative two APs with very highdemand peaks in the same four-hours time slot cannot be assigned to the same MECfacility thus possibly preventing capacity violations in the test weeks if those peaks slightlymove in time They are also less demanding in terms of computational costs Howeveraggregation forces the a same conguration for longer timeframes making the optimizationpossibly oblivious of fast dynamics in the demand

19

Figure 5 Time-Clustering resulting from [21]

In order to further balance the aggressive optimization process during the trainingphase of low aggregation instances we found empirically useful to set the Ck capacityvalues to

(maxtisinT

sumiisinA d

ti|K|

)middot 105 in each test That is one-hour time-slot instances

are optimized with lower capacity values

Test To ensure fairness in the comparison during the test phase only disaggregatedsolutions are considered That is independently on the aggregation used for training onlysolutions dened over the original fteen-minutes time-slots are compared Similarly thereference MEC capacity value was xed to

(maxtisinT

sumiisinA d

ti|K|

)middot110 in any comparison

Clearly neither the cost nor the capacity usage are guaranteed to remain the samewhen the planning obtained with training data is applied to test data as uctuations inthe demand may occur across weeks The quality of our solutions is therefore evaluatedaccording to two measures (i) the assignment and switching cost of the planning and (ii)

the amount of violations in capacity constraints both measured on test data The latteris computed as follows

maxtisinT

sumkisinK

maxsum

iisinA dtix

tik minus Ck 0

Ck

that is the overall amount of violation in capacity constraints as a relative value respectto the available capacity in the worst time-slot

These measures are computed for each plan by the validation module through simplesimulation on the seven weeks of test data

Advanced Clustering Benchmark An alternative to employing our ad-hoc techniqueon the optimization module would be to perform a more aggressive aggregation over timeproducing instances that are small enough to be optimized by CPLEX We experimentedon such an option adapting the temporal clustering solution presented in [21] to our needsSpecically we take the following steps (i) we generate a median week of mobile tracdemand by computing the median load recorded at each AP during every hour of the weekusing it as training data (ii) we perform two separate hierarchical clusterings respectivelyusing the total volume and normalized distance metrics introduced in [21] (iii) we ndthe intersection of the two cluster sets obtained at the previous point

Figure 5 shows the resulting clustering of one-hour time slots ve typical demandproles are identied which can be associated to working hours (denoted by 0 in thegure) relax hours in the late afternoons and weekends (1) morning commuting hours(2) night hours (3) and late evening hours (4) Very few time-slots are actually producedthis way allowing CPLEX to optimize the corresponding instances Consecutive time-slots

20

InstWeek

train 1 2 3 4 5 6 7

Bench-CPLEX 959 703 571 425 257 388 1468 951Bench-CG 959 676 548 408 245 410 1434 927

4h 209 154 172 066 000 254 1163 2923h 194 142 148 110 125 158 1107 2982h 220 258 199 119 226 282 1122 4151h 284 238 417 114 192 404 1065 547

Table 3 Time-Slot Peak Exceeded Capacity Over Available Capacity

belonging to the same cluster are then aggregated The aggregated instance is optimizedand the solution obtained in this way is then disaggregated in fteen-minute time-slotsplans as in the previous case during post-processing before being compared on test data

62 Experimental evaluation

Following the computational results of Section 5 our core optimization module alwaysemploys our Branch-and-Price as a heuristic (HBP) stopping its computation at the rootnode except for the aggregated instances produced by time-clustering Having |T | = 38these are manageable eciently even by general purpose solvers CPLEX 1263 ILP solverwas then used to solve them to proven optimality The scatter plot in Figure 6 summarizesour results Each point represents the outcome on a single week of test data Dierentshapes refer to dierent demand prole aggregation methods obtained by merging 1 2 3 or4 consecutive one-hour time slots as well as using the Advanced Clustering and CPLEX(Bench-CPLEX) The y axis coordinate of each point represents the capacity violationmeasure as introduced above the x axis coordinate of each point represents the solutioncost measure expressed as percentage value of that of the optimal solution employing theAdvanced Clustering Benchmark method Therefore negative (resp positive) percentagesmap to a performance improvement (resp reduction) with respect to the benchmarkAs a reference we report also the results obtained by using HBP instead of CPLEX foroptimizing the Advanced Clustering Benchmark instances (Bench-CG) The details aboutcapacity violation measures are reported also in Table 3 for each week in the training set(columns) and for each demand prole aggregation method (rows)

A rst remarkable result is that in all cases our HBP with sequential clustering allows forsolutions with less capacity violations In particular HBP with either four-hours or three-hours aggregation oer almost no capacity violations coming at the price of three to vepercent increase in solutions cost HBP with two-hours aggregation always outperforms thebenchmark method both in terms of exceeded capacity and in terms of solution costs HBPwith one-hour aggregation further decrease costs at the price of slightly higher capacityviolation

We also experimented on using the full BaP instead of the truncated HBP Our resultsare reported in Figure 7 no signicant change was observed Similarly no signicantchange was observed by using HBP instead of CPLEX on the benchmark clustering

63 Eect of periodic planning

Finally we measure the impact in solution switching costs yielded by choosing a periodmodel instead of a non-periodic one In Table 4 we report for each aggregation listedin the previous subsection the change in switching costs between inner time-slots of theweek (intra-week) between border time-slots of dierent weeks (inter-week) as well as thetotal switching cost the total assignment cost and the overall cost of the solution Using a

21

Figure 6 1-Week Plan - Time Aggreg Comparison

(a) Total Costs (b) Exceeded Capacity

Figure 7 Mean Costs And Exceeded Capacity - CG Root vs BaP

22

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 6: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

t = 1

A B

1 2 3

t = 2

A B

1 2 3

x12A x2

2B

y22AB

Figure 2 x and y variables

time together with corresponding user VMs migration patterns For the sake of readabilitywe focus on the single-assignment linear-plan variant a discussion on how to adapt ourmodels and methods to the other variants is provided in Section 46

Let us denote as A the set of APs and as K the set of MEC facilities We assumethe planning horizon to be discretized in a set T of time slots For each AP i isin A let usindicate as dti the mobile trac demand that has to be accommodated by AP i at timet isin T and as mik the physical distance between AP i and MEC facility k isin K Let Ck

be the capacity of MEC facility k isin K and lkprimekprimeprime be the network distance between MECfacilities kprime kprimeprime isin K We assume lkk = 0 for each k isin K where with network distance wemean a distance that can is directly proportional to the network latency (including packetprocessing latency at intermediate nodes) and the physical distance

Let xtik be binary variables taking value 1 if trac from AP i isin A at time t isin T is

routed to MEC facility k isin K 0 otherwise Let ytikprimekprimeprime be binary variables taking value1 if AP i isin A is associated to MEC facility kprime isin K at time t minus 1 and switches to MECfacility kprimeprime isin K at time t

Our Dynamic Assignment and Switching Problem (DASP) can be formulated as follows

min αsumtisinT

sumiisinA

sum(jk)isinKtimesK

dtiljkytijk + β

sumtisinT

sumiisinA

sumkisinK

dtimikxtik (1)

stsumiisinA

dtixtik le Ck forallt isin T forallk isin K (2)sum

kisinKxtik = 1 foralli isin Aforallt isin T (3)

xtik =sumlisinK

ytilk foralli isin Aforallt isin T 1 forallk isin K (4)

xtik =sumlisinK

yt+1ikl foralli isin Aforallt isin T T forallk isin K (5)

xtik isin 0 1 foralli isin A forallk isin Kforallt isin T (6)

ytikprimekprimeprime isin 0 1 foralli isin Aforallkprime kprimeprime isin Kforallt isin T (7)

the objective (1) aims at nding a trade-o between the minimization of network- anduser-related costs The former is generated by the change of AP-MEC facility associationsin consecutive time slots which produces control overhead due to the necessity of migratingVMs The latter is instead the latency experienced by the user with the current AP-MECfacility association Parameters α and β represent the relative weight of the network-and user-related costs in the objective function Constraints (2) impose that the overalldemand assigned to MEC facility k at time t does not exceed its capacity Constraints (3)impose that each AP is connected to a single MEC facility during a time slot Constraints(4) and (5) link x and y variables in a ow conservation fashion when xtik = 0 that is APi is not assigned to MEC facility k at time t they impose that no switching operation is

6

made when xtik = 1 instead they impose that a single switching operation assigns i to kat time t and reassigns it at time t+ 1 (possibly involving the same MEC facility in whichcase the switching cost is zero)

A sample instance with three APs (squares) two MEC facilities (circles) and two time-slots (left and right parts) is depicted in Figure 2 AP 2 is assigned to MEC facility A att = 1 and MEC facility B at time t = 2 therefore a switching operation from A to B needsto be performed

Model (1) (7) has a few interesting features

Observation 1 The DASP can be seen as a multi-period generalization of the Generalized

Assignment Problem (GAP)

In fact when |T | = 1 the DASP reduces to a GAP

Observation 2 For t gt 1 constraints (3) are redundant

Indeed for t gt 1 they are implied by constraints (4) and (5) andsum

kisinK x1ik = 1 for each

i isin A It is easy to check it by induction over t for each i isin A constraints (5) ensure thatif a k isin K exists such that xtminus1

ik = 1 thensum

lisinK ytikl = 1 then by aggregating constraints(4) we obtain that if

sumkisinK

sumlisinK ytikl = 1 then

sumkisinK xtik = 1 In turn since the x

variables are binarysum

kisinK xtik = 1 implies that a k isin K exists such that xtik = 1 All weneed to additionally enforce is the base case t = 1

Proposition 1 When all xtik variables take integer values the ytikl variables also (auto-

matically) take integer values in any feasible solution The converse is also true

In fact for each i isin A and each t isin T due to constraints (5) if xtik = 0 then yt+1ikl = 0 for

each l isin K If xtik = 1 assume by contradiction that a feasible solution exists containingfractional yt+1

ikl values each fractional yt+1ikl will appear in a dierent constraint of family (4)

that can be feasible only if xt+1ik = 1 for more than a single k isin K violating constraints (3)

yielding infeasibility and thus leading to a contradiction The converse is trivially impliedby both constraints (4) and (5)

That is in the search for optimal solutions by means of algorithms exploiting continuousrelaxations branching on ytikl variables is unnecessary

4 Optimization Algorithms

Unfortunately when the size of the MEC network is large even solving the continuousrelaxation of model (1) (7) turns out to be computationally hard Therefore we devisean ad-hoc exact solution approach based on decomposition

Following the Dantzig-Wolfe reformulation principle [22] let

P i = (xtik ytikl) (3) (4) (5) (6) (7)

represent the convex hull of the feasible region respect to constraints (3) (7) Let Ωi bethe set of corresponding extreme integer points and for each p isin Ωi let xtpik and ytpijk be

the coecients encoding point p Each element of P i can be represented as a linear convexcombination of points in Ωi Therefore we introduce a set of variables zp ge 0 expressingmultipliers in such a combination and we reformulate the continuous relaxation of (1) (7) as the following Master Problem (MP)

7

minsumiisinA

sumpisinΩi

(αsumtisinT

sum(jk)isinKtimesK

dtiljkytpijk + β

sumtisinT

sumkisinK

dtimikxtpik

)zp (8)

st minussumiisinA

sumpisinΩi

dtixtpik z

p ge minusCk forallt isin T forallk isin K (9)

sumpisinΩi

zp = 1 foralli isin A (10)

zp ge 0 (11)

The MP has an exponential number of variables We optimize it by column generationwe replace Ωi by a small representative subset Ωi (see subsection 41) and we solve theRestricted Master Problem (RMP) obtained in this way then for each i isin A we search ifany element of Ωi exists whose corresponding variable has negative reduced cost by solvinga pricing problem (see subsection 42) any such element is added to Ωi and the process isiterated Otherwise we stop the solution obtained by restricting to Ωi is optimal also forthe full problem

Such a solution provides a valid lower bound to the DASP It might indeed be fractionalIn such a case we run rounding heuristics (see subsection 43) to obtain a correspondingupper bound If upper and lower bounds do not match we rst perform probing topotentially x variables (see subsection 44) and then when needed we enter a recursivetree search phase (see subsection 45) Our algorithms can be easily adapted to the split-assignment and periodic-plan variants (see subsection 46)

41 Initialization

In order to populate the initial sets Ωi as well as obtaining an initial primal bound we runa simple greedy heuristic that builds the solution time-slot by time-slot and AP by APThe corresponding pseudo-code is reported as Algorithm 1 In particular for each timeslot APs are sorted by non-increasing demand and each AP is associated to a protableMEC facility following this order The choice for the most protable MEC facility to whichto associate an AP i at time t follows these rules let k be the MEC facility to which theAP i was associated in the previous time slot tminus 1

1 if t gt 1 and the demand of the AP i does not exceed the residual capacity of theMEC facility k assign i to k

2 otherwise nd the nearest MEC facility (in terms of distance mik) to which the APdemand does not exceed the residual capacity if no such a MEC facility exists stopin a FAIL state

This algorithm always terminates in O(|T ||A| log(|A|)|K|) time Unfortunately asfor a xed t the problem is a special instance of GAP even the problem of nding anarbitrary feasible solution is NP-Hard Indeed the algorithm might stop in a FAIL statewithout producing feasible solutions However in our computational experiments thatnever happened

Nevertheless to complete the population of the initial RMP we insert also a singledummy column of very high cost having coecient 0 in each constraint (9) This ensuresRMP feasibility also after branching

8

Algorithm 1 Greedy Binary AP-MEC facility assignment

ka = none foralla isin A MEC facility associated to AP a in previous time-slotfor all t isin T do

As = sortDec(dta|a isin A) sort AP for non-increasing demand at time tck = 0 forallk isin K used capacity of MEC facility kfor all a isin As do

k = ka rst choice is the previous assignmentif k = none or ck + dta le C then

k = nearestAvailable(a dta ck) get nearest MEC facility with enough residualcapacity

end if

xtak = 10

ck = ck + dta update used capacity of chosen MEC facilityif t gt 0 and k 6= ka thenytakak

= 10end if

ka = kend for

end for

42 Pricing algorithms

Let λtk be the (non-negative) dual variables corresponding to constraints (9) and ηi bethe (free) dual variables corresponding to constraints (10)

For each i isin A the problem of nding the element of Ωi corresponding to the variableof minimum reduced cost can be formulated as follows

minπi =minus ηi + αsumtisinT

sum(jk)isinKtimesK

dtiljky

tijk

+

+sumtisinT

sumkisinK

(βdt

imik + dt

iλtk)xtik

(12)

stsumkisinK

xtik

= 1 forallt isin T (13)

xtik

=sumjisinK

ytijk

forallt isin T 1forallk isin K (14)

xtik

=sumjisinK

yt+1ikj

forallt isin T Tforallk isin K (15)

x isin 0 1y isin 0 1 (16)

Proposition 2 The pricing problem (12) - (16) possesses the integrality property

In fact according to Observation 2 constraints (13) can be removed for t gt 1 and con-straints (14) used to replace xt

ikin (15) and then removed The remaining is basically a

network ow matrix which is known to be totally unimodular [22]On one hand Proposition 2 implies that the lower bound obtained by the MP through

column generation is equivalent to that obtained by optimally solving the continuous re-laxation of the original model (1) (7) On the other hand it allows to employ polynomialtime Linear Programming solution algorithms making us to expect the solution processto be fast Indeed we could exploit its structure even further as the elements of Ωi have a

9

Algorithm 2 Pricing Algorithm

for all i isin A do

c1k = a1

ik forallk isin K cost of path starting at MEC facility kp1k = k forallk isin K path starting at node kprime at timefor all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i

πlowast = c|T |klowast minus ηi

if πlowast lt 0minus ε thenadd variable related to minimum cost path pklowast to the model

end if

end for

particular combinatorial interpretation they correspond to all feasible association pathsthat is sequences of MEC facilities to which the AP i is assigned in consecutive time-slotsMore in details we build a directed layered graph G(NA) with a layer for each time-slotas follows Each layer has one node for each MEC facility each pair of nodes in consecutivelayers are connected by an arc Each node (t k) isin T times K modeling the assignment toMEC facility k at time t has an associated traversal cost given by atik = dti(βmik + λtk)while each arc connecting nodes (t j) and (t+ 1 k) has an associated traversal cost givenby btijk = dt+1

i αljk We also add a dummy source σ (resp sink τ) nodes having oneoutgoing arc to each node in layer t = 1 (resp one incoming arc from each node in layert = |T |) of zero cost Figure 3 sketches the structure of G for a certain AP i on a sampleinstance with two MEC facilities (A and B) a potential solution assigns i to A at timet = 1 to B at time t = 2 and so forth

In fact an optimal pricing solution corresponds to a shortest σ minus τ path in G

Proposition 3 For each i isin A the pricing problem can be solved in O(|T ||K|2) time

In fact for solving the pricing problems we devise a simple dynamic programming algo-rithm which is presented as Algorithm 2

t = 1

A

a1iAx1iA

B

t = 2

A

B

a2iBx2iB

t = |T |

A

a|T |iAx|T |iA

B

b2iAB

y2iAB

0 middot y3iBB

b|T |iBA

y|T |iBA

Figure 3 Pricing Problem Structure

10

Algorithm 3 Rounding heuristic

Input variable values x from a RMP fractional solutionOutput x = 0 y = 0 integer solutionfor all t isin T do

rk = Ck forallk isin K residual capacity of MEC facility kA = sort(AmaxkisinK xtik) sort the set of AP by non-increasing value of fractionalassignment to the most desirable MEC facilityfor all i isin A do

consider APs in such an orderif k isin K|dti le rk = empty thenFAIL no MEC facility with enough capacity exit with FAIL status

else

k = arg maxkisinK|dtilerk xtik get highest assignment

xtik = 10 x assignment with MEC facility

rk = rk minus dti update residual capacityend if

end for

end for

y = compute_shift(x) compute y variable values to be consistent with x

43 Rounding Heuristics

In order to nd good primal bounds a simple rounding algorithm (presented in Algorithm3) is executed at every column generation iteration Let z be the (possibly fractional)variable values of the RMP at a certain iteration we can compute the values of thecorresponding x variables as

xtik =sumpisinΩi

xtpik zp

For each time-slot t isin T for each APs i the highest xtik is retrieved For each AP sorted bydescending highest x value the assignment is made with the MEC facility correspondingto the highest x and with enough residual capacity Although no guarantee in feasibilityis given our computational experiments revealed it to be highly eective

44 Variables xing

We also experimented with probing techniques to potentially perform problem reductionduring the column generation process In particular we employed Lagrangean probing tox variables at a pricing level The main idea is to run the Pricing Problem ResolutionAlgorithm twice the rst time as described in 2 that is considering each layer t = 1 |T |in forward order the second time instead considering the layers in backward order that is

initializing c|T |k = 0 and updating each ctk = minklowastisinK ct+1

klowast +dt+1i (αlkklowast +βmiklowast +λt+1klowast)

In this way the cost χtk of the best path in which at time t an assignment is forced to MEC

facility k can be computed by summing the forward and backward labels ctkA valid dual bound LB can be computed at each column generation iteration as

LB = ρminussumiisinA

πi

where ρ is the value of the last RMP solution Let UB be the value of the best primal(integer) solution found so far

For each i isin A let s(t) be the MEC facility at which AP i has been assigned at time tin the optimal pricing solution returned by Algorithm 2 We perform the following xes

11

bull for each t isin T and k isin K if LB + χts(t) minus χ

tk ge UB then if assignment to MEC

facility k was forced no improvement in the primal bound would ever be obtainedTherefore node k can be removed from layer t without losing optimization powerthat means xing variable xtik = 0 in the original model

bull for each t isin T if LB+χts(t)minusminkisinKs(t) χ

tk ge UB then if such an assignment was

forbidden no improvement in the primal bound would ever be obtained Thereforeall nodes k 6= s(t) can be removed from layer t without losing optimization powerthat means xing variable xtis(t) = 1 in the original model

A similar xing procedure is run on arcs of the pricing graph thereby allowing to x ytkprimeprimekprimevariables in the original model

From an implementation point of view we always allowed a relative tolerance of 5eminus4in the xing test to prevent numerical troubles We run the xing procedure at the endof the column generation process of every node of the search tree additionally at the rootnode we run it whenever an improving primal solution is found

45 Branch-and-price

When upper and lower bounds at the end of the column generation process do not matchwe proceed to branching We branch on original variables x rather than on variables ofthe MP Fixing variable xtik to value 0 corresponds to xing to value 0 all variables zp isin Ωi

that assign AP i to MEC facility k at time t Similarly xing variable xtik to value 1corresponds to xing to value 0 all variables zp isin Ωi that do not assign AP i to MECfacility k at time t Neither forbidding nor forcing assignments change the structure of thepricing problem these conditions are easily included within the dynamic programmingalgorithm by simply removing nodes from the pricing graph According to Proposition 1no branching on y variables is needed

We considered the following two branching rules

1 considering all possible assignments of AP i at time t take the pair (iprime tprime) which hasgreatest number of variables xt

primeiprimek with strictly positive value that is that AP whose

assignment at a certain time is split among the greatest number of dierent MECfacilities Sort variables xt

primeiprimek by non-increasing value and partition this ordered set

in two the rst set containing variables in the odd positions of ordered set and thesecond set containing variables in the even positions A left (resp right) branch iscreated xing to zero all the variables in the rst (resp second) set

2 select the variable xtik whose value is closer to 05 ie the variable related to the mostfractional assignment Create two branches xing the selected variable respectivelyto value 0 or to value 1

We always consider branching rule 1 rst triggering rule 2 only when all (i t) pairshave at most two corresponding fractional xtik variables During preliminary experimentsa simple depth-rst exploration policy showed to perform best When rule 2 is used thextik = 1 branch is explored rst

46 Split assignment and periodic plans

We rst observe that global optimal split-assignment plans can be obtained by simplystopping at the root node and considering the (potentially fractional) solution of thecolumn generation master problem

12

Furthermore as discussed in the Introduction the application is periodic in naturethe decision maker creates a plan that is meant to be repeated over time Such a peri-odic variant can be managed by minor modications to our models and algorithms Inparticular model (1) (5) needs to be enriched adding constraints

x1ik =

sumlisinK

y|T |ilk foralli isin A forallk isin K

to the family (4) and constraints

x|T |ik =

sumlisinK

y1ikl foralli isin Aforallk isin K

to the family (5) these link the assignments made in the last and rst time-slots assign-ment hence closing the period of assignments The column generation master problemdoes not change The pricing problem instead requires to be adapted as cycles ratherthan paths need to be generated We therefore modied our pricing routine as presentedin Algorithm 4 Exactly solving the modied pricing problem via dynamic programmingrequires O(|T ||K|3) time for every AP The main idea is to tentatively x the assignmentat time 1 to all the |K| possible MEC facilities to solve each reduced problem and tochoose the best among the |K| solutions found in this way Since it is possible to create alayer |T | + 1 as a copy of the layer t = 1 after xing the assignment the pricing problemreduces to nding a minimum cost shortest path from the single xed node in layer t = 1to the single xed node in layer |T |+ 1

Any other detail of the algorithm remains unchanged

5 Computational evaluation

We implemented our algorithms in C++ using CPLEX 126 [23] to solve the master LPsubproblems running tests on an Intel i7 4GHz workstation equipped with 32 GB of RAM

Our rst investigation is computational benchmarking the eectiveness of our algo-rithms in comparison to the branch-and-cut ILP solver of CPLEX using formulation (1) (7)

51 Dataset

We have access to a dataset of real-world mobile trac demands [24] encompassing twomonths with a time granularity of fteen minutes The geographical area covered by thedataset extends for more than 2500 km2 The demand is not associated to access points ofthe mobile network whose location is unknown but rather to a geographical tessellationof the area in 1419 rectangular cells of dierent sizes with smaller (and more dense) cellsin the center of the area We select the centers of every rectangular cell as elements of theset A of access points locations

Then we create ten clusters of access points using a standard k-means model takingas input the euclidean distances between APs optimizing it with the classical heuristicsof [25] The centers of these clusters are selected to dene the locations of the set K ofMEC facilities The network distances mik and ljk are computed as euclidean distancesaccordingly and rounded to the nearest integer (hence supposing packet processing latencyis negligible)

Given this network infrastructure we generate dierent problem instances by randomlydrawing demands in each AP in dierent ways

In details we create two random datasets

13

Algorithm 4 Periodic Pricing Algorithm

for all i isin A do

πlowast = +infinplowast = emptyfor all k isin K do

c1k

= a1ikx MEC facility k at t = 1

c1k = +infin forallk isin K k forbid MEC facility k at t = 1p1k = k forallk isin K path starting at node k at time t = 1for all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

for all k isin K do

c|T |k = c

|T |k + b1

ikk+ a1

ikend for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i when starting at k

if c|T |klowast minus ηi lt πlowast then

πlowast = c|T |klowast minus ηi

plowast = p|T |klowast

end if

end for

if πlowast lt 0 thenadd variable related to minimum cost path plowast to the model

end if

end for

Dataset A is synthetic and aims at stressing our algorithms from a pure computational pointof view We consider a planning horizon of one day split in 96 consecutive fteen-minute time slots Let d (resp d) be the minimum (resp maximum) demandobserved in any AP and time slot in [24] Demands dti for each AP i at time t aredrawn uniformly at random independently in each fteen-minute time slot in therange [d d] That is demands do not follow particular trends even if falling into thesame range of real data

Dataset B is realistic reproducing the main features of the starting data We choose a singleday at random from the two months included in the dataset [24] we perform a directquery to the demand of each AP at each time slot in that day and then we perturball demands with noise uniformly drawn at random in the interval [minus5+5]

All demand values are rounded to the nearest integer Besides the initial horizon of 96time-slots we consider planning time horizons of 48 24 and 12 time-slots by mergingrespectively 2 3 or 4 subsequent time-slots setting their demands as the average on themerged time-slots Five instances are generated in both datasets A and B

We also consider a dataset of raw real demands

Dataset C is obtained by considering a random week taken from the dataset [24] and mergingthe time-slots in either 168 slots of 1 hour each (1h) 84 slots of 2 hours (2h) 56

14

slots of 3 hours (3h) 42 slots of 4 hours (4h) or 38 slots obtained by the clusteringmethods described in subsection 62 (clust) The demand of each AP in each slot tis taken as the maximum over the the fteen-minute time slots merged in t

For every instance each MEC facility capacity Ck is set to(

maxtisinTsum

iisinA dti|K|

)middot105

and parameters α and β are both set to value 05

52 Column Generation proling

We rst report on the computational behaviour of our Column Generation algorithm (CG)In this test we consider the single-assignment non-periodic variant

In Tables 1a 1b and 1c we include the details of the root node column generationprocess for each instance of datasets A B and C respectively A best known solutionvalue zlowast is taken from a previous run of exact algorithms (see subsection 53) Besidesinstance details (columns `|T | and `inst) we include the relative gap between the primalbound value (resp dual bound value) and zlowast the number of column generation iterationsneeded to reach convergence the overall CPU time spent for solving the pricing problemsand the CPU time required to complete the column generation process As benchmarkwe also report the performances of CPLEX 1263 ILP solver when stopped at the rootnode including the corresponding primal and dual bound gaps and the time required tocomplete its root node computation

We set a time limit of two hours to each computation marking in the tables as `TLthose computations hitting that limit

We rst note that CG has good convergence behaviour less than 90 iterations arealways enough to complete the computation The high number of pricing subproblemsyields to a high number of generated columns but thanks to our dynamic programmingalgorithm the overall pricing time remains low (below 10 seconds in all cases but one)

By rounding in CG we are always able to obtain good integer solutions (that is below1 from best known solutions in all cases but 4) CPLEX is not consistent in a fewinstances (eg block |T | = 48 of the Realistic Dataset B) it is able to nd very goodprimal solutions while in other cases (eg block |T | = 24 of Dataset B or block |T | = 48of Dataset A) only very weak primal bounds can be obtained

We also observe that CG and CPLEX dual bounds are always similar That is on onehand the integrality property of our pricing problem warns that no improvement can beobtained by CG with respect to the continuous relaxation of the original formulation onthe other hand CPLEX generic cuts have no signicant eect on strengthening the samecontinuous relaxation bound

Finally in more than 37 of the instances CPLEX is unable to terminate the rootnode computation within the time limit while CG always completes the computationWhen both CG and CPLEX terminate the CPU time required by CG is up to two ordersof magnitude lower that required by CPLEX

We highlight that the (possibly fractional) solution found by CG is a global optimalsolution for the split-assignment model variants no further computing is needed in thatcase

53 Exactly solving the DASP

In a second round of experiments we let both our Branch-and-Price (BaP) and CPLEX126 ILP solver (CPX) run for two hours also exploring their branching trees In Tables2a 2b 2c we report the results of this experiment on each instance of datasets A B and Crespectively In each Table we report the relative gap between the primal bound PB (respthe dual bound DB) at the end of computation and the best known integer solution valuezlowast and the number of explored branch-and-bound nodes for both our BaP and CPX

15

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0130 1212 19 10808 0 4 0724 1197 8642 0735 1955 14 8715 0 4 244932 1949 4103 0793 1351 13 7074 0 3 0167 1345 3284 0945 0999 14 7515 0 3 2824 0994 3445 1206 1630 13 7892 0 3 3052 1627 356

24

1 0061 1475 26 17027 1 15 0249 1471 28262 1202 1537 19 11429 1 11 274940 1533 19433 0867 2019 19 12296 0 13 267368 2015 18524 0846 1864 19 12525 0 12 123542 1860 18615 0909 1764 18 12077 0 12 267486 1761 1781

48

1 0463 1819 41 27035 6 114 246767 1816 TL2 0221 2468 32 20897 1 90 270039 2465 TL3 0746 2336 33 21468 4 95 269274 2332 TL4 0295 2036 31 20496 0 74 282422 2033 TL5 0265 2514 35 22707 0 106 258676 2510 TL

96

1 0176 2274 68 47500 5 949 259445 - TL2 0055 2633 59 42621 6 913 - - TL3 0034 2779 61 43107 9 863 - - TL4 0187 2528 61 42692 5 850 - - TL5 0124 2568 60 41913 6 815 272834 - TL

(a) Synthetic Dataset A

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0809 0107 12 6542 1 2 0055 0105 1382 0917 0112 11 6150 0 2 0924 0110 1463 1043 0125 12 6611 0 2 0155 0123 1584 0797 0103 11 5843 0 2 349538 0102 1205 0781 0102 11 6548 0 2 349089 0101 113

24

1 0766 0425 15 9713 0 4 305781 0424 5322 0481 0280 16 9715 0 3 306562 0278 5873 0613 0576 15 9492 1 3 304188 0575 6224 0960 0183 17 10345 0 3 306874 0182 6155 0648 0221 16 10217 0 4 307199 0220 413

48

1 1031 0264 27 15539 1 16 0253 0262 21132 0782 0344 25 15636 2 15 0557 0343 22493 0500 0363 26 15286 1 15 0 0362 26744 0741 0314 26 15791 3 18 0049 0312 24455 0829 0296 29 16294 0 15 0651 0295 1878

96

1 0077 0933 51 29786 6 130 - - TL2 0315 0766 43 28272 3 125 - - TL3 0249 0853 46 28221 9 129 - - TL4 0395 0692 49 29320 5 126 - - TL5 0154 0726 48 29005 4 120 - - TL

(b) Realistic Dataset B

CG Root CPLEX Root

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast tclust 0590 0092 21 12928 2 9 0429 0091 4684h 0630 0272 30 20690 2 25 0175 0271 51913h 0513 0471 37 25960 3 58 0766 0470 28142h 0192 0724 50 31706 2 133 - - TL1h 0097 0905 85 56322 18 953 - - TL

(c) Raw Real Demand Dataset C

Table 1 Computational Results - CG Root vs CPLEX Root

16

(a) BaP vs CPLEX (b) BaP Detail

Figure 4 Primal Bound

We report no computing time because surprisingly neither BaP nor CPX could bringthe duality gap below 01 within the time limit except for instance 4 with |T | = 12 ofDataset A 5 with |T | = 12 of Dataset B and clust of Dataset C that CPX is able toclose (but still using more than 90 of the available CPU time)

In terms of nal dual bounds the results of both methods are very similar Our expla-nation for this phenomenon is the following the root dual bound is already very close tothe integer optimum value and therefore the real challenge is to nd an optimal primalsolution At the same time the high number of time-slots yields values of primal solutionson the order of magnitude of 108 as soon as the duality gap becomes small numericalapproximation issues prevent to coherently explore the remaining search tree

In terms of searching for good primal solutions in the inner nodes of the branching treeinstead BaP and CPX are not equivalent in Figure 4a we plot the typical primal boundvalue (y axis) improvements as the computation (x axis) proceeds (instance 1 |T | = 24dataset B) for the sake of comparison the x axis report relative values with respect tothe overall number of branch-and-bound nodes for CPX and the overall number of columngeneration iterations for BaP Eventually CPX is more numerically stable oering aftertwo hours of computation primal solutions values a few tenths of percentage points better(up to 05 of improvement) In turn BaP allows to nd near-optimal integer solutionsmuch more quickly that is in fact already at the root node The behaviour of BaP in theearly steps of computation is further detailed in Figure 4b the quality of the primal boundsteeply increase during the column generation iterations at the root node

As a synthetic nal assessment of our computational evaluation we can report thatwhen the number of time-slots is small and the planner has no particular need for quickoptimization algorithms both BaP and CPLEX might be viable alternatives to optimizethe DASP

BaP is faster especially when used heuristically stopping the computation either atthe root node or after exploring a few nodes of the branch-and-bound tree This makes itwell suited also when quick optimization is needed like in what-if-analyses

When the number of time-slots increases however using CPLEX is not an optionanymore

We repeated all the experiments with a periodic-plan model without nding substantialchanges in the computational behaviour of the methods Indeed the periodic-plan modelhas main impact only in the structure of the pricing problem of BaP but pricing involvesonly a small amount of the overall computational eort

17

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0 1208 17661 0411 1197 2032 0 1951 17038 0777 1949 3713 0198 1347 18572 0 1345 4524 0370 0997 19198 0 0993 5485 0020 1626 18013 0 1626 699

24

1 0 1473 8576 0249 1471 142 0 1535 8657 0855 1533 243 0 2018 9349 267368 2015 464 0 1863 9353 123542 1860 385 0 1763 10204 267486 1761 40

48

1 0 1818 2123 246767 1816 02 0 2468 2724 270039 2465 03 0 2335 2558 269274 2332 04 0 2036 3133 282422 2033 05 0 2514 2528 258676 2510 0

96

1 0 2274 113 259445 - TL2 0 2633 217 - - TL3 0 2779 168 - - TL4 0 2528 135 - - TL5 0 2568 207 272834 - TL

(a) Synthetic Dataset A

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0160 0105 35112 0 0103 23982 0235 0111 30708 0 0109 25793 0320 0124 26374 0 0122 18184 0406 0102 26490 0 0100 19325 0267 0100 24714 0 0098 1844

24

1 0133 0424 17961 0 0423 1442 0274 0279 18354 0 0278 1093 0 0576 20016 0717 0574 2254 0353 0183 17481 0 0182 2325 0284 0220 20446 0 0220 522

48

1 0312 0263 10738 0 0262 202 0249 0343 10465 0 0343 183 0113 0363 10482 0 0360 174 0227 0313 10321 0 0311 165 0226 0295 10818 0 0295 21

96

1 0 0932 3133 - - TL2 0 0765 3193 - - TL3 0 0852 3398 - - TL4 0 0691 3099 - - TL5 0 0726 3299 - - TL

(b) Realistic Dataset B

B-amp-P CPLEX

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

clust 0376 0091 13849 0 0091 8124h 0442 0272 8985 0 0270 303h 0403 0471 5086 0 0470 332h 0 0724 2864 - - TL1h 0 0905 370 - - TL

(c) Raw Real Demand Dataset C

Table 2 Computational Results - BaP vs CPLEX

18

6 Practical case study

Our nal aim is to assess the eectiveness of our optimization core in the context of thedata-driven MEC management optimization framework To this end we rely on the com-plete real-world dataset in [24] and run actual analytics on it so as to generate the demandproles We then feed our optimization models with such proles which ultimately letsus measure the quality of the assignment plans it returns in a practical case

61 Experimental setup

The real-world mobile trac data covers a planning period of eight weeks split in a set Tof fteen-minute snapshots The rst approach we take in order to infer demand prolesexploits a well-known property of mobile trac ie its weekly periodicity [26] Namely asingle week is taken as training data and the mobile trac recorded in each fteen-minutetime-slot is considered as a prole The tasks performed by the data mining and validationmodules are kept as simple as possible in order to highlight the eect of the optimizationcore

Training Conceptually the resulting 4 times 24 times 7 = 672 training proles are then usedas input for our optimization algorithms By optimizing over the training data we obtaina planning solution which becomes our assignment plan we apply such a plan to theremaining seven weeks of test data As an example optimizing over training data yields asolution including a specic assignment of APs to MEC facilities on Monday between 700am and 715 am we then blindly apply the same assignments on the 700-715 am timeslots of each Monday in the test data presuming that the demand conguration is similaron all Mondays at the same time In a sense this is a worst-case situation in which thedecision maker simply observes the system for one week before deciding on the planningfor the remaining weeks

Practically we do not directly use the 672 fteen-minutes time-slots for training Weassume instead that the preprocessing and data-mining module produces suitable ag-gregations We experimented therefore with simple aggregation of the proles mergingtime-slots sequentially over 1 2 3 or 4 hours Each aggregation step was performed byconsidering in each AP and in each aggregated time-slot the maximum demand value ofthat AP over the corresponding base time-slots The optimized solution was then dis-aggregated in post-processing simply replicating the same plan over the fteen-minutestime-slots composing each aggregated time-slot By choosing the maximum demand valuesduring aggregation we ensure that our optimized solutions remain feasible after disaggre-gation

It is apparent that less aggregated proles entail a higher potential for optimizationin the baseline scenario the assignment of APs to MEC facilities can be changed every15 minutes possibly assigning to the same MEC facility APs that experience very highpeaks of demand in subsequent time slots They are however more prone to overttingas peaks in particular hours of the training week do not necessarily correspond to peaksin the corresponding hour of testing weeks In addition they are more clearly expensivefrom a computational standpoint

More aggregated instances instead are more conservative two APs with very highdemand peaks in the same four-hours time slot cannot be assigned to the same MECfacility thus possibly preventing capacity violations in the test weeks if those peaks slightlymove in time They are also less demanding in terms of computational costs Howeveraggregation forces the a same conguration for longer timeframes making the optimizationpossibly oblivious of fast dynamics in the demand

19

Figure 5 Time-Clustering resulting from [21]

In order to further balance the aggressive optimization process during the trainingphase of low aggregation instances we found empirically useful to set the Ck capacityvalues to

(maxtisinT

sumiisinA d

ti|K|

)middot 105 in each test That is one-hour time-slot instances

are optimized with lower capacity values

Test To ensure fairness in the comparison during the test phase only disaggregatedsolutions are considered That is independently on the aggregation used for training onlysolutions dened over the original fteen-minutes time-slots are compared Similarly thereference MEC capacity value was xed to

(maxtisinT

sumiisinA d

ti|K|

)middot110 in any comparison

Clearly neither the cost nor the capacity usage are guaranteed to remain the samewhen the planning obtained with training data is applied to test data as uctuations inthe demand may occur across weeks The quality of our solutions is therefore evaluatedaccording to two measures (i) the assignment and switching cost of the planning and (ii)

the amount of violations in capacity constraints both measured on test data The latteris computed as follows

maxtisinT

sumkisinK

maxsum

iisinA dtix

tik minus Ck 0

Ck

that is the overall amount of violation in capacity constraints as a relative value respectto the available capacity in the worst time-slot

These measures are computed for each plan by the validation module through simplesimulation on the seven weeks of test data

Advanced Clustering Benchmark An alternative to employing our ad-hoc techniqueon the optimization module would be to perform a more aggressive aggregation over timeproducing instances that are small enough to be optimized by CPLEX We experimentedon such an option adapting the temporal clustering solution presented in [21] to our needsSpecically we take the following steps (i) we generate a median week of mobile tracdemand by computing the median load recorded at each AP during every hour of the weekusing it as training data (ii) we perform two separate hierarchical clusterings respectivelyusing the total volume and normalized distance metrics introduced in [21] (iii) we ndthe intersection of the two cluster sets obtained at the previous point

Figure 5 shows the resulting clustering of one-hour time slots ve typical demandproles are identied which can be associated to working hours (denoted by 0 in thegure) relax hours in the late afternoons and weekends (1) morning commuting hours(2) night hours (3) and late evening hours (4) Very few time-slots are actually producedthis way allowing CPLEX to optimize the corresponding instances Consecutive time-slots

20

InstWeek

train 1 2 3 4 5 6 7

Bench-CPLEX 959 703 571 425 257 388 1468 951Bench-CG 959 676 548 408 245 410 1434 927

4h 209 154 172 066 000 254 1163 2923h 194 142 148 110 125 158 1107 2982h 220 258 199 119 226 282 1122 4151h 284 238 417 114 192 404 1065 547

Table 3 Time-Slot Peak Exceeded Capacity Over Available Capacity

belonging to the same cluster are then aggregated The aggregated instance is optimizedand the solution obtained in this way is then disaggregated in fteen-minute time-slotsplans as in the previous case during post-processing before being compared on test data

62 Experimental evaluation

Following the computational results of Section 5 our core optimization module alwaysemploys our Branch-and-Price as a heuristic (HBP) stopping its computation at the rootnode except for the aggregated instances produced by time-clustering Having |T | = 38these are manageable eciently even by general purpose solvers CPLEX 1263 ILP solverwas then used to solve them to proven optimality The scatter plot in Figure 6 summarizesour results Each point represents the outcome on a single week of test data Dierentshapes refer to dierent demand prole aggregation methods obtained by merging 1 2 3 or4 consecutive one-hour time slots as well as using the Advanced Clustering and CPLEX(Bench-CPLEX) The y axis coordinate of each point represents the capacity violationmeasure as introduced above the x axis coordinate of each point represents the solutioncost measure expressed as percentage value of that of the optimal solution employing theAdvanced Clustering Benchmark method Therefore negative (resp positive) percentagesmap to a performance improvement (resp reduction) with respect to the benchmarkAs a reference we report also the results obtained by using HBP instead of CPLEX foroptimizing the Advanced Clustering Benchmark instances (Bench-CG) The details aboutcapacity violation measures are reported also in Table 3 for each week in the training set(columns) and for each demand prole aggregation method (rows)

A rst remarkable result is that in all cases our HBP with sequential clustering allows forsolutions with less capacity violations In particular HBP with either four-hours or three-hours aggregation oer almost no capacity violations coming at the price of three to vepercent increase in solutions cost HBP with two-hours aggregation always outperforms thebenchmark method both in terms of exceeded capacity and in terms of solution costs HBPwith one-hour aggregation further decrease costs at the price of slightly higher capacityviolation

We also experimented on using the full BaP instead of the truncated HBP Our resultsare reported in Figure 7 no signicant change was observed Similarly no signicantchange was observed by using HBP instead of CPLEX on the benchmark clustering

63 Eect of periodic planning

Finally we measure the impact in solution switching costs yielded by choosing a periodmodel instead of a non-periodic one In Table 4 we report for each aggregation listedin the previous subsection the change in switching costs between inner time-slots of theweek (intra-week) between border time-slots of dierent weeks (inter-week) as well as thetotal switching cost the total assignment cost and the overall cost of the solution Using a

21

Figure 6 1-Week Plan - Time Aggreg Comparison

(a) Total Costs (b) Exceeded Capacity

Figure 7 Mean Costs And Exceeded Capacity - CG Root vs BaP

22

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 7: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

made when xtik = 1 instead they impose that a single switching operation assigns i to kat time t and reassigns it at time t+ 1 (possibly involving the same MEC facility in whichcase the switching cost is zero)

A sample instance with three APs (squares) two MEC facilities (circles) and two time-slots (left and right parts) is depicted in Figure 2 AP 2 is assigned to MEC facility A att = 1 and MEC facility B at time t = 2 therefore a switching operation from A to B needsto be performed

Model (1) (7) has a few interesting features

Observation 1 The DASP can be seen as a multi-period generalization of the Generalized

Assignment Problem (GAP)

In fact when |T | = 1 the DASP reduces to a GAP

Observation 2 For t gt 1 constraints (3) are redundant

Indeed for t gt 1 they are implied by constraints (4) and (5) andsum

kisinK x1ik = 1 for each

i isin A It is easy to check it by induction over t for each i isin A constraints (5) ensure thatif a k isin K exists such that xtminus1

ik = 1 thensum

lisinK ytikl = 1 then by aggregating constraints(4) we obtain that if

sumkisinK

sumlisinK ytikl = 1 then

sumkisinK xtik = 1 In turn since the x

variables are binarysum

kisinK xtik = 1 implies that a k isin K exists such that xtik = 1 All weneed to additionally enforce is the base case t = 1

Proposition 1 When all xtik variables take integer values the ytikl variables also (auto-

matically) take integer values in any feasible solution The converse is also true

In fact for each i isin A and each t isin T due to constraints (5) if xtik = 0 then yt+1ikl = 0 for

each l isin K If xtik = 1 assume by contradiction that a feasible solution exists containingfractional yt+1

ikl values each fractional yt+1ikl will appear in a dierent constraint of family (4)

that can be feasible only if xt+1ik = 1 for more than a single k isin K violating constraints (3)

yielding infeasibility and thus leading to a contradiction The converse is trivially impliedby both constraints (4) and (5)

That is in the search for optimal solutions by means of algorithms exploiting continuousrelaxations branching on ytikl variables is unnecessary

4 Optimization Algorithms

Unfortunately when the size of the MEC network is large even solving the continuousrelaxation of model (1) (7) turns out to be computationally hard Therefore we devisean ad-hoc exact solution approach based on decomposition

Following the Dantzig-Wolfe reformulation principle [22] let

P i = (xtik ytikl) (3) (4) (5) (6) (7)

represent the convex hull of the feasible region respect to constraints (3) (7) Let Ωi bethe set of corresponding extreme integer points and for each p isin Ωi let xtpik and ytpijk be

the coecients encoding point p Each element of P i can be represented as a linear convexcombination of points in Ωi Therefore we introduce a set of variables zp ge 0 expressingmultipliers in such a combination and we reformulate the continuous relaxation of (1) (7) as the following Master Problem (MP)

7

minsumiisinA

sumpisinΩi

(αsumtisinT

sum(jk)isinKtimesK

dtiljkytpijk + β

sumtisinT

sumkisinK

dtimikxtpik

)zp (8)

st minussumiisinA

sumpisinΩi

dtixtpik z

p ge minusCk forallt isin T forallk isin K (9)

sumpisinΩi

zp = 1 foralli isin A (10)

zp ge 0 (11)

The MP has an exponential number of variables We optimize it by column generationwe replace Ωi by a small representative subset Ωi (see subsection 41) and we solve theRestricted Master Problem (RMP) obtained in this way then for each i isin A we search ifany element of Ωi exists whose corresponding variable has negative reduced cost by solvinga pricing problem (see subsection 42) any such element is added to Ωi and the process isiterated Otherwise we stop the solution obtained by restricting to Ωi is optimal also forthe full problem

Such a solution provides a valid lower bound to the DASP It might indeed be fractionalIn such a case we run rounding heuristics (see subsection 43) to obtain a correspondingupper bound If upper and lower bounds do not match we rst perform probing topotentially x variables (see subsection 44) and then when needed we enter a recursivetree search phase (see subsection 45) Our algorithms can be easily adapted to the split-assignment and periodic-plan variants (see subsection 46)

41 Initialization

In order to populate the initial sets Ωi as well as obtaining an initial primal bound we runa simple greedy heuristic that builds the solution time-slot by time-slot and AP by APThe corresponding pseudo-code is reported as Algorithm 1 In particular for each timeslot APs are sorted by non-increasing demand and each AP is associated to a protableMEC facility following this order The choice for the most protable MEC facility to whichto associate an AP i at time t follows these rules let k be the MEC facility to which theAP i was associated in the previous time slot tminus 1

1 if t gt 1 and the demand of the AP i does not exceed the residual capacity of theMEC facility k assign i to k

2 otherwise nd the nearest MEC facility (in terms of distance mik) to which the APdemand does not exceed the residual capacity if no such a MEC facility exists stopin a FAIL state

This algorithm always terminates in O(|T ||A| log(|A|)|K|) time Unfortunately asfor a xed t the problem is a special instance of GAP even the problem of nding anarbitrary feasible solution is NP-Hard Indeed the algorithm might stop in a FAIL statewithout producing feasible solutions However in our computational experiments thatnever happened

Nevertheless to complete the population of the initial RMP we insert also a singledummy column of very high cost having coecient 0 in each constraint (9) This ensuresRMP feasibility also after branching

8

Algorithm 1 Greedy Binary AP-MEC facility assignment

ka = none foralla isin A MEC facility associated to AP a in previous time-slotfor all t isin T do

As = sortDec(dta|a isin A) sort AP for non-increasing demand at time tck = 0 forallk isin K used capacity of MEC facility kfor all a isin As do

k = ka rst choice is the previous assignmentif k = none or ck + dta le C then

k = nearestAvailable(a dta ck) get nearest MEC facility with enough residualcapacity

end if

xtak = 10

ck = ck + dta update used capacity of chosen MEC facilityif t gt 0 and k 6= ka thenytakak

= 10end if

ka = kend for

end for

42 Pricing algorithms

Let λtk be the (non-negative) dual variables corresponding to constraints (9) and ηi bethe (free) dual variables corresponding to constraints (10)

For each i isin A the problem of nding the element of Ωi corresponding to the variableof minimum reduced cost can be formulated as follows

minπi =minus ηi + αsumtisinT

sum(jk)isinKtimesK

dtiljky

tijk

+

+sumtisinT

sumkisinK

(βdt

imik + dt

iλtk)xtik

(12)

stsumkisinK

xtik

= 1 forallt isin T (13)

xtik

=sumjisinK

ytijk

forallt isin T 1forallk isin K (14)

xtik

=sumjisinK

yt+1ikj

forallt isin T Tforallk isin K (15)

x isin 0 1y isin 0 1 (16)

Proposition 2 The pricing problem (12) - (16) possesses the integrality property

In fact according to Observation 2 constraints (13) can be removed for t gt 1 and con-straints (14) used to replace xt

ikin (15) and then removed The remaining is basically a

network ow matrix which is known to be totally unimodular [22]On one hand Proposition 2 implies that the lower bound obtained by the MP through

column generation is equivalent to that obtained by optimally solving the continuous re-laxation of the original model (1) (7) On the other hand it allows to employ polynomialtime Linear Programming solution algorithms making us to expect the solution processto be fast Indeed we could exploit its structure even further as the elements of Ωi have a

9

Algorithm 2 Pricing Algorithm

for all i isin A do

c1k = a1

ik forallk isin K cost of path starting at MEC facility kp1k = k forallk isin K path starting at node kprime at timefor all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i

πlowast = c|T |klowast minus ηi

if πlowast lt 0minus ε thenadd variable related to minimum cost path pklowast to the model

end if

end for

particular combinatorial interpretation they correspond to all feasible association pathsthat is sequences of MEC facilities to which the AP i is assigned in consecutive time-slotsMore in details we build a directed layered graph G(NA) with a layer for each time-slotas follows Each layer has one node for each MEC facility each pair of nodes in consecutivelayers are connected by an arc Each node (t k) isin T times K modeling the assignment toMEC facility k at time t has an associated traversal cost given by atik = dti(βmik + λtk)while each arc connecting nodes (t j) and (t+ 1 k) has an associated traversal cost givenby btijk = dt+1

i αljk We also add a dummy source σ (resp sink τ) nodes having oneoutgoing arc to each node in layer t = 1 (resp one incoming arc from each node in layert = |T |) of zero cost Figure 3 sketches the structure of G for a certain AP i on a sampleinstance with two MEC facilities (A and B) a potential solution assigns i to A at timet = 1 to B at time t = 2 and so forth

In fact an optimal pricing solution corresponds to a shortest σ minus τ path in G

Proposition 3 For each i isin A the pricing problem can be solved in O(|T ||K|2) time

In fact for solving the pricing problems we devise a simple dynamic programming algo-rithm which is presented as Algorithm 2

t = 1

A

a1iAx1iA

B

t = 2

A

B

a2iBx2iB

t = |T |

A

a|T |iAx|T |iA

B

b2iAB

y2iAB

0 middot y3iBB

b|T |iBA

y|T |iBA

Figure 3 Pricing Problem Structure

10

Algorithm 3 Rounding heuristic

Input variable values x from a RMP fractional solutionOutput x = 0 y = 0 integer solutionfor all t isin T do

rk = Ck forallk isin K residual capacity of MEC facility kA = sort(AmaxkisinK xtik) sort the set of AP by non-increasing value of fractionalassignment to the most desirable MEC facilityfor all i isin A do

consider APs in such an orderif k isin K|dti le rk = empty thenFAIL no MEC facility with enough capacity exit with FAIL status

else

k = arg maxkisinK|dtilerk xtik get highest assignment

xtik = 10 x assignment with MEC facility

rk = rk minus dti update residual capacityend if

end for

end for

y = compute_shift(x) compute y variable values to be consistent with x

43 Rounding Heuristics

In order to nd good primal bounds a simple rounding algorithm (presented in Algorithm3) is executed at every column generation iteration Let z be the (possibly fractional)variable values of the RMP at a certain iteration we can compute the values of thecorresponding x variables as

xtik =sumpisinΩi

xtpik zp

For each time-slot t isin T for each APs i the highest xtik is retrieved For each AP sorted bydescending highest x value the assignment is made with the MEC facility correspondingto the highest x and with enough residual capacity Although no guarantee in feasibilityis given our computational experiments revealed it to be highly eective

44 Variables xing

We also experimented with probing techniques to potentially perform problem reductionduring the column generation process In particular we employed Lagrangean probing tox variables at a pricing level The main idea is to run the Pricing Problem ResolutionAlgorithm twice the rst time as described in 2 that is considering each layer t = 1 |T |in forward order the second time instead considering the layers in backward order that is

initializing c|T |k = 0 and updating each ctk = minklowastisinK ct+1

klowast +dt+1i (αlkklowast +βmiklowast +λt+1klowast)

In this way the cost χtk of the best path in which at time t an assignment is forced to MEC

facility k can be computed by summing the forward and backward labels ctkA valid dual bound LB can be computed at each column generation iteration as

LB = ρminussumiisinA

πi

where ρ is the value of the last RMP solution Let UB be the value of the best primal(integer) solution found so far

For each i isin A let s(t) be the MEC facility at which AP i has been assigned at time tin the optimal pricing solution returned by Algorithm 2 We perform the following xes

11

bull for each t isin T and k isin K if LB + χts(t) minus χ

tk ge UB then if assignment to MEC

facility k was forced no improvement in the primal bound would ever be obtainedTherefore node k can be removed from layer t without losing optimization powerthat means xing variable xtik = 0 in the original model

bull for each t isin T if LB+χts(t)minusminkisinKs(t) χ

tk ge UB then if such an assignment was

forbidden no improvement in the primal bound would ever be obtained Thereforeall nodes k 6= s(t) can be removed from layer t without losing optimization powerthat means xing variable xtis(t) = 1 in the original model

A similar xing procedure is run on arcs of the pricing graph thereby allowing to x ytkprimeprimekprimevariables in the original model

From an implementation point of view we always allowed a relative tolerance of 5eminus4in the xing test to prevent numerical troubles We run the xing procedure at the endof the column generation process of every node of the search tree additionally at the rootnode we run it whenever an improving primal solution is found

45 Branch-and-price

When upper and lower bounds at the end of the column generation process do not matchwe proceed to branching We branch on original variables x rather than on variables ofthe MP Fixing variable xtik to value 0 corresponds to xing to value 0 all variables zp isin Ωi

that assign AP i to MEC facility k at time t Similarly xing variable xtik to value 1corresponds to xing to value 0 all variables zp isin Ωi that do not assign AP i to MECfacility k at time t Neither forbidding nor forcing assignments change the structure of thepricing problem these conditions are easily included within the dynamic programmingalgorithm by simply removing nodes from the pricing graph According to Proposition 1no branching on y variables is needed

We considered the following two branching rules

1 considering all possible assignments of AP i at time t take the pair (iprime tprime) which hasgreatest number of variables xt

primeiprimek with strictly positive value that is that AP whose

assignment at a certain time is split among the greatest number of dierent MECfacilities Sort variables xt

primeiprimek by non-increasing value and partition this ordered set

in two the rst set containing variables in the odd positions of ordered set and thesecond set containing variables in the even positions A left (resp right) branch iscreated xing to zero all the variables in the rst (resp second) set

2 select the variable xtik whose value is closer to 05 ie the variable related to the mostfractional assignment Create two branches xing the selected variable respectivelyto value 0 or to value 1

We always consider branching rule 1 rst triggering rule 2 only when all (i t) pairshave at most two corresponding fractional xtik variables During preliminary experimentsa simple depth-rst exploration policy showed to perform best When rule 2 is used thextik = 1 branch is explored rst

46 Split assignment and periodic plans

We rst observe that global optimal split-assignment plans can be obtained by simplystopping at the root node and considering the (potentially fractional) solution of thecolumn generation master problem

12

Furthermore as discussed in the Introduction the application is periodic in naturethe decision maker creates a plan that is meant to be repeated over time Such a peri-odic variant can be managed by minor modications to our models and algorithms Inparticular model (1) (5) needs to be enriched adding constraints

x1ik =

sumlisinK

y|T |ilk foralli isin A forallk isin K

to the family (4) and constraints

x|T |ik =

sumlisinK

y1ikl foralli isin Aforallk isin K

to the family (5) these link the assignments made in the last and rst time-slots assign-ment hence closing the period of assignments The column generation master problemdoes not change The pricing problem instead requires to be adapted as cycles ratherthan paths need to be generated We therefore modied our pricing routine as presentedin Algorithm 4 Exactly solving the modied pricing problem via dynamic programmingrequires O(|T ||K|3) time for every AP The main idea is to tentatively x the assignmentat time 1 to all the |K| possible MEC facilities to solve each reduced problem and tochoose the best among the |K| solutions found in this way Since it is possible to create alayer |T | + 1 as a copy of the layer t = 1 after xing the assignment the pricing problemreduces to nding a minimum cost shortest path from the single xed node in layer t = 1to the single xed node in layer |T |+ 1

Any other detail of the algorithm remains unchanged

5 Computational evaluation

We implemented our algorithms in C++ using CPLEX 126 [23] to solve the master LPsubproblems running tests on an Intel i7 4GHz workstation equipped with 32 GB of RAM

Our rst investigation is computational benchmarking the eectiveness of our algo-rithms in comparison to the branch-and-cut ILP solver of CPLEX using formulation (1) (7)

51 Dataset

We have access to a dataset of real-world mobile trac demands [24] encompassing twomonths with a time granularity of fteen minutes The geographical area covered by thedataset extends for more than 2500 km2 The demand is not associated to access points ofthe mobile network whose location is unknown but rather to a geographical tessellationof the area in 1419 rectangular cells of dierent sizes with smaller (and more dense) cellsin the center of the area We select the centers of every rectangular cell as elements of theset A of access points locations

Then we create ten clusters of access points using a standard k-means model takingas input the euclidean distances between APs optimizing it with the classical heuristicsof [25] The centers of these clusters are selected to dene the locations of the set K ofMEC facilities The network distances mik and ljk are computed as euclidean distancesaccordingly and rounded to the nearest integer (hence supposing packet processing latencyis negligible)

Given this network infrastructure we generate dierent problem instances by randomlydrawing demands in each AP in dierent ways

In details we create two random datasets

13

Algorithm 4 Periodic Pricing Algorithm

for all i isin A do

πlowast = +infinplowast = emptyfor all k isin K do

c1k

= a1ikx MEC facility k at t = 1

c1k = +infin forallk isin K k forbid MEC facility k at t = 1p1k = k forallk isin K path starting at node k at time t = 1for all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

for all k isin K do

c|T |k = c

|T |k + b1

ikk+ a1

ikend for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i when starting at k

if c|T |klowast minus ηi lt πlowast then

πlowast = c|T |klowast minus ηi

plowast = p|T |klowast

end if

end for

if πlowast lt 0 thenadd variable related to minimum cost path plowast to the model

end if

end for

Dataset A is synthetic and aims at stressing our algorithms from a pure computational pointof view We consider a planning horizon of one day split in 96 consecutive fteen-minute time slots Let d (resp d) be the minimum (resp maximum) demandobserved in any AP and time slot in [24] Demands dti for each AP i at time t aredrawn uniformly at random independently in each fteen-minute time slot in therange [d d] That is demands do not follow particular trends even if falling into thesame range of real data

Dataset B is realistic reproducing the main features of the starting data We choose a singleday at random from the two months included in the dataset [24] we perform a directquery to the demand of each AP at each time slot in that day and then we perturball demands with noise uniformly drawn at random in the interval [minus5+5]

All demand values are rounded to the nearest integer Besides the initial horizon of 96time-slots we consider planning time horizons of 48 24 and 12 time-slots by mergingrespectively 2 3 or 4 subsequent time-slots setting their demands as the average on themerged time-slots Five instances are generated in both datasets A and B

We also consider a dataset of raw real demands

Dataset C is obtained by considering a random week taken from the dataset [24] and mergingthe time-slots in either 168 slots of 1 hour each (1h) 84 slots of 2 hours (2h) 56

14

slots of 3 hours (3h) 42 slots of 4 hours (4h) or 38 slots obtained by the clusteringmethods described in subsection 62 (clust) The demand of each AP in each slot tis taken as the maximum over the the fteen-minute time slots merged in t

For every instance each MEC facility capacity Ck is set to(

maxtisinTsum

iisinA dti|K|

)middot105

and parameters α and β are both set to value 05

52 Column Generation proling

We rst report on the computational behaviour of our Column Generation algorithm (CG)In this test we consider the single-assignment non-periodic variant

In Tables 1a 1b and 1c we include the details of the root node column generationprocess for each instance of datasets A B and C respectively A best known solutionvalue zlowast is taken from a previous run of exact algorithms (see subsection 53) Besidesinstance details (columns `|T | and `inst) we include the relative gap between the primalbound value (resp dual bound value) and zlowast the number of column generation iterationsneeded to reach convergence the overall CPU time spent for solving the pricing problemsand the CPU time required to complete the column generation process As benchmarkwe also report the performances of CPLEX 1263 ILP solver when stopped at the rootnode including the corresponding primal and dual bound gaps and the time required tocomplete its root node computation

We set a time limit of two hours to each computation marking in the tables as `TLthose computations hitting that limit

We rst note that CG has good convergence behaviour less than 90 iterations arealways enough to complete the computation The high number of pricing subproblemsyields to a high number of generated columns but thanks to our dynamic programmingalgorithm the overall pricing time remains low (below 10 seconds in all cases but one)

By rounding in CG we are always able to obtain good integer solutions (that is below1 from best known solutions in all cases but 4) CPLEX is not consistent in a fewinstances (eg block |T | = 48 of the Realistic Dataset B) it is able to nd very goodprimal solutions while in other cases (eg block |T | = 24 of Dataset B or block |T | = 48of Dataset A) only very weak primal bounds can be obtained

We also observe that CG and CPLEX dual bounds are always similar That is on onehand the integrality property of our pricing problem warns that no improvement can beobtained by CG with respect to the continuous relaxation of the original formulation onthe other hand CPLEX generic cuts have no signicant eect on strengthening the samecontinuous relaxation bound

Finally in more than 37 of the instances CPLEX is unable to terminate the rootnode computation within the time limit while CG always completes the computationWhen both CG and CPLEX terminate the CPU time required by CG is up to two ordersof magnitude lower that required by CPLEX

We highlight that the (possibly fractional) solution found by CG is a global optimalsolution for the split-assignment model variants no further computing is needed in thatcase

53 Exactly solving the DASP

In a second round of experiments we let both our Branch-and-Price (BaP) and CPLEX126 ILP solver (CPX) run for two hours also exploring their branching trees In Tables2a 2b 2c we report the results of this experiment on each instance of datasets A B and Crespectively In each Table we report the relative gap between the primal bound PB (respthe dual bound DB) at the end of computation and the best known integer solution valuezlowast and the number of explored branch-and-bound nodes for both our BaP and CPX

15

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0130 1212 19 10808 0 4 0724 1197 8642 0735 1955 14 8715 0 4 244932 1949 4103 0793 1351 13 7074 0 3 0167 1345 3284 0945 0999 14 7515 0 3 2824 0994 3445 1206 1630 13 7892 0 3 3052 1627 356

24

1 0061 1475 26 17027 1 15 0249 1471 28262 1202 1537 19 11429 1 11 274940 1533 19433 0867 2019 19 12296 0 13 267368 2015 18524 0846 1864 19 12525 0 12 123542 1860 18615 0909 1764 18 12077 0 12 267486 1761 1781

48

1 0463 1819 41 27035 6 114 246767 1816 TL2 0221 2468 32 20897 1 90 270039 2465 TL3 0746 2336 33 21468 4 95 269274 2332 TL4 0295 2036 31 20496 0 74 282422 2033 TL5 0265 2514 35 22707 0 106 258676 2510 TL

96

1 0176 2274 68 47500 5 949 259445 - TL2 0055 2633 59 42621 6 913 - - TL3 0034 2779 61 43107 9 863 - - TL4 0187 2528 61 42692 5 850 - - TL5 0124 2568 60 41913 6 815 272834 - TL

(a) Synthetic Dataset A

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0809 0107 12 6542 1 2 0055 0105 1382 0917 0112 11 6150 0 2 0924 0110 1463 1043 0125 12 6611 0 2 0155 0123 1584 0797 0103 11 5843 0 2 349538 0102 1205 0781 0102 11 6548 0 2 349089 0101 113

24

1 0766 0425 15 9713 0 4 305781 0424 5322 0481 0280 16 9715 0 3 306562 0278 5873 0613 0576 15 9492 1 3 304188 0575 6224 0960 0183 17 10345 0 3 306874 0182 6155 0648 0221 16 10217 0 4 307199 0220 413

48

1 1031 0264 27 15539 1 16 0253 0262 21132 0782 0344 25 15636 2 15 0557 0343 22493 0500 0363 26 15286 1 15 0 0362 26744 0741 0314 26 15791 3 18 0049 0312 24455 0829 0296 29 16294 0 15 0651 0295 1878

96

1 0077 0933 51 29786 6 130 - - TL2 0315 0766 43 28272 3 125 - - TL3 0249 0853 46 28221 9 129 - - TL4 0395 0692 49 29320 5 126 - - TL5 0154 0726 48 29005 4 120 - - TL

(b) Realistic Dataset B

CG Root CPLEX Root

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast tclust 0590 0092 21 12928 2 9 0429 0091 4684h 0630 0272 30 20690 2 25 0175 0271 51913h 0513 0471 37 25960 3 58 0766 0470 28142h 0192 0724 50 31706 2 133 - - TL1h 0097 0905 85 56322 18 953 - - TL

(c) Raw Real Demand Dataset C

Table 1 Computational Results - CG Root vs CPLEX Root

16

(a) BaP vs CPLEX (b) BaP Detail

Figure 4 Primal Bound

We report no computing time because surprisingly neither BaP nor CPX could bringthe duality gap below 01 within the time limit except for instance 4 with |T | = 12 ofDataset A 5 with |T | = 12 of Dataset B and clust of Dataset C that CPX is able toclose (but still using more than 90 of the available CPU time)

In terms of nal dual bounds the results of both methods are very similar Our expla-nation for this phenomenon is the following the root dual bound is already very close tothe integer optimum value and therefore the real challenge is to nd an optimal primalsolution At the same time the high number of time-slots yields values of primal solutionson the order of magnitude of 108 as soon as the duality gap becomes small numericalapproximation issues prevent to coherently explore the remaining search tree

In terms of searching for good primal solutions in the inner nodes of the branching treeinstead BaP and CPX are not equivalent in Figure 4a we plot the typical primal boundvalue (y axis) improvements as the computation (x axis) proceeds (instance 1 |T | = 24dataset B) for the sake of comparison the x axis report relative values with respect tothe overall number of branch-and-bound nodes for CPX and the overall number of columngeneration iterations for BaP Eventually CPX is more numerically stable oering aftertwo hours of computation primal solutions values a few tenths of percentage points better(up to 05 of improvement) In turn BaP allows to nd near-optimal integer solutionsmuch more quickly that is in fact already at the root node The behaviour of BaP in theearly steps of computation is further detailed in Figure 4b the quality of the primal boundsteeply increase during the column generation iterations at the root node

As a synthetic nal assessment of our computational evaluation we can report thatwhen the number of time-slots is small and the planner has no particular need for quickoptimization algorithms both BaP and CPLEX might be viable alternatives to optimizethe DASP

BaP is faster especially when used heuristically stopping the computation either atthe root node or after exploring a few nodes of the branch-and-bound tree This makes itwell suited also when quick optimization is needed like in what-if-analyses

When the number of time-slots increases however using CPLEX is not an optionanymore

We repeated all the experiments with a periodic-plan model without nding substantialchanges in the computational behaviour of the methods Indeed the periodic-plan modelhas main impact only in the structure of the pricing problem of BaP but pricing involvesonly a small amount of the overall computational eort

17

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0 1208 17661 0411 1197 2032 0 1951 17038 0777 1949 3713 0198 1347 18572 0 1345 4524 0370 0997 19198 0 0993 5485 0020 1626 18013 0 1626 699

24

1 0 1473 8576 0249 1471 142 0 1535 8657 0855 1533 243 0 2018 9349 267368 2015 464 0 1863 9353 123542 1860 385 0 1763 10204 267486 1761 40

48

1 0 1818 2123 246767 1816 02 0 2468 2724 270039 2465 03 0 2335 2558 269274 2332 04 0 2036 3133 282422 2033 05 0 2514 2528 258676 2510 0

96

1 0 2274 113 259445 - TL2 0 2633 217 - - TL3 0 2779 168 - - TL4 0 2528 135 - - TL5 0 2568 207 272834 - TL

(a) Synthetic Dataset A

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0160 0105 35112 0 0103 23982 0235 0111 30708 0 0109 25793 0320 0124 26374 0 0122 18184 0406 0102 26490 0 0100 19325 0267 0100 24714 0 0098 1844

24

1 0133 0424 17961 0 0423 1442 0274 0279 18354 0 0278 1093 0 0576 20016 0717 0574 2254 0353 0183 17481 0 0182 2325 0284 0220 20446 0 0220 522

48

1 0312 0263 10738 0 0262 202 0249 0343 10465 0 0343 183 0113 0363 10482 0 0360 174 0227 0313 10321 0 0311 165 0226 0295 10818 0 0295 21

96

1 0 0932 3133 - - TL2 0 0765 3193 - - TL3 0 0852 3398 - - TL4 0 0691 3099 - - TL5 0 0726 3299 - - TL

(b) Realistic Dataset B

B-amp-P CPLEX

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

clust 0376 0091 13849 0 0091 8124h 0442 0272 8985 0 0270 303h 0403 0471 5086 0 0470 332h 0 0724 2864 - - TL1h 0 0905 370 - - TL

(c) Raw Real Demand Dataset C

Table 2 Computational Results - BaP vs CPLEX

18

6 Practical case study

Our nal aim is to assess the eectiveness of our optimization core in the context of thedata-driven MEC management optimization framework To this end we rely on the com-plete real-world dataset in [24] and run actual analytics on it so as to generate the demandproles We then feed our optimization models with such proles which ultimately letsus measure the quality of the assignment plans it returns in a practical case

61 Experimental setup

The real-world mobile trac data covers a planning period of eight weeks split in a set Tof fteen-minute snapshots The rst approach we take in order to infer demand prolesexploits a well-known property of mobile trac ie its weekly periodicity [26] Namely asingle week is taken as training data and the mobile trac recorded in each fteen-minutetime-slot is considered as a prole The tasks performed by the data mining and validationmodules are kept as simple as possible in order to highlight the eect of the optimizationcore

Training Conceptually the resulting 4 times 24 times 7 = 672 training proles are then usedas input for our optimization algorithms By optimizing over the training data we obtaina planning solution which becomes our assignment plan we apply such a plan to theremaining seven weeks of test data As an example optimizing over training data yields asolution including a specic assignment of APs to MEC facilities on Monday between 700am and 715 am we then blindly apply the same assignments on the 700-715 am timeslots of each Monday in the test data presuming that the demand conguration is similaron all Mondays at the same time In a sense this is a worst-case situation in which thedecision maker simply observes the system for one week before deciding on the planningfor the remaining weeks

Practically we do not directly use the 672 fteen-minutes time-slots for training Weassume instead that the preprocessing and data-mining module produces suitable ag-gregations We experimented therefore with simple aggregation of the proles mergingtime-slots sequentially over 1 2 3 or 4 hours Each aggregation step was performed byconsidering in each AP and in each aggregated time-slot the maximum demand value ofthat AP over the corresponding base time-slots The optimized solution was then dis-aggregated in post-processing simply replicating the same plan over the fteen-minutestime-slots composing each aggregated time-slot By choosing the maximum demand valuesduring aggregation we ensure that our optimized solutions remain feasible after disaggre-gation

It is apparent that less aggregated proles entail a higher potential for optimizationin the baseline scenario the assignment of APs to MEC facilities can be changed every15 minutes possibly assigning to the same MEC facility APs that experience very highpeaks of demand in subsequent time slots They are however more prone to overttingas peaks in particular hours of the training week do not necessarily correspond to peaksin the corresponding hour of testing weeks In addition they are more clearly expensivefrom a computational standpoint

More aggregated instances instead are more conservative two APs with very highdemand peaks in the same four-hours time slot cannot be assigned to the same MECfacility thus possibly preventing capacity violations in the test weeks if those peaks slightlymove in time They are also less demanding in terms of computational costs Howeveraggregation forces the a same conguration for longer timeframes making the optimizationpossibly oblivious of fast dynamics in the demand

19

Figure 5 Time-Clustering resulting from [21]

In order to further balance the aggressive optimization process during the trainingphase of low aggregation instances we found empirically useful to set the Ck capacityvalues to

(maxtisinT

sumiisinA d

ti|K|

)middot 105 in each test That is one-hour time-slot instances

are optimized with lower capacity values

Test To ensure fairness in the comparison during the test phase only disaggregatedsolutions are considered That is independently on the aggregation used for training onlysolutions dened over the original fteen-minutes time-slots are compared Similarly thereference MEC capacity value was xed to

(maxtisinT

sumiisinA d

ti|K|

)middot110 in any comparison

Clearly neither the cost nor the capacity usage are guaranteed to remain the samewhen the planning obtained with training data is applied to test data as uctuations inthe demand may occur across weeks The quality of our solutions is therefore evaluatedaccording to two measures (i) the assignment and switching cost of the planning and (ii)

the amount of violations in capacity constraints both measured on test data The latteris computed as follows

maxtisinT

sumkisinK

maxsum

iisinA dtix

tik minus Ck 0

Ck

that is the overall amount of violation in capacity constraints as a relative value respectto the available capacity in the worst time-slot

These measures are computed for each plan by the validation module through simplesimulation on the seven weeks of test data

Advanced Clustering Benchmark An alternative to employing our ad-hoc techniqueon the optimization module would be to perform a more aggressive aggregation over timeproducing instances that are small enough to be optimized by CPLEX We experimentedon such an option adapting the temporal clustering solution presented in [21] to our needsSpecically we take the following steps (i) we generate a median week of mobile tracdemand by computing the median load recorded at each AP during every hour of the weekusing it as training data (ii) we perform two separate hierarchical clusterings respectivelyusing the total volume and normalized distance metrics introduced in [21] (iii) we ndthe intersection of the two cluster sets obtained at the previous point

Figure 5 shows the resulting clustering of one-hour time slots ve typical demandproles are identied which can be associated to working hours (denoted by 0 in thegure) relax hours in the late afternoons and weekends (1) morning commuting hours(2) night hours (3) and late evening hours (4) Very few time-slots are actually producedthis way allowing CPLEX to optimize the corresponding instances Consecutive time-slots

20

InstWeek

train 1 2 3 4 5 6 7

Bench-CPLEX 959 703 571 425 257 388 1468 951Bench-CG 959 676 548 408 245 410 1434 927

4h 209 154 172 066 000 254 1163 2923h 194 142 148 110 125 158 1107 2982h 220 258 199 119 226 282 1122 4151h 284 238 417 114 192 404 1065 547

Table 3 Time-Slot Peak Exceeded Capacity Over Available Capacity

belonging to the same cluster are then aggregated The aggregated instance is optimizedand the solution obtained in this way is then disaggregated in fteen-minute time-slotsplans as in the previous case during post-processing before being compared on test data

62 Experimental evaluation

Following the computational results of Section 5 our core optimization module alwaysemploys our Branch-and-Price as a heuristic (HBP) stopping its computation at the rootnode except for the aggregated instances produced by time-clustering Having |T | = 38these are manageable eciently even by general purpose solvers CPLEX 1263 ILP solverwas then used to solve them to proven optimality The scatter plot in Figure 6 summarizesour results Each point represents the outcome on a single week of test data Dierentshapes refer to dierent demand prole aggregation methods obtained by merging 1 2 3 or4 consecutive one-hour time slots as well as using the Advanced Clustering and CPLEX(Bench-CPLEX) The y axis coordinate of each point represents the capacity violationmeasure as introduced above the x axis coordinate of each point represents the solutioncost measure expressed as percentage value of that of the optimal solution employing theAdvanced Clustering Benchmark method Therefore negative (resp positive) percentagesmap to a performance improvement (resp reduction) with respect to the benchmarkAs a reference we report also the results obtained by using HBP instead of CPLEX foroptimizing the Advanced Clustering Benchmark instances (Bench-CG) The details aboutcapacity violation measures are reported also in Table 3 for each week in the training set(columns) and for each demand prole aggregation method (rows)

A rst remarkable result is that in all cases our HBP with sequential clustering allows forsolutions with less capacity violations In particular HBP with either four-hours or three-hours aggregation oer almost no capacity violations coming at the price of three to vepercent increase in solutions cost HBP with two-hours aggregation always outperforms thebenchmark method both in terms of exceeded capacity and in terms of solution costs HBPwith one-hour aggregation further decrease costs at the price of slightly higher capacityviolation

We also experimented on using the full BaP instead of the truncated HBP Our resultsare reported in Figure 7 no signicant change was observed Similarly no signicantchange was observed by using HBP instead of CPLEX on the benchmark clustering

63 Eect of periodic planning

Finally we measure the impact in solution switching costs yielded by choosing a periodmodel instead of a non-periodic one In Table 4 we report for each aggregation listedin the previous subsection the change in switching costs between inner time-slots of theweek (intra-week) between border time-slots of dierent weeks (inter-week) as well as thetotal switching cost the total assignment cost and the overall cost of the solution Using a

21

Figure 6 1-Week Plan - Time Aggreg Comparison

(a) Total Costs (b) Exceeded Capacity

Figure 7 Mean Costs And Exceeded Capacity - CG Root vs BaP

22

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 8: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

minsumiisinA

sumpisinΩi

(αsumtisinT

sum(jk)isinKtimesK

dtiljkytpijk + β

sumtisinT

sumkisinK

dtimikxtpik

)zp (8)

st minussumiisinA

sumpisinΩi

dtixtpik z

p ge minusCk forallt isin T forallk isin K (9)

sumpisinΩi

zp = 1 foralli isin A (10)

zp ge 0 (11)

The MP has an exponential number of variables We optimize it by column generationwe replace Ωi by a small representative subset Ωi (see subsection 41) and we solve theRestricted Master Problem (RMP) obtained in this way then for each i isin A we search ifany element of Ωi exists whose corresponding variable has negative reduced cost by solvinga pricing problem (see subsection 42) any such element is added to Ωi and the process isiterated Otherwise we stop the solution obtained by restricting to Ωi is optimal also forthe full problem

Such a solution provides a valid lower bound to the DASP It might indeed be fractionalIn such a case we run rounding heuristics (see subsection 43) to obtain a correspondingupper bound If upper and lower bounds do not match we rst perform probing topotentially x variables (see subsection 44) and then when needed we enter a recursivetree search phase (see subsection 45) Our algorithms can be easily adapted to the split-assignment and periodic-plan variants (see subsection 46)

41 Initialization

In order to populate the initial sets Ωi as well as obtaining an initial primal bound we runa simple greedy heuristic that builds the solution time-slot by time-slot and AP by APThe corresponding pseudo-code is reported as Algorithm 1 In particular for each timeslot APs are sorted by non-increasing demand and each AP is associated to a protableMEC facility following this order The choice for the most protable MEC facility to whichto associate an AP i at time t follows these rules let k be the MEC facility to which theAP i was associated in the previous time slot tminus 1

1 if t gt 1 and the demand of the AP i does not exceed the residual capacity of theMEC facility k assign i to k

2 otherwise nd the nearest MEC facility (in terms of distance mik) to which the APdemand does not exceed the residual capacity if no such a MEC facility exists stopin a FAIL state

This algorithm always terminates in O(|T ||A| log(|A|)|K|) time Unfortunately asfor a xed t the problem is a special instance of GAP even the problem of nding anarbitrary feasible solution is NP-Hard Indeed the algorithm might stop in a FAIL statewithout producing feasible solutions However in our computational experiments thatnever happened

Nevertheless to complete the population of the initial RMP we insert also a singledummy column of very high cost having coecient 0 in each constraint (9) This ensuresRMP feasibility also after branching

8

Algorithm 1 Greedy Binary AP-MEC facility assignment

ka = none foralla isin A MEC facility associated to AP a in previous time-slotfor all t isin T do

As = sortDec(dta|a isin A) sort AP for non-increasing demand at time tck = 0 forallk isin K used capacity of MEC facility kfor all a isin As do

k = ka rst choice is the previous assignmentif k = none or ck + dta le C then

k = nearestAvailable(a dta ck) get nearest MEC facility with enough residualcapacity

end if

xtak = 10

ck = ck + dta update used capacity of chosen MEC facilityif t gt 0 and k 6= ka thenytakak

= 10end if

ka = kend for

end for

42 Pricing algorithms

Let λtk be the (non-negative) dual variables corresponding to constraints (9) and ηi bethe (free) dual variables corresponding to constraints (10)

For each i isin A the problem of nding the element of Ωi corresponding to the variableof minimum reduced cost can be formulated as follows

minπi =minus ηi + αsumtisinT

sum(jk)isinKtimesK

dtiljky

tijk

+

+sumtisinT

sumkisinK

(βdt

imik + dt

iλtk)xtik

(12)

stsumkisinK

xtik

= 1 forallt isin T (13)

xtik

=sumjisinK

ytijk

forallt isin T 1forallk isin K (14)

xtik

=sumjisinK

yt+1ikj

forallt isin T Tforallk isin K (15)

x isin 0 1y isin 0 1 (16)

Proposition 2 The pricing problem (12) - (16) possesses the integrality property

In fact according to Observation 2 constraints (13) can be removed for t gt 1 and con-straints (14) used to replace xt

ikin (15) and then removed The remaining is basically a

network ow matrix which is known to be totally unimodular [22]On one hand Proposition 2 implies that the lower bound obtained by the MP through

column generation is equivalent to that obtained by optimally solving the continuous re-laxation of the original model (1) (7) On the other hand it allows to employ polynomialtime Linear Programming solution algorithms making us to expect the solution processto be fast Indeed we could exploit its structure even further as the elements of Ωi have a

9

Algorithm 2 Pricing Algorithm

for all i isin A do

c1k = a1

ik forallk isin K cost of path starting at MEC facility kp1k = k forallk isin K path starting at node kprime at timefor all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i

πlowast = c|T |klowast minus ηi

if πlowast lt 0minus ε thenadd variable related to minimum cost path pklowast to the model

end if

end for

particular combinatorial interpretation they correspond to all feasible association pathsthat is sequences of MEC facilities to which the AP i is assigned in consecutive time-slotsMore in details we build a directed layered graph G(NA) with a layer for each time-slotas follows Each layer has one node for each MEC facility each pair of nodes in consecutivelayers are connected by an arc Each node (t k) isin T times K modeling the assignment toMEC facility k at time t has an associated traversal cost given by atik = dti(βmik + λtk)while each arc connecting nodes (t j) and (t+ 1 k) has an associated traversal cost givenby btijk = dt+1

i αljk We also add a dummy source σ (resp sink τ) nodes having oneoutgoing arc to each node in layer t = 1 (resp one incoming arc from each node in layert = |T |) of zero cost Figure 3 sketches the structure of G for a certain AP i on a sampleinstance with two MEC facilities (A and B) a potential solution assigns i to A at timet = 1 to B at time t = 2 and so forth

In fact an optimal pricing solution corresponds to a shortest σ minus τ path in G

Proposition 3 For each i isin A the pricing problem can be solved in O(|T ||K|2) time

In fact for solving the pricing problems we devise a simple dynamic programming algo-rithm which is presented as Algorithm 2

t = 1

A

a1iAx1iA

B

t = 2

A

B

a2iBx2iB

t = |T |

A

a|T |iAx|T |iA

B

b2iAB

y2iAB

0 middot y3iBB

b|T |iBA

y|T |iBA

Figure 3 Pricing Problem Structure

10

Algorithm 3 Rounding heuristic

Input variable values x from a RMP fractional solutionOutput x = 0 y = 0 integer solutionfor all t isin T do

rk = Ck forallk isin K residual capacity of MEC facility kA = sort(AmaxkisinK xtik) sort the set of AP by non-increasing value of fractionalassignment to the most desirable MEC facilityfor all i isin A do

consider APs in such an orderif k isin K|dti le rk = empty thenFAIL no MEC facility with enough capacity exit with FAIL status

else

k = arg maxkisinK|dtilerk xtik get highest assignment

xtik = 10 x assignment with MEC facility

rk = rk minus dti update residual capacityend if

end for

end for

y = compute_shift(x) compute y variable values to be consistent with x

43 Rounding Heuristics

In order to nd good primal bounds a simple rounding algorithm (presented in Algorithm3) is executed at every column generation iteration Let z be the (possibly fractional)variable values of the RMP at a certain iteration we can compute the values of thecorresponding x variables as

xtik =sumpisinΩi

xtpik zp

For each time-slot t isin T for each APs i the highest xtik is retrieved For each AP sorted bydescending highest x value the assignment is made with the MEC facility correspondingto the highest x and with enough residual capacity Although no guarantee in feasibilityis given our computational experiments revealed it to be highly eective

44 Variables xing

We also experimented with probing techniques to potentially perform problem reductionduring the column generation process In particular we employed Lagrangean probing tox variables at a pricing level The main idea is to run the Pricing Problem ResolutionAlgorithm twice the rst time as described in 2 that is considering each layer t = 1 |T |in forward order the second time instead considering the layers in backward order that is

initializing c|T |k = 0 and updating each ctk = minklowastisinK ct+1

klowast +dt+1i (αlkklowast +βmiklowast +λt+1klowast)

In this way the cost χtk of the best path in which at time t an assignment is forced to MEC

facility k can be computed by summing the forward and backward labels ctkA valid dual bound LB can be computed at each column generation iteration as

LB = ρminussumiisinA

πi

where ρ is the value of the last RMP solution Let UB be the value of the best primal(integer) solution found so far

For each i isin A let s(t) be the MEC facility at which AP i has been assigned at time tin the optimal pricing solution returned by Algorithm 2 We perform the following xes

11

bull for each t isin T and k isin K if LB + χts(t) minus χ

tk ge UB then if assignment to MEC

facility k was forced no improvement in the primal bound would ever be obtainedTherefore node k can be removed from layer t without losing optimization powerthat means xing variable xtik = 0 in the original model

bull for each t isin T if LB+χts(t)minusminkisinKs(t) χ

tk ge UB then if such an assignment was

forbidden no improvement in the primal bound would ever be obtained Thereforeall nodes k 6= s(t) can be removed from layer t without losing optimization powerthat means xing variable xtis(t) = 1 in the original model

A similar xing procedure is run on arcs of the pricing graph thereby allowing to x ytkprimeprimekprimevariables in the original model

From an implementation point of view we always allowed a relative tolerance of 5eminus4in the xing test to prevent numerical troubles We run the xing procedure at the endof the column generation process of every node of the search tree additionally at the rootnode we run it whenever an improving primal solution is found

45 Branch-and-price

When upper and lower bounds at the end of the column generation process do not matchwe proceed to branching We branch on original variables x rather than on variables ofthe MP Fixing variable xtik to value 0 corresponds to xing to value 0 all variables zp isin Ωi

that assign AP i to MEC facility k at time t Similarly xing variable xtik to value 1corresponds to xing to value 0 all variables zp isin Ωi that do not assign AP i to MECfacility k at time t Neither forbidding nor forcing assignments change the structure of thepricing problem these conditions are easily included within the dynamic programmingalgorithm by simply removing nodes from the pricing graph According to Proposition 1no branching on y variables is needed

We considered the following two branching rules

1 considering all possible assignments of AP i at time t take the pair (iprime tprime) which hasgreatest number of variables xt

primeiprimek with strictly positive value that is that AP whose

assignment at a certain time is split among the greatest number of dierent MECfacilities Sort variables xt

primeiprimek by non-increasing value and partition this ordered set

in two the rst set containing variables in the odd positions of ordered set and thesecond set containing variables in the even positions A left (resp right) branch iscreated xing to zero all the variables in the rst (resp second) set

2 select the variable xtik whose value is closer to 05 ie the variable related to the mostfractional assignment Create two branches xing the selected variable respectivelyto value 0 or to value 1

We always consider branching rule 1 rst triggering rule 2 only when all (i t) pairshave at most two corresponding fractional xtik variables During preliminary experimentsa simple depth-rst exploration policy showed to perform best When rule 2 is used thextik = 1 branch is explored rst

46 Split assignment and periodic plans

We rst observe that global optimal split-assignment plans can be obtained by simplystopping at the root node and considering the (potentially fractional) solution of thecolumn generation master problem

12

Furthermore as discussed in the Introduction the application is periodic in naturethe decision maker creates a plan that is meant to be repeated over time Such a peri-odic variant can be managed by minor modications to our models and algorithms Inparticular model (1) (5) needs to be enriched adding constraints

x1ik =

sumlisinK

y|T |ilk foralli isin A forallk isin K

to the family (4) and constraints

x|T |ik =

sumlisinK

y1ikl foralli isin Aforallk isin K

to the family (5) these link the assignments made in the last and rst time-slots assign-ment hence closing the period of assignments The column generation master problemdoes not change The pricing problem instead requires to be adapted as cycles ratherthan paths need to be generated We therefore modied our pricing routine as presentedin Algorithm 4 Exactly solving the modied pricing problem via dynamic programmingrequires O(|T ||K|3) time for every AP The main idea is to tentatively x the assignmentat time 1 to all the |K| possible MEC facilities to solve each reduced problem and tochoose the best among the |K| solutions found in this way Since it is possible to create alayer |T | + 1 as a copy of the layer t = 1 after xing the assignment the pricing problemreduces to nding a minimum cost shortest path from the single xed node in layer t = 1to the single xed node in layer |T |+ 1

Any other detail of the algorithm remains unchanged

5 Computational evaluation

We implemented our algorithms in C++ using CPLEX 126 [23] to solve the master LPsubproblems running tests on an Intel i7 4GHz workstation equipped with 32 GB of RAM

Our rst investigation is computational benchmarking the eectiveness of our algo-rithms in comparison to the branch-and-cut ILP solver of CPLEX using formulation (1) (7)

51 Dataset

We have access to a dataset of real-world mobile trac demands [24] encompassing twomonths with a time granularity of fteen minutes The geographical area covered by thedataset extends for more than 2500 km2 The demand is not associated to access points ofthe mobile network whose location is unknown but rather to a geographical tessellationof the area in 1419 rectangular cells of dierent sizes with smaller (and more dense) cellsin the center of the area We select the centers of every rectangular cell as elements of theset A of access points locations

Then we create ten clusters of access points using a standard k-means model takingas input the euclidean distances between APs optimizing it with the classical heuristicsof [25] The centers of these clusters are selected to dene the locations of the set K ofMEC facilities The network distances mik and ljk are computed as euclidean distancesaccordingly and rounded to the nearest integer (hence supposing packet processing latencyis negligible)

Given this network infrastructure we generate dierent problem instances by randomlydrawing demands in each AP in dierent ways

In details we create two random datasets

13

Algorithm 4 Periodic Pricing Algorithm

for all i isin A do

πlowast = +infinplowast = emptyfor all k isin K do

c1k

= a1ikx MEC facility k at t = 1

c1k = +infin forallk isin K k forbid MEC facility k at t = 1p1k = k forallk isin K path starting at node k at time t = 1for all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

for all k isin K do

c|T |k = c

|T |k + b1

ikk+ a1

ikend for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i when starting at k

if c|T |klowast minus ηi lt πlowast then

πlowast = c|T |klowast minus ηi

plowast = p|T |klowast

end if

end for

if πlowast lt 0 thenadd variable related to minimum cost path plowast to the model

end if

end for

Dataset A is synthetic and aims at stressing our algorithms from a pure computational pointof view We consider a planning horizon of one day split in 96 consecutive fteen-minute time slots Let d (resp d) be the minimum (resp maximum) demandobserved in any AP and time slot in [24] Demands dti for each AP i at time t aredrawn uniformly at random independently in each fteen-minute time slot in therange [d d] That is demands do not follow particular trends even if falling into thesame range of real data

Dataset B is realistic reproducing the main features of the starting data We choose a singleday at random from the two months included in the dataset [24] we perform a directquery to the demand of each AP at each time slot in that day and then we perturball demands with noise uniformly drawn at random in the interval [minus5+5]

All demand values are rounded to the nearest integer Besides the initial horizon of 96time-slots we consider planning time horizons of 48 24 and 12 time-slots by mergingrespectively 2 3 or 4 subsequent time-slots setting their demands as the average on themerged time-slots Five instances are generated in both datasets A and B

We also consider a dataset of raw real demands

Dataset C is obtained by considering a random week taken from the dataset [24] and mergingthe time-slots in either 168 slots of 1 hour each (1h) 84 slots of 2 hours (2h) 56

14

slots of 3 hours (3h) 42 slots of 4 hours (4h) or 38 slots obtained by the clusteringmethods described in subsection 62 (clust) The demand of each AP in each slot tis taken as the maximum over the the fteen-minute time slots merged in t

For every instance each MEC facility capacity Ck is set to(

maxtisinTsum

iisinA dti|K|

)middot105

and parameters α and β are both set to value 05

52 Column Generation proling

We rst report on the computational behaviour of our Column Generation algorithm (CG)In this test we consider the single-assignment non-periodic variant

In Tables 1a 1b and 1c we include the details of the root node column generationprocess for each instance of datasets A B and C respectively A best known solutionvalue zlowast is taken from a previous run of exact algorithms (see subsection 53) Besidesinstance details (columns `|T | and `inst) we include the relative gap between the primalbound value (resp dual bound value) and zlowast the number of column generation iterationsneeded to reach convergence the overall CPU time spent for solving the pricing problemsand the CPU time required to complete the column generation process As benchmarkwe also report the performances of CPLEX 1263 ILP solver when stopped at the rootnode including the corresponding primal and dual bound gaps and the time required tocomplete its root node computation

We set a time limit of two hours to each computation marking in the tables as `TLthose computations hitting that limit

We rst note that CG has good convergence behaviour less than 90 iterations arealways enough to complete the computation The high number of pricing subproblemsyields to a high number of generated columns but thanks to our dynamic programmingalgorithm the overall pricing time remains low (below 10 seconds in all cases but one)

By rounding in CG we are always able to obtain good integer solutions (that is below1 from best known solutions in all cases but 4) CPLEX is not consistent in a fewinstances (eg block |T | = 48 of the Realistic Dataset B) it is able to nd very goodprimal solutions while in other cases (eg block |T | = 24 of Dataset B or block |T | = 48of Dataset A) only very weak primal bounds can be obtained

We also observe that CG and CPLEX dual bounds are always similar That is on onehand the integrality property of our pricing problem warns that no improvement can beobtained by CG with respect to the continuous relaxation of the original formulation onthe other hand CPLEX generic cuts have no signicant eect on strengthening the samecontinuous relaxation bound

Finally in more than 37 of the instances CPLEX is unable to terminate the rootnode computation within the time limit while CG always completes the computationWhen both CG and CPLEX terminate the CPU time required by CG is up to two ordersof magnitude lower that required by CPLEX

We highlight that the (possibly fractional) solution found by CG is a global optimalsolution for the split-assignment model variants no further computing is needed in thatcase

53 Exactly solving the DASP

In a second round of experiments we let both our Branch-and-Price (BaP) and CPLEX126 ILP solver (CPX) run for two hours also exploring their branching trees In Tables2a 2b 2c we report the results of this experiment on each instance of datasets A B and Crespectively In each Table we report the relative gap between the primal bound PB (respthe dual bound DB) at the end of computation and the best known integer solution valuezlowast and the number of explored branch-and-bound nodes for both our BaP and CPX

15

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0130 1212 19 10808 0 4 0724 1197 8642 0735 1955 14 8715 0 4 244932 1949 4103 0793 1351 13 7074 0 3 0167 1345 3284 0945 0999 14 7515 0 3 2824 0994 3445 1206 1630 13 7892 0 3 3052 1627 356

24

1 0061 1475 26 17027 1 15 0249 1471 28262 1202 1537 19 11429 1 11 274940 1533 19433 0867 2019 19 12296 0 13 267368 2015 18524 0846 1864 19 12525 0 12 123542 1860 18615 0909 1764 18 12077 0 12 267486 1761 1781

48

1 0463 1819 41 27035 6 114 246767 1816 TL2 0221 2468 32 20897 1 90 270039 2465 TL3 0746 2336 33 21468 4 95 269274 2332 TL4 0295 2036 31 20496 0 74 282422 2033 TL5 0265 2514 35 22707 0 106 258676 2510 TL

96

1 0176 2274 68 47500 5 949 259445 - TL2 0055 2633 59 42621 6 913 - - TL3 0034 2779 61 43107 9 863 - - TL4 0187 2528 61 42692 5 850 - - TL5 0124 2568 60 41913 6 815 272834 - TL

(a) Synthetic Dataset A

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0809 0107 12 6542 1 2 0055 0105 1382 0917 0112 11 6150 0 2 0924 0110 1463 1043 0125 12 6611 0 2 0155 0123 1584 0797 0103 11 5843 0 2 349538 0102 1205 0781 0102 11 6548 0 2 349089 0101 113

24

1 0766 0425 15 9713 0 4 305781 0424 5322 0481 0280 16 9715 0 3 306562 0278 5873 0613 0576 15 9492 1 3 304188 0575 6224 0960 0183 17 10345 0 3 306874 0182 6155 0648 0221 16 10217 0 4 307199 0220 413

48

1 1031 0264 27 15539 1 16 0253 0262 21132 0782 0344 25 15636 2 15 0557 0343 22493 0500 0363 26 15286 1 15 0 0362 26744 0741 0314 26 15791 3 18 0049 0312 24455 0829 0296 29 16294 0 15 0651 0295 1878

96

1 0077 0933 51 29786 6 130 - - TL2 0315 0766 43 28272 3 125 - - TL3 0249 0853 46 28221 9 129 - - TL4 0395 0692 49 29320 5 126 - - TL5 0154 0726 48 29005 4 120 - - TL

(b) Realistic Dataset B

CG Root CPLEX Root

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast tclust 0590 0092 21 12928 2 9 0429 0091 4684h 0630 0272 30 20690 2 25 0175 0271 51913h 0513 0471 37 25960 3 58 0766 0470 28142h 0192 0724 50 31706 2 133 - - TL1h 0097 0905 85 56322 18 953 - - TL

(c) Raw Real Demand Dataset C

Table 1 Computational Results - CG Root vs CPLEX Root

16

(a) BaP vs CPLEX (b) BaP Detail

Figure 4 Primal Bound

We report no computing time because surprisingly neither BaP nor CPX could bringthe duality gap below 01 within the time limit except for instance 4 with |T | = 12 ofDataset A 5 with |T | = 12 of Dataset B and clust of Dataset C that CPX is able toclose (but still using more than 90 of the available CPU time)

In terms of nal dual bounds the results of both methods are very similar Our expla-nation for this phenomenon is the following the root dual bound is already very close tothe integer optimum value and therefore the real challenge is to nd an optimal primalsolution At the same time the high number of time-slots yields values of primal solutionson the order of magnitude of 108 as soon as the duality gap becomes small numericalapproximation issues prevent to coherently explore the remaining search tree

In terms of searching for good primal solutions in the inner nodes of the branching treeinstead BaP and CPX are not equivalent in Figure 4a we plot the typical primal boundvalue (y axis) improvements as the computation (x axis) proceeds (instance 1 |T | = 24dataset B) for the sake of comparison the x axis report relative values with respect tothe overall number of branch-and-bound nodes for CPX and the overall number of columngeneration iterations for BaP Eventually CPX is more numerically stable oering aftertwo hours of computation primal solutions values a few tenths of percentage points better(up to 05 of improvement) In turn BaP allows to nd near-optimal integer solutionsmuch more quickly that is in fact already at the root node The behaviour of BaP in theearly steps of computation is further detailed in Figure 4b the quality of the primal boundsteeply increase during the column generation iterations at the root node

As a synthetic nal assessment of our computational evaluation we can report thatwhen the number of time-slots is small and the planner has no particular need for quickoptimization algorithms both BaP and CPLEX might be viable alternatives to optimizethe DASP

BaP is faster especially when used heuristically stopping the computation either atthe root node or after exploring a few nodes of the branch-and-bound tree This makes itwell suited also when quick optimization is needed like in what-if-analyses

When the number of time-slots increases however using CPLEX is not an optionanymore

We repeated all the experiments with a periodic-plan model without nding substantialchanges in the computational behaviour of the methods Indeed the periodic-plan modelhas main impact only in the structure of the pricing problem of BaP but pricing involvesonly a small amount of the overall computational eort

17

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0 1208 17661 0411 1197 2032 0 1951 17038 0777 1949 3713 0198 1347 18572 0 1345 4524 0370 0997 19198 0 0993 5485 0020 1626 18013 0 1626 699

24

1 0 1473 8576 0249 1471 142 0 1535 8657 0855 1533 243 0 2018 9349 267368 2015 464 0 1863 9353 123542 1860 385 0 1763 10204 267486 1761 40

48

1 0 1818 2123 246767 1816 02 0 2468 2724 270039 2465 03 0 2335 2558 269274 2332 04 0 2036 3133 282422 2033 05 0 2514 2528 258676 2510 0

96

1 0 2274 113 259445 - TL2 0 2633 217 - - TL3 0 2779 168 - - TL4 0 2528 135 - - TL5 0 2568 207 272834 - TL

(a) Synthetic Dataset A

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0160 0105 35112 0 0103 23982 0235 0111 30708 0 0109 25793 0320 0124 26374 0 0122 18184 0406 0102 26490 0 0100 19325 0267 0100 24714 0 0098 1844

24

1 0133 0424 17961 0 0423 1442 0274 0279 18354 0 0278 1093 0 0576 20016 0717 0574 2254 0353 0183 17481 0 0182 2325 0284 0220 20446 0 0220 522

48

1 0312 0263 10738 0 0262 202 0249 0343 10465 0 0343 183 0113 0363 10482 0 0360 174 0227 0313 10321 0 0311 165 0226 0295 10818 0 0295 21

96

1 0 0932 3133 - - TL2 0 0765 3193 - - TL3 0 0852 3398 - - TL4 0 0691 3099 - - TL5 0 0726 3299 - - TL

(b) Realistic Dataset B

B-amp-P CPLEX

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

clust 0376 0091 13849 0 0091 8124h 0442 0272 8985 0 0270 303h 0403 0471 5086 0 0470 332h 0 0724 2864 - - TL1h 0 0905 370 - - TL

(c) Raw Real Demand Dataset C

Table 2 Computational Results - BaP vs CPLEX

18

6 Practical case study

Our nal aim is to assess the eectiveness of our optimization core in the context of thedata-driven MEC management optimization framework To this end we rely on the com-plete real-world dataset in [24] and run actual analytics on it so as to generate the demandproles We then feed our optimization models with such proles which ultimately letsus measure the quality of the assignment plans it returns in a practical case

61 Experimental setup

The real-world mobile trac data covers a planning period of eight weeks split in a set Tof fteen-minute snapshots The rst approach we take in order to infer demand prolesexploits a well-known property of mobile trac ie its weekly periodicity [26] Namely asingle week is taken as training data and the mobile trac recorded in each fteen-minutetime-slot is considered as a prole The tasks performed by the data mining and validationmodules are kept as simple as possible in order to highlight the eect of the optimizationcore

Training Conceptually the resulting 4 times 24 times 7 = 672 training proles are then usedas input for our optimization algorithms By optimizing over the training data we obtaina planning solution which becomes our assignment plan we apply such a plan to theremaining seven weeks of test data As an example optimizing over training data yields asolution including a specic assignment of APs to MEC facilities on Monday between 700am and 715 am we then blindly apply the same assignments on the 700-715 am timeslots of each Monday in the test data presuming that the demand conguration is similaron all Mondays at the same time In a sense this is a worst-case situation in which thedecision maker simply observes the system for one week before deciding on the planningfor the remaining weeks

Practically we do not directly use the 672 fteen-minutes time-slots for training Weassume instead that the preprocessing and data-mining module produces suitable ag-gregations We experimented therefore with simple aggregation of the proles mergingtime-slots sequentially over 1 2 3 or 4 hours Each aggregation step was performed byconsidering in each AP and in each aggregated time-slot the maximum demand value ofthat AP over the corresponding base time-slots The optimized solution was then dis-aggregated in post-processing simply replicating the same plan over the fteen-minutestime-slots composing each aggregated time-slot By choosing the maximum demand valuesduring aggregation we ensure that our optimized solutions remain feasible after disaggre-gation

It is apparent that less aggregated proles entail a higher potential for optimizationin the baseline scenario the assignment of APs to MEC facilities can be changed every15 minutes possibly assigning to the same MEC facility APs that experience very highpeaks of demand in subsequent time slots They are however more prone to overttingas peaks in particular hours of the training week do not necessarily correspond to peaksin the corresponding hour of testing weeks In addition they are more clearly expensivefrom a computational standpoint

More aggregated instances instead are more conservative two APs with very highdemand peaks in the same four-hours time slot cannot be assigned to the same MECfacility thus possibly preventing capacity violations in the test weeks if those peaks slightlymove in time They are also less demanding in terms of computational costs Howeveraggregation forces the a same conguration for longer timeframes making the optimizationpossibly oblivious of fast dynamics in the demand

19

Figure 5 Time-Clustering resulting from [21]

In order to further balance the aggressive optimization process during the trainingphase of low aggregation instances we found empirically useful to set the Ck capacityvalues to

(maxtisinT

sumiisinA d

ti|K|

)middot 105 in each test That is one-hour time-slot instances

are optimized with lower capacity values

Test To ensure fairness in the comparison during the test phase only disaggregatedsolutions are considered That is independently on the aggregation used for training onlysolutions dened over the original fteen-minutes time-slots are compared Similarly thereference MEC capacity value was xed to

(maxtisinT

sumiisinA d

ti|K|

)middot110 in any comparison

Clearly neither the cost nor the capacity usage are guaranteed to remain the samewhen the planning obtained with training data is applied to test data as uctuations inthe demand may occur across weeks The quality of our solutions is therefore evaluatedaccording to two measures (i) the assignment and switching cost of the planning and (ii)

the amount of violations in capacity constraints both measured on test data The latteris computed as follows

maxtisinT

sumkisinK

maxsum

iisinA dtix

tik minus Ck 0

Ck

that is the overall amount of violation in capacity constraints as a relative value respectto the available capacity in the worst time-slot

These measures are computed for each plan by the validation module through simplesimulation on the seven weeks of test data

Advanced Clustering Benchmark An alternative to employing our ad-hoc techniqueon the optimization module would be to perform a more aggressive aggregation over timeproducing instances that are small enough to be optimized by CPLEX We experimentedon such an option adapting the temporal clustering solution presented in [21] to our needsSpecically we take the following steps (i) we generate a median week of mobile tracdemand by computing the median load recorded at each AP during every hour of the weekusing it as training data (ii) we perform two separate hierarchical clusterings respectivelyusing the total volume and normalized distance metrics introduced in [21] (iii) we ndthe intersection of the two cluster sets obtained at the previous point

Figure 5 shows the resulting clustering of one-hour time slots ve typical demandproles are identied which can be associated to working hours (denoted by 0 in thegure) relax hours in the late afternoons and weekends (1) morning commuting hours(2) night hours (3) and late evening hours (4) Very few time-slots are actually producedthis way allowing CPLEX to optimize the corresponding instances Consecutive time-slots

20

InstWeek

train 1 2 3 4 5 6 7

Bench-CPLEX 959 703 571 425 257 388 1468 951Bench-CG 959 676 548 408 245 410 1434 927

4h 209 154 172 066 000 254 1163 2923h 194 142 148 110 125 158 1107 2982h 220 258 199 119 226 282 1122 4151h 284 238 417 114 192 404 1065 547

Table 3 Time-Slot Peak Exceeded Capacity Over Available Capacity

belonging to the same cluster are then aggregated The aggregated instance is optimizedand the solution obtained in this way is then disaggregated in fteen-minute time-slotsplans as in the previous case during post-processing before being compared on test data

62 Experimental evaluation

Following the computational results of Section 5 our core optimization module alwaysemploys our Branch-and-Price as a heuristic (HBP) stopping its computation at the rootnode except for the aggregated instances produced by time-clustering Having |T | = 38these are manageable eciently even by general purpose solvers CPLEX 1263 ILP solverwas then used to solve them to proven optimality The scatter plot in Figure 6 summarizesour results Each point represents the outcome on a single week of test data Dierentshapes refer to dierent demand prole aggregation methods obtained by merging 1 2 3 or4 consecutive one-hour time slots as well as using the Advanced Clustering and CPLEX(Bench-CPLEX) The y axis coordinate of each point represents the capacity violationmeasure as introduced above the x axis coordinate of each point represents the solutioncost measure expressed as percentage value of that of the optimal solution employing theAdvanced Clustering Benchmark method Therefore negative (resp positive) percentagesmap to a performance improvement (resp reduction) with respect to the benchmarkAs a reference we report also the results obtained by using HBP instead of CPLEX foroptimizing the Advanced Clustering Benchmark instances (Bench-CG) The details aboutcapacity violation measures are reported also in Table 3 for each week in the training set(columns) and for each demand prole aggregation method (rows)

A rst remarkable result is that in all cases our HBP with sequential clustering allows forsolutions with less capacity violations In particular HBP with either four-hours or three-hours aggregation oer almost no capacity violations coming at the price of three to vepercent increase in solutions cost HBP with two-hours aggregation always outperforms thebenchmark method both in terms of exceeded capacity and in terms of solution costs HBPwith one-hour aggregation further decrease costs at the price of slightly higher capacityviolation

We also experimented on using the full BaP instead of the truncated HBP Our resultsare reported in Figure 7 no signicant change was observed Similarly no signicantchange was observed by using HBP instead of CPLEX on the benchmark clustering

63 Eect of periodic planning

Finally we measure the impact in solution switching costs yielded by choosing a periodmodel instead of a non-periodic one In Table 4 we report for each aggregation listedin the previous subsection the change in switching costs between inner time-slots of theweek (intra-week) between border time-slots of dierent weeks (inter-week) as well as thetotal switching cost the total assignment cost and the overall cost of the solution Using a

21

Figure 6 1-Week Plan - Time Aggreg Comparison

(a) Total Costs (b) Exceeded Capacity

Figure 7 Mean Costs And Exceeded Capacity - CG Root vs BaP

22

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 9: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

Algorithm 1 Greedy Binary AP-MEC facility assignment

ka = none foralla isin A MEC facility associated to AP a in previous time-slotfor all t isin T do

As = sortDec(dta|a isin A) sort AP for non-increasing demand at time tck = 0 forallk isin K used capacity of MEC facility kfor all a isin As do

k = ka rst choice is the previous assignmentif k = none or ck + dta le C then

k = nearestAvailable(a dta ck) get nearest MEC facility with enough residualcapacity

end if

xtak = 10

ck = ck + dta update used capacity of chosen MEC facilityif t gt 0 and k 6= ka thenytakak

= 10end if

ka = kend for

end for

42 Pricing algorithms

Let λtk be the (non-negative) dual variables corresponding to constraints (9) and ηi bethe (free) dual variables corresponding to constraints (10)

For each i isin A the problem of nding the element of Ωi corresponding to the variableof minimum reduced cost can be formulated as follows

minπi =minus ηi + αsumtisinT

sum(jk)isinKtimesK

dtiljky

tijk

+

+sumtisinT

sumkisinK

(βdt

imik + dt

iλtk)xtik

(12)

stsumkisinK

xtik

= 1 forallt isin T (13)

xtik

=sumjisinK

ytijk

forallt isin T 1forallk isin K (14)

xtik

=sumjisinK

yt+1ikj

forallt isin T Tforallk isin K (15)

x isin 0 1y isin 0 1 (16)

Proposition 2 The pricing problem (12) - (16) possesses the integrality property

In fact according to Observation 2 constraints (13) can be removed for t gt 1 and con-straints (14) used to replace xt

ikin (15) and then removed The remaining is basically a

network ow matrix which is known to be totally unimodular [22]On one hand Proposition 2 implies that the lower bound obtained by the MP through

column generation is equivalent to that obtained by optimally solving the continuous re-laxation of the original model (1) (7) On the other hand it allows to employ polynomialtime Linear Programming solution algorithms making us to expect the solution processto be fast Indeed we could exploit its structure even further as the elements of Ωi have a

9

Algorithm 2 Pricing Algorithm

for all i isin A do

c1k = a1

ik forallk isin K cost of path starting at MEC facility kp1k = k forallk isin K path starting at node kprime at timefor all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i

πlowast = c|T |klowast minus ηi

if πlowast lt 0minus ε thenadd variable related to minimum cost path pklowast to the model

end if

end for

particular combinatorial interpretation they correspond to all feasible association pathsthat is sequences of MEC facilities to which the AP i is assigned in consecutive time-slotsMore in details we build a directed layered graph G(NA) with a layer for each time-slotas follows Each layer has one node for each MEC facility each pair of nodes in consecutivelayers are connected by an arc Each node (t k) isin T times K modeling the assignment toMEC facility k at time t has an associated traversal cost given by atik = dti(βmik + λtk)while each arc connecting nodes (t j) and (t+ 1 k) has an associated traversal cost givenby btijk = dt+1

i αljk We also add a dummy source σ (resp sink τ) nodes having oneoutgoing arc to each node in layer t = 1 (resp one incoming arc from each node in layert = |T |) of zero cost Figure 3 sketches the structure of G for a certain AP i on a sampleinstance with two MEC facilities (A and B) a potential solution assigns i to A at timet = 1 to B at time t = 2 and so forth

In fact an optimal pricing solution corresponds to a shortest σ minus τ path in G

Proposition 3 For each i isin A the pricing problem can be solved in O(|T ||K|2) time

In fact for solving the pricing problems we devise a simple dynamic programming algo-rithm which is presented as Algorithm 2

t = 1

A

a1iAx1iA

B

t = 2

A

B

a2iBx2iB

t = |T |

A

a|T |iAx|T |iA

B

b2iAB

y2iAB

0 middot y3iBB

b|T |iBA

y|T |iBA

Figure 3 Pricing Problem Structure

10

Algorithm 3 Rounding heuristic

Input variable values x from a RMP fractional solutionOutput x = 0 y = 0 integer solutionfor all t isin T do

rk = Ck forallk isin K residual capacity of MEC facility kA = sort(AmaxkisinK xtik) sort the set of AP by non-increasing value of fractionalassignment to the most desirable MEC facilityfor all i isin A do

consider APs in such an orderif k isin K|dti le rk = empty thenFAIL no MEC facility with enough capacity exit with FAIL status

else

k = arg maxkisinK|dtilerk xtik get highest assignment

xtik = 10 x assignment with MEC facility

rk = rk minus dti update residual capacityend if

end for

end for

y = compute_shift(x) compute y variable values to be consistent with x

43 Rounding Heuristics

In order to nd good primal bounds a simple rounding algorithm (presented in Algorithm3) is executed at every column generation iteration Let z be the (possibly fractional)variable values of the RMP at a certain iteration we can compute the values of thecorresponding x variables as

xtik =sumpisinΩi

xtpik zp

For each time-slot t isin T for each APs i the highest xtik is retrieved For each AP sorted bydescending highest x value the assignment is made with the MEC facility correspondingto the highest x and with enough residual capacity Although no guarantee in feasibilityis given our computational experiments revealed it to be highly eective

44 Variables xing

We also experimented with probing techniques to potentially perform problem reductionduring the column generation process In particular we employed Lagrangean probing tox variables at a pricing level The main idea is to run the Pricing Problem ResolutionAlgorithm twice the rst time as described in 2 that is considering each layer t = 1 |T |in forward order the second time instead considering the layers in backward order that is

initializing c|T |k = 0 and updating each ctk = minklowastisinK ct+1

klowast +dt+1i (αlkklowast +βmiklowast +λt+1klowast)

In this way the cost χtk of the best path in which at time t an assignment is forced to MEC

facility k can be computed by summing the forward and backward labels ctkA valid dual bound LB can be computed at each column generation iteration as

LB = ρminussumiisinA

πi

where ρ is the value of the last RMP solution Let UB be the value of the best primal(integer) solution found so far

For each i isin A let s(t) be the MEC facility at which AP i has been assigned at time tin the optimal pricing solution returned by Algorithm 2 We perform the following xes

11

bull for each t isin T and k isin K if LB + χts(t) minus χ

tk ge UB then if assignment to MEC

facility k was forced no improvement in the primal bound would ever be obtainedTherefore node k can be removed from layer t without losing optimization powerthat means xing variable xtik = 0 in the original model

bull for each t isin T if LB+χts(t)minusminkisinKs(t) χ

tk ge UB then if such an assignment was

forbidden no improvement in the primal bound would ever be obtained Thereforeall nodes k 6= s(t) can be removed from layer t without losing optimization powerthat means xing variable xtis(t) = 1 in the original model

A similar xing procedure is run on arcs of the pricing graph thereby allowing to x ytkprimeprimekprimevariables in the original model

From an implementation point of view we always allowed a relative tolerance of 5eminus4in the xing test to prevent numerical troubles We run the xing procedure at the endof the column generation process of every node of the search tree additionally at the rootnode we run it whenever an improving primal solution is found

45 Branch-and-price

When upper and lower bounds at the end of the column generation process do not matchwe proceed to branching We branch on original variables x rather than on variables ofthe MP Fixing variable xtik to value 0 corresponds to xing to value 0 all variables zp isin Ωi

that assign AP i to MEC facility k at time t Similarly xing variable xtik to value 1corresponds to xing to value 0 all variables zp isin Ωi that do not assign AP i to MECfacility k at time t Neither forbidding nor forcing assignments change the structure of thepricing problem these conditions are easily included within the dynamic programmingalgorithm by simply removing nodes from the pricing graph According to Proposition 1no branching on y variables is needed

We considered the following two branching rules

1 considering all possible assignments of AP i at time t take the pair (iprime tprime) which hasgreatest number of variables xt

primeiprimek with strictly positive value that is that AP whose

assignment at a certain time is split among the greatest number of dierent MECfacilities Sort variables xt

primeiprimek by non-increasing value and partition this ordered set

in two the rst set containing variables in the odd positions of ordered set and thesecond set containing variables in the even positions A left (resp right) branch iscreated xing to zero all the variables in the rst (resp second) set

2 select the variable xtik whose value is closer to 05 ie the variable related to the mostfractional assignment Create two branches xing the selected variable respectivelyto value 0 or to value 1

We always consider branching rule 1 rst triggering rule 2 only when all (i t) pairshave at most two corresponding fractional xtik variables During preliminary experimentsa simple depth-rst exploration policy showed to perform best When rule 2 is used thextik = 1 branch is explored rst

46 Split assignment and periodic plans

We rst observe that global optimal split-assignment plans can be obtained by simplystopping at the root node and considering the (potentially fractional) solution of thecolumn generation master problem

12

Furthermore as discussed in the Introduction the application is periodic in naturethe decision maker creates a plan that is meant to be repeated over time Such a peri-odic variant can be managed by minor modications to our models and algorithms Inparticular model (1) (5) needs to be enriched adding constraints

x1ik =

sumlisinK

y|T |ilk foralli isin A forallk isin K

to the family (4) and constraints

x|T |ik =

sumlisinK

y1ikl foralli isin Aforallk isin K

to the family (5) these link the assignments made in the last and rst time-slots assign-ment hence closing the period of assignments The column generation master problemdoes not change The pricing problem instead requires to be adapted as cycles ratherthan paths need to be generated We therefore modied our pricing routine as presentedin Algorithm 4 Exactly solving the modied pricing problem via dynamic programmingrequires O(|T ||K|3) time for every AP The main idea is to tentatively x the assignmentat time 1 to all the |K| possible MEC facilities to solve each reduced problem and tochoose the best among the |K| solutions found in this way Since it is possible to create alayer |T | + 1 as a copy of the layer t = 1 after xing the assignment the pricing problemreduces to nding a minimum cost shortest path from the single xed node in layer t = 1to the single xed node in layer |T |+ 1

Any other detail of the algorithm remains unchanged

5 Computational evaluation

We implemented our algorithms in C++ using CPLEX 126 [23] to solve the master LPsubproblems running tests on an Intel i7 4GHz workstation equipped with 32 GB of RAM

Our rst investigation is computational benchmarking the eectiveness of our algo-rithms in comparison to the branch-and-cut ILP solver of CPLEX using formulation (1) (7)

51 Dataset

We have access to a dataset of real-world mobile trac demands [24] encompassing twomonths with a time granularity of fteen minutes The geographical area covered by thedataset extends for more than 2500 km2 The demand is not associated to access points ofthe mobile network whose location is unknown but rather to a geographical tessellationof the area in 1419 rectangular cells of dierent sizes with smaller (and more dense) cellsin the center of the area We select the centers of every rectangular cell as elements of theset A of access points locations

Then we create ten clusters of access points using a standard k-means model takingas input the euclidean distances between APs optimizing it with the classical heuristicsof [25] The centers of these clusters are selected to dene the locations of the set K ofMEC facilities The network distances mik and ljk are computed as euclidean distancesaccordingly and rounded to the nearest integer (hence supposing packet processing latencyis negligible)

Given this network infrastructure we generate dierent problem instances by randomlydrawing demands in each AP in dierent ways

In details we create two random datasets

13

Algorithm 4 Periodic Pricing Algorithm

for all i isin A do

πlowast = +infinplowast = emptyfor all k isin K do

c1k

= a1ikx MEC facility k at t = 1

c1k = +infin forallk isin K k forbid MEC facility k at t = 1p1k = k forallk isin K path starting at node k at time t = 1for all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

for all k isin K do

c|T |k = c

|T |k + b1

ikk+ a1

ikend for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i when starting at k

if c|T |klowast minus ηi lt πlowast then

πlowast = c|T |klowast minus ηi

plowast = p|T |klowast

end if

end for

if πlowast lt 0 thenadd variable related to minimum cost path plowast to the model

end if

end for

Dataset A is synthetic and aims at stressing our algorithms from a pure computational pointof view We consider a planning horizon of one day split in 96 consecutive fteen-minute time slots Let d (resp d) be the minimum (resp maximum) demandobserved in any AP and time slot in [24] Demands dti for each AP i at time t aredrawn uniformly at random independently in each fteen-minute time slot in therange [d d] That is demands do not follow particular trends even if falling into thesame range of real data

Dataset B is realistic reproducing the main features of the starting data We choose a singleday at random from the two months included in the dataset [24] we perform a directquery to the demand of each AP at each time slot in that day and then we perturball demands with noise uniformly drawn at random in the interval [minus5+5]

All demand values are rounded to the nearest integer Besides the initial horizon of 96time-slots we consider planning time horizons of 48 24 and 12 time-slots by mergingrespectively 2 3 or 4 subsequent time-slots setting their demands as the average on themerged time-slots Five instances are generated in both datasets A and B

We also consider a dataset of raw real demands

Dataset C is obtained by considering a random week taken from the dataset [24] and mergingthe time-slots in either 168 slots of 1 hour each (1h) 84 slots of 2 hours (2h) 56

14

slots of 3 hours (3h) 42 slots of 4 hours (4h) or 38 slots obtained by the clusteringmethods described in subsection 62 (clust) The demand of each AP in each slot tis taken as the maximum over the the fteen-minute time slots merged in t

For every instance each MEC facility capacity Ck is set to(

maxtisinTsum

iisinA dti|K|

)middot105

and parameters α and β are both set to value 05

52 Column Generation proling

We rst report on the computational behaviour of our Column Generation algorithm (CG)In this test we consider the single-assignment non-periodic variant

In Tables 1a 1b and 1c we include the details of the root node column generationprocess for each instance of datasets A B and C respectively A best known solutionvalue zlowast is taken from a previous run of exact algorithms (see subsection 53) Besidesinstance details (columns `|T | and `inst) we include the relative gap between the primalbound value (resp dual bound value) and zlowast the number of column generation iterationsneeded to reach convergence the overall CPU time spent for solving the pricing problemsand the CPU time required to complete the column generation process As benchmarkwe also report the performances of CPLEX 1263 ILP solver when stopped at the rootnode including the corresponding primal and dual bound gaps and the time required tocomplete its root node computation

We set a time limit of two hours to each computation marking in the tables as `TLthose computations hitting that limit

We rst note that CG has good convergence behaviour less than 90 iterations arealways enough to complete the computation The high number of pricing subproblemsyields to a high number of generated columns but thanks to our dynamic programmingalgorithm the overall pricing time remains low (below 10 seconds in all cases but one)

By rounding in CG we are always able to obtain good integer solutions (that is below1 from best known solutions in all cases but 4) CPLEX is not consistent in a fewinstances (eg block |T | = 48 of the Realistic Dataset B) it is able to nd very goodprimal solutions while in other cases (eg block |T | = 24 of Dataset B or block |T | = 48of Dataset A) only very weak primal bounds can be obtained

We also observe that CG and CPLEX dual bounds are always similar That is on onehand the integrality property of our pricing problem warns that no improvement can beobtained by CG with respect to the continuous relaxation of the original formulation onthe other hand CPLEX generic cuts have no signicant eect on strengthening the samecontinuous relaxation bound

Finally in more than 37 of the instances CPLEX is unable to terminate the rootnode computation within the time limit while CG always completes the computationWhen both CG and CPLEX terminate the CPU time required by CG is up to two ordersof magnitude lower that required by CPLEX

We highlight that the (possibly fractional) solution found by CG is a global optimalsolution for the split-assignment model variants no further computing is needed in thatcase

53 Exactly solving the DASP

In a second round of experiments we let both our Branch-and-Price (BaP) and CPLEX126 ILP solver (CPX) run for two hours also exploring their branching trees In Tables2a 2b 2c we report the results of this experiment on each instance of datasets A B and Crespectively In each Table we report the relative gap between the primal bound PB (respthe dual bound DB) at the end of computation and the best known integer solution valuezlowast and the number of explored branch-and-bound nodes for both our BaP and CPX

15

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0130 1212 19 10808 0 4 0724 1197 8642 0735 1955 14 8715 0 4 244932 1949 4103 0793 1351 13 7074 0 3 0167 1345 3284 0945 0999 14 7515 0 3 2824 0994 3445 1206 1630 13 7892 0 3 3052 1627 356

24

1 0061 1475 26 17027 1 15 0249 1471 28262 1202 1537 19 11429 1 11 274940 1533 19433 0867 2019 19 12296 0 13 267368 2015 18524 0846 1864 19 12525 0 12 123542 1860 18615 0909 1764 18 12077 0 12 267486 1761 1781

48

1 0463 1819 41 27035 6 114 246767 1816 TL2 0221 2468 32 20897 1 90 270039 2465 TL3 0746 2336 33 21468 4 95 269274 2332 TL4 0295 2036 31 20496 0 74 282422 2033 TL5 0265 2514 35 22707 0 106 258676 2510 TL

96

1 0176 2274 68 47500 5 949 259445 - TL2 0055 2633 59 42621 6 913 - - TL3 0034 2779 61 43107 9 863 - - TL4 0187 2528 61 42692 5 850 - - TL5 0124 2568 60 41913 6 815 272834 - TL

(a) Synthetic Dataset A

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0809 0107 12 6542 1 2 0055 0105 1382 0917 0112 11 6150 0 2 0924 0110 1463 1043 0125 12 6611 0 2 0155 0123 1584 0797 0103 11 5843 0 2 349538 0102 1205 0781 0102 11 6548 0 2 349089 0101 113

24

1 0766 0425 15 9713 0 4 305781 0424 5322 0481 0280 16 9715 0 3 306562 0278 5873 0613 0576 15 9492 1 3 304188 0575 6224 0960 0183 17 10345 0 3 306874 0182 6155 0648 0221 16 10217 0 4 307199 0220 413

48

1 1031 0264 27 15539 1 16 0253 0262 21132 0782 0344 25 15636 2 15 0557 0343 22493 0500 0363 26 15286 1 15 0 0362 26744 0741 0314 26 15791 3 18 0049 0312 24455 0829 0296 29 16294 0 15 0651 0295 1878

96

1 0077 0933 51 29786 6 130 - - TL2 0315 0766 43 28272 3 125 - - TL3 0249 0853 46 28221 9 129 - - TL4 0395 0692 49 29320 5 126 - - TL5 0154 0726 48 29005 4 120 - - TL

(b) Realistic Dataset B

CG Root CPLEX Root

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast tclust 0590 0092 21 12928 2 9 0429 0091 4684h 0630 0272 30 20690 2 25 0175 0271 51913h 0513 0471 37 25960 3 58 0766 0470 28142h 0192 0724 50 31706 2 133 - - TL1h 0097 0905 85 56322 18 953 - - TL

(c) Raw Real Demand Dataset C

Table 1 Computational Results - CG Root vs CPLEX Root

16

(a) BaP vs CPLEX (b) BaP Detail

Figure 4 Primal Bound

We report no computing time because surprisingly neither BaP nor CPX could bringthe duality gap below 01 within the time limit except for instance 4 with |T | = 12 ofDataset A 5 with |T | = 12 of Dataset B and clust of Dataset C that CPX is able toclose (but still using more than 90 of the available CPU time)

In terms of nal dual bounds the results of both methods are very similar Our expla-nation for this phenomenon is the following the root dual bound is already very close tothe integer optimum value and therefore the real challenge is to nd an optimal primalsolution At the same time the high number of time-slots yields values of primal solutionson the order of magnitude of 108 as soon as the duality gap becomes small numericalapproximation issues prevent to coherently explore the remaining search tree

In terms of searching for good primal solutions in the inner nodes of the branching treeinstead BaP and CPX are not equivalent in Figure 4a we plot the typical primal boundvalue (y axis) improvements as the computation (x axis) proceeds (instance 1 |T | = 24dataset B) for the sake of comparison the x axis report relative values with respect tothe overall number of branch-and-bound nodes for CPX and the overall number of columngeneration iterations for BaP Eventually CPX is more numerically stable oering aftertwo hours of computation primal solutions values a few tenths of percentage points better(up to 05 of improvement) In turn BaP allows to nd near-optimal integer solutionsmuch more quickly that is in fact already at the root node The behaviour of BaP in theearly steps of computation is further detailed in Figure 4b the quality of the primal boundsteeply increase during the column generation iterations at the root node

As a synthetic nal assessment of our computational evaluation we can report thatwhen the number of time-slots is small and the planner has no particular need for quickoptimization algorithms both BaP and CPLEX might be viable alternatives to optimizethe DASP

BaP is faster especially when used heuristically stopping the computation either atthe root node or after exploring a few nodes of the branch-and-bound tree This makes itwell suited also when quick optimization is needed like in what-if-analyses

When the number of time-slots increases however using CPLEX is not an optionanymore

We repeated all the experiments with a periodic-plan model without nding substantialchanges in the computational behaviour of the methods Indeed the periodic-plan modelhas main impact only in the structure of the pricing problem of BaP but pricing involvesonly a small amount of the overall computational eort

17

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0 1208 17661 0411 1197 2032 0 1951 17038 0777 1949 3713 0198 1347 18572 0 1345 4524 0370 0997 19198 0 0993 5485 0020 1626 18013 0 1626 699

24

1 0 1473 8576 0249 1471 142 0 1535 8657 0855 1533 243 0 2018 9349 267368 2015 464 0 1863 9353 123542 1860 385 0 1763 10204 267486 1761 40

48

1 0 1818 2123 246767 1816 02 0 2468 2724 270039 2465 03 0 2335 2558 269274 2332 04 0 2036 3133 282422 2033 05 0 2514 2528 258676 2510 0

96

1 0 2274 113 259445 - TL2 0 2633 217 - - TL3 0 2779 168 - - TL4 0 2528 135 - - TL5 0 2568 207 272834 - TL

(a) Synthetic Dataset A

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0160 0105 35112 0 0103 23982 0235 0111 30708 0 0109 25793 0320 0124 26374 0 0122 18184 0406 0102 26490 0 0100 19325 0267 0100 24714 0 0098 1844

24

1 0133 0424 17961 0 0423 1442 0274 0279 18354 0 0278 1093 0 0576 20016 0717 0574 2254 0353 0183 17481 0 0182 2325 0284 0220 20446 0 0220 522

48

1 0312 0263 10738 0 0262 202 0249 0343 10465 0 0343 183 0113 0363 10482 0 0360 174 0227 0313 10321 0 0311 165 0226 0295 10818 0 0295 21

96

1 0 0932 3133 - - TL2 0 0765 3193 - - TL3 0 0852 3398 - - TL4 0 0691 3099 - - TL5 0 0726 3299 - - TL

(b) Realistic Dataset B

B-amp-P CPLEX

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

clust 0376 0091 13849 0 0091 8124h 0442 0272 8985 0 0270 303h 0403 0471 5086 0 0470 332h 0 0724 2864 - - TL1h 0 0905 370 - - TL

(c) Raw Real Demand Dataset C

Table 2 Computational Results - BaP vs CPLEX

18

6 Practical case study

Our nal aim is to assess the eectiveness of our optimization core in the context of thedata-driven MEC management optimization framework To this end we rely on the com-plete real-world dataset in [24] and run actual analytics on it so as to generate the demandproles We then feed our optimization models with such proles which ultimately letsus measure the quality of the assignment plans it returns in a practical case

61 Experimental setup

The real-world mobile trac data covers a planning period of eight weeks split in a set Tof fteen-minute snapshots The rst approach we take in order to infer demand prolesexploits a well-known property of mobile trac ie its weekly periodicity [26] Namely asingle week is taken as training data and the mobile trac recorded in each fteen-minutetime-slot is considered as a prole The tasks performed by the data mining and validationmodules are kept as simple as possible in order to highlight the eect of the optimizationcore

Training Conceptually the resulting 4 times 24 times 7 = 672 training proles are then usedas input for our optimization algorithms By optimizing over the training data we obtaina planning solution which becomes our assignment plan we apply such a plan to theremaining seven weeks of test data As an example optimizing over training data yields asolution including a specic assignment of APs to MEC facilities on Monday between 700am and 715 am we then blindly apply the same assignments on the 700-715 am timeslots of each Monday in the test data presuming that the demand conguration is similaron all Mondays at the same time In a sense this is a worst-case situation in which thedecision maker simply observes the system for one week before deciding on the planningfor the remaining weeks

Practically we do not directly use the 672 fteen-minutes time-slots for training Weassume instead that the preprocessing and data-mining module produces suitable ag-gregations We experimented therefore with simple aggregation of the proles mergingtime-slots sequentially over 1 2 3 or 4 hours Each aggregation step was performed byconsidering in each AP and in each aggregated time-slot the maximum demand value ofthat AP over the corresponding base time-slots The optimized solution was then dis-aggregated in post-processing simply replicating the same plan over the fteen-minutestime-slots composing each aggregated time-slot By choosing the maximum demand valuesduring aggregation we ensure that our optimized solutions remain feasible after disaggre-gation

It is apparent that less aggregated proles entail a higher potential for optimizationin the baseline scenario the assignment of APs to MEC facilities can be changed every15 minutes possibly assigning to the same MEC facility APs that experience very highpeaks of demand in subsequent time slots They are however more prone to overttingas peaks in particular hours of the training week do not necessarily correspond to peaksin the corresponding hour of testing weeks In addition they are more clearly expensivefrom a computational standpoint

More aggregated instances instead are more conservative two APs with very highdemand peaks in the same four-hours time slot cannot be assigned to the same MECfacility thus possibly preventing capacity violations in the test weeks if those peaks slightlymove in time They are also less demanding in terms of computational costs Howeveraggregation forces the a same conguration for longer timeframes making the optimizationpossibly oblivious of fast dynamics in the demand

19

Figure 5 Time-Clustering resulting from [21]

In order to further balance the aggressive optimization process during the trainingphase of low aggregation instances we found empirically useful to set the Ck capacityvalues to

(maxtisinT

sumiisinA d

ti|K|

)middot 105 in each test That is one-hour time-slot instances

are optimized with lower capacity values

Test To ensure fairness in the comparison during the test phase only disaggregatedsolutions are considered That is independently on the aggregation used for training onlysolutions dened over the original fteen-minutes time-slots are compared Similarly thereference MEC capacity value was xed to

(maxtisinT

sumiisinA d

ti|K|

)middot110 in any comparison

Clearly neither the cost nor the capacity usage are guaranteed to remain the samewhen the planning obtained with training data is applied to test data as uctuations inthe demand may occur across weeks The quality of our solutions is therefore evaluatedaccording to two measures (i) the assignment and switching cost of the planning and (ii)

the amount of violations in capacity constraints both measured on test data The latteris computed as follows

maxtisinT

sumkisinK

maxsum

iisinA dtix

tik minus Ck 0

Ck

that is the overall amount of violation in capacity constraints as a relative value respectto the available capacity in the worst time-slot

These measures are computed for each plan by the validation module through simplesimulation on the seven weeks of test data

Advanced Clustering Benchmark An alternative to employing our ad-hoc techniqueon the optimization module would be to perform a more aggressive aggregation over timeproducing instances that are small enough to be optimized by CPLEX We experimentedon such an option adapting the temporal clustering solution presented in [21] to our needsSpecically we take the following steps (i) we generate a median week of mobile tracdemand by computing the median load recorded at each AP during every hour of the weekusing it as training data (ii) we perform two separate hierarchical clusterings respectivelyusing the total volume and normalized distance metrics introduced in [21] (iii) we ndthe intersection of the two cluster sets obtained at the previous point

Figure 5 shows the resulting clustering of one-hour time slots ve typical demandproles are identied which can be associated to working hours (denoted by 0 in thegure) relax hours in the late afternoons and weekends (1) morning commuting hours(2) night hours (3) and late evening hours (4) Very few time-slots are actually producedthis way allowing CPLEX to optimize the corresponding instances Consecutive time-slots

20

InstWeek

train 1 2 3 4 5 6 7

Bench-CPLEX 959 703 571 425 257 388 1468 951Bench-CG 959 676 548 408 245 410 1434 927

4h 209 154 172 066 000 254 1163 2923h 194 142 148 110 125 158 1107 2982h 220 258 199 119 226 282 1122 4151h 284 238 417 114 192 404 1065 547

Table 3 Time-Slot Peak Exceeded Capacity Over Available Capacity

belonging to the same cluster are then aggregated The aggregated instance is optimizedand the solution obtained in this way is then disaggregated in fteen-minute time-slotsplans as in the previous case during post-processing before being compared on test data

62 Experimental evaluation

Following the computational results of Section 5 our core optimization module alwaysemploys our Branch-and-Price as a heuristic (HBP) stopping its computation at the rootnode except for the aggregated instances produced by time-clustering Having |T | = 38these are manageable eciently even by general purpose solvers CPLEX 1263 ILP solverwas then used to solve them to proven optimality The scatter plot in Figure 6 summarizesour results Each point represents the outcome on a single week of test data Dierentshapes refer to dierent demand prole aggregation methods obtained by merging 1 2 3 or4 consecutive one-hour time slots as well as using the Advanced Clustering and CPLEX(Bench-CPLEX) The y axis coordinate of each point represents the capacity violationmeasure as introduced above the x axis coordinate of each point represents the solutioncost measure expressed as percentage value of that of the optimal solution employing theAdvanced Clustering Benchmark method Therefore negative (resp positive) percentagesmap to a performance improvement (resp reduction) with respect to the benchmarkAs a reference we report also the results obtained by using HBP instead of CPLEX foroptimizing the Advanced Clustering Benchmark instances (Bench-CG) The details aboutcapacity violation measures are reported also in Table 3 for each week in the training set(columns) and for each demand prole aggregation method (rows)

A rst remarkable result is that in all cases our HBP with sequential clustering allows forsolutions with less capacity violations In particular HBP with either four-hours or three-hours aggregation oer almost no capacity violations coming at the price of three to vepercent increase in solutions cost HBP with two-hours aggregation always outperforms thebenchmark method both in terms of exceeded capacity and in terms of solution costs HBPwith one-hour aggregation further decrease costs at the price of slightly higher capacityviolation

We also experimented on using the full BaP instead of the truncated HBP Our resultsare reported in Figure 7 no signicant change was observed Similarly no signicantchange was observed by using HBP instead of CPLEX on the benchmark clustering

63 Eect of periodic planning

Finally we measure the impact in solution switching costs yielded by choosing a periodmodel instead of a non-periodic one In Table 4 we report for each aggregation listedin the previous subsection the change in switching costs between inner time-slots of theweek (intra-week) between border time-slots of dierent weeks (inter-week) as well as thetotal switching cost the total assignment cost and the overall cost of the solution Using a

21

Figure 6 1-Week Plan - Time Aggreg Comparison

(a) Total Costs (b) Exceeded Capacity

Figure 7 Mean Costs And Exceeded Capacity - CG Root vs BaP

22

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 10: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

Algorithm 2 Pricing Algorithm

for all i isin A do

c1k = a1

ik forallk isin K cost of path starting at MEC facility kp1k = k forallk isin K path starting at node kprime at timefor all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i

πlowast = c|T |klowast minus ηi

if πlowast lt 0minus ε thenadd variable related to minimum cost path pklowast to the model

end if

end for

particular combinatorial interpretation they correspond to all feasible association pathsthat is sequences of MEC facilities to which the AP i is assigned in consecutive time-slotsMore in details we build a directed layered graph G(NA) with a layer for each time-slotas follows Each layer has one node for each MEC facility each pair of nodes in consecutivelayers are connected by an arc Each node (t k) isin T times K modeling the assignment toMEC facility k at time t has an associated traversal cost given by atik = dti(βmik + λtk)while each arc connecting nodes (t j) and (t+ 1 k) has an associated traversal cost givenby btijk = dt+1

i αljk We also add a dummy source σ (resp sink τ) nodes having oneoutgoing arc to each node in layer t = 1 (resp one incoming arc from each node in layert = |T |) of zero cost Figure 3 sketches the structure of G for a certain AP i on a sampleinstance with two MEC facilities (A and B) a potential solution assigns i to A at timet = 1 to B at time t = 2 and so forth

In fact an optimal pricing solution corresponds to a shortest σ minus τ path in G

Proposition 3 For each i isin A the pricing problem can be solved in O(|T ||K|2) time

In fact for solving the pricing problems we devise a simple dynamic programming algo-rithm which is presented as Algorithm 2

t = 1

A

a1iAx1iA

B

t = 2

A

B

a2iBx2iB

t = |T |

A

a|T |iAx|T |iA

B

b2iAB

y2iAB

0 middot y3iBB

b|T |iBA

y|T |iBA

Figure 3 Pricing Problem Structure

10

Algorithm 3 Rounding heuristic

Input variable values x from a RMP fractional solutionOutput x = 0 y = 0 integer solutionfor all t isin T do

rk = Ck forallk isin K residual capacity of MEC facility kA = sort(AmaxkisinK xtik) sort the set of AP by non-increasing value of fractionalassignment to the most desirable MEC facilityfor all i isin A do

consider APs in such an orderif k isin K|dti le rk = empty thenFAIL no MEC facility with enough capacity exit with FAIL status

else

k = arg maxkisinK|dtilerk xtik get highest assignment

xtik = 10 x assignment with MEC facility

rk = rk minus dti update residual capacityend if

end for

end for

y = compute_shift(x) compute y variable values to be consistent with x

43 Rounding Heuristics

In order to nd good primal bounds a simple rounding algorithm (presented in Algorithm3) is executed at every column generation iteration Let z be the (possibly fractional)variable values of the RMP at a certain iteration we can compute the values of thecorresponding x variables as

xtik =sumpisinΩi

xtpik zp

For each time-slot t isin T for each APs i the highest xtik is retrieved For each AP sorted bydescending highest x value the assignment is made with the MEC facility correspondingto the highest x and with enough residual capacity Although no guarantee in feasibilityis given our computational experiments revealed it to be highly eective

44 Variables xing

We also experimented with probing techniques to potentially perform problem reductionduring the column generation process In particular we employed Lagrangean probing tox variables at a pricing level The main idea is to run the Pricing Problem ResolutionAlgorithm twice the rst time as described in 2 that is considering each layer t = 1 |T |in forward order the second time instead considering the layers in backward order that is

initializing c|T |k = 0 and updating each ctk = minklowastisinK ct+1

klowast +dt+1i (αlkklowast +βmiklowast +λt+1klowast)

In this way the cost χtk of the best path in which at time t an assignment is forced to MEC

facility k can be computed by summing the forward and backward labels ctkA valid dual bound LB can be computed at each column generation iteration as

LB = ρminussumiisinA

πi

where ρ is the value of the last RMP solution Let UB be the value of the best primal(integer) solution found so far

For each i isin A let s(t) be the MEC facility at which AP i has been assigned at time tin the optimal pricing solution returned by Algorithm 2 We perform the following xes

11

bull for each t isin T and k isin K if LB + χts(t) minus χ

tk ge UB then if assignment to MEC

facility k was forced no improvement in the primal bound would ever be obtainedTherefore node k can be removed from layer t without losing optimization powerthat means xing variable xtik = 0 in the original model

bull for each t isin T if LB+χts(t)minusminkisinKs(t) χ

tk ge UB then if such an assignment was

forbidden no improvement in the primal bound would ever be obtained Thereforeall nodes k 6= s(t) can be removed from layer t without losing optimization powerthat means xing variable xtis(t) = 1 in the original model

A similar xing procedure is run on arcs of the pricing graph thereby allowing to x ytkprimeprimekprimevariables in the original model

From an implementation point of view we always allowed a relative tolerance of 5eminus4in the xing test to prevent numerical troubles We run the xing procedure at the endof the column generation process of every node of the search tree additionally at the rootnode we run it whenever an improving primal solution is found

45 Branch-and-price

When upper and lower bounds at the end of the column generation process do not matchwe proceed to branching We branch on original variables x rather than on variables ofthe MP Fixing variable xtik to value 0 corresponds to xing to value 0 all variables zp isin Ωi

that assign AP i to MEC facility k at time t Similarly xing variable xtik to value 1corresponds to xing to value 0 all variables zp isin Ωi that do not assign AP i to MECfacility k at time t Neither forbidding nor forcing assignments change the structure of thepricing problem these conditions are easily included within the dynamic programmingalgorithm by simply removing nodes from the pricing graph According to Proposition 1no branching on y variables is needed

We considered the following two branching rules

1 considering all possible assignments of AP i at time t take the pair (iprime tprime) which hasgreatest number of variables xt

primeiprimek with strictly positive value that is that AP whose

assignment at a certain time is split among the greatest number of dierent MECfacilities Sort variables xt

primeiprimek by non-increasing value and partition this ordered set

in two the rst set containing variables in the odd positions of ordered set and thesecond set containing variables in the even positions A left (resp right) branch iscreated xing to zero all the variables in the rst (resp second) set

2 select the variable xtik whose value is closer to 05 ie the variable related to the mostfractional assignment Create two branches xing the selected variable respectivelyto value 0 or to value 1

We always consider branching rule 1 rst triggering rule 2 only when all (i t) pairshave at most two corresponding fractional xtik variables During preliminary experimentsa simple depth-rst exploration policy showed to perform best When rule 2 is used thextik = 1 branch is explored rst

46 Split assignment and periodic plans

We rst observe that global optimal split-assignment plans can be obtained by simplystopping at the root node and considering the (potentially fractional) solution of thecolumn generation master problem

12

Furthermore as discussed in the Introduction the application is periodic in naturethe decision maker creates a plan that is meant to be repeated over time Such a peri-odic variant can be managed by minor modications to our models and algorithms Inparticular model (1) (5) needs to be enriched adding constraints

x1ik =

sumlisinK

y|T |ilk foralli isin A forallk isin K

to the family (4) and constraints

x|T |ik =

sumlisinK

y1ikl foralli isin Aforallk isin K

to the family (5) these link the assignments made in the last and rst time-slots assign-ment hence closing the period of assignments The column generation master problemdoes not change The pricing problem instead requires to be adapted as cycles ratherthan paths need to be generated We therefore modied our pricing routine as presentedin Algorithm 4 Exactly solving the modied pricing problem via dynamic programmingrequires O(|T ||K|3) time for every AP The main idea is to tentatively x the assignmentat time 1 to all the |K| possible MEC facilities to solve each reduced problem and tochoose the best among the |K| solutions found in this way Since it is possible to create alayer |T | + 1 as a copy of the layer t = 1 after xing the assignment the pricing problemreduces to nding a minimum cost shortest path from the single xed node in layer t = 1to the single xed node in layer |T |+ 1

Any other detail of the algorithm remains unchanged

5 Computational evaluation

We implemented our algorithms in C++ using CPLEX 126 [23] to solve the master LPsubproblems running tests on an Intel i7 4GHz workstation equipped with 32 GB of RAM

Our rst investigation is computational benchmarking the eectiveness of our algo-rithms in comparison to the branch-and-cut ILP solver of CPLEX using formulation (1) (7)

51 Dataset

We have access to a dataset of real-world mobile trac demands [24] encompassing twomonths with a time granularity of fteen minutes The geographical area covered by thedataset extends for more than 2500 km2 The demand is not associated to access points ofthe mobile network whose location is unknown but rather to a geographical tessellationof the area in 1419 rectangular cells of dierent sizes with smaller (and more dense) cellsin the center of the area We select the centers of every rectangular cell as elements of theset A of access points locations

Then we create ten clusters of access points using a standard k-means model takingas input the euclidean distances between APs optimizing it with the classical heuristicsof [25] The centers of these clusters are selected to dene the locations of the set K ofMEC facilities The network distances mik and ljk are computed as euclidean distancesaccordingly and rounded to the nearest integer (hence supposing packet processing latencyis negligible)

Given this network infrastructure we generate dierent problem instances by randomlydrawing demands in each AP in dierent ways

In details we create two random datasets

13

Algorithm 4 Periodic Pricing Algorithm

for all i isin A do

πlowast = +infinplowast = emptyfor all k isin K do

c1k

= a1ikx MEC facility k at t = 1

c1k = +infin forallk isin K k forbid MEC facility k at t = 1p1k = k forallk isin K path starting at node k at time t = 1for all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

for all k isin K do

c|T |k = c

|T |k + b1

ikk+ a1

ikend for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i when starting at k

if c|T |klowast minus ηi lt πlowast then

πlowast = c|T |klowast minus ηi

plowast = p|T |klowast

end if

end for

if πlowast lt 0 thenadd variable related to minimum cost path plowast to the model

end if

end for

Dataset A is synthetic and aims at stressing our algorithms from a pure computational pointof view We consider a planning horizon of one day split in 96 consecutive fteen-minute time slots Let d (resp d) be the minimum (resp maximum) demandobserved in any AP and time slot in [24] Demands dti for each AP i at time t aredrawn uniformly at random independently in each fteen-minute time slot in therange [d d] That is demands do not follow particular trends even if falling into thesame range of real data

Dataset B is realistic reproducing the main features of the starting data We choose a singleday at random from the two months included in the dataset [24] we perform a directquery to the demand of each AP at each time slot in that day and then we perturball demands with noise uniformly drawn at random in the interval [minus5+5]

All demand values are rounded to the nearest integer Besides the initial horizon of 96time-slots we consider planning time horizons of 48 24 and 12 time-slots by mergingrespectively 2 3 or 4 subsequent time-slots setting their demands as the average on themerged time-slots Five instances are generated in both datasets A and B

We also consider a dataset of raw real demands

Dataset C is obtained by considering a random week taken from the dataset [24] and mergingthe time-slots in either 168 slots of 1 hour each (1h) 84 slots of 2 hours (2h) 56

14

slots of 3 hours (3h) 42 slots of 4 hours (4h) or 38 slots obtained by the clusteringmethods described in subsection 62 (clust) The demand of each AP in each slot tis taken as the maximum over the the fteen-minute time slots merged in t

For every instance each MEC facility capacity Ck is set to(

maxtisinTsum

iisinA dti|K|

)middot105

and parameters α and β are both set to value 05

52 Column Generation proling

We rst report on the computational behaviour of our Column Generation algorithm (CG)In this test we consider the single-assignment non-periodic variant

In Tables 1a 1b and 1c we include the details of the root node column generationprocess for each instance of datasets A B and C respectively A best known solutionvalue zlowast is taken from a previous run of exact algorithms (see subsection 53) Besidesinstance details (columns `|T | and `inst) we include the relative gap between the primalbound value (resp dual bound value) and zlowast the number of column generation iterationsneeded to reach convergence the overall CPU time spent for solving the pricing problemsand the CPU time required to complete the column generation process As benchmarkwe also report the performances of CPLEX 1263 ILP solver when stopped at the rootnode including the corresponding primal and dual bound gaps and the time required tocomplete its root node computation

We set a time limit of two hours to each computation marking in the tables as `TLthose computations hitting that limit

We rst note that CG has good convergence behaviour less than 90 iterations arealways enough to complete the computation The high number of pricing subproblemsyields to a high number of generated columns but thanks to our dynamic programmingalgorithm the overall pricing time remains low (below 10 seconds in all cases but one)

By rounding in CG we are always able to obtain good integer solutions (that is below1 from best known solutions in all cases but 4) CPLEX is not consistent in a fewinstances (eg block |T | = 48 of the Realistic Dataset B) it is able to nd very goodprimal solutions while in other cases (eg block |T | = 24 of Dataset B or block |T | = 48of Dataset A) only very weak primal bounds can be obtained

We also observe that CG and CPLEX dual bounds are always similar That is on onehand the integrality property of our pricing problem warns that no improvement can beobtained by CG with respect to the continuous relaxation of the original formulation onthe other hand CPLEX generic cuts have no signicant eect on strengthening the samecontinuous relaxation bound

Finally in more than 37 of the instances CPLEX is unable to terminate the rootnode computation within the time limit while CG always completes the computationWhen both CG and CPLEX terminate the CPU time required by CG is up to two ordersof magnitude lower that required by CPLEX

We highlight that the (possibly fractional) solution found by CG is a global optimalsolution for the split-assignment model variants no further computing is needed in thatcase

53 Exactly solving the DASP

In a second round of experiments we let both our Branch-and-Price (BaP) and CPLEX126 ILP solver (CPX) run for two hours also exploring their branching trees In Tables2a 2b 2c we report the results of this experiment on each instance of datasets A B and Crespectively In each Table we report the relative gap between the primal bound PB (respthe dual bound DB) at the end of computation and the best known integer solution valuezlowast and the number of explored branch-and-bound nodes for both our BaP and CPX

15

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0130 1212 19 10808 0 4 0724 1197 8642 0735 1955 14 8715 0 4 244932 1949 4103 0793 1351 13 7074 0 3 0167 1345 3284 0945 0999 14 7515 0 3 2824 0994 3445 1206 1630 13 7892 0 3 3052 1627 356

24

1 0061 1475 26 17027 1 15 0249 1471 28262 1202 1537 19 11429 1 11 274940 1533 19433 0867 2019 19 12296 0 13 267368 2015 18524 0846 1864 19 12525 0 12 123542 1860 18615 0909 1764 18 12077 0 12 267486 1761 1781

48

1 0463 1819 41 27035 6 114 246767 1816 TL2 0221 2468 32 20897 1 90 270039 2465 TL3 0746 2336 33 21468 4 95 269274 2332 TL4 0295 2036 31 20496 0 74 282422 2033 TL5 0265 2514 35 22707 0 106 258676 2510 TL

96

1 0176 2274 68 47500 5 949 259445 - TL2 0055 2633 59 42621 6 913 - - TL3 0034 2779 61 43107 9 863 - - TL4 0187 2528 61 42692 5 850 - - TL5 0124 2568 60 41913 6 815 272834 - TL

(a) Synthetic Dataset A

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0809 0107 12 6542 1 2 0055 0105 1382 0917 0112 11 6150 0 2 0924 0110 1463 1043 0125 12 6611 0 2 0155 0123 1584 0797 0103 11 5843 0 2 349538 0102 1205 0781 0102 11 6548 0 2 349089 0101 113

24

1 0766 0425 15 9713 0 4 305781 0424 5322 0481 0280 16 9715 0 3 306562 0278 5873 0613 0576 15 9492 1 3 304188 0575 6224 0960 0183 17 10345 0 3 306874 0182 6155 0648 0221 16 10217 0 4 307199 0220 413

48

1 1031 0264 27 15539 1 16 0253 0262 21132 0782 0344 25 15636 2 15 0557 0343 22493 0500 0363 26 15286 1 15 0 0362 26744 0741 0314 26 15791 3 18 0049 0312 24455 0829 0296 29 16294 0 15 0651 0295 1878

96

1 0077 0933 51 29786 6 130 - - TL2 0315 0766 43 28272 3 125 - - TL3 0249 0853 46 28221 9 129 - - TL4 0395 0692 49 29320 5 126 - - TL5 0154 0726 48 29005 4 120 - - TL

(b) Realistic Dataset B

CG Root CPLEX Root

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast tclust 0590 0092 21 12928 2 9 0429 0091 4684h 0630 0272 30 20690 2 25 0175 0271 51913h 0513 0471 37 25960 3 58 0766 0470 28142h 0192 0724 50 31706 2 133 - - TL1h 0097 0905 85 56322 18 953 - - TL

(c) Raw Real Demand Dataset C

Table 1 Computational Results - CG Root vs CPLEX Root

16

(a) BaP vs CPLEX (b) BaP Detail

Figure 4 Primal Bound

We report no computing time because surprisingly neither BaP nor CPX could bringthe duality gap below 01 within the time limit except for instance 4 with |T | = 12 ofDataset A 5 with |T | = 12 of Dataset B and clust of Dataset C that CPX is able toclose (but still using more than 90 of the available CPU time)

In terms of nal dual bounds the results of both methods are very similar Our expla-nation for this phenomenon is the following the root dual bound is already very close tothe integer optimum value and therefore the real challenge is to nd an optimal primalsolution At the same time the high number of time-slots yields values of primal solutionson the order of magnitude of 108 as soon as the duality gap becomes small numericalapproximation issues prevent to coherently explore the remaining search tree

In terms of searching for good primal solutions in the inner nodes of the branching treeinstead BaP and CPX are not equivalent in Figure 4a we plot the typical primal boundvalue (y axis) improvements as the computation (x axis) proceeds (instance 1 |T | = 24dataset B) for the sake of comparison the x axis report relative values with respect tothe overall number of branch-and-bound nodes for CPX and the overall number of columngeneration iterations for BaP Eventually CPX is more numerically stable oering aftertwo hours of computation primal solutions values a few tenths of percentage points better(up to 05 of improvement) In turn BaP allows to nd near-optimal integer solutionsmuch more quickly that is in fact already at the root node The behaviour of BaP in theearly steps of computation is further detailed in Figure 4b the quality of the primal boundsteeply increase during the column generation iterations at the root node

As a synthetic nal assessment of our computational evaluation we can report thatwhen the number of time-slots is small and the planner has no particular need for quickoptimization algorithms both BaP and CPLEX might be viable alternatives to optimizethe DASP

BaP is faster especially when used heuristically stopping the computation either atthe root node or after exploring a few nodes of the branch-and-bound tree This makes itwell suited also when quick optimization is needed like in what-if-analyses

When the number of time-slots increases however using CPLEX is not an optionanymore

We repeated all the experiments with a periodic-plan model without nding substantialchanges in the computational behaviour of the methods Indeed the periodic-plan modelhas main impact only in the structure of the pricing problem of BaP but pricing involvesonly a small amount of the overall computational eort

17

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0 1208 17661 0411 1197 2032 0 1951 17038 0777 1949 3713 0198 1347 18572 0 1345 4524 0370 0997 19198 0 0993 5485 0020 1626 18013 0 1626 699

24

1 0 1473 8576 0249 1471 142 0 1535 8657 0855 1533 243 0 2018 9349 267368 2015 464 0 1863 9353 123542 1860 385 0 1763 10204 267486 1761 40

48

1 0 1818 2123 246767 1816 02 0 2468 2724 270039 2465 03 0 2335 2558 269274 2332 04 0 2036 3133 282422 2033 05 0 2514 2528 258676 2510 0

96

1 0 2274 113 259445 - TL2 0 2633 217 - - TL3 0 2779 168 - - TL4 0 2528 135 - - TL5 0 2568 207 272834 - TL

(a) Synthetic Dataset A

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0160 0105 35112 0 0103 23982 0235 0111 30708 0 0109 25793 0320 0124 26374 0 0122 18184 0406 0102 26490 0 0100 19325 0267 0100 24714 0 0098 1844

24

1 0133 0424 17961 0 0423 1442 0274 0279 18354 0 0278 1093 0 0576 20016 0717 0574 2254 0353 0183 17481 0 0182 2325 0284 0220 20446 0 0220 522

48

1 0312 0263 10738 0 0262 202 0249 0343 10465 0 0343 183 0113 0363 10482 0 0360 174 0227 0313 10321 0 0311 165 0226 0295 10818 0 0295 21

96

1 0 0932 3133 - - TL2 0 0765 3193 - - TL3 0 0852 3398 - - TL4 0 0691 3099 - - TL5 0 0726 3299 - - TL

(b) Realistic Dataset B

B-amp-P CPLEX

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

clust 0376 0091 13849 0 0091 8124h 0442 0272 8985 0 0270 303h 0403 0471 5086 0 0470 332h 0 0724 2864 - - TL1h 0 0905 370 - - TL

(c) Raw Real Demand Dataset C

Table 2 Computational Results - BaP vs CPLEX

18

6 Practical case study

Our nal aim is to assess the eectiveness of our optimization core in the context of thedata-driven MEC management optimization framework To this end we rely on the com-plete real-world dataset in [24] and run actual analytics on it so as to generate the demandproles We then feed our optimization models with such proles which ultimately letsus measure the quality of the assignment plans it returns in a practical case

61 Experimental setup

The real-world mobile trac data covers a planning period of eight weeks split in a set Tof fteen-minute snapshots The rst approach we take in order to infer demand prolesexploits a well-known property of mobile trac ie its weekly periodicity [26] Namely asingle week is taken as training data and the mobile trac recorded in each fteen-minutetime-slot is considered as a prole The tasks performed by the data mining and validationmodules are kept as simple as possible in order to highlight the eect of the optimizationcore

Training Conceptually the resulting 4 times 24 times 7 = 672 training proles are then usedas input for our optimization algorithms By optimizing over the training data we obtaina planning solution which becomes our assignment plan we apply such a plan to theremaining seven weeks of test data As an example optimizing over training data yields asolution including a specic assignment of APs to MEC facilities on Monday between 700am and 715 am we then blindly apply the same assignments on the 700-715 am timeslots of each Monday in the test data presuming that the demand conguration is similaron all Mondays at the same time In a sense this is a worst-case situation in which thedecision maker simply observes the system for one week before deciding on the planningfor the remaining weeks

Practically we do not directly use the 672 fteen-minutes time-slots for training Weassume instead that the preprocessing and data-mining module produces suitable ag-gregations We experimented therefore with simple aggregation of the proles mergingtime-slots sequentially over 1 2 3 or 4 hours Each aggregation step was performed byconsidering in each AP and in each aggregated time-slot the maximum demand value ofthat AP over the corresponding base time-slots The optimized solution was then dis-aggregated in post-processing simply replicating the same plan over the fteen-minutestime-slots composing each aggregated time-slot By choosing the maximum demand valuesduring aggregation we ensure that our optimized solutions remain feasible after disaggre-gation

It is apparent that less aggregated proles entail a higher potential for optimizationin the baseline scenario the assignment of APs to MEC facilities can be changed every15 minutes possibly assigning to the same MEC facility APs that experience very highpeaks of demand in subsequent time slots They are however more prone to overttingas peaks in particular hours of the training week do not necessarily correspond to peaksin the corresponding hour of testing weeks In addition they are more clearly expensivefrom a computational standpoint

More aggregated instances instead are more conservative two APs with very highdemand peaks in the same four-hours time slot cannot be assigned to the same MECfacility thus possibly preventing capacity violations in the test weeks if those peaks slightlymove in time They are also less demanding in terms of computational costs Howeveraggregation forces the a same conguration for longer timeframes making the optimizationpossibly oblivious of fast dynamics in the demand

19

Figure 5 Time-Clustering resulting from [21]

In order to further balance the aggressive optimization process during the trainingphase of low aggregation instances we found empirically useful to set the Ck capacityvalues to

(maxtisinT

sumiisinA d

ti|K|

)middot 105 in each test That is one-hour time-slot instances

are optimized with lower capacity values

Test To ensure fairness in the comparison during the test phase only disaggregatedsolutions are considered That is independently on the aggregation used for training onlysolutions dened over the original fteen-minutes time-slots are compared Similarly thereference MEC capacity value was xed to

(maxtisinT

sumiisinA d

ti|K|

)middot110 in any comparison

Clearly neither the cost nor the capacity usage are guaranteed to remain the samewhen the planning obtained with training data is applied to test data as uctuations inthe demand may occur across weeks The quality of our solutions is therefore evaluatedaccording to two measures (i) the assignment and switching cost of the planning and (ii)

the amount of violations in capacity constraints both measured on test data The latteris computed as follows

maxtisinT

sumkisinK

maxsum

iisinA dtix

tik minus Ck 0

Ck

that is the overall amount of violation in capacity constraints as a relative value respectto the available capacity in the worst time-slot

These measures are computed for each plan by the validation module through simplesimulation on the seven weeks of test data

Advanced Clustering Benchmark An alternative to employing our ad-hoc techniqueon the optimization module would be to perform a more aggressive aggregation over timeproducing instances that are small enough to be optimized by CPLEX We experimentedon such an option adapting the temporal clustering solution presented in [21] to our needsSpecically we take the following steps (i) we generate a median week of mobile tracdemand by computing the median load recorded at each AP during every hour of the weekusing it as training data (ii) we perform two separate hierarchical clusterings respectivelyusing the total volume and normalized distance metrics introduced in [21] (iii) we ndthe intersection of the two cluster sets obtained at the previous point

Figure 5 shows the resulting clustering of one-hour time slots ve typical demandproles are identied which can be associated to working hours (denoted by 0 in thegure) relax hours in the late afternoons and weekends (1) morning commuting hours(2) night hours (3) and late evening hours (4) Very few time-slots are actually producedthis way allowing CPLEX to optimize the corresponding instances Consecutive time-slots

20

InstWeek

train 1 2 3 4 5 6 7

Bench-CPLEX 959 703 571 425 257 388 1468 951Bench-CG 959 676 548 408 245 410 1434 927

4h 209 154 172 066 000 254 1163 2923h 194 142 148 110 125 158 1107 2982h 220 258 199 119 226 282 1122 4151h 284 238 417 114 192 404 1065 547

Table 3 Time-Slot Peak Exceeded Capacity Over Available Capacity

belonging to the same cluster are then aggregated The aggregated instance is optimizedand the solution obtained in this way is then disaggregated in fteen-minute time-slotsplans as in the previous case during post-processing before being compared on test data

62 Experimental evaluation

Following the computational results of Section 5 our core optimization module alwaysemploys our Branch-and-Price as a heuristic (HBP) stopping its computation at the rootnode except for the aggregated instances produced by time-clustering Having |T | = 38these are manageable eciently even by general purpose solvers CPLEX 1263 ILP solverwas then used to solve them to proven optimality The scatter plot in Figure 6 summarizesour results Each point represents the outcome on a single week of test data Dierentshapes refer to dierent demand prole aggregation methods obtained by merging 1 2 3 or4 consecutive one-hour time slots as well as using the Advanced Clustering and CPLEX(Bench-CPLEX) The y axis coordinate of each point represents the capacity violationmeasure as introduced above the x axis coordinate of each point represents the solutioncost measure expressed as percentage value of that of the optimal solution employing theAdvanced Clustering Benchmark method Therefore negative (resp positive) percentagesmap to a performance improvement (resp reduction) with respect to the benchmarkAs a reference we report also the results obtained by using HBP instead of CPLEX foroptimizing the Advanced Clustering Benchmark instances (Bench-CG) The details aboutcapacity violation measures are reported also in Table 3 for each week in the training set(columns) and for each demand prole aggregation method (rows)

A rst remarkable result is that in all cases our HBP with sequential clustering allows forsolutions with less capacity violations In particular HBP with either four-hours or three-hours aggregation oer almost no capacity violations coming at the price of three to vepercent increase in solutions cost HBP with two-hours aggregation always outperforms thebenchmark method both in terms of exceeded capacity and in terms of solution costs HBPwith one-hour aggregation further decrease costs at the price of slightly higher capacityviolation

We also experimented on using the full BaP instead of the truncated HBP Our resultsare reported in Figure 7 no signicant change was observed Similarly no signicantchange was observed by using HBP instead of CPLEX on the benchmark clustering

63 Eect of periodic planning

Finally we measure the impact in solution switching costs yielded by choosing a periodmodel instead of a non-periodic one In Table 4 we report for each aggregation listedin the previous subsection the change in switching costs between inner time-slots of theweek (intra-week) between border time-slots of dierent weeks (inter-week) as well as thetotal switching cost the total assignment cost and the overall cost of the solution Using a

21

Figure 6 1-Week Plan - Time Aggreg Comparison

(a) Total Costs (b) Exceeded Capacity

Figure 7 Mean Costs And Exceeded Capacity - CG Root vs BaP

22

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 11: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

Algorithm 3 Rounding heuristic

Input variable values x from a RMP fractional solutionOutput x = 0 y = 0 integer solutionfor all t isin T do

rk = Ck forallk isin K residual capacity of MEC facility kA = sort(AmaxkisinK xtik) sort the set of AP by non-increasing value of fractionalassignment to the most desirable MEC facilityfor all i isin A do

consider APs in such an orderif k isin K|dti le rk = empty thenFAIL no MEC facility with enough capacity exit with FAIL status

else

k = arg maxkisinK|dtilerk xtik get highest assignment

xtik = 10 x assignment with MEC facility

rk = rk minus dti update residual capacityend if

end for

end for

y = compute_shift(x) compute y variable values to be consistent with x

43 Rounding Heuristics

In order to nd good primal bounds a simple rounding algorithm (presented in Algorithm3) is executed at every column generation iteration Let z be the (possibly fractional)variable values of the RMP at a certain iteration we can compute the values of thecorresponding x variables as

xtik =sumpisinΩi

xtpik zp

For each time-slot t isin T for each APs i the highest xtik is retrieved For each AP sorted bydescending highest x value the assignment is made with the MEC facility correspondingto the highest x and with enough residual capacity Although no guarantee in feasibilityis given our computational experiments revealed it to be highly eective

44 Variables xing

We also experimented with probing techniques to potentially perform problem reductionduring the column generation process In particular we employed Lagrangean probing tox variables at a pricing level The main idea is to run the Pricing Problem ResolutionAlgorithm twice the rst time as described in 2 that is considering each layer t = 1 |T |in forward order the second time instead considering the layers in backward order that is

initializing c|T |k = 0 and updating each ctk = minklowastisinK ct+1

klowast +dt+1i (αlkklowast +βmiklowast +λt+1klowast)

In this way the cost χtk of the best path in which at time t an assignment is forced to MEC

facility k can be computed by summing the forward and backward labels ctkA valid dual bound LB can be computed at each column generation iteration as

LB = ρminussumiisinA

πi

where ρ is the value of the last RMP solution Let UB be the value of the best primal(integer) solution found so far

For each i isin A let s(t) be the MEC facility at which AP i has been assigned at time tin the optimal pricing solution returned by Algorithm 2 We perform the following xes

11

bull for each t isin T and k isin K if LB + χts(t) minus χ

tk ge UB then if assignment to MEC

facility k was forced no improvement in the primal bound would ever be obtainedTherefore node k can be removed from layer t without losing optimization powerthat means xing variable xtik = 0 in the original model

bull for each t isin T if LB+χts(t)minusminkisinKs(t) χ

tk ge UB then if such an assignment was

forbidden no improvement in the primal bound would ever be obtained Thereforeall nodes k 6= s(t) can be removed from layer t without losing optimization powerthat means xing variable xtis(t) = 1 in the original model

A similar xing procedure is run on arcs of the pricing graph thereby allowing to x ytkprimeprimekprimevariables in the original model

From an implementation point of view we always allowed a relative tolerance of 5eminus4in the xing test to prevent numerical troubles We run the xing procedure at the endof the column generation process of every node of the search tree additionally at the rootnode we run it whenever an improving primal solution is found

45 Branch-and-price

When upper and lower bounds at the end of the column generation process do not matchwe proceed to branching We branch on original variables x rather than on variables ofthe MP Fixing variable xtik to value 0 corresponds to xing to value 0 all variables zp isin Ωi

that assign AP i to MEC facility k at time t Similarly xing variable xtik to value 1corresponds to xing to value 0 all variables zp isin Ωi that do not assign AP i to MECfacility k at time t Neither forbidding nor forcing assignments change the structure of thepricing problem these conditions are easily included within the dynamic programmingalgorithm by simply removing nodes from the pricing graph According to Proposition 1no branching on y variables is needed

We considered the following two branching rules

1 considering all possible assignments of AP i at time t take the pair (iprime tprime) which hasgreatest number of variables xt

primeiprimek with strictly positive value that is that AP whose

assignment at a certain time is split among the greatest number of dierent MECfacilities Sort variables xt

primeiprimek by non-increasing value and partition this ordered set

in two the rst set containing variables in the odd positions of ordered set and thesecond set containing variables in the even positions A left (resp right) branch iscreated xing to zero all the variables in the rst (resp second) set

2 select the variable xtik whose value is closer to 05 ie the variable related to the mostfractional assignment Create two branches xing the selected variable respectivelyto value 0 or to value 1

We always consider branching rule 1 rst triggering rule 2 only when all (i t) pairshave at most two corresponding fractional xtik variables During preliminary experimentsa simple depth-rst exploration policy showed to perform best When rule 2 is used thextik = 1 branch is explored rst

46 Split assignment and periodic plans

We rst observe that global optimal split-assignment plans can be obtained by simplystopping at the root node and considering the (potentially fractional) solution of thecolumn generation master problem

12

Furthermore as discussed in the Introduction the application is periodic in naturethe decision maker creates a plan that is meant to be repeated over time Such a peri-odic variant can be managed by minor modications to our models and algorithms Inparticular model (1) (5) needs to be enriched adding constraints

x1ik =

sumlisinK

y|T |ilk foralli isin A forallk isin K

to the family (4) and constraints

x|T |ik =

sumlisinK

y1ikl foralli isin Aforallk isin K

to the family (5) these link the assignments made in the last and rst time-slots assign-ment hence closing the period of assignments The column generation master problemdoes not change The pricing problem instead requires to be adapted as cycles ratherthan paths need to be generated We therefore modied our pricing routine as presentedin Algorithm 4 Exactly solving the modied pricing problem via dynamic programmingrequires O(|T ||K|3) time for every AP The main idea is to tentatively x the assignmentat time 1 to all the |K| possible MEC facilities to solve each reduced problem and tochoose the best among the |K| solutions found in this way Since it is possible to create alayer |T | + 1 as a copy of the layer t = 1 after xing the assignment the pricing problemreduces to nding a minimum cost shortest path from the single xed node in layer t = 1to the single xed node in layer |T |+ 1

Any other detail of the algorithm remains unchanged

5 Computational evaluation

We implemented our algorithms in C++ using CPLEX 126 [23] to solve the master LPsubproblems running tests on an Intel i7 4GHz workstation equipped with 32 GB of RAM

Our rst investigation is computational benchmarking the eectiveness of our algo-rithms in comparison to the branch-and-cut ILP solver of CPLEX using formulation (1) (7)

51 Dataset

We have access to a dataset of real-world mobile trac demands [24] encompassing twomonths with a time granularity of fteen minutes The geographical area covered by thedataset extends for more than 2500 km2 The demand is not associated to access points ofthe mobile network whose location is unknown but rather to a geographical tessellationof the area in 1419 rectangular cells of dierent sizes with smaller (and more dense) cellsin the center of the area We select the centers of every rectangular cell as elements of theset A of access points locations

Then we create ten clusters of access points using a standard k-means model takingas input the euclidean distances between APs optimizing it with the classical heuristicsof [25] The centers of these clusters are selected to dene the locations of the set K ofMEC facilities The network distances mik and ljk are computed as euclidean distancesaccordingly and rounded to the nearest integer (hence supposing packet processing latencyis negligible)

Given this network infrastructure we generate dierent problem instances by randomlydrawing demands in each AP in dierent ways

In details we create two random datasets

13

Algorithm 4 Periodic Pricing Algorithm

for all i isin A do

πlowast = +infinplowast = emptyfor all k isin K do

c1k

= a1ikx MEC facility k at t = 1

c1k = +infin forallk isin K k forbid MEC facility k at t = 1p1k = k forallk isin K path starting at node k at time t = 1for all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

for all k isin K do

c|T |k = c

|T |k + b1

ikk+ a1

ikend for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i when starting at k

if c|T |klowast minus ηi lt πlowast then

πlowast = c|T |klowast minus ηi

plowast = p|T |klowast

end if

end for

if πlowast lt 0 thenadd variable related to minimum cost path plowast to the model

end if

end for

Dataset A is synthetic and aims at stressing our algorithms from a pure computational pointof view We consider a planning horizon of one day split in 96 consecutive fteen-minute time slots Let d (resp d) be the minimum (resp maximum) demandobserved in any AP and time slot in [24] Demands dti for each AP i at time t aredrawn uniformly at random independently in each fteen-minute time slot in therange [d d] That is demands do not follow particular trends even if falling into thesame range of real data

Dataset B is realistic reproducing the main features of the starting data We choose a singleday at random from the two months included in the dataset [24] we perform a directquery to the demand of each AP at each time slot in that day and then we perturball demands with noise uniformly drawn at random in the interval [minus5+5]

All demand values are rounded to the nearest integer Besides the initial horizon of 96time-slots we consider planning time horizons of 48 24 and 12 time-slots by mergingrespectively 2 3 or 4 subsequent time-slots setting their demands as the average on themerged time-slots Five instances are generated in both datasets A and B

We also consider a dataset of raw real demands

Dataset C is obtained by considering a random week taken from the dataset [24] and mergingthe time-slots in either 168 slots of 1 hour each (1h) 84 slots of 2 hours (2h) 56

14

slots of 3 hours (3h) 42 slots of 4 hours (4h) or 38 slots obtained by the clusteringmethods described in subsection 62 (clust) The demand of each AP in each slot tis taken as the maximum over the the fteen-minute time slots merged in t

For every instance each MEC facility capacity Ck is set to(

maxtisinTsum

iisinA dti|K|

)middot105

and parameters α and β are both set to value 05

52 Column Generation proling

We rst report on the computational behaviour of our Column Generation algorithm (CG)In this test we consider the single-assignment non-periodic variant

In Tables 1a 1b and 1c we include the details of the root node column generationprocess for each instance of datasets A B and C respectively A best known solutionvalue zlowast is taken from a previous run of exact algorithms (see subsection 53) Besidesinstance details (columns `|T | and `inst) we include the relative gap between the primalbound value (resp dual bound value) and zlowast the number of column generation iterationsneeded to reach convergence the overall CPU time spent for solving the pricing problemsand the CPU time required to complete the column generation process As benchmarkwe also report the performances of CPLEX 1263 ILP solver when stopped at the rootnode including the corresponding primal and dual bound gaps and the time required tocomplete its root node computation

We set a time limit of two hours to each computation marking in the tables as `TLthose computations hitting that limit

We rst note that CG has good convergence behaviour less than 90 iterations arealways enough to complete the computation The high number of pricing subproblemsyields to a high number of generated columns but thanks to our dynamic programmingalgorithm the overall pricing time remains low (below 10 seconds in all cases but one)

By rounding in CG we are always able to obtain good integer solutions (that is below1 from best known solutions in all cases but 4) CPLEX is not consistent in a fewinstances (eg block |T | = 48 of the Realistic Dataset B) it is able to nd very goodprimal solutions while in other cases (eg block |T | = 24 of Dataset B or block |T | = 48of Dataset A) only very weak primal bounds can be obtained

We also observe that CG and CPLEX dual bounds are always similar That is on onehand the integrality property of our pricing problem warns that no improvement can beobtained by CG with respect to the continuous relaxation of the original formulation onthe other hand CPLEX generic cuts have no signicant eect on strengthening the samecontinuous relaxation bound

Finally in more than 37 of the instances CPLEX is unable to terminate the rootnode computation within the time limit while CG always completes the computationWhen both CG and CPLEX terminate the CPU time required by CG is up to two ordersof magnitude lower that required by CPLEX

We highlight that the (possibly fractional) solution found by CG is a global optimalsolution for the split-assignment model variants no further computing is needed in thatcase

53 Exactly solving the DASP

In a second round of experiments we let both our Branch-and-Price (BaP) and CPLEX126 ILP solver (CPX) run for two hours also exploring their branching trees In Tables2a 2b 2c we report the results of this experiment on each instance of datasets A B and Crespectively In each Table we report the relative gap between the primal bound PB (respthe dual bound DB) at the end of computation and the best known integer solution valuezlowast and the number of explored branch-and-bound nodes for both our BaP and CPX

15

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0130 1212 19 10808 0 4 0724 1197 8642 0735 1955 14 8715 0 4 244932 1949 4103 0793 1351 13 7074 0 3 0167 1345 3284 0945 0999 14 7515 0 3 2824 0994 3445 1206 1630 13 7892 0 3 3052 1627 356

24

1 0061 1475 26 17027 1 15 0249 1471 28262 1202 1537 19 11429 1 11 274940 1533 19433 0867 2019 19 12296 0 13 267368 2015 18524 0846 1864 19 12525 0 12 123542 1860 18615 0909 1764 18 12077 0 12 267486 1761 1781

48

1 0463 1819 41 27035 6 114 246767 1816 TL2 0221 2468 32 20897 1 90 270039 2465 TL3 0746 2336 33 21468 4 95 269274 2332 TL4 0295 2036 31 20496 0 74 282422 2033 TL5 0265 2514 35 22707 0 106 258676 2510 TL

96

1 0176 2274 68 47500 5 949 259445 - TL2 0055 2633 59 42621 6 913 - - TL3 0034 2779 61 43107 9 863 - - TL4 0187 2528 61 42692 5 850 - - TL5 0124 2568 60 41913 6 815 272834 - TL

(a) Synthetic Dataset A

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0809 0107 12 6542 1 2 0055 0105 1382 0917 0112 11 6150 0 2 0924 0110 1463 1043 0125 12 6611 0 2 0155 0123 1584 0797 0103 11 5843 0 2 349538 0102 1205 0781 0102 11 6548 0 2 349089 0101 113

24

1 0766 0425 15 9713 0 4 305781 0424 5322 0481 0280 16 9715 0 3 306562 0278 5873 0613 0576 15 9492 1 3 304188 0575 6224 0960 0183 17 10345 0 3 306874 0182 6155 0648 0221 16 10217 0 4 307199 0220 413

48

1 1031 0264 27 15539 1 16 0253 0262 21132 0782 0344 25 15636 2 15 0557 0343 22493 0500 0363 26 15286 1 15 0 0362 26744 0741 0314 26 15791 3 18 0049 0312 24455 0829 0296 29 16294 0 15 0651 0295 1878

96

1 0077 0933 51 29786 6 130 - - TL2 0315 0766 43 28272 3 125 - - TL3 0249 0853 46 28221 9 129 - - TL4 0395 0692 49 29320 5 126 - - TL5 0154 0726 48 29005 4 120 - - TL

(b) Realistic Dataset B

CG Root CPLEX Root

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast tclust 0590 0092 21 12928 2 9 0429 0091 4684h 0630 0272 30 20690 2 25 0175 0271 51913h 0513 0471 37 25960 3 58 0766 0470 28142h 0192 0724 50 31706 2 133 - - TL1h 0097 0905 85 56322 18 953 - - TL

(c) Raw Real Demand Dataset C

Table 1 Computational Results - CG Root vs CPLEX Root

16

(a) BaP vs CPLEX (b) BaP Detail

Figure 4 Primal Bound

We report no computing time because surprisingly neither BaP nor CPX could bringthe duality gap below 01 within the time limit except for instance 4 with |T | = 12 ofDataset A 5 with |T | = 12 of Dataset B and clust of Dataset C that CPX is able toclose (but still using more than 90 of the available CPU time)

In terms of nal dual bounds the results of both methods are very similar Our expla-nation for this phenomenon is the following the root dual bound is already very close tothe integer optimum value and therefore the real challenge is to nd an optimal primalsolution At the same time the high number of time-slots yields values of primal solutionson the order of magnitude of 108 as soon as the duality gap becomes small numericalapproximation issues prevent to coherently explore the remaining search tree

In terms of searching for good primal solutions in the inner nodes of the branching treeinstead BaP and CPX are not equivalent in Figure 4a we plot the typical primal boundvalue (y axis) improvements as the computation (x axis) proceeds (instance 1 |T | = 24dataset B) for the sake of comparison the x axis report relative values with respect tothe overall number of branch-and-bound nodes for CPX and the overall number of columngeneration iterations for BaP Eventually CPX is more numerically stable oering aftertwo hours of computation primal solutions values a few tenths of percentage points better(up to 05 of improvement) In turn BaP allows to nd near-optimal integer solutionsmuch more quickly that is in fact already at the root node The behaviour of BaP in theearly steps of computation is further detailed in Figure 4b the quality of the primal boundsteeply increase during the column generation iterations at the root node

As a synthetic nal assessment of our computational evaluation we can report thatwhen the number of time-slots is small and the planner has no particular need for quickoptimization algorithms both BaP and CPLEX might be viable alternatives to optimizethe DASP

BaP is faster especially when used heuristically stopping the computation either atthe root node or after exploring a few nodes of the branch-and-bound tree This makes itwell suited also when quick optimization is needed like in what-if-analyses

When the number of time-slots increases however using CPLEX is not an optionanymore

We repeated all the experiments with a periodic-plan model without nding substantialchanges in the computational behaviour of the methods Indeed the periodic-plan modelhas main impact only in the structure of the pricing problem of BaP but pricing involvesonly a small amount of the overall computational eort

17

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0 1208 17661 0411 1197 2032 0 1951 17038 0777 1949 3713 0198 1347 18572 0 1345 4524 0370 0997 19198 0 0993 5485 0020 1626 18013 0 1626 699

24

1 0 1473 8576 0249 1471 142 0 1535 8657 0855 1533 243 0 2018 9349 267368 2015 464 0 1863 9353 123542 1860 385 0 1763 10204 267486 1761 40

48

1 0 1818 2123 246767 1816 02 0 2468 2724 270039 2465 03 0 2335 2558 269274 2332 04 0 2036 3133 282422 2033 05 0 2514 2528 258676 2510 0

96

1 0 2274 113 259445 - TL2 0 2633 217 - - TL3 0 2779 168 - - TL4 0 2528 135 - - TL5 0 2568 207 272834 - TL

(a) Synthetic Dataset A

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0160 0105 35112 0 0103 23982 0235 0111 30708 0 0109 25793 0320 0124 26374 0 0122 18184 0406 0102 26490 0 0100 19325 0267 0100 24714 0 0098 1844

24

1 0133 0424 17961 0 0423 1442 0274 0279 18354 0 0278 1093 0 0576 20016 0717 0574 2254 0353 0183 17481 0 0182 2325 0284 0220 20446 0 0220 522

48

1 0312 0263 10738 0 0262 202 0249 0343 10465 0 0343 183 0113 0363 10482 0 0360 174 0227 0313 10321 0 0311 165 0226 0295 10818 0 0295 21

96

1 0 0932 3133 - - TL2 0 0765 3193 - - TL3 0 0852 3398 - - TL4 0 0691 3099 - - TL5 0 0726 3299 - - TL

(b) Realistic Dataset B

B-amp-P CPLEX

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

clust 0376 0091 13849 0 0091 8124h 0442 0272 8985 0 0270 303h 0403 0471 5086 0 0470 332h 0 0724 2864 - - TL1h 0 0905 370 - - TL

(c) Raw Real Demand Dataset C

Table 2 Computational Results - BaP vs CPLEX

18

6 Practical case study

Our nal aim is to assess the eectiveness of our optimization core in the context of thedata-driven MEC management optimization framework To this end we rely on the com-plete real-world dataset in [24] and run actual analytics on it so as to generate the demandproles We then feed our optimization models with such proles which ultimately letsus measure the quality of the assignment plans it returns in a practical case

61 Experimental setup

The real-world mobile trac data covers a planning period of eight weeks split in a set Tof fteen-minute snapshots The rst approach we take in order to infer demand prolesexploits a well-known property of mobile trac ie its weekly periodicity [26] Namely asingle week is taken as training data and the mobile trac recorded in each fteen-minutetime-slot is considered as a prole The tasks performed by the data mining and validationmodules are kept as simple as possible in order to highlight the eect of the optimizationcore

Training Conceptually the resulting 4 times 24 times 7 = 672 training proles are then usedas input for our optimization algorithms By optimizing over the training data we obtaina planning solution which becomes our assignment plan we apply such a plan to theremaining seven weeks of test data As an example optimizing over training data yields asolution including a specic assignment of APs to MEC facilities on Monday between 700am and 715 am we then blindly apply the same assignments on the 700-715 am timeslots of each Monday in the test data presuming that the demand conguration is similaron all Mondays at the same time In a sense this is a worst-case situation in which thedecision maker simply observes the system for one week before deciding on the planningfor the remaining weeks

Practically we do not directly use the 672 fteen-minutes time-slots for training Weassume instead that the preprocessing and data-mining module produces suitable ag-gregations We experimented therefore with simple aggregation of the proles mergingtime-slots sequentially over 1 2 3 or 4 hours Each aggregation step was performed byconsidering in each AP and in each aggregated time-slot the maximum demand value ofthat AP over the corresponding base time-slots The optimized solution was then dis-aggregated in post-processing simply replicating the same plan over the fteen-minutestime-slots composing each aggregated time-slot By choosing the maximum demand valuesduring aggregation we ensure that our optimized solutions remain feasible after disaggre-gation

It is apparent that less aggregated proles entail a higher potential for optimizationin the baseline scenario the assignment of APs to MEC facilities can be changed every15 minutes possibly assigning to the same MEC facility APs that experience very highpeaks of demand in subsequent time slots They are however more prone to overttingas peaks in particular hours of the training week do not necessarily correspond to peaksin the corresponding hour of testing weeks In addition they are more clearly expensivefrom a computational standpoint

More aggregated instances instead are more conservative two APs with very highdemand peaks in the same four-hours time slot cannot be assigned to the same MECfacility thus possibly preventing capacity violations in the test weeks if those peaks slightlymove in time They are also less demanding in terms of computational costs Howeveraggregation forces the a same conguration for longer timeframes making the optimizationpossibly oblivious of fast dynamics in the demand

19

Figure 5 Time-Clustering resulting from [21]

In order to further balance the aggressive optimization process during the trainingphase of low aggregation instances we found empirically useful to set the Ck capacityvalues to

(maxtisinT

sumiisinA d

ti|K|

)middot 105 in each test That is one-hour time-slot instances

are optimized with lower capacity values

Test To ensure fairness in the comparison during the test phase only disaggregatedsolutions are considered That is independently on the aggregation used for training onlysolutions dened over the original fteen-minutes time-slots are compared Similarly thereference MEC capacity value was xed to

(maxtisinT

sumiisinA d

ti|K|

)middot110 in any comparison

Clearly neither the cost nor the capacity usage are guaranteed to remain the samewhen the planning obtained with training data is applied to test data as uctuations inthe demand may occur across weeks The quality of our solutions is therefore evaluatedaccording to two measures (i) the assignment and switching cost of the planning and (ii)

the amount of violations in capacity constraints both measured on test data The latteris computed as follows

maxtisinT

sumkisinK

maxsum

iisinA dtix

tik minus Ck 0

Ck

that is the overall amount of violation in capacity constraints as a relative value respectto the available capacity in the worst time-slot

These measures are computed for each plan by the validation module through simplesimulation on the seven weeks of test data

Advanced Clustering Benchmark An alternative to employing our ad-hoc techniqueon the optimization module would be to perform a more aggressive aggregation over timeproducing instances that are small enough to be optimized by CPLEX We experimentedon such an option adapting the temporal clustering solution presented in [21] to our needsSpecically we take the following steps (i) we generate a median week of mobile tracdemand by computing the median load recorded at each AP during every hour of the weekusing it as training data (ii) we perform two separate hierarchical clusterings respectivelyusing the total volume and normalized distance metrics introduced in [21] (iii) we ndthe intersection of the two cluster sets obtained at the previous point

Figure 5 shows the resulting clustering of one-hour time slots ve typical demandproles are identied which can be associated to working hours (denoted by 0 in thegure) relax hours in the late afternoons and weekends (1) morning commuting hours(2) night hours (3) and late evening hours (4) Very few time-slots are actually producedthis way allowing CPLEX to optimize the corresponding instances Consecutive time-slots

20

InstWeek

train 1 2 3 4 5 6 7

Bench-CPLEX 959 703 571 425 257 388 1468 951Bench-CG 959 676 548 408 245 410 1434 927

4h 209 154 172 066 000 254 1163 2923h 194 142 148 110 125 158 1107 2982h 220 258 199 119 226 282 1122 4151h 284 238 417 114 192 404 1065 547

Table 3 Time-Slot Peak Exceeded Capacity Over Available Capacity

belonging to the same cluster are then aggregated The aggregated instance is optimizedand the solution obtained in this way is then disaggregated in fteen-minute time-slotsplans as in the previous case during post-processing before being compared on test data

62 Experimental evaluation

Following the computational results of Section 5 our core optimization module alwaysemploys our Branch-and-Price as a heuristic (HBP) stopping its computation at the rootnode except for the aggregated instances produced by time-clustering Having |T | = 38these are manageable eciently even by general purpose solvers CPLEX 1263 ILP solverwas then used to solve them to proven optimality The scatter plot in Figure 6 summarizesour results Each point represents the outcome on a single week of test data Dierentshapes refer to dierent demand prole aggregation methods obtained by merging 1 2 3 or4 consecutive one-hour time slots as well as using the Advanced Clustering and CPLEX(Bench-CPLEX) The y axis coordinate of each point represents the capacity violationmeasure as introduced above the x axis coordinate of each point represents the solutioncost measure expressed as percentage value of that of the optimal solution employing theAdvanced Clustering Benchmark method Therefore negative (resp positive) percentagesmap to a performance improvement (resp reduction) with respect to the benchmarkAs a reference we report also the results obtained by using HBP instead of CPLEX foroptimizing the Advanced Clustering Benchmark instances (Bench-CG) The details aboutcapacity violation measures are reported also in Table 3 for each week in the training set(columns) and for each demand prole aggregation method (rows)

A rst remarkable result is that in all cases our HBP with sequential clustering allows forsolutions with less capacity violations In particular HBP with either four-hours or three-hours aggregation oer almost no capacity violations coming at the price of three to vepercent increase in solutions cost HBP with two-hours aggregation always outperforms thebenchmark method both in terms of exceeded capacity and in terms of solution costs HBPwith one-hour aggregation further decrease costs at the price of slightly higher capacityviolation

We also experimented on using the full BaP instead of the truncated HBP Our resultsare reported in Figure 7 no signicant change was observed Similarly no signicantchange was observed by using HBP instead of CPLEX on the benchmark clustering

63 Eect of periodic planning

Finally we measure the impact in solution switching costs yielded by choosing a periodmodel instead of a non-periodic one In Table 4 we report for each aggregation listedin the previous subsection the change in switching costs between inner time-slots of theweek (intra-week) between border time-slots of dierent weeks (inter-week) as well as thetotal switching cost the total assignment cost and the overall cost of the solution Using a

21

Figure 6 1-Week Plan - Time Aggreg Comparison

(a) Total Costs (b) Exceeded Capacity

Figure 7 Mean Costs And Exceeded Capacity - CG Root vs BaP

22

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 12: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

bull for each t isin T and k isin K if LB + χts(t) minus χ

tk ge UB then if assignment to MEC

facility k was forced no improvement in the primal bound would ever be obtainedTherefore node k can be removed from layer t without losing optimization powerthat means xing variable xtik = 0 in the original model

bull for each t isin T if LB+χts(t)minusminkisinKs(t) χ

tk ge UB then if such an assignment was

forbidden no improvement in the primal bound would ever be obtained Thereforeall nodes k 6= s(t) can be removed from layer t without losing optimization powerthat means xing variable xtis(t) = 1 in the original model

A similar xing procedure is run on arcs of the pricing graph thereby allowing to x ytkprimeprimekprimevariables in the original model

From an implementation point of view we always allowed a relative tolerance of 5eminus4in the xing test to prevent numerical troubles We run the xing procedure at the endof the column generation process of every node of the search tree additionally at the rootnode we run it whenever an improving primal solution is found

45 Branch-and-price

When upper and lower bounds at the end of the column generation process do not matchwe proceed to branching We branch on original variables x rather than on variables ofthe MP Fixing variable xtik to value 0 corresponds to xing to value 0 all variables zp isin Ωi

that assign AP i to MEC facility k at time t Similarly xing variable xtik to value 1corresponds to xing to value 0 all variables zp isin Ωi that do not assign AP i to MECfacility k at time t Neither forbidding nor forcing assignments change the structure of thepricing problem these conditions are easily included within the dynamic programmingalgorithm by simply removing nodes from the pricing graph According to Proposition 1no branching on y variables is needed

We considered the following two branching rules

1 considering all possible assignments of AP i at time t take the pair (iprime tprime) which hasgreatest number of variables xt

primeiprimek with strictly positive value that is that AP whose

assignment at a certain time is split among the greatest number of dierent MECfacilities Sort variables xt

primeiprimek by non-increasing value and partition this ordered set

in two the rst set containing variables in the odd positions of ordered set and thesecond set containing variables in the even positions A left (resp right) branch iscreated xing to zero all the variables in the rst (resp second) set

2 select the variable xtik whose value is closer to 05 ie the variable related to the mostfractional assignment Create two branches xing the selected variable respectivelyto value 0 or to value 1

We always consider branching rule 1 rst triggering rule 2 only when all (i t) pairshave at most two corresponding fractional xtik variables During preliminary experimentsa simple depth-rst exploration policy showed to perform best When rule 2 is used thextik = 1 branch is explored rst

46 Split assignment and periodic plans

We rst observe that global optimal split-assignment plans can be obtained by simplystopping at the root node and considering the (potentially fractional) solution of thecolumn generation master problem

12

Furthermore as discussed in the Introduction the application is periodic in naturethe decision maker creates a plan that is meant to be repeated over time Such a peri-odic variant can be managed by minor modications to our models and algorithms Inparticular model (1) (5) needs to be enriched adding constraints

x1ik =

sumlisinK

y|T |ilk foralli isin A forallk isin K

to the family (4) and constraints

x|T |ik =

sumlisinK

y1ikl foralli isin Aforallk isin K

to the family (5) these link the assignments made in the last and rst time-slots assign-ment hence closing the period of assignments The column generation master problemdoes not change The pricing problem instead requires to be adapted as cycles ratherthan paths need to be generated We therefore modied our pricing routine as presentedin Algorithm 4 Exactly solving the modied pricing problem via dynamic programmingrequires O(|T ||K|3) time for every AP The main idea is to tentatively x the assignmentat time 1 to all the |K| possible MEC facilities to solve each reduced problem and tochoose the best among the |K| solutions found in this way Since it is possible to create alayer |T | + 1 as a copy of the layer t = 1 after xing the assignment the pricing problemreduces to nding a minimum cost shortest path from the single xed node in layer t = 1to the single xed node in layer |T |+ 1

Any other detail of the algorithm remains unchanged

5 Computational evaluation

We implemented our algorithms in C++ using CPLEX 126 [23] to solve the master LPsubproblems running tests on an Intel i7 4GHz workstation equipped with 32 GB of RAM

Our rst investigation is computational benchmarking the eectiveness of our algo-rithms in comparison to the branch-and-cut ILP solver of CPLEX using formulation (1) (7)

51 Dataset

We have access to a dataset of real-world mobile trac demands [24] encompassing twomonths with a time granularity of fteen minutes The geographical area covered by thedataset extends for more than 2500 km2 The demand is not associated to access points ofthe mobile network whose location is unknown but rather to a geographical tessellationof the area in 1419 rectangular cells of dierent sizes with smaller (and more dense) cellsin the center of the area We select the centers of every rectangular cell as elements of theset A of access points locations

Then we create ten clusters of access points using a standard k-means model takingas input the euclidean distances between APs optimizing it with the classical heuristicsof [25] The centers of these clusters are selected to dene the locations of the set K ofMEC facilities The network distances mik and ljk are computed as euclidean distancesaccordingly and rounded to the nearest integer (hence supposing packet processing latencyis negligible)

Given this network infrastructure we generate dierent problem instances by randomlydrawing demands in each AP in dierent ways

In details we create two random datasets

13

Algorithm 4 Periodic Pricing Algorithm

for all i isin A do

πlowast = +infinplowast = emptyfor all k isin K do

c1k

= a1ikx MEC facility k at t = 1

c1k = +infin forallk isin K k forbid MEC facility k at t = 1p1k = k forallk isin K path starting at node k at time t = 1for all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

for all k isin K do

c|T |k = c

|T |k + b1

ikk+ a1

ikend for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i when starting at k

if c|T |klowast minus ηi lt πlowast then

πlowast = c|T |klowast minus ηi

plowast = p|T |klowast

end if

end for

if πlowast lt 0 thenadd variable related to minimum cost path plowast to the model

end if

end for

Dataset A is synthetic and aims at stressing our algorithms from a pure computational pointof view We consider a planning horizon of one day split in 96 consecutive fteen-minute time slots Let d (resp d) be the minimum (resp maximum) demandobserved in any AP and time slot in [24] Demands dti for each AP i at time t aredrawn uniformly at random independently in each fteen-minute time slot in therange [d d] That is demands do not follow particular trends even if falling into thesame range of real data

Dataset B is realistic reproducing the main features of the starting data We choose a singleday at random from the two months included in the dataset [24] we perform a directquery to the demand of each AP at each time slot in that day and then we perturball demands with noise uniformly drawn at random in the interval [minus5+5]

All demand values are rounded to the nearest integer Besides the initial horizon of 96time-slots we consider planning time horizons of 48 24 and 12 time-slots by mergingrespectively 2 3 or 4 subsequent time-slots setting their demands as the average on themerged time-slots Five instances are generated in both datasets A and B

We also consider a dataset of raw real demands

Dataset C is obtained by considering a random week taken from the dataset [24] and mergingthe time-slots in either 168 slots of 1 hour each (1h) 84 slots of 2 hours (2h) 56

14

slots of 3 hours (3h) 42 slots of 4 hours (4h) or 38 slots obtained by the clusteringmethods described in subsection 62 (clust) The demand of each AP in each slot tis taken as the maximum over the the fteen-minute time slots merged in t

For every instance each MEC facility capacity Ck is set to(

maxtisinTsum

iisinA dti|K|

)middot105

and parameters α and β are both set to value 05

52 Column Generation proling

We rst report on the computational behaviour of our Column Generation algorithm (CG)In this test we consider the single-assignment non-periodic variant

In Tables 1a 1b and 1c we include the details of the root node column generationprocess for each instance of datasets A B and C respectively A best known solutionvalue zlowast is taken from a previous run of exact algorithms (see subsection 53) Besidesinstance details (columns `|T | and `inst) we include the relative gap between the primalbound value (resp dual bound value) and zlowast the number of column generation iterationsneeded to reach convergence the overall CPU time spent for solving the pricing problemsand the CPU time required to complete the column generation process As benchmarkwe also report the performances of CPLEX 1263 ILP solver when stopped at the rootnode including the corresponding primal and dual bound gaps and the time required tocomplete its root node computation

We set a time limit of two hours to each computation marking in the tables as `TLthose computations hitting that limit

We rst note that CG has good convergence behaviour less than 90 iterations arealways enough to complete the computation The high number of pricing subproblemsyields to a high number of generated columns but thanks to our dynamic programmingalgorithm the overall pricing time remains low (below 10 seconds in all cases but one)

By rounding in CG we are always able to obtain good integer solutions (that is below1 from best known solutions in all cases but 4) CPLEX is not consistent in a fewinstances (eg block |T | = 48 of the Realistic Dataset B) it is able to nd very goodprimal solutions while in other cases (eg block |T | = 24 of Dataset B or block |T | = 48of Dataset A) only very weak primal bounds can be obtained

We also observe that CG and CPLEX dual bounds are always similar That is on onehand the integrality property of our pricing problem warns that no improvement can beobtained by CG with respect to the continuous relaxation of the original formulation onthe other hand CPLEX generic cuts have no signicant eect on strengthening the samecontinuous relaxation bound

Finally in more than 37 of the instances CPLEX is unable to terminate the rootnode computation within the time limit while CG always completes the computationWhen both CG and CPLEX terminate the CPU time required by CG is up to two ordersof magnitude lower that required by CPLEX

We highlight that the (possibly fractional) solution found by CG is a global optimalsolution for the split-assignment model variants no further computing is needed in thatcase

53 Exactly solving the DASP

In a second round of experiments we let both our Branch-and-Price (BaP) and CPLEX126 ILP solver (CPX) run for two hours also exploring their branching trees In Tables2a 2b 2c we report the results of this experiment on each instance of datasets A B and Crespectively In each Table we report the relative gap between the primal bound PB (respthe dual bound DB) at the end of computation and the best known integer solution valuezlowast and the number of explored branch-and-bound nodes for both our BaP and CPX

15

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0130 1212 19 10808 0 4 0724 1197 8642 0735 1955 14 8715 0 4 244932 1949 4103 0793 1351 13 7074 0 3 0167 1345 3284 0945 0999 14 7515 0 3 2824 0994 3445 1206 1630 13 7892 0 3 3052 1627 356

24

1 0061 1475 26 17027 1 15 0249 1471 28262 1202 1537 19 11429 1 11 274940 1533 19433 0867 2019 19 12296 0 13 267368 2015 18524 0846 1864 19 12525 0 12 123542 1860 18615 0909 1764 18 12077 0 12 267486 1761 1781

48

1 0463 1819 41 27035 6 114 246767 1816 TL2 0221 2468 32 20897 1 90 270039 2465 TL3 0746 2336 33 21468 4 95 269274 2332 TL4 0295 2036 31 20496 0 74 282422 2033 TL5 0265 2514 35 22707 0 106 258676 2510 TL

96

1 0176 2274 68 47500 5 949 259445 - TL2 0055 2633 59 42621 6 913 - - TL3 0034 2779 61 43107 9 863 - - TL4 0187 2528 61 42692 5 850 - - TL5 0124 2568 60 41913 6 815 272834 - TL

(a) Synthetic Dataset A

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0809 0107 12 6542 1 2 0055 0105 1382 0917 0112 11 6150 0 2 0924 0110 1463 1043 0125 12 6611 0 2 0155 0123 1584 0797 0103 11 5843 0 2 349538 0102 1205 0781 0102 11 6548 0 2 349089 0101 113

24

1 0766 0425 15 9713 0 4 305781 0424 5322 0481 0280 16 9715 0 3 306562 0278 5873 0613 0576 15 9492 1 3 304188 0575 6224 0960 0183 17 10345 0 3 306874 0182 6155 0648 0221 16 10217 0 4 307199 0220 413

48

1 1031 0264 27 15539 1 16 0253 0262 21132 0782 0344 25 15636 2 15 0557 0343 22493 0500 0363 26 15286 1 15 0 0362 26744 0741 0314 26 15791 3 18 0049 0312 24455 0829 0296 29 16294 0 15 0651 0295 1878

96

1 0077 0933 51 29786 6 130 - - TL2 0315 0766 43 28272 3 125 - - TL3 0249 0853 46 28221 9 129 - - TL4 0395 0692 49 29320 5 126 - - TL5 0154 0726 48 29005 4 120 - - TL

(b) Realistic Dataset B

CG Root CPLEX Root

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast tclust 0590 0092 21 12928 2 9 0429 0091 4684h 0630 0272 30 20690 2 25 0175 0271 51913h 0513 0471 37 25960 3 58 0766 0470 28142h 0192 0724 50 31706 2 133 - - TL1h 0097 0905 85 56322 18 953 - - TL

(c) Raw Real Demand Dataset C

Table 1 Computational Results - CG Root vs CPLEX Root

16

(a) BaP vs CPLEX (b) BaP Detail

Figure 4 Primal Bound

We report no computing time because surprisingly neither BaP nor CPX could bringthe duality gap below 01 within the time limit except for instance 4 with |T | = 12 ofDataset A 5 with |T | = 12 of Dataset B and clust of Dataset C that CPX is able toclose (but still using more than 90 of the available CPU time)

In terms of nal dual bounds the results of both methods are very similar Our expla-nation for this phenomenon is the following the root dual bound is already very close tothe integer optimum value and therefore the real challenge is to nd an optimal primalsolution At the same time the high number of time-slots yields values of primal solutionson the order of magnitude of 108 as soon as the duality gap becomes small numericalapproximation issues prevent to coherently explore the remaining search tree

In terms of searching for good primal solutions in the inner nodes of the branching treeinstead BaP and CPX are not equivalent in Figure 4a we plot the typical primal boundvalue (y axis) improvements as the computation (x axis) proceeds (instance 1 |T | = 24dataset B) for the sake of comparison the x axis report relative values with respect tothe overall number of branch-and-bound nodes for CPX and the overall number of columngeneration iterations for BaP Eventually CPX is more numerically stable oering aftertwo hours of computation primal solutions values a few tenths of percentage points better(up to 05 of improvement) In turn BaP allows to nd near-optimal integer solutionsmuch more quickly that is in fact already at the root node The behaviour of BaP in theearly steps of computation is further detailed in Figure 4b the quality of the primal boundsteeply increase during the column generation iterations at the root node

As a synthetic nal assessment of our computational evaluation we can report thatwhen the number of time-slots is small and the planner has no particular need for quickoptimization algorithms both BaP and CPLEX might be viable alternatives to optimizethe DASP

BaP is faster especially when used heuristically stopping the computation either atthe root node or after exploring a few nodes of the branch-and-bound tree This makes itwell suited also when quick optimization is needed like in what-if-analyses

When the number of time-slots increases however using CPLEX is not an optionanymore

We repeated all the experiments with a periodic-plan model without nding substantialchanges in the computational behaviour of the methods Indeed the periodic-plan modelhas main impact only in the structure of the pricing problem of BaP but pricing involvesonly a small amount of the overall computational eort

17

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0 1208 17661 0411 1197 2032 0 1951 17038 0777 1949 3713 0198 1347 18572 0 1345 4524 0370 0997 19198 0 0993 5485 0020 1626 18013 0 1626 699

24

1 0 1473 8576 0249 1471 142 0 1535 8657 0855 1533 243 0 2018 9349 267368 2015 464 0 1863 9353 123542 1860 385 0 1763 10204 267486 1761 40

48

1 0 1818 2123 246767 1816 02 0 2468 2724 270039 2465 03 0 2335 2558 269274 2332 04 0 2036 3133 282422 2033 05 0 2514 2528 258676 2510 0

96

1 0 2274 113 259445 - TL2 0 2633 217 - - TL3 0 2779 168 - - TL4 0 2528 135 - - TL5 0 2568 207 272834 - TL

(a) Synthetic Dataset A

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0160 0105 35112 0 0103 23982 0235 0111 30708 0 0109 25793 0320 0124 26374 0 0122 18184 0406 0102 26490 0 0100 19325 0267 0100 24714 0 0098 1844

24

1 0133 0424 17961 0 0423 1442 0274 0279 18354 0 0278 1093 0 0576 20016 0717 0574 2254 0353 0183 17481 0 0182 2325 0284 0220 20446 0 0220 522

48

1 0312 0263 10738 0 0262 202 0249 0343 10465 0 0343 183 0113 0363 10482 0 0360 174 0227 0313 10321 0 0311 165 0226 0295 10818 0 0295 21

96

1 0 0932 3133 - - TL2 0 0765 3193 - - TL3 0 0852 3398 - - TL4 0 0691 3099 - - TL5 0 0726 3299 - - TL

(b) Realistic Dataset B

B-amp-P CPLEX

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

clust 0376 0091 13849 0 0091 8124h 0442 0272 8985 0 0270 303h 0403 0471 5086 0 0470 332h 0 0724 2864 - - TL1h 0 0905 370 - - TL

(c) Raw Real Demand Dataset C

Table 2 Computational Results - BaP vs CPLEX

18

6 Practical case study

Our nal aim is to assess the eectiveness of our optimization core in the context of thedata-driven MEC management optimization framework To this end we rely on the com-plete real-world dataset in [24] and run actual analytics on it so as to generate the demandproles We then feed our optimization models with such proles which ultimately letsus measure the quality of the assignment plans it returns in a practical case

61 Experimental setup

The real-world mobile trac data covers a planning period of eight weeks split in a set Tof fteen-minute snapshots The rst approach we take in order to infer demand prolesexploits a well-known property of mobile trac ie its weekly periodicity [26] Namely asingle week is taken as training data and the mobile trac recorded in each fteen-minutetime-slot is considered as a prole The tasks performed by the data mining and validationmodules are kept as simple as possible in order to highlight the eect of the optimizationcore

Training Conceptually the resulting 4 times 24 times 7 = 672 training proles are then usedas input for our optimization algorithms By optimizing over the training data we obtaina planning solution which becomes our assignment plan we apply such a plan to theremaining seven weeks of test data As an example optimizing over training data yields asolution including a specic assignment of APs to MEC facilities on Monday between 700am and 715 am we then blindly apply the same assignments on the 700-715 am timeslots of each Monday in the test data presuming that the demand conguration is similaron all Mondays at the same time In a sense this is a worst-case situation in which thedecision maker simply observes the system for one week before deciding on the planningfor the remaining weeks

Practically we do not directly use the 672 fteen-minutes time-slots for training Weassume instead that the preprocessing and data-mining module produces suitable ag-gregations We experimented therefore with simple aggregation of the proles mergingtime-slots sequentially over 1 2 3 or 4 hours Each aggregation step was performed byconsidering in each AP and in each aggregated time-slot the maximum demand value ofthat AP over the corresponding base time-slots The optimized solution was then dis-aggregated in post-processing simply replicating the same plan over the fteen-minutestime-slots composing each aggregated time-slot By choosing the maximum demand valuesduring aggregation we ensure that our optimized solutions remain feasible after disaggre-gation

It is apparent that less aggregated proles entail a higher potential for optimizationin the baseline scenario the assignment of APs to MEC facilities can be changed every15 minutes possibly assigning to the same MEC facility APs that experience very highpeaks of demand in subsequent time slots They are however more prone to overttingas peaks in particular hours of the training week do not necessarily correspond to peaksin the corresponding hour of testing weeks In addition they are more clearly expensivefrom a computational standpoint

More aggregated instances instead are more conservative two APs with very highdemand peaks in the same four-hours time slot cannot be assigned to the same MECfacility thus possibly preventing capacity violations in the test weeks if those peaks slightlymove in time They are also less demanding in terms of computational costs Howeveraggregation forces the a same conguration for longer timeframes making the optimizationpossibly oblivious of fast dynamics in the demand

19

Figure 5 Time-Clustering resulting from [21]

In order to further balance the aggressive optimization process during the trainingphase of low aggregation instances we found empirically useful to set the Ck capacityvalues to

(maxtisinT

sumiisinA d

ti|K|

)middot 105 in each test That is one-hour time-slot instances

are optimized with lower capacity values

Test To ensure fairness in the comparison during the test phase only disaggregatedsolutions are considered That is independently on the aggregation used for training onlysolutions dened over the original fteen-minutes time-slots are compared Similarly thereference MEC capacity value was xed to

(maxtisinT

sumiisinA d

ti|K|

)middot110 in any comparison

Clearly neither the cost nor the capacity usage are guaranteed to remain the samewhen the planning obtained with training data is applied to test data as uctuations inthe demand may occur across weeks The quality of our solutions is therefore evaluatedaccording to two measures (i) the assignment and switching cost of the planning and (ii)

the amount of violations in capacity constraints both measured on test data The latteris computed as follows

maxtisinT

sumkisinK

maxsum

iisinA dtix

tik minus Ck 0

Ck

that is the overall amount of violation in capacity constraints as a relative value respectto the available capacity in the worst time-slot

These measures are computed for each plan by the validation module through simplesimulation on the seven weeks of test data

Advanced Clustering Benchmark An alternative to employing our ad-hoc techniqueon the optimization module would be to perform a more aggressive aggregation over timeproducing instances that are small enough to be optimized by CPLEX We experimentedon such an option adapting the temporal clustering solution presented in [21] to our needsSpecically we take the following steps (i) we generate a median week of mobile tracdemand by computing the median load recorded at each AP during every hour of the weekusing it as training data (ii) we perform two separate hierarchical clusterings respectivelyusing the total volume and normalized distance metrics introduced in [21] (iii) we ndthe intersection of the two cluster sets obtained at the previous point

Figure 5 shows the resulting clustering of one-hour time slots ve typical demandproles are identied which can be associated to working hours (denoted by 0 in thegure) relax hours in the late afternoons and weekends (1) morning commuting hours(2) night hours (3) and late evening hours (4) Very few time-slots are actually producedthis way allowing CPLEX to optimize the corresponding instances Consecutive time-slots

20

InstWeek

train 1 2 3 4 5 6 7

Bench-CPLEX 959 703 571 425 257 388 1468 951Bench-CG 959 676 548 408 245 410 1434 927

4h 209 154 172 066 000 254 1163 2923h 194 142 148 110 125 158 1107 2982h 220 258 199 119 226 282 1122 4151h 284 238 417 114 192 404 1065 547

Table 3 Time-Slot Peak Exceeded Capacity Over Available Capacity

belonging to the same cluster are then aggregated The aggregated instance is optimizedand the solution obtained in this way is then disaggregated in fteen-minute time-slotsplans as in the previous case during post-processing before being compared on test data

62 Experimental evaluation

Following the computational results of Section 5 our core optimization module alwaysemploys our Branch-and-Price as a heuristic (HBP) stopping its computation at the rootnode except for the aggregated instances produced by time-clustering Having |T | = 38these are manageable eciently even by general purpose solvers CPLEX 1263 ILP solverwas then used to solve them to proven optimality The scatter plot in Figure 6 summarizesour results Each point represents the outcome on a single week of test data Dierentshapes refer to dierent demand prole aggregation methods obtained by merging 1 2 3 or4 consecutive one-hour time slots as well as using the Advanced Clustering and CPLEX(Bench-CPLEX) The y axis coordinate of each point represents the capacity violationmeasure as introduced above the x axis coordinate of each point represents the solutioncost measure expressed as percentage value of that of the optimal solution employing theAdvanced Clustering Benchmark method Therefore negative (resp positive) percentagesmap to a performance improvement (resp reduction) with respect to the benchmarkAs a reference we report also the results obtained by using HBP instead of CPLEX foroptimizing the Advanced Clustering Benchmark instances (Bench-CG) The details aboutcapacity violation measures are reported also in Table 3 for each week in the training set(columns) and for each demand prole aggregation method (rows)

A rst remarkable result is that in all cases our HBP with sequential clustering allows forsolutions with less capacity violations In particular HBP with either four-hours or three-hours aggregation oer almost no capacity violations coming at the price of three to vepercent increase in solutions cost HBP with two-hours aggregation always outperforms thebenchmark method both in terms of exceeded capacity and in terms of solution costs HBPwith one-hour aggregation further decrease costs at the price of slightly higher capacityviolation

We also experimented on using the full BaP instead of the truncated HBP Our resultsare reported in Figure 7 no signicant change was observed Similarly no signicantchange was observed by using HBP instead of CPLEX on the benchmark clustering

63 Eect of periodic planning

Finally we measure the impact in solution switching costs yielded by choosing a periodmodel instead of a non-periodic one In Table 4 we report for each aggregation listedin the previous subsection the change in switching costs between inner time-slots of theweek (intra-week) between border time-slots of dierent weeks (inter-week) as well as thetotal switching cost the total assignment cost and the overall cost of the solution Using a

21

Figure 6 1-Week Plan - Time Aggreg Comparison

(a) Total Costs (b) Exceeded Capacity

Figure 7 Mean Costs And Exceeded Capacity - CG Root vs BaP

22

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 13: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

Furthermore as discussed in the Introduction the application is periodic in naturethe decision maker creates a plan that is meant to be repeated over time Such a peri-odic variant can be managed by minor modications to our models and algorithms Inparticular model (1) (5) needs to be enriched adding constraints

x1ik =

sumlisinK

y|T |ilk foralli isin A forallk isin K

to the family (4) and constraints

x|T |ik =

sumlisinK

y1ikl foralli isin Aforallk isin K

to the family (5) these link the assignments made in the last and rst time-slots assign-ment hence closing the period of assignments The column generation master problemdoes not change The pricing problem instead requires to be adapted as cycles ratherthan paths need to be generated We therefore modied our pricing routine as presentedin Algorithm 4 Exactly solving the modied pricing problem via dynamic programmingrequires O(|T ||K|3) time for every AP The main idea is to tentatively x the assignmentat time 1 to all the |K| possible MEC facilities to solve each reduced problem and tochoose the best among the |K| solutions found in this way Since it is possible to create alayer |T | + 1 as a copy of the layer t = 1 after xing the assignment the pricing problemreduces to nding a minimum cost shortest path from the single xed node in layer t = 1to the single xed node in layer |T |+ 1

Any other detail of the algorithm remains unchanged

5 Computational evaluation

We implemented our algorithms in C++ using CPLEX 126 [23] to solve the master LPsubproblems running tests on an Intel i7 4GHz workstation equipped with 32 GB of RAM

Our rst investigation is computational benchmarking the eectiveness of our algo-rithms in comparison to the branch-and-cut ILP solver of CPLEX using formulation (1) (7)

51 Dataset

We have access to a dataset of real-world mobile trac demands [24] encompassing twomonths with a time granularity of fteen minutes The geographical area covered by thedataset extends for more than 2500 km2 The demand is not associated to access points ofthe mobile network whose location is unknown but rather to a geographical tessellationof the area in 1419 rectangular cells of dierent sizes with smaller (and more dense) cellsin the center of the area We select the centers of every rectangular cell as elements of theset A of access points locations

Then we create ten clusters of access points using a standard k-means model takingas input the euclidean distances between APs optimizing it with the classical heuristicsof [25] The centers of these clusters are selected to dene the locations of the set K ofMEC facilities The network distances mik and ljk are computed as euclidean distancesaccordingly and rounded to the nearest integer (hence supposing packet processing latencyis negligible)

Given this network infrastructure we generate dierent problem instances by randomlydrawing demands in each AP in dierent ways

In details we create two random datasets

13

Algorithm 4 Periodic Pricing Algorithm

for all i isin A do

πlowast = +infinplowast = emptyfor all k isin K do

c1k

= a1ikx MEC facility k at t = 1

c1k = +infin forallk isin K k forbid MEC facility k at t = 1p1k = k forallk isin K path starting at node k at time t = 1for all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

for all k isin K do

c|T |k = c

|T |k + b1

ikk+ a1

ikend for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i when starting at k

if c|T |klowast minus ηi lt πlowast then

πlowast = c|T |klowast minus ηi

plowast = p|T |klowast

end if

end for

if πlowast lt 0 thenadd variable related to minimum cost path plowast to the model

end if

end for

Dataset A is synthetic and aims at stressing our algorithms from a pure computational pointof view We consider a planning horizon of one day split in 96 consecutive fteen-minute time slots Let d (resp d) be the minimum (resp maximum) demandobserved in any AP and time slot in [24] Demands dti for each AP i at time t aredrawn uniformly at random independently in each fteen-minute time slot in therange [d d] That is demands do not follow particular trends even if falling into thesame range of real data

Dataset B is realistic reproducing the main features of the starting data We choose a singleday at random from the two months included in the dataset [24] we perform a directquery to the demand of each AP at each time slot in that day and then we perturball demands with noise uniformly drawn at random in the interval [minus5+5]

All demand values are rounded to the nearest integer Besides the initial horizon of 96time-slots we consider planning time horizons of 48 24 and 12 time-slots by mergingrespectively 2 3 or 4 subsequent time-slots setting their demands as the average on themerged time-slots Five instances are generated in both datasets A and B

We also consider a dataset of raw real demands

Dataset C is obtained by considering a random week taken from the dataset [24] and mergingthe time-slots in either 168 slots of 1 hour each (1h) 84 slots of 2 hours (2h) 56

14

slots of 3 hours (3h) 42 slots of 4 hours (4h) or 38 slots obtained by the clusteringmethods described in subsection 62 (clust) The demand of each AP in each slot tis taken as the maximum over the the fteen-minute time slots merged in t

For every instance each MEC facility capacity Ck is set to(

maxtisinTsum

iisinA dti|K|

)middot105

and parameters α and β are both set to value 05

52 Column Generation proling

We rst report on the computational behaviour of our Column Generation algorithm (CG)In this test we consider the single-assignment non-periodic variant

In Tables 1a 1b and 1c we include the details of the root node column generationprocess for each instance of datasets A B and C respectively A best known solutionvalue zlowast is taken from a previous run of exact algorithms (see subsection 53) Besidesinstance details (columns `|T | and `inst) we include the relative gap between the primalbound value (resp dual bound value) and zlowast the number of column generation iterationsneeded to reach convergence the overall CPU time spent for solving the pricing problemsand the CPU time required to complete the column generation process As benchmarkwe also report the performances of CPLEX 1263 ILP solver when stopped at the rootnode including the corresponding primal and dual bound gaps and the time required tocomplete its root node computation

We set a time limit of two hours to each computation marking in the tables as `TLthose computations hitting that limit

We rst note that CG has good convergence behaviour less than 90 iterations arealways enough to complete the computation The high number of pricing subproblemsyields to a high number of generated columns but thanks to our dynamic programmingalgorithm the overall pricing time remains low (below 10 seconds in all cases but one)

By rounding in CG we are always able to obtain good integer solutions (that is below1 from best known solutions in all cases but 4) CPLEX is not consistent in a fewinstances (eg block |T | = 48 of the Realistic Dataset B) it is able to nd very goodprimal solutions while in other cases (eg block |T | = 24 of Dataset B or block |T | = 48of Dataset A) only very weak primal bounds can be obtained

We also observe that CG and CPLEX dual bounds are always similar That is on onehand the integrality property of our pricing problem warns that no improvement can beobtained by CG with respect to the continuous relaxation of the original formulation onthe other hand CPLEX generic cuts have no signicant eect on strengthening the samecontinuous relaxation bound

Finally in more than 37 of the instances CPLEX is unable to terminate the rootnode computation within the time limit while CG always completes the computationWhen both CG and CPLEX terminate the CPU time required by CG is up to two ordersof magnitude lower that required by CPLEX

We highlight that the (possibly fractional) solution found by CG is a global optimalsolution for the split-assignment model variants no further computing is needed in thatcase

53 Exactly solving the DASP

In a second round of experiments we let both our Branch-and-Price (BaP) and CPLEX126 ILP solver (CPX) run for two hours also exploring their branching trees In Tables2a 2b 2c we report the results of this experiment on each instance of datasets A B and Crespectively In each Table we report the relative gap between the primal bound PB (respthe dual bound DB) at the end of computation and the best known integer solution valuezlowast and the number of explored branch-and-bound nodes for both our BaP and CPX

15

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0130 1212 19 10808 0 4 0724 1197 8642 0735 1955 14 8715 0 4 244932 1949 4103 0793 1351 13 7074 0 3 0167 1345 3284 0945 0999 14 7515 0 3 2824 0994 3445 1206 1630 13 7892 0 3 3052 1627 356

24

1 0061 1475 26 17027 1 15 0249 1471 28262 1202 1537 19 11429 1 11 274940 1533 19433 0867 2019 19 12296 0 13 267368 2015 18524 0846 1864 19 12525 0 12 123542 1860 18615 0909 1764 18 12077 0 12 267486 1761 1781

48

1 0463 1819 41 27035 6 114 246767 1816 TL2 0221 2468 32 20897 1 90 270039 2465 TL3 0746 2336 33 21468 4 95 269274 2332 TL4 0295 2036 31 20496 0 74 282422 2033 TL5 0265 2514 35 22707 0 106 258676 2510 TL

96

1 0176 2274 68 47500 5 949 259445 - TL2 0055 2633 59 42621 6 913 - - TL3 0034 2779 61 43107 9 863 - - TL4 0187 2528 61 42692 5 850 - - TL5 0124 2568 60 41913 6 815 272834 - TL

(a) Synthetic Dataset A

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0809 0107 12 6542 1 2 0055 0105 1382 0917 0112 11 6150 0 2 0924 0110 1463 1043 0125 12 6611 0 2 0155 0123 1584 0797 0103 11 5843 0 2 349538 0102 1205 0781 0102 11 6548 0 2 349089 0101 113

24

1 0766 0425 15 9713 0 4 305781 0424 5322 0481 0280 16 9715 0 3 306562 0278 5873 0613 0576 15 9492 1 3 304188 0575 6224 0960 0183 17 10345 0 3 306874 0182 6155 0648 0221 16 10217 0 4 307199 0220 413

48

1 1031 0264 27 15539 1 16 0253 0262 21132 0782 0344 25 15636 2 15 0557 0343 22493 0500 0363 26 15286 1 15 0 0362 26744 0741 0314 26 15791 3 18 0049 0312 24455 0829 0296 29 16294 0 15 0651 0295 1878

96

1 0077 0933 51 29786 6 130 - - TL2 0315 0766 43 28272 3 125 - - TL3 0249 0853 46 28221 9 129 - - TL4 0395 0692 49 29320 5 126 - - TL5 0154 0726 48 29005 4 120 - - TL

(b) Realistic Dataset B

CG Root CPLEX Root

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast tclust 0590 0092 21 12928 2 9 0429 0091 4684h 0630 0272 30 20690 2 25 0175 0271 51913h 0513 0471 37 25960 3 58 0766 0470 28142h 0192 0724 50 31706 2 133 - - TL1h 0097 0905 85 56322 18 953 - - TL

(c) Raw Real Demand Dataset C

Table 1 Computational Results - CG Root vs CPLEX Root

16

(a) BaP vs CPLEX (b) BaP Detail

Figure 4 Primal Bound

We report no computing time because surprisingly neither BaP nor CPX could bringthe duality gap below 01 within the time limit except for instance 4 with |T | = 12 ofDataset A 5 with |T | = 12 of Dataset B and clust of Dataset C that CPX is able toclose (but still using more than 90 of the available CPU time)

In terms of nal dual bounds the results of both methods are very similar Our expla-nation for this phenomenon is the following the root dual bound is already very close tothe integer optimum value and therefore the real challenge is to nd an optimal primalsolution At the same time the high number of time-slots yields values of primal solutionson the order of magnitude of 108 as soon as the duality gap becomes small numericalapproximation issues prevent to coherently explore the remaining search tree

In terms of searching for good primal solutions in the inner nodes of the branching treeinstead BaP and CPX are not equivalent in Figure 4a we plot the typical primal boundvalue (y axis) improvements as the computation (x axis) proceeds (instance 1 |T | = 24dataset B) for the sake of comparison the x axis report relative values with respect tothe overall number of branch-and-bound nodes for CPX and the overall number of columngeneration iterations for BaP Eventually CPX is more numerically stable oering aftertwo hours of computation primal solutions values a few tenths of percentage points better(up to 05 of improvement) In turn BaP allows to nd near-optimal integer solutionsmuch more quickly that is in fact already at the root node The behaviour of BaP in theearly steps of computation is further detailed in Figure 4b the quality of the primal boundsteeply increase during the column generation iterations at the root node

As a synthetic nal assessment of our computational evaluation we can report thatwhen the number of time-slots is small and the planner has no particular need for quickoptimization algorithms both BaP and CPLEX might be viable alternatives to optimizethe DASP

BaP is faster especially when used heuristically stopping the computation either atthe root node or after exploring a few nodes of the branch-and-bound tree This makes itwell suited also when quick optimization is needed like in what-if-analyses

When the number of time-slots increases however using CPLEX is not an optionanymore

We repeated all the experiments with a periodic-plan model without nding substantialchanges in the computational behaviour of the methods Indeed the periodic-plan modelhas main impact only in the structure of the pricing problem of BaP but pricing involvesonly a small amount of the overall computational eort

17

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0 1208 17661 0411 1197 2032 0 1951 17038 0777 1949 3713 0198 1347 18572 0 1345 4524 0370 0997 19198 0 0993 5485 0020 1626 18013 0 1626 699

24

1 0 1473 8576 0249 1471 142 0 1535 8657 0855 1533 243 0 2018 9349 267368 2015 464 0 1863 9353 123542 1860 385 0 1763 10204 267486 1761 40

48

1 0 1818 2123 246767 1816 02 0 2468 2724 270039 2465 03 0 2335 2558 269274 2332 04 0 2036 3133 282422 2033 05 0 2514 2528 258676 2510 0

96

1 0 2274 113 259445 - TL2 0 2633 217 - - TL3 0 2779 168 - - TL4 0 2528 135 - - TL5 0 2568 207 272834 - TL

(a) Synthetic Dataset A

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0160 0105 35112 0 0103 23982 0235 0111 30708 0 0109 25793 0320 0124 26374 0 0122 18184 0406 0102 26490 0 0100 19325 0267 0100 24714 0 0098 1844

24

1 0133 0424 17961 0 0423 1442 0274 0279 18354 0 0278 1093 0 0576 20016 0717 0574 2254 0353 0183 17481 0 0182 2325 0284 0220 20446 0 0220 522

48

1 0312 0263 10738 0 0262 202 0249 0343 10465 0 0343 183 0113 0363 10482 0 0360 174 0227 0313 10321 0 0311 165 0226 0295 10818 0 0295 21

96

1 0 0932 3133 - - TL2 0 0765 3193 - - TL3 0 0852 3398 - - TL4 0 0691 3099 - - TL5 0 0726 3299 - - TL

(b) Realistic Dataset B

B-amp-P CPLEX

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

clust 0376 0091 13849 0 0091 8124h 0442 0272 8985 0 0270 303h 0403 0471 5086 0 0470 332h 0 0724 2864 - - TL1h 0 0905 370 - - TL

(c) Raw Real Demand Dataset C

Table 2 Computational Results - BaP vs CPLEX

18

6 Practical case study

Our nal aim is to assess the eectiveness of our optimization core in the context of thedata-driven MEC management optimization framework To this end we rely on the com-plete real-world dataset in [24] and run actual analytics on it so as to generate the demandproles We then feed our optimization models with such proles which ultimately letsus measure the quality of the assignment plans it returns in a practical case

61 Experimental setup

The real-world mobile trac data covers a planning period of eight weeks split in a set Tof fteen-minute snapshots The rst approach we take in order to infer demand prolesexploits a well-known property of mobile trac ie its weekly periodicity [26] Namely asingle week is taken as training data and the mobile trac recorded in each fteen-minutetime-slot is considered as a prole The tasks performed by the data mining and validationmodules are kept as simple as possible in order to highlight the eect of the optimizationcore

Training Conceptually the resulting 4 times 24 times 7 = 672 training proles are then usedas input for our optimization algorithms By optimizing over the training data we obtaina planning solution which becomes our assignment plan we apply such a plan to theremaining seven weeks of test data As an example optimizing over training data yields asolution including a specic assignment of APs to MEC facilities on Monday between 700am and 715 am we then blindly apply the same assignments on the 700-715 am timeslots of each Monday in the test data presuming that the demand conguration is similaron all Mondays at the same time In a sense this is a worst-case situation in which thedecision maker simply observes the system for one week before deciding on the planningfor the remaining weeks

Practically we do not directly use the 672 fteen-minutes time-slots for training Weassume instead that the preprocessing and data-mining module produces suitable ag-gregations We experimented therefore with simple aggregation of the proles mergingtime-slots sequentially over 1 2 3 or 4 hours Each aggregation step was performed byconsidering in each AP and in each aggregated time-slot the maximum demand value ofthat AP over the corresponding base time-slots The optimized solution was then dis-aggregated in post-processing simply replicating the same plan over the fteen-minutestime-slots composing each aggregated time-slot By choosing the maximum demand valuesduring aggregation we ensure that our optimized solutions remain feasible after disaggre-gation

It is apparent that less aggregated proles entail a higher potential for optimizationin the baseline scenario the assignment of APs to MEC facilities can be changed every15 minutes possibly assigning to the same MEC facility APs that experience very highpeaks of demand in subsequent time slots They are however more prone to overttingas peaks in particular hours of the training week do not necessarily correspond to peaksin the corresponding hour of testing weeks In addition they are more clearly expensivefrom a computational standpoint

More aggregated instances instead are more conservative two APs with very highdemand peaks in the same four-hours time slot cannot be assigned to the same MECfacility thus possibly preventing capacity violations in the test weeks if those peaks slightlymove in time They are also less demanding in terms of computational costs Howeveraggregation forces the a same conguration for longer timeframes making the optimizationpossibly oblivious of fast dynamics in the demand

19

Figure 5 Time-Clustering resulting from [21]

In order to further balance the aggressive optimization process during the trainingphase of low aggregation instances we found empirically useful to set the Ck capacityvalues to

(maxtisinT

sumiisinA d

ti|K|

)middot 105 in each test That is one-hour time-slot instances

are optimized with lower capacity values

Test To ensure fairness in the comparison during the test phase only disaggregatedsolutions are considered That is independently on the aggregation used for training onlysolutions dened over the original fteen-minutes time-slots are compared Similarly thereference MEC capacity value was xed to

(maxtisinT

sumiisinA d

ti|K|

)middot110 in any comparison

Clearly neither the cost nor the capacity usage are guaranteed to remain the samewhen the planning obtained with training data is applied to test data as uctuations inthe demand may occur across weeks The quality of our solutions is therefore evaluatedaccording to two measures (i) the assignment and switching cost of the planning and (ii)

the amount of violations in capacity constraints both measured on test data The latteris computed as follows

maxtisinT

sumkisinK

maxsum

iisinA dtix

tik minus Ck 0

Ck

that is the overall amount of violation in capacity constraints as a relative value respectto the available capacity in the worst time-slot

These measures are computed for each plan by the validation module through simplesimulation on the seven weeks of test data

Advanced Clustering Benchmark An alternative to employing our ad-hoc techniqueon the optimization module would be to perform a more aggressive aggregation over timeproducing instances that are small enough to be optimized by CPLEX We experimentedon such an option adapting the temporal clustering solution presented in [21] to our needsSpecically we take the following steps (i) we generate a median week of mobile tracdemand by computing the median load recorded at each AP during every hour of the weekusing it as training data (ii) we perform two separate hierarchical clusterings respectivelyusing the total volume and normalized distance metrics introduced in [21] (iii) we ndthe intersection of the two cluster sets obtained at the previous point

Figure 5 shows the resulting clustering of one-hour time slots ve typical demandproles are identied which can be associated to working hours (denoted by 0 in thegure) relax hours in the late afternoons and weekends (1) morning commuting hours(2) night hours (3) and late evening hours (4) Very few time-slots are actually producedthis way allowing CPLEX to optimize the corresponding instances Consecutive time-slots

20

InstWeek

train 1 2 3 4 5 6 7

Bench-CPLEX 959 703 571 425 257 388 1468 951Bench-CG 959 676 548 408 245 410 1434 927

4h 209 154 172 066 000 254 1163 2923h 194 142 148 110 125 158 1107 2982h 220 258 199 119 226 282 1122 4151h 284 238 417 114 192 404 1065 547

Table 3 Time-Slot Peak Exceeded Capacity Over Available Capacity

belonging to the same cluster are then aggregated The aggregated instance is optimizedand the solution obtained in this way is then disaggregated in fteen-minute time-slotsplans as in the previous case during post-processing before being compared on test data

62 Experimental evaluation

Following the computational results of Section 5 our core optimization module alwaysemploys our Branch-and-Price as a heuristic (HBP) stopping its computation at the rootnode except for the aggregated instances produced by time-clustering Having |T | = 38these are manageable eciently even by general purpose solvers CPLEX 1263 ILP solverwas then used to solve them to proven optimality The scatter plot in Figure 6 summarizesour results Each point represents the outcome on a single week of test data Dierentshapes refer to dierent demand prole aggregation methods obtained by merging 1 2 3 or4 consecutive one-hour time slots as well as using the Advanced Clustering and CPLEX(Bench-CPLEX) The y axis coordinate of each point represents the capacity violationmeasure as introduced above the x axis coordinate of each point represents the solutioncost measure expressed as percentage value of that of the optimal solution employing theAdvanced Clustering Benchmark method Therefore negative (resp positive) percentagesmap to a performance improvement (resp reduction) with respect to the benchmarkAs a reference we report also the results obtained by using HBP instead of CPLEX foroptimizing the Advanced Clustering Benchmark instances (Bench-CG) The details aboutcapacity violation measures are reported also in Table 3 for each week in the training set(columns) and for each demand prole aggregation method (rows)

A rst remarkable result is that in all cases our HBP with sequential clustering allows forsolutions with less capacity violations In particular HBP with either four-hours or three-hours aggregation oer almost no capacity violations coming at the price of three to vepercent increase in solutions cost HBP with two-hours aggregation always outperforms thebenchmark method both in terms of exceeded capacity and in terms of solution costs HBPwith one-hour aggregation further decrease costs at the price of slightly higher capacityviolation

We also experimented on using the full BaP instead of the truncated HBP Our resultsare reported in Figure 7 no signicant change was observed Similarly no signicantchange was observed by using HBP instead of CPLEX on the benchmark clustering

63 Eect of periodic planning

Finally we measure the impact in solution switching costs yielded by choosing a periodmodel instead of a non-periodic one In Table 4 we report for each aggregation listedin the previous subsection the change in switching costs between inner time-slots of theweek (intra-week) between border time-slots of dierent weeks (inter-week) as well as thetotal switching cost the total assignment cost and the overall cost of the solution Using a

21

Figure 6 1-Week Plan - Time Aggreg Comparison

(a) Total Costs (b) Exceeded Capacity

Figure 7 Mean Costs And Exceeded Capacity - CG Root vs BaP

22

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 14: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

Algorithm 4 Periodic Pricing Algorithm

for all i isin A do

πlowast = +infinplowast = emptyfor all k isin K do

c1k

= a1ikx MEC facility k at t = 1

c1k = +infin forallk isin K k forbid MEC facility k at t = 1p1k = k forallk isin K path starting at node k at time t = 1for all t isin 2T do

for all k isin K do

klowast = arg minkprimeisinK(ctminus1kprime + btikprimek)

ctk = ctminus1klowast + btiklowastk + atik

ptk = ptminus1klowast cup k

lowastend for

end for

for all k isin K do

c|T |k = c

|T |k + b1

ikk+ a1

ikend for

klowast = arg minkisinKc|T |k minimum reduced cost related to AP i when starting at k

if c|T |klowast minus ηi lt πlowast then

πlowast = c|T |klowast minus ηi

plowast = p|T |klowast

end if

end for

if πlowast lt 0 thenadd variable related to minimum cost path plowast to the model

end if

end for

Dataset A is synthetic and aims at stressing our algorithms from a pure computational pointof view We consider a planning horizon of one day split in 96 consecutive fteen-minute time slots Let d (resp d) be the minimum (resp maximum) demandobserved in any AP and time slot in [24] Demands dti for each AP i at time t aredrawn uniformly at random independently in each fteen-minute time slot in therange [d d] That is demands do not follow particular trends even if falling into thesame range of real data

Dataset B is realistic reproducing the main features of the starting data We choose a singleday at random from the two months included in the dataset [24] we perform a directquery to the demand of each AP at each time slot in that day and then we perturball demands with noise uniformly drawn at random in the interval [minus5+5]

All demand values are rounded to the nearest integer Besides the initial horizon of 96time-slots we consider planning time horizons of 48 24 and 12 time-slots by mergingrespectively 2 3 or 4 subsequent time-slots setting their demands as the average on themerged time-slots Five instances are generated in both datasets A and B

We also consider a dataset of raw real demands

Dataset C is obtained by considering a random week taken from the dataset [24] and mergingthe time-slots in either 168 slots of 1 hour each (1h) 84 slots of 2 hours (2h) 56

14

slots of 3 hours (3h) 42 slots of 4 hours (4h) or 38 slots obtained by the clusteringmethods described in subsection 62 (clust) The demand of each AP in each slot tis taken as the maximum over the the fteen-minute time slots merged in t

For every instance each MEC facility capacity Ck is set to(

maxtisinTsum

iisinA dti|K|

)middot105

and parameters α and β are both set to value 05

52 Column Generation proling

We rst report on the computational behaviour of our Column Generation algorithm (CG)In this test we consider the single-assignment non-periodic variant

In Tables 1a 1b and 1c we include the details of the root node column generationprocess for each instance of datasets A B and C respectively A best known solutionvalue zlowast is taken from a previous run of exact algorithms (see subsection 53) Besidesinstance details (columns `|T | and `inst) we include the relative gap between the primalbound value (resp dual bound value) and zlowast the number of column generation iterationsneeded to reach convergence the overall CPU time spent for solving the pricing problemsand the CPU time required to complete the column generation process As benchmarkwe also report the performances of CPLEX 1263 ILP solver when stopped at the rootnode including the corresponding primal and dual bound gaps and the time required tocomplete its root node computation

We set a time limit of two hours to each computation marking in the tables as `TLthose computations hitting that limit

We rst note that CG has good convergence behaviour less than 90 iterations arealways enough to complete the computation The high number of pricing subproblemsyields to a high number of generated columns but thanks to our dynamic programmingalgorithm the overall pricing time remains low (below 10 seconds in all cases but one)

By rounding in CG we are always able to obtain good integer solutions (that is below1 from best known solutions in all cases but 4) CPLEX is not consistent in a fewinstances (eg block |T | = 48 of the Realistic Dataset B) it is able to nd very goodprimal solutions while in other cases (eg block |T | = 24 of Dataset B or block |T | = 48of Dataset A) only very weak primal bounds can be obtained

We also observe that CG and CPLEX dual bounds are always similar That is on onehand the integrality property of our pricing problem warns that no improvement can beobtained by CG with respect to the continuous relaxation of the original formulation onthe other hand CPLEX generic cuts have no signicant eect on strengthening the samecontinuous relaxation bound

Finally in more than 37 of the instances CPLEX is unable to terminate the rootnode computation within the time limit while CG always completes the computationWhen both CG and CPLEX terminate the CPU time required by CG is up to two ordersof magnitude lower that required by CPLEX

We highlight that the (possibly fractional) solution found by CG is a global optimalsolution for the split-assignment model variants no further computing is needed in thatcase

53 Exactly solving the DASP

In a second round of experiments we let both our Branch-and-Price (BaP) and CPLEX126 ILP solver (CPX) run for two hours also exploring their branching trees In Tables2a 2b 2c we report the results of this experiment on each instance of datasets A B and Crespectively In each Table we report the relative gap between the primal bound PB (respthe dual bound DB) at the end of computation and the best known integer solution valuezlowast and the number of explored branch-and-bound nodes for both our BaP and CPX

15

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0130 1212 19 10808 0 4 0724 1197 8642 0735 1955 14 8715 0 4 244932 1949 4103 0793 1351 13 7074 0 3 0167 1345 3284 0945 0999 14 7515 0 3 2824 0994 3445 1206 1630 13 7892 0 3 3052 1627 356

24

1 0061 1475 26 17027 1 15 0249 1471 28262 1202 1537 19 11429 1 11 274940 1533 19433 0867 2019 19 12296 0 13 267368 2015 18524 0846 1864 19 12525 0 12 123542 1860 18615 0909 1764 18 12077 0 12 267486 1761 1781

48

1 0463 1819 41 27035 6 114 246767 1816 TL2 0221 2468 32 20897 1 90 270039 2465 TL3 0746 2336 33 21468 4 95 269274 2332 TL4 0295 2036 31 20496 0 74 282422 2033 TL5 0265 2514 35 22707 0 106 258676 2510 TL

96

1 0176 2274 68 47500 5 949 259445 - TL2 0055 2633 59 42621 6 913 - - TL3 0034 2779 61 43107 9 863 - - TL4 0187 2528 61 42692 5 850 - - TL5 0124 2568 60 41913 6 815 272834 - TL

(a) Synthetic Dataset A

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0809 0107 12 6542 1 2 0055 0105 1382 0917 0112 11 6150 0 2 0924 0110 1463 1043 0125 12 6611 0 2 0155 0123 1584 0797 0103 11 5843 0 2 349538 0102 1205 0781 0102 11 6548 0 2 349089 0101 113

24

1 0766 0425 15 9713 0 4 305781 0424 5322 0481 0280 16 9715 0 3 306562 0278 5873 0613 0576 15 9492 1 3 304188 0575 6224 0960 0183 17 10345 0 3 306874 0182 6155 0648 0221 16 10217 0 4 307199 0220 413

48

1 1031 0264 27 15539 1 16 0253 0262 21132 0782 0344 25 15636 2 15 0557 0343 22493 0500 0363 26 15286 1 15 0 0362 26744 0741 0314 26 15791 3 18 0049 0312 24455 0829 0296 29 16294 0 15 0651 0295 1878

96

1 0077 0933 51 29786 6 130 - - TL2 0315 0766 43 28272 3 125 - - TL3 0249 0853 46 28221 9 129 - - TL4 0395 0692 49 29320 5 126 - - TL5 0154 0726 48 29005 4 120 - - TL

(b) Realistic Dataset B

CG Root CPLEX Root

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast tclust 0590 0092 21 12928 2 9 0429 0091 4684h 0630 0272 30 20690 2 25 0175 0271 51913h 0513 0471 37 25960 3 58 0766 0470 28142h 0192 0724 50 31706 2 133 - - TL1h 0097 0905 85 56322 18 953 - - TL

(c) Raw Real Demand Dataset C

Table 1 Computational Results - CG Root vs CPLEX Root

16

(a) BaP vs CPLEX (b) BaP Detail

Figure 4 Primal Bound

We report no computing time because surprisingly neither BaP nor CPX could bringthe duality gap below 01 within the time limit except for instance 4 with |T | = 12 ofDataset A 5 with |T | = 12 of Dataset B and clust of Dataset C that CPX is able toclose (but still using more than 90 of the available CPU time)

In terms of nal dual bounds the results of both methods are very similar Our expla-nation for this phenomenon is the following the root dual bound is already very close tothe integer optimum value and therefore the real challenge is to nd an optimal primalsolution At the same time the high number of time-slots yields values of primal solutionson the order of magnitude of 108 as soon as the duality gap becomes small numericalapproximation issues prevent to coherently explore the remaining search tree

In terms of searching for good primal solutions in the inner nodes of the branching treeinstead BaP and CPX are not equivalent in Figure 4a we plot the typical primal boundvalue (y axis) improvements as the computation (x axis) proceeds (instance 1 |T | = 24dataset B) for the sake of comparison the x axis report relative values with respect tothe overall number of branch-and-bound nodes for CPX and the overall number of columngeneration iterations for BaP Eventually CPX is more numerically stable oering aftertwo hours of computation primal solutions values a few tenths of percentage points better(up to 05 of improvement) In turn BaP allows to nd near-optimal integer solutionsmuch more quickly that is in fact already at the root node The behaviour of BaP in theearly steps of computation is further detailed in Figure 4b the quality of the primal boundsteeply increase during the column generation iterations at the root node

As a synthetic nal assessment of our computational evaluation we can report thatwhen the number of time-slots is small and the planner has no particular need for quickoptimization algorithms both BaP and CPLEX might be viable alternatives to optimizethe DASP

BaP is faster especially when used heuristically stopping the computation either atthe root node or after exploring a few nodes of the branch-and-bound tree This makes itwell suited also when quick optimization is needed like in what-if-analyses

When the number of time-slots increases however using CPLEX is not an optionanymore

We repeated all the experiments with a periodic-plan model without nding substantialchanges in the computational behaviour of the methods Indeed the periodic-plan modelhas main impact only in the structure of the pricing problem of BaP but pricing involvesonly a small amount of the overall computational eort

17

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0 1208 17661 0411 1197 2032 0 1951 17038 0777 1949 3713 0198 1347 18572 0 1345 4524 0370 0997 19198 0 0993 5485 0020 1626 18013 0 1626 699

24

1 0 1473 8576 0249 1471 142 0 1535 8657 0855 1533 243 0 2018 9349 267368 2015 464 0 1863 9353 123542 1860 385 0 1763 10204 267486 1761 40

48

1 0 1818 2123 246767 1816 02 0 2468 2724 270039 2465 03 0 2335 2558 269274 2332 04 0 2036 3133 282422 2033 05 0 2514 2528 258676 2510 0

96

1 0 2274 113 259445 - TL2 0 2633 217 - - TL3 0 2779 168 - - TL4 0 2528 135 - - TL5 0 2568 207 272834 - TL

(a) Synthetic Dataset A

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0160 0105 35112 0 0103 23982 0235 0111 30708 0 0109 25793 0320 0124 26374 0 0122 18184 0406 0102 26490 0 0100 19325 0267 0100 24714 0 0098 1844

24

1 0133 0424 17961 0 0423 1442 0274 0279 18354 0 0278 1093 0 0576 20016 0717 0574 2254 0353 0183 17481 0 0182 2325 0284 0220 20446 0 0220 522

48

1 0312 0263 10738 0 0262 202 0249 0343 10465 0 0343 183 0113 0363 10482 0 0360 174 0227 0313 10321 0 0311 165 0226 0295 10818 0 0295 21

96

1 0 0932 3133 - - TL2 0 0765 3193 - - TL3 0 0852 3398 - - TL4 0 0691 3099 - - TL5 0 0726 3299 - - TL

(b) Realistic Dataset B

B-amp-P CPLEX

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

clust 0376 0091 13849 0 0091 8124h 0442 0272 8985 0 0270 303h 0403 0471 5086 0 0470 332h 0 0724 2864 - - TL1h 0 0905 370 - - TL

(c) Raw Real Demand Dataset C

Table 2 Computational Results - BaP vs CPLEX

18

6 Practical case study

Our nal aim is to assess the eectiveness of our optimization core in the context of thedata-driven MEC management optimization framework To this end we rely on the com-plete real-world dataset in [24] and run actual analytics on it so as to generate the demandproles We then feed our optimization models with such proles which ultimately letsus measure the quality of the assignment plans it returns in a practical case

61 Experimental setup

The real-world mobile trac data covers a planning period of eight weeks split in a set Tof fteen-minute snapshots The rst approach we take in order to infer demand prolesexploits a well-known property of mobile trac ie its weekly periodicity [26] Namely asingle week is taken as training data and the mobile trac recorded in each fteen-minutetime-slot is considered as a prole The tasks performed by the data mining and validationmodules are kept as simple as possible in order to highlight the eect of the optimizationcore

Training Conceptually the resulting 4 times 24 times 7 = 672 training proles are then usedas input for our optimization algorithms By optimizing over the training data we obtaina planning solution which becomes our assignment plan we apply such a plan to theremaining seven weeks of test data As an example optimizing over training data yields asolution including a specic assignment of APs to MEC facilities on Monday between 700am and 715 am we then blindly apply the same assignments on the 700-715 am timeslots of each Monday in the test data presuming that the demand conguration is similaron all Mondays at the same time In a sense this is a worst-case situation in which thedecision maker simply observes the system for one week before deciding on the planningfor the remaining weeks

Practically we do not directly use the 672 fteen-minutes time-slots for training Weassume instead that the preprocessing and data-mining module produces suitable ag-gregations We experimented therefore with simple aggregation of the proles mergingtime-slots sequentially over 1 2 3 or 4 hours Each aggregation step was performed byconsidering in each AP and in each aggregated time-slot the maximum demand value ofthat AP over the corresponding base time-slots The optimized solution was then dis-aggregated in post-processing simply replicating the same plan over the fteen-minutestime-slots composing each aggregated time-slot By choosing the maximum demand valuesduring aggregation we ensure that our optimized solutions remain feasible after disaggre-gation

It is apparent that less aggregated proles entail a higher potential for optimizationin the baseline scenario the assignment of APs to MEC facilities can be changed every15 minutes possibly assigning to the same MEC facility APs that experience very highpeaks of demand in subsequent time slots They are however more prone to overttingas peaks in particular hours of the training week do not necessarily correspond to peaksin the corresponding hour of testing weeks In addition they are more clearly expensivefrom a computational standpoint

More aggregated instances instead are more conservative two APs with very highdemand peaks in the same four-hours time slot cannot be assigned to the same MECfacility thus possibly preventing capacity violations in the test weeks if those peaks slightlymove in time They are also less demanding in terms of computational costs Howeveraggregation forces the a same conguration for longer timeframes making the optimizationpossibly oblivious of fast dynamics in the demand

19

Figure 5 Time-Clustering resulting from [21]

In order to further balance the aggressive optimization process during the trainingphase of low aggregation instances we found empirically useful to set the Ck capacityvalues to

(maxtisinT

sumiisinA d

ti|K|

)middot 105 in each test That is one-hour time-slot instances

are optimized with lower capacity values

Test To ensure fairness in the comparison during the test phase only disaggregatedsolutions are considered That is independently on the aggregation used for training onlysolutions dened over the original fteen-minutes time-slots are compared Similarly thereference MEC capacity value was xed to

(maxtisinT

sumiisinA d

ti|K|

)middot110 in any comparison

Clearly neither the cost nor the capacity usage are guaranteed to remain the samewhen the planning obtained with training data is applied to test data as uctuations inthe demand may occur across weeks The quality of our solutions is therefore evaluatedaccording to two measures (i) the assignment and switching cost of the planning and (ii)

the amount of violations in capacity constraints both measured on test data The latteris computed as follows

maxtisinT

sumkisinK

maxsum

iisinA dtix

tik minus Ck 0

Ck

that is the overall amount of violation in capacity constraints as a relative value respectto the available capacity in the worst time-slot

These measures are computed for each plan by the validation module through simplesimulation on the seven weeks of test data

Advanced Clustering Benchmark An alternative to employing our ad-hoc techniqueon the optimization module would be to perform a more aggressive aggregation over timeproducing instances that are small enough to be optimized by CPLEX We experimentedon such an option adapting the temporal clustering solution presented in [21] to our needsSpecically we take the following steps (i) we generate a median week of mobile tracdemand by computing the median load recorded at each AP during every hour of the weekusing it as training data (ii) we perform two separate hierarchical clusterings respectivelyusing the total volume and normalized distance metrics introduced in [21] (iii) we ndthe intersection of the two cluster sets obtained at the previous point

Figure 5 shows the resulting clustering of one-hour time slots ve typical demandproles are identied which can be associated to working hours (denoted by 0 in thegure) relax hours in the late afternoons and weekends (1) morning commuting hours(2) night hours (3) and late evening hours (4) Very few time-slots are actually producedthis way allowing CPLEX to optimize the corresponding instances Consecutive time-slots

20

InstWeek

train 1 2 3 4 5 6 7

Bench-CPLEX 959 703 571 425 257 388 1468 951Bench-CG 959 676 548 408 245 410 1434 927

4h 209 154 172 066 000 254 1163 2923h 194 142 148 110 125 158 1107 2982h 220 258 199 119 226 282 1122 4151h 284 238 417 114 192 404 1065 547

Table 3 Time-Slot Peak Exceeded Capacity Over Available Capacity

belonging to the same cluster are then aggregated The aggregated instance is optimizedand the solution obtained in this way is then disaggregated in fteen-minute time-slotsplans as in the previous case during post-processing before being compared on test data

62 Experimental evaluation

Following the computational results of Section 5 our core optimization module alwaysemploys our Branch-and-Price as a heuristic (HBP) stopping its computation at the rootnode except for the aggregated instances produced by time-clustering Having |T | = 38these are manageable eciently even by general purpose solvers CPLEX 1263 ILP solverwas then used to solve them to proven optimality The scatter plot in Figure 6 summarizesour results Each point represents the outcome on a single week of test data Dierentshapes refer to dierent demand prole aggregation methods obtained by merging 1 2 3 or4 consecutive one-hour time slots as well as using the Advanced Clustering and CPLEX(Bench-CPLEX) The y axis coordinate of each point represents the capacity violationmeasure as introduced above the x axis coordinate of each point represents the solutioncost measure expressed as percentage value of that of the optimal solution employing theAdvanced Clustering Benchmark method Therefore negative (resp positive) percentagesmap to a performance improvement (resp reduction) with respect to the benchmarkAs a reference we report also the results obtained by using HBP instead of CPLEX foroptimizing the Advanced Clustering Benchmark instances (Bench-CG) The details aboutcapacity violation measures are reported also in Table 3 for each week in the training set(columns) and for each demand prole aggregation method (rows)

A rst remarkable result is that in all cases our HBP with sequential clustering allows forsolutions with less capacity violations In particular HBP with either four-hours or three-hours aggregation oer almost no capacity violations coming at the price of three to vepercent increase in solutions cost HBP with two-hours aggregation always outperforms thebenchmark method both in terms of exceeded capacity and in terms of solution costs HBPwith one-hour aggregation further decrease costs at the price of slightly higher capacityviolation

We also experimented on using the full BaP instead of the truncated HBP Our resultsare reported in Figure 7 no signicant change was observed Similarly no signicantchange was observed by using HBP instead of CPLEX on the benchmark clustering

63 Eect of periodic planning

Finally we measure the impact in solution switching costs yielded by choosing a periodmodel instead of a non-periodic one In Table 4 we report for each aggregation listedin the previous subsection the change in switching costs between inner time-slots of theweek (intra-week) between border time-slots of dierent weeks (inter-week) as well as thetotal switching cost the total assignment cost and the overall cost of the solution Using a

21

Figure 6 1-Week Plan - Time Aggreg Comparison

(a) Total Costs (b) Exceeded Capacity

Figure 7 Mean Costs And Exceeded Capacity - CG Root vs BaP

22

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 15: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

slots of 3 hours (3h) 42 slots of 4 hours (4h) or 38 slots obtained by the clusteringmethods described in subsection 62 (clust) The demand of each AP in each slot tis taken as the maximum over the the fteen-minute time slots merged in t

For every instance each MEC facility capacity Ck is set to(

maxtisinTsum

iisinA dti|K|

)middot105

and parameters α and β are both set to value 05

52 Column Generation proling

We rst report on the computational behaviour of our Column Generation algorithm (CG)In this test we consider the single-assignment non-periodic variant

In Tables 1a 1b and 1c we include the details of the root node column generationprocess for each instance of datasets A B and C respectively A best known solutionvalue zlowast is taken from a previous run of exact algorithms (see subsection 53) Besidesinstance details (columns `|T | and `inst) we include the relative gap between the primalbound value (resp dual bound value) and zlowast the number of column generation iterationsneeded to reach convergence the overall CPU time spent for solving the pricing problemsand the CPU time required to complete the column generation process As benchmarkwe also report the performances of CPLEX 1263 ILP solver when stopped at the rootnode including the corresponding primal and dual bound gaps and the time required tocomplete its root node computation

We set a time limit of two hours to each computation marking in the tables as `TLthose computations hitting that limit

We rst note that CG has good convergence behaviour less than 90 iterations arealways enough to complete the computation The high number of pricing subproblemsyields to a high number of generated columns but thanks to our dynamic programmingalgorithm the overall pricing time remains low (below 10 seconds in all cases but one)

By rounding in CG we are always able to obtain good integer solutions (that is below1 from best known solutions in all cases but 4) CPLEX is not consistent in a fewinstances (eg block |T | = 48 of the Realistic Dataset B) it is able to nd very goodprimal solutions while in other cases (eg block |T | = 24 of Dataset B or block |T | = 48of Dataset A) only very weak primal bounds can be obtained

We also observe that CG and CPLEX dual bounds are always similar That is on onehand the integrality property of our pricing problem warns that no improvement can beobtained by CG with respect to the continuous relaxation of the original formulation onthe other hand CPLEX generic cuts have no signicant eect on strengthening the samecontinuous relaxation bound

Finally in more than 37 of the instances CPLEX is unable to terminate the rootnode computation within the time limit while CG always completes the computationWhen both CG and CPLEX terminate the CPU time required by CG is up to two ordersof magnitude lower that required by CPLEX

We highlight that the (possibly fractional) solution found by CG is a global optimalsolution for the split-assignment model variants no further computing is needed in thatcase

53 Exactly solving the DASP

In a second round of experiments we let both our Branch-and-Price (BaP) and CPLEX126 ILP solver (CPX) run for two hours also exploring their branching trees In Tables2a 2b 2c we report the results of this experiment on each instance of datasets A B and Crespectively In each Table we report the relative gap between the primal bound PB (respthe dual bound DB) at the end of computation and the best known integer solution valuezlowast and the number of explored branch-and-bound nodes for both our BaP and CPX

15

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0130 1212 19 10808 0 4 0724 1197 8642 0735 1955 14 8715 0 4 244932 1949 4103 0793 1351 13 7074 0 3 0167 1345 3284 0945 0999 14 7515 0 3 2824 0994 3445 1206 1630 13 7892 0 3 3052 1627 356

24

1 0061 1475 26 17027 1 15 0249 1471 28262 1202 1537 19 11429 1 11 274940 1533 19433 0867 2019 19 12296 0 13 267368 2015 18524 0846 1864 19 12525 0 12 123542 1860 18615 0909 1764 18 12077 0 12 267486 1761 1781

48

1 0463 1819 41 27035 6 114 246767 1816 TL2 0221 2468 32 20897 1 90 270039 2465 TL3 0746 2336 33 21468 4 95 269274 2332 TL4 0295 2036 31 20496 0 74 282422 2033 TL5 0265 2514 35 22707 0 106 258676 2510 TL

96

1 0176 2274 68 47500 5 949 259445 - TL2 0055 2633 59 42621 6 913 - - TL3 0034 2779 61 43107 9 863 - - TL4 0187 2528 61 42692 5 850 - - TL5 0124 2568 60 41913 6 815 272834 - TL

(a) Synthetic Dataset A

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0809 0107 12 6542 1 2 0055 0105 1382 0917 0112 11 6150 0 2 0924 0110 1463 1043 0125 12 6611 0 2 0155 0123 1584 0797 0103 11 5843 0 2 349538 0102 1205 0781 0102 11 6548 0 2 349089 0101 113

24

1 0766 0425 15 9713 0 4 305781 0424 5322 0481 0280 16 9715 0 3 306562 0278 5873 0613 0576 15 9492 1 3 304188 0575 6224 0960 0183 17 10345 0 3 306874 0182 6155 0648 0221 16 10217 0 4 307199 0220 413

48

1 1031 0264 27 15539 1 16 0253 0262 21132 0782 0344 25 15636 2 15 0557 0343 22493 0500 0363 26 15286 1 15 0 0362 26744 0741 0314 26 15791 3 18 0049 0312 24455 0829 0296 29 16294 0 15 0651 0295 1878

96

1 0077 0933 51 29786 6 130 - - TL2 0315 0766 43 28272 3 125 - - TL3 0249 0853 46 28221 9 129 - - TL4 0395 0692 49 29320 5 126 - - TL5 0154 0726 48 29005 4 120 - - TL

(b) Realistic Dataset B

CG Root CPLEX Root

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast tclust 0590 0092 21 12928 2 9 0429 0091 4684h 0630 0272 30 20690 2 25 0175 0271 51913h 0513 0471 37 25960 3 58 0766 0470 28142h 0192 0724 50 31706 2 133 - - TL1h 0097 0905 85 56322 18 953 - - TL

(c) Raw Real Demand Dataset C

Table 1 Computational Results - CG Root vs CPLEX Root

16

(a) BaP vs CPLEX (b) BaP Detail

Figure 4 Primal Bound

We report no computing time because surprisingly neither BaP nor CPX could bringthe duality gap below 01 within the time limit except for instance 4 with |T | = 12 ofDataset A 5 with |T | = 12 of Dataset B and clust of Dataset C that CPX is able toclose (but still using more than 90 of the available CPU time)

In terms of nal dual bounds the results of both methods are very similar Our expla-nation for this phenomenon is the following the root dual bound is already very close tothe integer optimum value and therefore the real challenge is to nd an optimal primalsolution At the same time the high number of time-slots yields values of primal solutionson the order of magnitude of 108 as soon as the duality gap becomes small numericalapproximation issues prevent to coherently explore the remaining search tree

In terms of searching for good primal solutions in the inner nodes of the branching treeinstead BaP and CPX are not equivalent in Figure 4a we plot the typical primal boundvalue (y axis) improvements as the computation (x axis) proceeds (instance 1 |T | = 24dataset B) for the sake of comparison the x axis report relative values with respect tothe overall number of branch-and-bound nodes for CPX and the overall number of columngeneration iterations for BaP Eventually CPX is more numerically stable oering aftertwo hours of computation primal solutions values a few tenths of percentage points better(up to 05 of improvement) In turn BaP allows to nd near-optimal integer solutionsmuch more quickly that is in fact already at the root node The behaviour of BaP in theearly steps of computation is further detailed in Figure 4b the quality of the primal boundsteeply increase during the column generation iterations at the root node

As a synthetic nal assessment of our computational evaluation we can report thatwhen the number of time-slots is small and the planner has no particular need for quickoptimization algorithms both BaP and CPLEX might be viable alternatives to optimizethe DASP

BaP is faster especially when used heuristically stopping the computation either atthe root node or after exploring a few nodes of the branch-and-bound tree This makes itwell suited also when quick optimization is needed like in what-if-analyses

When the number of time-slots increases however using CPLEX is not an optionanymore

We repeated all the experiments with a periodic-plan model without nding substantialchanges in the computational behaviour of the methods Indeed the periodic-plan modelhas main impact only in the structure of the pricing problem of BaP but pricing involvesonly a small amount of the overall computational eort

17

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0 1208 17661 0411 1197 2032 0 1951 17038 0777 1949 3713 0198 1347 18572 0 1345 4524 0370 0997 19198 0 0993 5485 0020 1626 18013 0 1626 699

24

1 0 1473 8576 0249 1471 142 0 1535 8657 0855 1533 243 0 2018 9349 267368 2015 464 0 1863 9353 123542 1860 385 0 1763 10204 267486 1761 40

48

1 0 1818 2123 246767 1816 02 0 2468 2724 270039 2465 03 0 2335 2558 269274 2332 04 0 2036 3133 282422 2033 05 0 2514 2528 258676 2510 0

96

1 0 2274 113 259445 - TL2 0 2633 217 - - TL3 0 2779 168 - - TL4 0 2528 135 - - TL5 0 2568 207 272834 - TL

(a) Synthetic Dataset A

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0160 0105 35112 0 0103 23982 0235 0111 30708 0 0109 25793 0320 0124 26374 0 0122 18184 0406 0102 26490 0 0100 19325 0267 0100 24714 0 0098 1844

24

1 0133 0424 17961 0 0423 1442 0274 0279 18354 0 0278 1093 0 0576 20016 0717 0574 2254 0353 0183 17481 0 0182 2325 0284 0220 20446 0 0220 522

48

1 0312 0263 10738 0 0262 202 0249 0343 10465 0 0343 183 0113 0363 10482 0 0360 174 0227 0313 10321 0 0311 165 0226 0295 10818 0 0295 21

96

1 0 0932 3133 - - TL2 0 0765 3193 - - TL3 0 0852 3398 - - TL4 0 0691 3099 - - TL5 0 0726 3299 - - TL

(b) Realistic Dataset B

B-amp-P CPLEX

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

clust 0376 0091 13849 0 0091 8124h 0442 0272 8985 0 0270 303h 0403 0471 5086 0 0470 332h 0 0724 2864 - - TL1h 0 0905 370 - - TL

(c) Raw Real Demand Dataset C

Table 2 Computational Results - BaP vs CPLEX

18

6 Practical case study

Our nal aim is to assess the eectiveness of our optimization core in the context of thedata-driven MEC management optimization framework To this end we rely on the com-plete real-world dataset in [24] and run actual analytics on it so as to generate the demandproles We then feed our optimization models with such proles which ultimately letsus measure the quality of the assignment plans it returns in a practical case

61 Experimental setup

The real-world mobile trac data covers a planning period of eight weeks split in a set Tof fteen-minute snapshots The rst approach we take in order to infer demand prolesexploits a well-known property of mobile trac ie its weekly periodicity [26] Namely asingle week is taken as training data and the mobile trac recorded in each fteen-minutetime-slot is considered as a prole The tasks performed by the data mining and validationmodules are kept as simple as possible in order to highlight the eect of the optimizationcore

Training Conceptually the resulting 4 times 24 times 7 = 672 training proles are then usedas input for our optimization algorithms By optimizing over the training data we obtaina planning solution which becomes our assignment plan we apply such a plan to theremaining seven weeks of test data As an example optimizing over training data yields asolution including a specic assignment of APs to MEC facilities on Monday between 700am and 715 am we then blindly apply the same assignments on the 700-715 am timeslots of each Monday in the test data presuming that the demand conguration is similaron all Mondays at the same time In a sense this is a worst-case situation in which thedecision maker simply observes the system for one week before deciding on the planningfor the remaining weeks

Practically we do not directly use the 672 fteen-minutes time-slots for training Weassume instead that the preprocessing and data-mining module produces suitable ag-gregations We experimented therefore with simple aggregation of the proles mergingtime-slots sequentially over 1 2 3 or 4 hours Each aggregation step was performed byconsidering in each AP and in each aggregated time-slot the maximum demand value ofthat AP over the corresponding base time-slots The optimized solution was then dis-aggregated in post-processing simply replicating the same plan over the fteen-minutestime-slots composing each aggregated time-slot By choosing the maximum demand valuesduring aggregation we ensure that our optimized solutions remain feasible after disaggre-gation

It is apparent that less aggregated proles entail a higher potential for optimizationin the baseline scenario the assignment of APs to MEC facilities can be changed every15 minutes possibly assigning to the same MEC facility APs that experience very highpeaks of demand in subsequent time slots They are however more prone to overttingas peaks in particular hours of the training week do not necessarily correspond to peaksin the corresponding hour of testing weeks In addition they are more clearly expensivefrom a computational standpoint

More aggregated instances instead are more conservative two APs with very highdemand peaks in the same four-hours time slot cannot be assigned to the same MECfacility thus possibly preventing capacity violations in the test weeks if those peaks slightlymove in time They are also less demanding in terms of computational costs Howeveraggregation forces the a same conguration for longer timeframes making the optimizationpossibly oblivious of fast dynamics in the demand

19

Figure 5 Time-Clustering resulting from [21]

In order to further balance the aggressive optimization process during the trainingphase of low aggregation instances we found empirically useful to set the Ck capacityvalues to

(maxtisinT

sumiisinA d

ti|K|

)middot 105 in each test That is one-hour time-slot instances

are optimized with lower capacity values

Test To ensure fairness in the comparison during the test phase only disaggregatedsolutions are considered That is independently on the aggregation used for training onlysolutions dened over the original fteen-minutes time-slots are compared Similarly thereference MEC capacity value was xed to

(maxtisinT

sumiisinA d

ti|K|

)middot110 in any comparison

Clearly neither the cost nor the capacity usage are guaranteed to remain the samewhen the planning obtained with training data is applied to test data as uctuations inthe demand may occur across weeks The quality of our solutions is therefore evaluatedaccording to two measures (i) the assignment and switching cost of the planning and (ii)

the amount of violations in capacity constraints both measured on test data The latteris computed as follows

maxtisinT

sumkisinK

maxsum

iisinA dtix

tik minus Ck 0

Ck

that is the overall amount of violation in capacity constraints as a relative value respectto the available capacity in the worst time-slot

These measures are computed for each plan by the validation module through simplesimulation on the seven weeks of test data

Advanced Clustering Benchmark An alternative to employing our ad-hoc techniqueon the optimization module would be to perform a more aggressive aggregation over timeproducing instances that are small enough to be optimized by CPLEX We experimentedon such an option adapting the temporal clustering solution presented in [21] to our needsSpecically we take the following steps (i) we generate a median week of mobile tracdemand by computing the median load recorded at each AP during every hour of the weekusing it as training data (ii) we perform two separate hierarchical clusterings respectivelyusing the total volume and normalized distance metrics introduced in [21] (iii) we ndthe intersection of the two cluster sets obtained at the previous point

Figure 5 shows the resulting clustering of one-hour time slots ve typical demandproles are identied which can be associated to working hours (denoted by 0 in thegure) relax hours in the late afternoons and weekends (1) morning commuting hours(2) night hours (3) and late evening hours (4) Very few time-slots are actually producedthis way allowing CPLEX to optimize the corresponding instances Consecutive time-slots

20

InstWeek

train 1 2 3 4 5 6 7

Bench-CPLEX 959 703 571 425 257 388 1468 951Bench-CG 959 676 548 408 245 410 1434 927

4h 209 154 172 066 000 254 1163 2923h 194 142 148 110 125 158 1107 2982h 220 258 199 119 226 282 1122 4151h 284 238 417 114 192 404 1065 547

Table 3 Time-Slot Peak Exceeded Capacity Over Available Capacity

belonging to the same cluster are then aggregated The aggregated instance is optimizedand the solution obtained in this way is then disaggregated in fteen-minute time-slotsplans as in the previous case during post-processing before being compared on test data

62 Experimental evaluation

Following the computational results of Section 5 our core optimization module alwaysemploys our Branch-and-Price as a heuristic (HBP) stopping its computation at the rootnode except for the aggregated instances produced by time-clustering Having |T | = 38these are manageable eciently even by general purpose solvers CPLEX 1263 ILP solverwas then used to solve them to proven optimality The scatter plot in Figure 6 summarizesour results Each point represents the outcome on a single week of test data Dierentshapes refer to dierent demand prole aggregation methods obtained by merging 1 2 3 or4 consecutive one-hour time slots as well as using the Advanced Clustering and CPLEX(Bench-CPLEX) The y axis coordinate of each point represents the capacity violationmeasure as introduced above the x axis coordinate of each point represents the solutioncost measure expressed as percentage value of that of the optimal solution employing theAdvanced Clustering Benchmark method Therefore negative (resp positive) percentagesmap to a performance improvement (resp reduction) with respect to the benchmarkAs a reference we report also the results obtained by using HBP instead of CPLEX foroptimizing the Advanced Clustering Benchmark instances (Bench-CG) The details aboutcapacity violation measures are reported also in Table 3 for each week in the training set(columns) and for each demand prole aggregation method (rows)

A rst remarkable result is that in all cases our HBP with sequential clustering allows forsolutions with less capacity violations In particular HBP with either four-hours or three-hours aggregation oer almost no capacity violations coming at the price of three to vepercent increase in solutions cost HBP with two-hours aggregation always outperforms thebenchmark method both in terms of exceeded capacity and in terms of solution costs HBPwith one-hour aggregation further decrease costs at the price of slightly higher capacityviolation

We also experimented on using the full BaP instead of the truncated HBP Our resultsare reported in Figure 7 no signicant change was observed Similarly no signicantchange was observed by using HBP instead of CPLEX on the benchmark clustering

63 Eect of periodic planning

Finally we measure the impact in solution switching costs yielded by choosing a periodmodel instead of a non-periodic one In Table 4 we report for each aggregation listedin the previous subsection the change in switching costs between inner time-slots of theweek (intra-week) between border time-slots of dierent weeks (inter-week) as well as thetotal switching cost the total assignment cost and the overall cost of the solution Using a

21

Figure 6 1-Week Plan - Time Aggreg Comparison

(a) Total Costs (b) Exceeded Capacity

Figure 7 Mean Costs And Exceeded Capacity - CG Root vs BaP

22

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 16: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0130 1212 19 10808 0 4 0724 1197 8642 0735 1955 14 8715 0 4 244932 1949 4103 0793 1351 13 7074 0 3 0167 1345 3284 0945 0999 14 7515 0 3 2824 0994 3445 1206 1630 13 7892 0 3 3052 1627 356

24

1 0061 1475 26 17027 1 15 0249 1471 28262 1202 1537 19 11429 1 11 274940 1533 19433 0867 2019 19 12296 0 13 267368 2015 18524 0846 1864 19 12525 0 12 123542 1860 18615 0909 1764 18 12077 0 12 267486 1761 1781

48

1 0463 1819 41 27035 6 114 246767 1816 TL2 0221 2468 32 20897 1 90 270039 2465 TL3 0746 2336 33 21468 4 95 269274 2332 TL4 0295 2036 31 20496 0 74 282422 2033 TL5 0265 2514 35 22707 0 106 258676 2510 TL

96

1 0176 2274 68 47500 5 949 259445 - TL2 0055 2633 59 42621 6 913 - - TL3 0034 2779 61 43107 9 863 - - TL4 0187 2528 61 42692 5 850 - - TL5 0124 2568 60 41913 6 815 272834 - TL

(a) Synthetic Dataset A

CG Root CPLEX Root

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast t

12

1 0809 0107 12 6542 1 2 0055 0105 1382 0917 0112 11 6150 0 2 0924 0110 1463 1043 0125 12 6611 0 2 0155 0123 1584 0797 0103 11 5843 0 2 349538 0102 1205 0781 0102 11 6548 0 2 349089 0101 113

24

1 0766 0425 15 9713 0 4 305781 0424 5322 0481 0280 16 9715 0 3 306562 0278 5873 0613 0576 15 9492 1 3 304188 0575 6224 0960 0183 17 10345 0 3 306874 0182 6155 0648 0221 16 10217 0 4 307199 0220 413

48

1 1031 0264 27 15539 1 16 0253 0262 21132 0782 0344 25 15636 2 15 0557 0343 22493 0500 0363 26 15286 1 15 0 0362 26744 0741 0314 26 15791 3 18 0049 0312 24455 0829 0296 29 16294 0 15 0651 0295 1878

96

1 0077 0933 51 29786 6 130 - - TL2 0315 0766 43 28272 3 125 - - TL3 0249 0853 46 28221 9 129 - - TL4 0395 0692 49 29320 5 126 - - TL5 0154 0726 48 29005 4 120 - - TL

(b) Realistic Dataset B

CG Root CPLEX Root

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast iter cols tp t PBminuszlowast

zlowast|DBminuszlowast|

zlowast tclust 0590 0092 21 12928 2 9 0429 0091 4684h 0630 0272 30 20690 2 25 0175 0271 51913h 0513 0471 37 25960 3 58 0766 0470 28142h 0192 0724 50 31706 2 133 - - TL1h 0097 0905 85 56322 18 953 - - TL

(c) Raw Real Demand Dataset C

Table 1 Computational Results - CG Root vs CPLEX Root

16

(a) BaP vs CPLEX (b) BaP Detail

Figure 4 Primal Bound

We report no computing time because surprisingly neither BaP nor CPX could bringthe duality gap below 01 within the time limit except for instance 4 with |T | = 12 ofDataset A 5 with |T | = 12 of Dataset B and clust of Dataset C that CPX is able toclose (but still using more than 90 of the available CPU time)

In terms of nal dual bounds the results of both methods are very similar Our expla-nation for this phenomenon is the following the root dual bound is already very close tothe integer optimum value and therefore the real challenge is to nd an optimal primalsolution At the same time the high number of time-slots yields values of primal solutionson the order of magnitude of 108 as soon as the duality gap becomes small numericalapproximation issues prevent to coherently explore the remaining search tree

In terms of searching for good primal solutions in the inner nodes of the branching treeinstead BaP and CPX are not equivalent in Figure 4a we plot the typical primal boundvalue (y axis) improvements as the computation (x axis) proceeds (instance 1 |T | = 24dataset B) for the sake of comparison the x axis report relative values with respect tothe overall number of branch-and-bound nodes for CPX and the overall number of columngeneration iterations for BaP Eventually CPX is more numerically stable oering aftertwo hours of computation primal solutions values a few tenths of percentage points better(up to 05 of improvement) In turn BaP allows to nd near-optimal integer solutionsmuch more quickly that is in fact already at the root node The behaviour of BaP in theearly steps of computation is further detailed in Figure 4b the quality of the primal boundsteeply increase during the column generation iterations at the root node

As a synthetic nal assessment of our computational evaluation we can report thatwhen the number of time-slots is small and the planner has no particular need for quickoptimization algorithms both BaP and CPLEX might be viable alternatives to optimizethe DASP

BaP is faster especially when used heuristically stopping the computation either atthe root node or after exploring a few nodes of the branch-and-bound tree This makes itwell suited also when quick optimization is needed like in what-if-analyses

When the number of time-slots increases however using CPLEX is not an optionanymore

We repeated all the experiments with a periodic-plan model without nding substantialchanges in the computational behaviour of the methods Indeed the periodic-plan modelhas main impact only in the structure of the pricing problem of BaP but pricing involvesonly a small amount of the overall computational eort

17

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0 1208 17661 0411 1197 2032 0 1951 17038 0777 1949 3713 0198 1347 18572 0 1345 4524 0370 0997 19198 0 0993 5485 0020 1626 18013 0 1626 699

24

1 0 1473 8576 0249 1471 142 0 1535 8657 0855 1533 243 0 2018 9349 267368 2015 464 0 1863 9353 123542 1860 385 0 1763 10204 267486 1761 40

48

1 0 1818 2123 246767 1816 02 0 2468 2724 270039 2465 03 0 2335 2558 269274 2332 04 0 2036 3133 282422 2033 05 0 2514 2528 258676 2510 0

96

1 0 2274 113 259445 - TL2 0 2633 217 - - TL3 0 2779 168 - - TL4 0 2528 135 - - TL5 0 2568 207 272834 - TL

(a) Synthetic Dataset A

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0160 0105 35112 0 0103 23982 0235 0111 30708 0 0109 25793 0320 0124 26374 0 0122 18184 0406 0102 26490 0 0100 19325 0267 0100 24714 0 0098 1844

24

1 0133 0424 17961 0 0423 1442 0274 0279 18354 0 0278 1093 0 0576 20016 0717 0574 2254 0353 0183 17481 0 0182 2325 0284 0220 20446 0 0220 522

48

1 0312 0263 10738 0 0262 202 0249 0343 10465 0 0343 183 0113 0363 10482 0 0360 174 0227 0313 10321 0 0311 165 0226 0295 10818 0 0295 21

96

1 0 0932 3133 - - TL2 0 0765 3193 - - TL3 0 0852 3398 - - TL4 0 0691 3099 - - TL5 0 0726 3299 - - TL

(b) Realistic Dataset B

B-amp-P CPLEX

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

clust 0376 0091 13849 0 0091 8124h 0442 0272 8985 0 0270 303h 0403 0471 5086 0 0470 332h 0 0724 2864 - - TL1h 0 0905 370 - - TL

(c) Raw Real Demand Dataset C

Table 2 Computational Results - BaP vs CPLEX

18

6 Practical case study

Our nal aim is to assess the eectiveness of our optimization core in the context of thedata-driven MEC management optimization framework To this end we rely on the com-plete real-world dataset in [24] and run actual analytics on it so as to generate the demandproles We then feed our optimization models with such proles which ultimately letsus measure the quality of the assignment plans it returns in a practical case

61 Experimental setup

The real-world mobile trac data covers a planning period of eight weeks split in a set Tof fteen-minute snapshots The rst approach we take in order to infer demand prolesexploits a well-known property of mobile trac ie its weekly periodicity [26] Namely asingle week is taken as training data and the mobile trac recorded in each fteen-minutetime-slot is considered as a prole The tasks performed by the data mining and validationmodules are kept as simple as possible in order to highlight the eect of the optimizationcore

Training Conceptually the resulting 4 times 24 times 7 = 672 training proles are then usedas input for our optimization algorithms By optimizing over the training data we obtaina planning solution which becomes our assignment plan we apply such a plan to theremaining seven weeks of test data As an example optimizing over training data yields asolution including a specic assignment of APs to MEC facilities on Monday between 700am and 715 am we then blindly apply the same assignments on the 700-715 am timeslots of each Monday in the test data presuming that the demand conguration is similaron all Mondays at the same time In a sense this is a worst-case situation in which thedecision maker simply observes the system for one week before deciding on the planningfor the remaining weeks

Practically we do not directly use the 672 fteen-minutes time-slots for training Weassume instead that the preprocessing and data-mining module produces suitable ag-gregations We experimented therefore with simple aggregation of the proles mergingtime-slots sequentially over 1 2 3 or 4 hours Each aggregation step was performed byconsidering in each AP and in each aggregated time-slot the maximum demand value ofthat AP over the corresponding base time-slots The optimized solution was then dis-aggregated in post-processing simply replicating the same plan over the fteen-minutestime-slots composing each aggregated time-slot By choosing the maximum demand valuesduring aggregation we ensure that our optimized solutions remain feasible after disaggre-gation

It is apparent that less aggregated proles entail a higher potential for optimizationin the baseline scenario the assignment of APs to MEC facilities can be changed every15 minutes possibly assigning to the same MEC facility APs that experience very highpeaks of demand in subsequent time slots They are however more prone to overttingas peaks in particular hours of the training week do not necessarily correspond to peaksin the corresponding hour of testing weeks In addition they are more clearly expensivefrom a computational standpoint

More aggregated instances instead are more conservative two APs with very highdemand peaks in the same four-hours time slot cannot be assigned to the same MECfacility thus possibly preventing capacity violations in the test weeks if those peaks slightlymove in time They are also less demanding in terms of computational costs Howeveraggregation forces the a same conguration for longer timeframes making the optimizationpossibly oblivious of fast dynamics in the demand

19

Figure 5 Time-Clustering resulting from [21]

In order to further balance the aggressive optimization process during the trainingphase of low aggregation instances we found empirically useful to set the Ck capacityvalues to

(maxtisinT

sumiisinA d

ti|K|

)middot 105 in each test That is one-hour time-slot instances

are optimized with lower capacity values

Test To ensure fairness in the comparison during the test phase only disaggregatedsolutions are considered That is independently on the aggregation used for training onlysolutions dened over the original fteen-minutes time-slots are compared Similarly thereference MEC capacity value was xed to

(maxtisinT

sumiisinA d

ti|K|

)middot110 in any comparison

Clearly neither the cost nor the capacity usage are guaranteed to remain the samewhen the planning obtained with training data is applied to test data as uctuations inthe demand may occur across weeks The quality of our solutions is therefore evaluatedaccording to two measures (i) the assignment and switching cost of the planning and (ii)

the amount of violations in capacity constraints both measured on test data The latteris computed as follows

maxtisinT

sumkisinK

maxsum

iisinA dtix

tik minus Ck 0

Ck

that is the overall amount of violation in capacity constraints as a relative value respectto the available capacity in the worst time-slot

These measures are computed for each plan by the validation module through simplesimulation on the seven weeks of test data

Advanced Clustering Benchmark An alternative to employing our ad-hoc techniqueon the optimization module would be to perform a more aggressive aggregation over timeproducing instances that are small enough to be optimized by CPLEX We experimentedon such an option adapting the temporal clustering solution presented in [21] to our needsSpecically we take the following steps (i) we generate a median week of mobile tracdemand by computing the median load recorded at each AP during every hour of the weekusing it as training data (ii) we perform two separate hierarchical clusterings respectivelyusing the total volume and normalized distance metrics introduced in [21] (iii) we ndthe intersection of the two cluster sets obtained at the previous point

Figure 5 shows the resulting clustering of one-hour time slots ve typical demandproles are identied which can be associated to working hours (denoted by 0 in thegure) relax hours in the late afternoons and weekends (1) morning commuting hours(2) night hours (3) and late evening hours (4) Very few time-slots are actually producedthis way allowing CPLEX to optimize the corresponding instances Consecutive time-slots

20

InstWeek

train 1 2 3 4 5 6 7

Bench-CPLEX 959 703 571 425 257 388 1468 951Bench-CG 959 676 548 408 245 410 1434 927

4h 209 154 172 066 000 254 1163 2923h 194 142 148 110 125 158 1107 2982h 220 258 199 119 226 282 1122 4151h 284 238 417 114 192 404 1065 547

Table 3 Time-Slot Peak Exceeded Capacity Over Available Capacity

belonging to the same cluster are then aggregated The aggregated instance is optimizedand the solution obtained in this way is then disaggregated in fteen-minute time-slotsplans as in the previous case during post-processing before being compared on test data

62 Experimental evaluation

Following the computational results of Section 5 our core optimization module alwaysemploys our Branch-and-Price as a heuristic (HBP) stopping its computation at the rootnode except for the aggregated instances produced by time-clustering Having |T | = 38these are manageable eciently even by general purpose solvers CPLEX 1263 ILP solverwas then used to solve them to proven optimality The scatter plot in Figure 6 summarizesour results Each point represents the outcome on a single week of test data Dierentshapes refer to dierent demand prole aggregation methods obtained by merging 1 2 3 or4 consecutive one-hour time slots as well as using the Advanced Clustering and CPLEX(Bench-CPLEX) The y axis coordinate of each point represents the capacity violationmeasure as introduced above the x axis coordinate of each point represents the solutioncost measure expressed as percentage value of that of the optimal solution employing theAdvanced Clustering Benchmark method Therefore negative (resp positive) percentagesmap to a performance improvement (resp reduction) with respect to the benchmarkAs a reference we report also the results obtained by using HBP instead of CPLEX foroptimizing the Advanced Clustering Benchmark instances (Bench-CG) The details aboutcapacity violation measures are reported also in Table 3 for each week in the training set(columns) and for each demand prole aggregation method (rows)

A rst remarkable result is that in all cases our HBP with sequential clustering allows forsolutions with less capacity violations In particular HBP with either four-hours or three-hours aggregation oer almost no capacity violations coming at the price of three to vepercent increase in solutions cost HBP with two-hours aggregation always outperforms thebenchmark method both in terms of exceeded capacity and in terms of solution costs HBPwith one-hour aggregation further decrease costs at the price of slightly higher capacityviolation

We also experimented on using the full BaP instead of the truncated HBP Our resultsare reported in Figure 7 no signicant change was observed Similarly no signicantchange was observed by using HBP instead of CPLEX on the benchmark clustering

63 Eect of periodic planning

Finally we measure the impact in solution switching costs yielded by choosing a periodmodel instead of a non-periodic one In Table 4 we report for each aggregation listedin the previous subsection the change in switching costs between inner time-slots of theweek (intra-week) between border time-slots of dierent weeks (inter-week) as well as thetotal switching cost the total assignment cost and the overall cost of the solution Using a

21

Figure 6 1-Week Plan - Time Aggreg Comparison

(a) Total Costs (b) Exceeded Capacity

Figure 7 Mean Costs And Exceeded Capacity - CG Root vs BaP

22

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 17: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

(a) BaP vs CPLEX (b) BaP Detail

Figure 4 Primal Bound

We report no computing time because surprisingly neither BaP nor CPX could bringthe duality gap below 01 within the time limit except for instance 4 with |T | = 12 ofDataset A 5 with |T | = 12 of Dataset B and clust of Dataset C that CPX is able toclose (but still using more than 90 of the available CPU time)

In terms of nal dual bounds the results of both methods are very similar Our expla-nation for this phenomenon is the following the root dual bound is already very close tothe integer optimum value and therefore the real challenge is to nd an optimal primalsolution At the same time the high number of time-slots yields values of primal solutionson the order of magnitude of 108 as soon as the duality gap becomes small numericalapproximation issues prevent to coherently explore the remaining search tree

In terms of searching for good primal solutions in the inner nodes of the branching treeinstead BaP and CPX are not equivalent in Figure 4a we plot the typical primal boundvalue (y axis) improvements as the computation (x axis) proceeds (instance 1 |T | = 24dataset B) for the sake of comparison the x axis report relative values with respect tothe overall number of branch-and-bound nodes for CPX and the overall number of columngeneration iterations for BaP Eventually CPX is more numerically stable oering aftertwo hours of computation primal solutions values a few tenths of percentage points better(up to 05 of improvement) In turn BaP allows to nd near-optimal integer solutionsmuch more quickly that is in fact already at the root node The behaviour of BaP in theearly steps of computation is further detailed in Figure 4b the quality of the primal boundsteeply increase during the column generation iterations at the root node

As a synthetic nal assessment of our computational evaluation we can report thatwhen the number of time-slots is small and the planner has no particular need for quickoptimization algorithms both BaP and CPLEX might be viable alternatives to optimizethe DASP

BaP is faster especially when used heuristically stopping the computation either atthe root node or after exploring a few nodes of the branch-and-bound tree This makes itwell suited also when quick optimization is needed like in what-if-analyses

When the number of time-slots increases however using CPLEX is not an optionanymore

We repeated all the experiments with a periodic-plan model without nding substantialchanges in the computational behaviour of the methods Indeed the periodic-plan modelhas main impact only in the structure of the pricing problem of BaP but pricing involvesonly a small amount of the overall computational eort

17

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0 1208 17661 0411 1197 2032 0 1951 17038 0777 1949 3713 0198 1347 18572 0 1345 4524 0370 0997 19198 0 0993 5485 0020 1626 18013 0 1626 699

24

1 0 1473 8576 0249 1471 142 0 1535 8657 0855 1533 243 0 2018 9349 267368 2015 464 0 1863 9353 123542 1860 385 0 1763 10204 267486 1761 40

48

1 0 1818 2123 246767 1816 02 0 2468 2724 270039 2465 03 0 2335 2558 269274 2332 04 0 2036 3133 282422 2033 05 0 2514 2528 258676 2510 0

96

1 0 2274 113 259445 - TL2 0 2633 217 - - TL3 0 2779 168 - - TL4 0 2528 135 - - TL5 0 2568 207 272834 - TL

(a) Synthetic Dataset A

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0160 0105 35112 0 0103 23982 0235 0111 30708 0 0109 25793 0320 0124 26374 0 0122 18184 0406 0102 26490 0 0100 19325 0267 0100 24714 0 0098 1844

24

1 0133 0424 17961 0 0423 1442 0274 0279 18354 0 0278 1093 0 0576 20016 0717 0574 2254 0353 0183 17481 0 0182 2325 0284 0220 20446 0 0220 522

48

1 0312 0263 10738 0 0262 202 0249 0343 10465 0 0343 183 0113 0363 10482 0 0360 174 0227 0313 10321 0 0311 165 0226 0295 10818 0 0295 21

96

1 0 0932 3133 - - TL2 0 0765 3193 - - TL3 0 0852 3398 - - TL4 0 0691 3099 - - TL5 0 0726 3299 - - TL

(b) Realistic Dataset B

B-amp-P CPLEX

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

clust 0376 0091 13849 0 0091 8124h 0442 0272 8985 0 0270 303h 0403 0471 5086 0 0470 332h 0 0724 2864 - - TL1h 0 0905 370 - - TL

(c) Raw Real Demand Dataset C

Table 2 Computational Results - BaP vs CPLEX

18

6 Practical case study

Our nal aim is to assess the eectiveness of our optimization core in the context of thedata-driven MEC management optimization framework To this end we rely on the com-plete real-world dataset in [24] and run actual analytics on it so as to generate the demandproles We then feed our optimization models with such proles which ultimately letsus measure the quality of the assignment plans it returns in a practical case

61 Experimental setup

The real-world mobile trac data covers a planning period of eight weeks split in a set Tof fteen-minute snapshots The rst approach we take in order to infer demand prolesexploits a well-known property of mobile trac ie its weekly periodicity [26] Namely asingle week is taken as training data and the mobile trac recorded in each fteen-minutetime-slot is considered as a prole The tasks performed by the data mining and validationmodules are kept as simple as possible in order to highlight the eect of the optimizationcore

Training Conceptually the resulting 4 times 24 times 7 = 672 training proles are then usedas input for our optimization algorithms By optimizing over the training data we obtaina planning solution which becomes our assignment plan we apply such a plan to theremaining seven weeks of test data As an example optimizing over training data yields asolution including a specic assignment of APs to MEC facilities on Monday between 700am and 715 am we then blindly apply the same assignments on the 700-715 am timeslots of each Monday in the test data presuming that the demand conguration is similaron all Mondays at the same time In a sense this is a worst-case situation in which thedecision maker simply observes the system for one week before deciding on the planningfor the remaining weeks

Practically we do not directly use the 672 fteen-minutes time-slots for training Weassume instead that the preprocessing and data-mining module produces suitable ag-gregations We experimented therefore with simple aggregation of the proles mergingtime-slots sequentially over 1 2 3 or 4 hours Each aggregation step was performed byconsidering in each AP and in each aggregated time-slot the maximum demand value ofthat AP over the corresponding base time-slots The optimized solution was then dis-aggregated in post-processing simply replicating the same plan over the fteen-minutestime-slots composing each aggregated time-slot By choosing the maximum demand valuesduring aggregation we ensure that our optimized solutions remain feasible after disaggre-gation

It is apparent that less aggregated proles entail a higher potential for optimizationin the baseline scenario the assignment of APs to MEC facilities can be changed every15 minutes possibly assigning to the same MEC facility APs that experience very highpeaks of demand in subsequent time slots They are however more prone to overttingas peaks in particular hours of the training week do not necessarily correspond to peaksin the corresponding hour of testing weeks In addition they are more clearly expensivefrom a computational standpoint

More aggregated instances instead are more conservative two APs with very highdemand peaks in the same four-hours time slot cannot be assigned to the same MECfacility thus possibly preventing capacity violations in the test weeks if those peaks slightlymove in time They are also less demanding in terms of computational costs Howeveraggregation forces the a same conguration for longer timeframes making the optimizationpossibly oblivious of fast dynamics in the demand

19

Figure 5 Time-Clustering resulting from [21]

In order to further balance the aggressive optimization process during the trainingphase of low aggregation instances we found empirically useful to set the Ck capacityvalues to

(maxtisinT

sumiisinA d

ti|K|

)middot 105 in each test That is one-hour time-slot instances

are optimized with lower capacity values

Test To ensure fairness in the comparison during the test phase only disaggregatedsolutions are considered That is independently on the aggregation used for training onlysolutions dened over the original fteen-minutes time-slots are compared Similarly thereference MEC capacity value was xed to

(maxtisinT

sumiisinA d

ti|K|

)middot110 in any comparison

Clearly neither the cost nor the capacity usage are guaranteed to remain the samewhen the planning obtained with training data is applied to test data as uctuations inthe demand may occur across weeks The quality of our solutions is therefore evaluatedaccording to two measures (i) the assignment and switching cost of the planning and (ii)

the amount of violations in capacity constraints both measured on test data The latteris computed as follows

maxtisinT

sumkisinK

maxsum

iisinA dtix

tik minus Ck 0

Ck

that is the overall amount of violation in capacity constraints as a relative value respectto the available capacity in the worst time-slot

These measures are computed for each plan by the validation module through simplesimulation on the seven weeks of test data

Advanced Clustering Benchmark An alternative to employing our ad-hoc techniqueon the optimization module would be to perform a more aggressive aggregation over timeproducing instances that are small enough to be optimized by CPLEX We experimentedon such an option adapting the temporal clustering solution presented in [21] to our needsSpecically we take the following steps (i) we generate a median week of mobile tracdemand by computing the median load recorded at each AP during every hour of the weekusing it as training data (ii) we perform two separate hierarchical clusterings respectivelyusing the total volume and normalized distance metrics introduced in [21] (iii) we ndthe intersection of the two cluster sets obtained at the previous point

Figure 5 shows the resulting clustering of one-hour time slots ve typical demandproles are identied which can be associated to working hours (denoted by 0 in thegure) relax hours in the late afternoons and weekends (1) morning commuting hours(2) night hours (3) and late evening hours (4) Very few time-slots are actually producedthis way allowing CPLEX to optimize the corresponding instances Consecutive time-slots

20

InstWeek

train 1 2 3 4 5 6 7

Bench-CPLEX 959 703 571 425 257 388 1468 951Bench-CG 959 676 548 408 245 410 1434 927

4h 209 154 172 066 000 254 1163 2923h 194 142 148 110 125 158 1107 2982h 220 258 199 119 226 282 1122 4151h 284 238 417 114 192 404 1065 547

Table 3 Time-Slot Peak Exceeded Capacity Over Available Capacity

belonging to the same cluster are then aggregated The aggregated instance is optimizedand the solution obtained in this way is then disaggregated in fteen-minute time-slotsplans as in the previous case during post-processing before being compared on test data

62 Experimental evaluation

Following the computational results of Section 5 our core optimization module alwaysemploys our Branch-and-Price as a heuristic (HBP) stopping its computation at the rootnode except for the aggregated instances produced by time-clustering Having |T | = 38these are manageable eciently even by general purpose solvers CPLEX 1263 ILP solverwas then used to solve them to proven optimality The scatter plot in Figure 6 summarizesour results Each point represents the outcome on a single week of test data Dierentshapes refer to dierent demand prole aggregation methods obtained by merging 1 2 3 or4 consecutive one-hour time slots as well as using the Advanced Clustering and CPLEX(Bench-CPLEX) The y axis coordinate of each point represents the capacity violationmeasure as introduced above the x axis coordinate of each point represents the solutioncost measure expressed as percentage value of that of the optimal solution employing theAdvanced Clustering Benchmark method Therefore negative (resp positive) percentagesmap to a performance improvement (resp reduction) with respect to the benchmarkAs a reference we report also the results obtained by using HBP instead of CPLEX foroptimizing the Advanced Clustering Benchmark instances (Bench-CG) The details aboutcapacity violation measures are reported also in Table 3 for each week in the training set(columns) and for each demand prole aggregation method (rows)

A rst remarkable result is that in all cases our HBP with sequential clustering allows forsolutions with less capacity violations In particular HBP with either four-hours or three-hours aggregation oer almost no capacity violations coming at the price of three to vepercent increase in solutions cost HBP with two-hours aggregation always outperforms thebenchmark method both in terms of exceeded capacity and in terms of solution costs HBPwith one-hour aggregation further decrease costs at the price of slightly higher capacityviolation

We also experimented on using the full BaP instead of the truncated HBP Our resultsare reported in Figure 7 no signicant change was observed Similarly no signicantchange was observed by using HBP instead of CPLEX on the benchmark clustering

63 Eect of periodic planning

Finally we measure the impact in solution switching costs yielded by choosing a periodmodel instead of a non-periodic one In Table 4 we report for each aggregation listedin the previous subsection the change in switching costs between inner time-slots of theweek (intra-week) between border time-slots of dierent weeks (inter-week) as well as thetotal switching cost the total assignment cost and the overall cost of the solution Using a

21

Figure 6 1-Week Plan - Time Aggreg Comparison

(a) Total Costs (b) Exceeded Capacity

Figure 7 Mean Costs And Exceeded Capacity - CG Root vs BaP

22

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 18: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0 1208 17661 0411 1197 2032 0 1951 17038 0777 1949 3713 0198 1347 18572 0 1345 4524 0370 0997 19198 0 0993 5485 0020 1626 18013 0 1626 699

24

1 0 1473 8576 0249 1471 142 0 1535 8657 0855 1533 243 0 2018 9349 267368 2015 464 0 1863 9353 123542 1860 385 0 1763 10204 267486 1761 40

48

1 0 1818 2123 246767 1816 02 0 2468 2724 270039 2465 03 0 2335 2558 269274 2332 04 0 2036 3133 282422 2033 05 0 2514 2528 258676 2510 0

96

1 0 2274 113 259445 - TL2 0 2633 217 - - TL3 0 2779 168 - - TL4 0 2528 135 - - TL5 0 2568 207 272834 - TL

(a) Synthetic Dataset A

B-amp-P CPLEX

|T | inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

12

1 0160 0105 35112 0 0103 23982 0235 0111 30708 0 0109 25793 0320 0124 26374 0 0122 18184 0406 0102 26490 0 0100 19325 0267 0100 24714 0 0098 1844

24

1 0133 0424 17961 0 0423 1442 0274 0279 18354 0 0278 1093 0 0576 20016 0717 0574 2254 0353 0183 17481 0 0182 2325 0284 0220 20446 0 0220 522

48

1 0312 0263 10738 0 0262 202 0249 0343 10465 0 0343 183 0113 0363 10482 0 0360 174 0227 0313 10321 0 0311 165 0226 0295 10818 0 0295 21

96

1 0 0932 3133 - - TL2 0 0765 3193 - - TL3 0 0852 3398 - - TL4 0 0691 3099 - - TL5 0 0726 3299 - - TL

(b) Realistic Dataset B

B-amp-P CPLEX

inst PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes PBminuszlowast

zlowast|DBminuszlowast|

zlowast nodes

clust 0376 0091 13849 0 0091 8124h 0442 0272 8985 0 0270 303h 0403 0471 5086 0 0470 332h 0 0724 2864 - - TL1h 0 0905 370 - - TL

(c) Raw Real Demand Dataset C

Table 2 Computational Results - BaP vs CPLEX

18

6 Practical case study

Our nal aim is to assess the eectiveness of our optimization core in the context of thedata-driven MEC management optimization framework To this end we rely on the com-plete real-world dataset in [24] and run actual analytics on it so as to generate the demandproles We then feed our optimization models with such proles which ultimately letsus measure the quality of the assignment plans it returns in a practical case

61 Experimental setup

The real-world mobile trac data covers a planning period of eight weeks split in a set Tof fteen-minute snapshots The rst approach we take in order to infer demand prolesexploits a well-known property of mobile trac ie its weekly periodicity [26] Namely asingle week is taken as training data and the mobile trac recorded in each fteen-minutetime-slot is considered as a prole The tasks performed by the data mining and validationmodules are kept as simple as possible in order to highlight the eect of the optimizationcore

Training Conceptually the resulting 4 times 24 times 7 = 672 training proles are then usedas input for our optimization algorithms By optimizing over the training data we obtaina planning solution which becomes our assignment plan we apply such a plan to theremaining seven weeks of test data As an example optimizing over training data yields asolution including a specic assignment of APs to MEC facilities on Monday between 700am and 715 am we then blindly apply the same assignments on the 700-715 am timeslots of each Monday in the test data presuming that the demand conguration is similaron all Mondays at the same time In a sense this is a worst-case situation in which thedecision maker simply observes the system for one week before deciding on the planningfor the remaining weeks

Practically we do not directly use the 672 fteen-minutes time-slots for training Weassume instead that the preprocessing and data-mining module produces suitable ag-gregations We experimented therefore with simple aggregation of the proles mergingtime-slots sequentially over 1 2 3 or 4 hours Each aggregation step was performed byconsidering in each AP and in each aggregated time-slot the maximum demand value ofthat AP over the corresponding base time-slots The optimized solution was then dis-aggregated in post-processing simply replicating the same plan over the fteen-minutestime-slots composing each aggregated time-slot By choosing the maximum demand valuesduring aggregation we ensure that our optimized solutions remain feasible after disaggre-gation

It is apparent that less aggregated proles entail a higher potential for optimizationin the baseline scenario the assignment of APs to MEC facilities can be changed every15 minutes possibly assigning to the same MEC facility APs that experience very highpeaks of demand in subsequent time slots They are however more prone to overttingas peaks in particular hours of the training week do not necessarily correspond to peaksin the corresponding hour of testing weeks In addition they are more clearly expensivefrom a computational standpoint

More aggregated instances instead are more conservative two APs with very highdemand peaks in the same four-hours time slot cannot be assigned to the same MECfacility thus possibly preventing capacity violations in the test weeks if those peaks slightlymove in time They are also less demanding in terms of computational costs Howeveraggregation forces the a same conguration for longer timeframes making the optimizationpossibly oblivious of fast dynamics in the demand

19

Figure 5 Time-Clustering resulting from [21]

In order to further balance the aggressive optimization process during the trainingphase of low aggregation instances we found empirically useful to set the Ck capacityvalues to

(maxtisinT

sumiisinA d

ti|K|

)middot 105 in each test That is one-hour time-slot instances

are optimized with lower capacity values

Test To ensure fairness in the comparison during the test phase only disaggregatedsolutions are considered That is independently on the aggregation used for training onlysolutions dened over the original fteen-minutes time-slots are compared Similarly thereference MEC capacity value was xed to

(maxtisinT

sumiisinA d

ti|K|

)middot110 in any comparison

Clearly neither the cost nor the capacity usage are guaranteed to remain the samewhen the planning obtained with training data is applied to test data as uctuations inthe demand may occur across weeks The quality of our solutions is therefore evaluatedaccording to two measures (i) the assignment and switching cost of the planning and (ii)

the amount of violations in capacity constraints both measured on test data The latteris computed as follows

maxtisinT

sumkisinK

maxsum

iisinA dtix

tik minus Ck 0

Ck

that is the overall amount of violation in capacity constraints as a relative value respectto the available capacity in the worst time-slot

These measures are computed for each plan by the validation module through simplesimulation on the seven weeks of test data

Advanced Clustering Benchmark An alternative to employing our ad-hoc techniqueon the optimization module would be to perform a more aggressive aggregation over timeproducing instances that are small enough to be optimized by CPLEX We experimentedon such an option adapting the temporal clustering solution presented in [21] to our needsSpecically we take the following steps (i) we generate a median week of mobile tracdemand by computing the median load recorded at each AP during every hour of the weekusing it as training data (ii) we perform two separate hierarchical clusterings respectivelyusing the total volume and normalized distance metrics introduced in [21] (iii) we ndthe intersection of the two cluster sets obtained at the previous point

Figure 5 shows the resulting clustering of one-hour time slots ve typical demandproles are identied which can be associated to working hours (denoted by 0 in thegure) relax hours in the late afternoons and weekends (1) morning commuting hours(2) night hours (3) and late evening hours (4) Very few time-slots are actually producedthis way allowing CPLEX to optimize the corresponding instances Consecutive time-slots

20

InstWeek

train 1 2 3 4 5 6 7

Bench-CPLEX 959 703 571 425 257 388 1468 951Bench-CG 959 676 548 408 245 410 1434 927

4h 209 154 172 066 000 254 1163 2923h 194 142 148 110 125 158 1107 2982h 220 258 199 119 226 282 1122 4151h 284 238 417 114 192 404 1065 547

Table 3 Time-Slot Peak Exceeded Capacity Over Available Capacity

belonging to the same cluster are then aggregated The aggregated instance is optimizedand the solution obtained in this way is then disaggregated in fteen-minute time-slotsplans as in the previous case during post-processing before being compared on test data

62 Experimental evaluation

Following the computational results of Section 5 our core optimization module alwaysemploys our Branch-and-Price as a heuristic (HBP) stopping its computation at the rootnode except for the aggregated instances produced by time-clustering Having |T | = 38these are manageable eciently even by general purpose solvers CPLEX 1263 ILP solverwas then used to solve them to proven optimality The scatter plot in Figure 6 summarizesour results Each point represents the outcome on a single week of test data Dierentshapes refer to dierent demand prole aggregation methods obtained by merging 1 2 3 or4 consecutive one-hour time slots as well as using the Advanced Clustering and CPLEX(Bench-CPLEX) The y axis coordinate of each point represents the capacity violationmeasure as introduced above the x axis coordinate of each point represents the solutioncost measure expressed as percentage value of that of the optimal solution employing theAdvanced Clustering Benchmark method Therefore negative (resp positive) percentagesmap to a performance improvement (resp reduction) with respect to the benchmarkAs a reference we report also the results obtained by using HBP instead of CPLEX foroptimizing the Advanced Clustering Benchmark instances (Bench-CG) The details aboutcapacity violation measures are reported also in Table 3 for each week in the training set(columns) and for each demand prole aggregation method (rows)

A rst remarkable result is that in all cases our HBP with sequential clustering allows forsolutions with less capacity violations In particular HBP with either four-hours or three-hours aggregation oer almost no capacity violations coming at the price of three to vepercent increase in solutions cost HBP with two-hours aggregation always outperforms thebenchmark method both in terms of exceeded capacity and in terms of solution costs HBPwith one-hour aggregation further decrease costs at the price of slightly higher capacityviolation

We also experimented on using the full BaP instead of the truncated HBP Our resultsare reported in Figure 7 no signicant change was observed Similarly no signicantchange was observed by using HBP instead of CPLEX on the benchmark clustering

63 Eect of periodic planning

Finally we measure the impact in solution switching costs yielded by choosing a periodmodel instead of a non-periodic one In Table 4 we report for each aggregation listedin the previous subsection the change in switching costs between inner time-slots of theweek (intra-week) between border time-slots of dierent weeks (inter-week) as well as thetotal switching cost the total assignment cost and the overall cost of the solution Using a

21

Figure 6 1-Week Plan - Time Aggreg Comparison

(a) Total Costs (b) Exceeded Capacity

Figure 7 Mean Costs And Exceeded Capacity - CG Root vs BaP

22

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 19: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

6 Practical case study

Our nal aim is to assess the eectiveness of our optimization core in the context of thedata-driven MEC management optimization framework To this end we rely on the com-plete real-world dataset in [24] and run actual analytics on it so as to generate the demandproles We then feed our optimization models with such proles which ultimately letsus measure the quality of the assignment plans it returns in a practical case

61 Experimental setup

The real-world mobile trac data covers a planning period of eight weeks split in a set Tof fteen-minute snapshots The rst approach we take in order to infer demand prolesexploits a well-known property of mobile trac ie its weekly periodicity [26] Namely asingle week is taken as training data and the mobile trac recorded in each fteen-minutetime-slot is considered as a prole The tasks performed by the data mining and validationmodules are kept as simple as possible in order to highlight the eect of the optimizationcore

Training Conceptually the resulting 4 times 24 times 7 = 672 training proles are then usedas input for our optimization algorithms By optimizing over the training data we obtaina planning solution which becomes our assignment plan we apply such a plan to theremaining seven weeks of test data As an example optimizing over training data yields asolution including a specic assignment of APs to MEC facilities on Monday between 700am and 715 am we then blindly apply the same assignments on the 700-715 am timeslots of each Monday in the test data presuming that the demand conguration is similaron all Mondays at the same time In a sense this is a worst-case situation in which thedecision maker simply observes the system for one week before deciding on the planningfor the remaining weeks

Practically we do not directly use the 672 fteen-minutes time-slots for training Weassume instead that the preprocessing and data-mining module produces suitable ag-gregations We experimented therefore with simple aggregation of the proles mergingtime-slots sequentially over 1 2 3 or 4 hours Each aggregation step was performed byconsidering in each AP and in each aggregated time-slot the maximum demand value ofthat AP over the corresponding base time-slots The optimized solution was then dis-aggregated in post-processing simply replicating the same plan over the fteen-minutestime-slots composing each aggregated time-slot By choosing the maximum demand valuesduring aggregation we ensure that our optimized solutions remain feasible after disaggre-gation

It is apparent that less aggregated proles entail a higher potential for optimizationin the baseline scenario the assignment of APs to MEC facilities can be changed every15 minutes possibly assigning to the same MEC facility APs that experience very highpeaks of demand in subsequent time slots They are however more prone to overttingas peaks in particular hours of the training week do not necessarily correspond to peaksin the corresponding hour of testing weeks In addition they are more clearly expensivefrom a computational standpoint

More aggregated instances instead are more conservative two APs with very highdemand peaks in the same four-hours time slot cannot be assigned to the same MECfacility thus possibly preventing capacity violations in the test weeks if those peaks slightlymove in time They are also less demanding in terms of computational costs Howeveraggregation forces the a same conguration for longer timeframes making the optimizationpossibly oblivious of fast dynamics in the demand

19

Figure 5 Time-Clustering resulting from [21]

In order to further balance the aggressive optimization process during the trainingphase of low aggregation instances we found empirically useful to set the Ck capacityvalues to

(maxtisinT

sumiisinA d

ti|K|

)middot 105 in each test That is one-hour time-slot instances

are optimized with lower capacity values

Test To ensure fairness in the comparison during the test phase only disaggregatedsolutions are considered That is independently on the aggregation used for training onlysolutions dened over the original fteen-minutes time-slots are compared Similarly thereference MEC capacity value was xed to

(maxtisinT

sumiisinA d

ti|K|

)middot110 in any comparison

Clearly neither the cost nor the capacity usage are guaranteed to remain the samewhen the planning obtained with training data is applied to test data as uctuations inthe demand may occur across weeks The quality of our solutions is therefore evaluatedaccording to two measures (i) the assignment and switching cost of the planning and (ii)

the amount of violations in capacity constraints both measured on test data The latteris computed as follows

maxtisinT

sumkisinK

maxsum

iisinA dtix

tik minus Ck 0

Ck

that is the overall amount of violation in capacity constraints as a relative value respectto the available capacity in the worst time-slot

These measures are computed for each plan by the validation module through simplesimulation on the seven weeks of test data

Advanced Clustering Benchmark An alternative to employing our ad-hoc techniqueon the optimization module would be to perform a more aggressive aggregation over timeproducing instances that are small enough to be optimized by CPLEX We experimentedon such an option adapting the temporal clustering solution presented in [21] to our needsSpecically we take the following steps (i) we generate a median week of mobile tracdemand by computing the median load recorded at each AP during every hour of the weekusing it as training data (ii) we perform two separate hierarchical clusterings respectivelyusing the total volume and normalized distance metrics introduced in [21] (iii) we ndthe intersection of the two cluster sets obtained at the previous point

Figure 5 shows the resulting clustering of one-hour time slots ve typical demandproles are identied which can be associated to working hours (denoted by 0 in thegure) relax hours in the late afternoons and weekends (1) morning commuting hours(2) night hours (3) and late evening hours (4) Very few time-slots are actually producedthis way allowing CPLEX to optimize the corresponding instances Consecutive time-slots

20

InstWeek

train 1 2 3 4 5 6 7

Bench-CPLEX 959 703 571 425 257 388 1468 951Bench-CG 959 676 548 408 245 410 1434 927

4h 209 154 172 066 000 254 1163 2923h 194 142 148 110 125 158 1107 2982h 220 258 199 119 226 282 1122 4151h 284 238 417 114 192 404 1065 547

Table 3 Time-Slot Peak Exceeded Capacity Over Available Capacity

belonging to the same cluster are then aggregated The aggregated instance is optimizedand the solution obtained in this way is then disaggregated in fteen-minute time-slotsplans as in the previous case during post-processing before being compared on test data

62 Experimental evaluation

Following the computational results of Section 5 our core optimization module alwaysemploys our Branch-and-Price as a heuristic (HBP) stopping its computation at the rootnode except for the aggregated instances produced by time-clustering Having |T | = 38these are manageable eciently even by general purpose solvers CPLEX 1263 ILP solverwas then used to solve them to proven optimality The scatter plot in Figure 6 summarizesour results Each point represents the outcome on a single week of test data Dierentshapes refer to dierent demand prole aggregation methods obtained by merging 1 2 3 or4 consecutive one-hour time slots as well as using the Advanced Clustering and CPLEX(Bench-CPLEX) The y axis coordinate of each point represents the capacity violationmeasure as introduced above the x axis coordinate of each point represents the solutioncost measure expressed as percentage value of that of the optimal solution employing theAdvanced Clustering Benchmark method Therefore negative (resp positive) percentagesmap to a performance improvement (resp reduction) with respect to the benchmarkAs a reference we report also the results obtained by using HBP instead of CPLEX foroptimizing the Advanced Clustering Benchmark instances (Bench-CG) The details aboutcapacity violation measures are reported also in Table 3 for each week in the training set(columns) and for each demand prole aggregation method (rows)

A rst remarkable result is that in all cases our HBP with sequential clustering allows forsolutions with less capacity violations In particular HBP with either four-hours or three-hours aggregation oer almost no capacity violations coming at the price of three to vepercent increase in solutions cost HBP with two-hours aggregation always outperforms thebenchmark method both in terms of exceeded capacity and in terms of solution costs HBPwith one-hour aggregation further decrease costs at the price of slightly higher capacityviolation

We also experimented on using the full BaP instead of the truncated HBP Our resultsare reported in Figure 7 no signicant change was observed Similarly no signicantchange was observed by using HBP instead of CPLEX on the benchmark clustering

63 Eect of periodic planning

Finally we measure the impact in solution switching costs yielded by choosing a periodmodel instead of a non-periodic one In Table 4 we report for each aggregation listedin the previous subsection the change in switching costs between inner time-slots of theweek (intra-week) between border time-slots of dierent weeks (inter-week) as well as thetotal switching cost the total assignment cost and the overall cost of the solution Using a

21

Figure 6 1-Week Plan - Time Aggreg Comparison

(a) Total Costs (b) Exceeded Capacity

Figure 7 Mean Costs And Exceeded Capacity - CG Root vs BaP

22

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 20: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

Figure 5 Time-Clustering resulting from [21]

In order to further balance the aggressive optimization process during the trainingphase of low aggregation instances we found empirically useful to set the Ck capacityvalues to

(maxtisinT

sumiisinA d

ti|K|

)middot 105 in each test That is one-hour time-slot instances

are optimized with lower capacity values

Test To ensure fairness in the comparison during the test phase only disaggregatedsolutions are considered That is independently on the aggregation used for training onlysolutions dened over the original fteen-minutes time-slots are compared Similarly thereference MEC capacity value was xed to

(maxtisinT

sumiisinA d

ti|K|

)middot110 in any comparison

Clearly neither the cost nor the capacity usage are guaranteed to remain the samewhen the planning obtained with training data is applied to test data as uctuations inthe demand may occur across weeks The quality of our solutions is therefore evaluatedaccording to two measures (i) the assignment and switching cost of the planning and (ii)

the amount of violations in capacity constraints both measured on test data The latteris computed as follows

maxtisinT

sumkisinK

maxsum

iisinA dtix

tik minus Ck 0

Ck

that is the overall amount of violation in capacity constraints as a relative value respectto the available capacity in the worst time-slot

These measures are computed for each plan by the validation module through simplesimulation on the seven weeks of test data

Advanced Clustering Benchmark An alternative to employing our ad-hoc techniqueon the optimization module would be to perform a more aggressive aggregation over timeproducing instances that are small enough to be optimized by CPLEX We experimentedon such an option adapting the temporal clustering solution presented in [21] to our needsSpecically we take the following steps (i) we generate a median week of mobile tracdemand by computing the median load recorded at each AP during every hour of the weekusing it as training data (ii) we perform two separate hierarchical clusterings respectivelyusing the total volume and normalized distance metrics introduced in [21] (iii) we ndthe intersection of the two cluster sets obtained at the previous point

Figure 5 shows the resulting clustering of one-hour time slots ve typical demandproles are identied which can be associated to working hours (denoted by 0 in thegure) relax hours in the late afternoons and weekends (1) morning commuting hours(2) night hours (3) and late evening hours (4) Very few time-slots are actually producedthis way allowing CPLEX to optimize the corresponding instances Consecutive time-slots

20

InstWeek

train 1 2 3 4 5 6 7

Bench-CPLEX 959 703 571 425 257 388 1468 951Bench-CG 959 676 548 408 245 410 1434 927

4h 209 154 172 066 000 254 1163 2923h 194 142 148 110 125 158 1107 2982h 220 258 199 119 226 282 1122 4151h 284 238 417 114 192 404 1065 547

Table 3 Time-Slot Peak Exceeded Capacity Over Available Capacity

belonging to the same cluster are then aggregated The aggregated instance is optimizedand the solution obtained in this way is then disaggregated in fteen-minute time-slotsplans as in the previous case during post-processing before being compared on test data

62 Experimental evaluation

Following the computational results of Section 5 our core optimization module alwaysemploys our Branch-and-Price as a heuristic (HBP) stopping its computation at the rootnode except for the aggregated instances produced by time-clustering Having |T | = 38these are manageable eciently even by general purpose solvers CPLEX 1263 ILP solverwas then used to solve them to proven optimality The scatter plot in Figure 6 summarizesour results Each point represents the outcome on a single week of test data Dierentshapes refer to dierent demand prole aggregation methods obtained by merging 1 2 3 or4 consecutive one-hour time slots as well as using the Advanced Clustering and CPLEX(Bench-CPLEX) The y axis coordinate of each point represents the capacity violationmeasure as introduced above the x axis coordinate of each point represents the solutioncost measure expressed as percentage value of that of the optimal solution employing theAdvanced Clustering Benchmark method Therefore negative (resp positive) percentagesmap to a performance improvement (resp reduction) with respect to the benchmarkAs a reference we report also the results obtained by using HBP instead of CPLEX foroptimizing the Advanced Clustering Benchmark instances (Bench-CG) The details aboutcapacity violation measures are reported also in Table 3 for each week in the training set(columns) and for each demand prole aggregation method (rows)

A rst remarkable result is that in all cases our HBP with sequential clustering allows forsolutions with less capacity violations In particular HBP with either four-hours or three-hours aggregation oer almost no capacity violations coming at the price of three to vepercent increase in solutions cost HBP with two-hours aggregation always outperforms thebenchmark method both in terms of exceeded capacity and in terms of solution costs HBPwith one-hour aggregation further decrease costs at the price of slightly higher capacityviolation

We also experimented on using the full BaP instead of the truncated HBP Our resultsare reported in Figure 7 no signicant change was observed Similarly no signicantchange was observed by using HBP instead of CPLEX on the benchmark clustering

63 Eect of periodic planning

Finally we measure the impact in solution switching costs yielded by choosing a periodmodel instead of a non-periodic one In Table 4 we report for each aggregation listedin the previous subsection the change in switching costs between inner time-slots of theweek (intra-week) between border time-slots of dierent weeks (inter-week) as well as thetotal switching cost the total assignment cost and the overall cost of the solution Using a

21

Figure 6 1-Week Plan - Time Aggreg Comparison

(a) Total Costs (b) Exceeded Capacity

Figure 7 Mean Costs And Exceeded Capacity - CG Root vs BaP

22

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 21: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

InstWeek

train 1 2 3 4 5 6 7

Bench-CPLEX 959 703 571 425 257 388 1468 951Bench-CG 959 676 548 408 245 410 1434 927

4h 209 154 172 066 000 254 1163 2923h 194 142 148 110 125 158 1107 2982h 220 258 199 119 226 282 1122 4151h 284 238 417 114 192 404 1065 547

Table 3 Time-Slot Peak Exceeded Capacity Over Available Capacity

belonging to the same cluster are then aggregated The aggregated instance is optimizedand the solution obtained in this way is then disaggregated in fteen-minute time-slotsplans as in the previous case during post-processing before being compared on test data

62 Experimental evaluation

Following the computational results of Section 5 our core optimization module alwaysemploys our Branch-and-Price as a heuristic (HBP) stopping its computation at the rootnode except for the aggregated instances produced by time-clustering Having |T | = 38these are manageable eciently even by general purpose solvers CPLEX 1263 ILP solverwas then used to solve them to proven optimality The scatter plot in Figure 6 summarizesour results Each point represents the outcome on a single week of test data Dierentshapes refer to dierent demand prole aggregation methods obtained by merging 1 2 3 or4 consecutive one-hour time slots as well as using the Advanced Clustering and CPLEX(Bench-CPLEX) The y axis coordinate of each point represents the capacity violationmeasure as introduced above the x axis coordinate of each point represents the solutioncost measure expressed as percentage value of that of the optimal solution employing theAdvanced Clustering Benchmark method Therefore negative (resp positive) percentagesmap to a performance improvement (resp reduction) with respect to the benchmarkAs a reference we report also the results obtained by using HBP instead of CPLEX foroptimizing the Advanced Clustering Benchmark instances (Bench-CG) The details aboutcapacity violation measures are reported also in Table 3 for each week in the training set(columns) and for each demand prole aggregation method (rows)

A rst remarkable result is that in all cases our HBP with sequential clustering allows forsolutions with less capacity violations In particular HBP with either four-hours or three-hours aggregation oer almost no capacity violations coming at the price of three to vepercent increase in solutions cost HBP with two-hours aggregation always outperforms thebenchmark method both in terms of exceeded capacity and in terms of solution costs HBPwith one-hour aggregation further decrease costs at the price of slightly higher capacityviolation

We also experimented on using the full BaP instead of the truncated HBP Our resultsare reported in Figure 7 no signicant change was observed Similarly no signicantchange was observed by using HBP instead of CPLEX on the benchmark clustering

63 Eect of periodic planning

Finally we measure the impact in solution switching costs yielded by choosing a periodmodel instead of a non-periodic one In Table 4 we report for each aggregation listedin the previous subsection the change in switching costs between inner time-slots of theweek (intra-week) between border time-slots of dierent weeks (inter-week) as well as thetotal switching cost the total assignment cost and the overall cost of the solution Using a

21

Figure 6 1-Week Plan - Time Aggreg Comparison

(a) Total Costs (b) Exceeded Capacity

Figure 7 Mean Costs And Exceeded Capacity - CG Root vs BaP

22

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 22: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

Figure 6 1-Week Plan - Time Aggreg Comparison

(a) Total Costs (b) Exceeded Capacity

Figure 7 Mean Costs And Exceeded Capacity - CG Root vs BaP

22

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 23: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

periodic model allows for huge improvements in inter-week switching costs worsening intra-week and assignment costs only slightly The eect on the overall total costs is howevernegligible thus suggesting a form of asymmetry between assignment and switching costsin the objective function

7 Conclusions

To tackle the complex problem of assigning APs to MEC facilities over time we have pro-posed a data-driven MEC management optimization framework including an optimizationcore component that is combined with preprocessing and data-mining and validation bysimulation modules

As a main result we veried that instances arising in practical analyses strongly benetfrom the explicit use of mathematical programming models in such an optimization coreThe performances of the framework are enhanced even further when our ad-hoc algorithmsare exploited being much more eective than a general purpose solver like CPLEX theyallow to create candidate assignment plans with a ner time discretization this proved tobe benecial in a training-and-test evaluation on real data

From a computational point of view although exact in nature the main appealingfeature of our algorithms is their ability of nding near-optimal integer solutions veryquickly providing at the same time good dual bound guarantees This makes them wellsuited also for what-if analyses

A promising future step is the tighter integration of temporal clustering and ad-hocoptimization algorithms allowing for a higher number of time slots of potentially dierentsize obtained through data mining From an application perspective our good compu-tational results open also the possibility of optimizing simultaneously more than a singleservice

Acknowledgements

The authors wish to thank Angelo Furno and Razvan Stanica for their invaluable help inproducing the time-slot aggregations of the Advanced Clustering Benchmark of Section 6The project has been partially funded by Regione Lombardia - Fondazione Cariplo grantn 2015-0717 project REDNEAT

References

[1] C Chan N Sprecher S Abeta A Neal M Patel B Naughton Mobile-edge computingintroductory technical white paper Technical report Mobile-edge Computing (MEC)industry initiative 2014 URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

inst inter-weeks intra-week tot switch costs assign costs total costs

Bench-CG 80311 -1653 869 002 0104h 9669 420 1097 -019 -0043h 19667 260 1183 -031 -0072h 24925 -480 281 -008 0011h 22590 -261 167 010 018

Table 4 Switching Cost Gap - Acyclic vs Cyclic

23

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 24: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

[2] A Aijaz M Dohler A H Aghvami V Friderikos and M Frodigh Realizing thetactile internet Haptic communications over next generation 5g cellular networksIEEE Wireless Communications 24(2)8289 April 2017 ISSN 1536-1284 doi 101109MWC20161500157RP

[3] T X Tran A Hajisami P Pandey and D Pompili Collaborative mobile edgecomputing in 5g networks New paradigms scenarios and challenges IEEE Commu-

nications Magazine 55(4)5461 April 2017 ISSN 0163-6804 doi 101109MCOM20171600863

[4] Dirk Lindemeier Mec proofs of concept Technical report European Telecommuni-cations Standard Institute URL httpwwwetsiorgtechnologies-clusters

technologiesmulti-access-edge-computingmec-poc

[5] S Secci P Raad and P Gallard Linking virtual machine mobility to user mobilityIEEE Transactions on Network and Service Management 13(4)927940 Dec 2016ISSN 1932-4537 doi 101109TNSM20162592241

[6] Ec h2020 5g infrastructure ppp pre-structuring model version 20 Techni-cal report The 5G Public Private Partnership URL https5g-pppeu

5g-ppp-phase-2-pre-structuring-model

[7] A Furno M Fiore and R Stanica Joint spatial and temporal classication ofmobile trac demands In IEEE INFOCOM 2017 - IEEE Conference on Computer

Communications May 2017

[8] P Rost A Banchs I Berberana M Breitbach M Doll H Droste C MannweilerM A Puente K Samdanis and B Sayadi Mobile network architecture evolutiontoward 5g IEEE Communications Magazine 54(5)8491 May 2016 ISSN 0163-6804doi 101109MCOM20167470940

[9] H Assem T Sandra Buda and L Xu Initial use cases scenarios and requirementsH2020 5G-PPP CogNet Deliverable D21 2015

[10] K Zheng Z Yang K Zhang P Chatzimisios K Yang and W Xiang Big data-driven optimization for mobile networks toward 5g IEEE Network 30(1)4451 Jan-uary 2016 ISSN 0890-8044 doi 101109MNET20167389830

[11] Silvano Martello and Paolo Toth Knapsack Problems Algorithms and Computer

Implementations John Wiley amp Sons Inc New York NY USA 1990 ISBN 0-471-92420-2

[12] Dolores Romero Morales and H Edwin Romeijn The generalized assignment prob-lem and extensions In Ding-Zhu Du and Panos M Pardalos editors Handbook of

Combinatorial Optimization pages 259311 2005

[13] Richard Freling H Edwin Romeijn Dolores Romero Morales and Albert P M Wagel-mans A branch-and-price algorithm for the multiperiod single-sourcing problem Op-erations Research 51(6)922 939 2003

[14] Ishwar Murthy and Phil K Seo A dual-ascent procedure for the le allocation and joinsite selection problem on a telecommunications network Networks 33(2)109 124 31999 ISSN 1097-0037 doi 101002(SICI)1097-0037(199903)332lt109AID-NET3gt30CO2-L URL httphttpsdxdoiorg101002(SICI)1097-0037(199903)

332lt109AID-NET3gt30CO2-L

24

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions
Page 25: Optimized Assignment Patterns in Mobile Edge Cloud Networks ·  · 2017-08-29Optimized Assignment Patterns in Mobile Edge Cloud Networks ... communications made possible by an extremely

[15] Ishwar Murthy Solving the multiperiod assignment problem with start-up costs usingdual ascent Naval Research Logistics 40325344 1993

[16] S Secci A Ceselli M Premoli Mobile edge cloud network design optimization IEEETransactions on Networking 25(3) 2017

[17] Stefan Nickel and Francisco Saldanha da Gama Multi-period facility location InGilbert Laporte Stefan Nickel and Francisco Saldanha da Gama editors LocationScience pages 289310 Springer 2015

[18] Iric Gourdin and Olivier Klopfenstein Multi-period capacitated location with modularequipments Comput Oper Res 35(3)661682 March 2008 ISSN 0305-0548 doi101016jcor200605007 URL httpdxdoiorg101016jcor200605007

[19] Jordi Castro Stefano Nasini and Francisco Saldanha-da Gama A cutting-planeapproach for large-scale capacitated multi-period facility location using a special-ized interior-point method Mathematical Programming 163(1)411444 2017 ISSN1436-4646 doi 101007s10107-016-1067-6 URL httpdxdoiorg101007

s10107-016-1067-6

[20] Russell Halper S Raghavan and Mustafa Sahin Local search heuristics for themobile facility location problem Computers amp Operations Research 62210 2232015 ISSN 0305-0548 doi httpsdoiorg101016jcor201409004 URL http

wwwsciencedirectcomsciencearticlepiiS0305054814002512

[21] Angelo Furno Diala Naboulsi Razvan Stanica and Marco Fiore Mobile demandproling for cellular cognitive networking IEEE Transactions on Mobile Computing16(3) March 2017

[22] L A Wolsey Integer programming Wiley-Interscience New York NY USA 1998

[23] IBM ILOG CPLEX 126 User Manual IBM corp 2013 URL httppublicdhe

ibmcomsoftwareproductsDecision_OptimizationdocspdfusrcplexpdfAccessed 2016-11-01

[24] G Barlacchi and et al A multi-source dataset of urban life in the city of milan andthe province of trentino Scientic Data 2(150055) 2015 doi 101038sdata201555

[25] John A Hartigan and Manchek A Wong Algorithm as 136 A k-means clusteringalgorithm Journal of the Royal Statistical Society Series C (Applied Statistics) 28(1)100108 1979

[26] Ram Keralapura Antonio Nucci Zhi-Li Zhang and Lixin Gao Proling users ina 3g network using hourglass co-clustering In Proceedings of the Sixteenth Annual

International Conference on Mobile Computing and Networking MobiCom 10 pages341352 New York NY USA 2010 ACM ISBN 978-1-4503-0181-7 doi 10114518599951860034 URL httpdoiacmorg10114518599951860034

25

  • Introduction
  • A data-driven MEC management optimization framework
  • Optimization models
  • Optimization Algorithms
    • Initialization
    • Pricing algorithms
    • Rounding Heuristics
    • Variables fixing
    • Branch-and-price
    • Split assignment and periodic plans
      • Computational evaluation
        • Dataset
        • Column Generation profiling
        • Exactly solving the DASP
          • Practical case study
            • Experimental setup
            • Experimental evaluation
            • Effect of periodic planning
              • Conclusions