  Graphs form a natural model for relationships and interactions between
entities, for example, between people in social and cooperation networks,
servers in computer networks, or tags and words in documents and tweets. But,
which of these relationships or interactions are the most lasting ones? In this
paper, we study the following problem: given a set of graph snapshots, which
may correspond to the state of an evolving graph at different time instances,
identify the set of nodes that are the most densely connected in all snapshots.
We call this problem the Best Friends For Ever (BFF) problem. We provide
definitions for density over multiple graph snapshots, that capture different
semantics of connectedness over time, and we study the corresponding variants
of the BFF problem. We then look at the On-Off BFF (O^2BFF) problem that
relaxes the requirement of nodes being connected in all snapshots, and asks for
the densest set of nodes in at least $k$ of a given set of graph snapshots. We
show that this problem is NP-complete for all definitions of density, and we
propose a set of efficient algorithms. Finally, we present experiments with
synthetic and real datasets that show both the efficiency of our algorithms and
the usefulness of the BFF and the O^2BFF problems.
