# Intelligent Dynamic Data Offloading in a Competitive Mobile Edge Computing Market
## 2 SDN-Powered Mobile Edge Computing
### End-User Utility Function  
At the beginning of each time slot, each end-user \(u\) sends to the SDN controller its total computing demands \(I_{u}^{(t)}\) that are needed to execute a computing task, while the SDN controller determines the optimal amount of offloaded data \(b_{u,s}^{(t)}\) for end-user \(u\) at the MEC server \(s\), as explained in detail in  
Figure 1: SDN-powered MEC architecture. Section 4. Given that the MEC servers have bounded and limited computing capabilities, the data offloading strategies of the rest of the end-users, i.e., \(\mathbf{b}_{-\mathbf{u}}^{(\mathbf{t})}\), contribute to the configuration of the prices announced by the MEC servers and influence the data offloading \(b_{u,s}^{(t)}\) of end-user \(u\). Thus, towards formulating the user's \(u\) perceived satisfaction, the end-user's relative data offloading is defined as \(r_{u}^{(t)}=\frac{b_{u,s}^{(t)}}{B_{-u}^{(t)}}\), where \(B_{-u}^{(t)}=\sum_{s\in S}\sum_{u^{\prime}\in U,u^{\prime}\
eq u}b_{u^{\prime },s}^{(t)}\) expresses the total data offloading of the rest of the end-users \(u^{\prime},u^{\prime}\in U-\{u\}\). The end-user's actual perceived satisfaction \(s_{u}^{(t)}\) at time slot \(t\) is increasing with respect to its relative data offloading \(b_{u,s}^{(t)}\), as part of the requested computing task is offloaded to the MEC server and does not consume the end-user's local computing resources. In addition, after the end-user offloads its total data \(I_{u}^{(t)}\) to the MEC server, its perceived satisfaction is saturated as the end-user cannot benefit more by the MEC server's computing services, as presented in Figure 2. Thus, without loss of generality and for presentation purposes only, in this paper, we adopt a logarithmic function with respect to the end-user's offloaded data \(b_{u,s}^{(t)}\) to capture end-user's actual perceived satisfaction, as follows. \[s_{u}^{(t)}(b_{u,s}^{(t)},\mathbf{b}_{-\mathbf{u}}^{(\mathbf{t})} )=\alpha_{u}log(1+\beta_{u}r_{u}^{(t)}) \tag{1}\]  
where \(\mathbf{b}_{-\mathbf{u}}^{(\mathbf{t})}\) is the vector of all end-users data offloading excluding end-user \(u\), and the \(\alpha_{u},\beta_{u}\in\mathbb{R}^{+}\) parameters determine the slope of the logarithmic function in a personalized manner for end-user \(u\), thus expressing how easily or not an end-user \(u\) becomes satisfied by offloading its data to the MEC server. Additionally, each end-user is charged for using the MEC server's computing services in a fair manner according to its relative data offloading. This policy enables even the low-budget end-users to exploit the MEC servers' capabilities to some degree, by prohibiting the high-budget ones from dominating the system. Thus, the cost function of end-user's \(u\) offloaded data is formulated as follows. \[c_{u}^{(t)}(b_{u,s}^{(t)},\mathbf{b}_{-\mathbf{u}}^{(\mathbf{t})} )=d_{u}^{(t)}p_{s}^{(t)}r_{u}^{(t)} \tag{2}\]  
where \(d_{u}^{(t)},d_{u}^{(t)}\in\mathbb{R}^{+}\) expresses end-user's \(u\) spending dynamics in order to use the MEC server's computing services. Specifically, a smaller value of \(d_{u}^{(t)}\) reflects end-user's \(u\) dynamic behavior to spend more money in order to buy computing support from the MEC servers. The price announced by the MEC server \(s\) is denoted as \(p_{s}^{(t)}[\$/\mathit{bits}]\). Following the above analysis, end-user's \(u\) utility function captures both its actual perceived satisfaction \(s_{u}^{(t)}\) and its corresponding cost \(c_{u}^{(t)}\) in order to enjoy the MEC server's computing services. The end-user's \(u\) utility function is defined as follows. \[U_{u}^{(t)}(b_{u,s}^{(t)},\mathbf{b}_{-\mathbf{u}}^{(\mathbf{t})},\mathbf{p}^{(\mathbf{t})})=s_{u}^{(t)}(b_{u,s}^{(t)},\mathbf{b}_{-\mathbf{u }}^{(\mathbf{t})})-c_{u}^{(t)}(b_{u,s}^{(t)},\mathbf{b}_{-\mathbf{u}}^{( \mathbf{t})})=\alpha_{u}log(1+\beta_{u}r_{u}^{(t)})-d_{u}^{(t)}p_{s}^{(t)}r_{u} ^{(t)} \tag{3}\]  
where \(\mathbf{p}^{(\mathbf{t})}=[p_{1}^{(t)},...,p_{s}^{(t)},...,p_{|S|}^{(t)}]\) denotes the vector of the prices announced by all the MEC servers.