  Community detection is a fundamental network-analysis primitive with a
variety of applications in diverse domains. Although the modularity introduced
by Newman and Girvan (2004) has widely been used as a quality function for
community detection, it has some drawbacks. The modularity density introduced
by Li et al. (2008) is known to be an effective alternative to the modularity,
which mitigates one of the drawbacks called the resolution limit. A large body
of work has been devoted to designing exact and heuristic methods for
modularity density maximization, without any computational complexity analysis.
In this study, we investigate modularity density maximization from both
algorithmic and computational complexity aspects. Specifically, we first
accelerate column generation for the modularity density maximization problem.
To this end, we point out that the auxiliary problem appearing in column
generation can be viewed as a dense subgraph discovery problem. Then we employ
a well-known strategy for dense subgraph discovery, called the greedy peeling,
for approximately solving the auxiliary problem. Moreover, we reformulate the
auxiliary problem to a sequence of $0$--$1$ linear programming problems,
enabling us to compute its optimal value more efficiently and to get more
diverse columns. Computational experiments using a variety of real-world
networks demonstrate the effectiveness of our proposed algorithm. Finally, we
show the NP-hardness of a slight variant of the modularity density maximization
problem, where the output partition has to have two or more clusters, as well
as showing the NP-hardness of the auxiliary problem.
