  The use of a very large number of antennas at each base station site
(referred to as "Massive MIMO") is one of the most promising approaches to cope
with the predicted wireless data traffic explosion. In combination with Time
Division Duplex and with simple per-cell processing, it achieves large
throughput per cell, low latency, and attractive power efficiency performance.
Following the current wireless technology trend of moving to higher frequency
bands and denser small cell deployments, a large number of antennas can be
implemented within a small form factor even in small cell base stations. In a
heterogeneous network formed by large (macro) and small cell BSs, a key system
optimization problem consists of "load balancing", that is, associating users
to BSs in order to avoid congested hot-spots and/or under-utilized
infrastructure. In this paper, we consider the user-BS association problem for
a massive MIMO heterogeneous network. We formulate the problem as a network
utility maximization, and provide a centralized solution in terms of the
fraction of transmission resources (time-frequency slots) over which each user
is served by a given BS. Furthermore, we show that such a solution is
physically realizable, i.e., there exists a sequence of integer scheduling
configurations realizing (by time-sharing) the optimal fractions. While this
solution is optimal, it requires centralized computation. Then, we also
consider decentralized user-centric schemes, formulated as non-cooperative
games where each user makes individual selfish association decisions based only
on its local information. We identify a class of schemes such that their Nash
equilibrium is very close to the global centralized optimum. Hence, these
user-centric algorithms are attractive not only for their simplicity and fully
decentralized implementation, but also because they operate near the system
"social" optimum.
