  Resource allocation in LTE networks is known to be an NP-hard problem. In
this paper, we address an even more complex scenario: an LTE-based, 2-tier
heterogeneous network where D2D mode is supported under the network control.
All communications (macrocell, microcell and D2D-based) share the same
frequency bands, hence they may interfere. We then determine (i) the network
node that should serve each user and (ii) the radio resources to be scheduled
for such communication. To this end, we develop an accurate model of the system
and apply approximate dynamic programming to solve it. Our algorithms allow us
to deal with realistic, large-scale scenarios. In such scenarios, we compare
our approach to today's networks where eICIC techniques and proportional
fairness scheduling are implemented. Results highlight that our solution
increases the system throughput while greatly reducing energy consumption. We
also show that D2D mode can effectively support content delivery without
significantly harming macrocells or microcells traffic, leading to an increased
system capacity. Interestingly, we find that D2D mode can be a low-cost
alternative to microcells.
