The Water-Filling Game in Fading Multiple Access Channels
<|reference_start|>The Water-Filling Game in Fading Multiple Access Channels: We adopt a game theoretic approach for the design and analysis of distributed resource allocation algorithms in fading multiple access channels. The users are assumed to be selfish, rational, and limited by average power constraints. We show that the sum-rate optimal point on the boundary of the multipleaccess channel capacity region is the unique Nash Equilibrium of the corresponding water-filling game. This result sheds a new light on the opportunistic communication principle and argues for the fairness of the sum-rate optimal point, at least from a game theoretic perspective. The base-station is then introduced as a player interested in maximizing a weighted sum of the individual rates. We propose a Stackelberg formulation in which the base-station is the designated game leader. In this set-up, the base-station announces first its strategy defined as the decoding order of the different users, in the successive cancellation receiver, as a function of the channel state. In the second stage, the users compete conditioned on this particular decoding strategy. We show that this formulation allows for achieving all the corner points of the capacity region, in addition to the sum-rate optimal point. On the negative side, we prove the non-existence of a base-station strategy in this formulation that achieves the rest of the boundary points. To overcome this limitation, we present a repeated game approach which achieves the capacity region of the fading multiple access channel. Finally, we extend our study to vector channels highlighting interesting differences between this scenario and the scalar channel case.<|reference_end|>
@article{lai2005the,
    title={The Water-Filling Game in Fading Multiple Access Channels},
    author={Lifeng Lai and Hesham El Gamal},
    journal={arXiv preprint arXiv:cs/0512013},
    year={2005},
    archivePrefix={arXiv},
    eprint={cs/0512013},
    primaryClass={cs.IT math.IT}
}