## 3 Problem Formulation
### Pricing Update Scheme  
In order to find the BS assignment solution given in Equation (8), a procedure to compute the appropriate pricing values \(\lambda_{j}\) and \(\mu_{j}\) is needed. In this regard, existing pricing-based schemes (see Table 1) reported in the literature rely on the definition of a step size value to incrementally adjust pricing values until a convergence criterion, in terms of load conditions and QoS is reached (as described later on). The step size is commonly defined as input to the existing distributed BS assignment algorithms, and its definition requires a fine tuning procedure during the design of the algorithm process. Unlike similar pricing-based approaches, the pricing values \(\lambda_{j}\) and \(\mu_{j}\) are independently updated at each BS \(j\) by means of a step size whose value depends on the observed load conditions. That is, there is no need for a fine tuning procedure to define the step size. Notice that the appropriate definition of such a step size value directly influences the number of iterations that are required to find the pricing values. In this regard, the main advantage of our approach is that pricing updates influence the BS assignment choice for each device based on two core aspects: (a) the maximum price users are willing to pay for the available network resources and (b) the observed weighted utility defined in Equation (8).  
The pricing update procedure works, as follows. If a BS \(j\) exceeds its radio or backhaul resources, then the corresponding resource prices are updated as a means to steer the resource costly device \(i^{{}^{\prime}}\) to a less loaded BS \(j^{{}^{\prime}}\). Such a reassignment of the device could be achieved if price values at the serving BS \(j\) are updated to meet the condition \(w_{i^{{}^{\prime}}j^{{}^{\prime}}}>w_{i^{{}^{\prime}}j^{{}^{\prime}}}\). In short, the pricing update at BS \(j\) makes device \(i^{{}^{\prime}}\) change its assignment preference to BS \(j^{{}^{\prime}}\), where the highest weighted utility is obtained. It is worth noting that the pricing update should be performed in order to guarantee that only one device is reassigned to other BS. To this end, the price per radio resource unit at BS \(j\) should be updated, as follows:  
\[\lambda_{j}=\lambda_{j}+\Delta\lambda_{i^{{}^{\prime}}j} \tag{10}\]  
where \(\Delta\lambda_{i^{{}^{\prime}}j}\) is the minimum increase in the radio resource price to force device \(i^{{}^{\prime}}\) to change its association request. Such a step size is derived using the weighted utility definition from Equation (9), and replacing Equation (10) into \(w_{i^{{}^{\prime}}j^{{}^{\prime}}}>w_{i^{{}^{\prime}}j^{{}^{\prime}}}\). Subsequently, the minimum increase of the radio resource price is expressed as \(\Delta\lambda_{i^{\prime}j}=\frac{u_{j^{\prime}j}-u_{j}\beta_{i^{\prime}j}}{\alpha _{i^{\prime}j}}\). A similar procedure is applied to update the backhaul multiplier, as expressed by:  
\[\mu_{j}=\mu_{j}+\Delta\mu_{i^{\prime}j} \tag{11}\]  
where \(\Delta\mu_{i^{\prime}j}=\frac{u_{j^{\prime}j}-\lambda_{i}\mu_{j}}{B_{ij}}\) is defined as the minimum increase in backhaul resource price.  
Note that the second term in Equations (10) and (11) refers to the step size used to update pricing values of radio and backhaul resources, respectively. We argue that such a minimum increase in pricing values allows us to efficiently explore the possible values that meet the resource assignment conditions.