max z$_{u,m}$,x$_{u,b}$ ∈{ 0 , 1 } ,γ$_{u,b}$,θ$_{u,m}$ ∈ [0 , 1] ∀ u ∈U ,b ∈B$_{m}$ ,m ∈M { ∑ u ∈U ∑ m ∈M ( w$_{u}$R$_{u,m}$θ$_{u,m}$ + ∑ b ∈B$_{m}$ w$_{u}$x$_{u,b}$R$_{u,b}$γ$_{u,b}$$^{)}}$ s . t . ∑ m ∈M z$_{u,m}$ ≤ 1; ∑ b ∈B$_{m}$ x$_{u,b}$ = z$_{u,m}$, ∀ u ∈ U , m ∈ M ; ∑ u ∈U θ$_{u,m}$ ≤ 1 & ∑ u ∈U γ$_{u,b}$ ≤ 1 ∀ b ∈ B$_{m}$ , m ∈ M ; R$_{u,m}$θ$_{u,m}$ + ∑ b ∈B$_{m}$ x$_{u,b}$R$_{u,b}$γ$_{u,b}$ ∈ [ z$_{u,m}$R min u , z$_{u,m}$R max u ] , ∀ u ∈ U . (1) maximization problem that adopts the weighted sum rate (WSR) system utility under per-user rate constraints. The WSR problem is posed in (1). w$_{u}$ > 0 , ∀ u ∈ U denotes any input weight or priority assigned to user u . In (1) the binary valued variable z$_{u,m}$ is one if user u is associated with macro TP m and zero otherwise, so that the first set of constraints in (1) ensures that each user is associated with at-most one macro. Further, exploiting dual connectivity, each user that is associated to the macro TP m is also associated with any one pico TP in B$_{m}$ . Indeed, the indicator variable x$_{u,b}$ is one if user u is associated to TP b and zero otherwise. Consequently, { x$_{u,b}$ = 1 }$_{u}$$_{∈U}$$_{,b}$$_{∈B}$$_{m}$ yields the user set such that each user in that set is associated to any one TP in B$_{m}$ as well with the macro TP m . The continuous variables { γ$_{u,b}$, θ$_{u,m}$ } are referred to here as allocation fractions and their respective sums are upper bounded by unity for each macro TP as well as each pico TP, as depicted in the second set of constraints. Although (1) does not enforce that each user must be associated with a macro TP, it does enforce (in the third set of constraints) that each user associated to any macro TP must be assigned at-least its minimum rate but should not exceed a maximum rate. Notice also that (1) is always feasible. 1 The minimum rate constraints are useful in enforcing that a minimum expected quality is provided to each served user and are based on the observation that in many scenarios serving a user at a rate below its minimum threshold is futile. On the other hand, the maximum rate limits can be used to cap the rates of any set of users such as those that have subscribed to a lower tier of service. $^{1}$Note that single-TP only association is subsumed by (1). Indeed, with x$_{u,b}$ = 1 for some u ∈ U , b ∈ B$_{m}$ , by choosing θ$_{u,m}$ = 0 ( γ$_{u,b}$ = 0 ) we can ensure that user u will receive data only from the pico node b (macro node m ). Also, each user u that is not associated with any macro TP gets zero rate and must have θ$_{u,m}$ = 0 , γ$_{u,b}$ = 0 , ∀ b ∈ B$_{m}$ , m ∈ M due to the third set of constraints.