  Local caching is an effective scheme for leveraging the memory of the mobile
terminal (MT) and short range communications to save the bandwidth usage and
reduce the download delay in the cellular communication system. Specifically,
the MTs first cache in their local memories in off-peak hours and then exchange
the requested files with each other in the vicinity during peak hours. However,
prior works largely overlook MTs' heterogeneity in file preferences and their
selfish behaviours. In this paper, we practically categorize the MTs into
different interest groups according to the MTs' preferences. Each group of MTs
aims to increase the probability of successful file discovery from the
neighbouring MTs (from the same or different groups). Hence, we define the
groups' utilities as the probability of successfully discovering the file in
the neighbouring MTs, which should be maximized by deciding the caching
strategies of different groups. By modelling MTs' mobilities as homogeneous
Poisson point processes (HPPPs), we analytically characterize MTs' utilities in
closed-form. We first consider the fully cooperative case where a centralizer
helps all groups to make caching decisions. We formulate the problem as a
weighted-sum utility maximization problem, through which the maximum utility
trade-offs of different groups are characterized. Next, we study two benchmark
cases under selfish caching, namely, partial and no cooperation, with and
without inter-group file sharing, respectively. The optimal caching
distributions for these two cases are derived. Finally, numerical examples are
presented to compare the utilities under different cases and show the
effectiveness of the fully cooperative local caching compared to the two
benchmark cases.
