<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>A Local Search for a Graph Correlation Clustering</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Victor Il'ev</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Anna Navrotskaya</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Omsk State University</institution>
          ,
          <addr-line>55a Mira Ave., 644077 Omsk</addr-line>
          ,
          <country country="RU">Russia</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Sobolev Institute of Mathematics</institution>
          ,
          <addr-line>4 Acad. Koptyug Ave., 630090 Novosibirsk</addr-line>
          ,
          <country country="RU">Russia</country>
        </aff>
      </contrib-group>
      <fpage>510</fpage>
      <lpage>515</lpage>
      <abstract>
        <p>In the clustering problems one has to partition a given set of objects into some subsets (called clusters) taking into consideration only similarity of the objects. We consider a version of the clustering problem when the number of clusters does not exceed a positive integer k and the goal is to minimize the number of edges between clusters and the number of missing edges within clusters. This problem is NP-hard for any k 2. We propose a polynomial time k-approximation algorithm for this problem.</p>
      </abstract>
      <kwd-group>
        <kwd>Graph clustering</kwd>
        <kwd>local search</kwd>
        <kwd>approximation algorithm</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>d(G1; G2) = jE1 n E2j + jE2 n E1j;
i.e., d(G1; G2) is the number of noncoinciding edges in G1 and G2.</p>
      <p>Copyright ⃝c by the paper's authors. Copying permitted for private and academic purposes.</p>
      <p>
        The variants of CC in which the number of clusters is bounded were also studied
[
        <xref ref-type="bibr" rid="ref3 ref6">3, 6</xref>
        ].
      </p>
      <p>
        One of the most visual formalizations of the clustering problem is the graph
clustering [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], that is grouping the vertices of a graph into clusters taking into consideration
the edge structure of the graph whose vertices are objects and edges represent
similarities between the objects. In this setting, the clustering can be understood as cluster
graph M whose connected components correspond to the clusters.
      </p>
      <p>Obviously, the following setting is equivalent to CC.</p>
      <p>GRAPH CORRELATION CLUSTERING (GCC). Given a graph G = (V; E), nd
a graph M 2 M(V ) such that
d(G; M ) =</p>
      <p>min
M2M(V )
d(G; M ):</p>
      <p>We focus on the following bounded variants of GRAPH CORRELATION
CLUSTERING.</p>
      <p>GCCk. Given a graph G = (V; E) and an integer k, 2
M 2 Mk(V ) such that</p>
      <p>GCC1;k. Given a graph G = (V; E) and an integer k, 2
M 2 M1;k(V ) such that
d(G; M ) =</p>
      <p>min
M2Mk(V )</p>
      <p>d(G; M ):
d(G; M ) =</p>
      <p>min
M2M1;k(V )
d(G; M ):
k
k
jV j, nd a graph
jV j, nd a graph</p>
      <p>In Section 2 of this paper we present a short survey of the known results involving
results on computation complexity and approximability of different versions of the
graph clustering problem. In section 3 we propose a new k-approximation algirithm for
GCC1;k.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Known results</title>
      <p>
        Apparently, NP-hardness of problem GCC was rst proved by Krivanek and Moravek
[
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] in 1986.
      </p>
      <p>
        At the beginning and in the middle of the 2000s, several groups of authors were
independently dealing with the different versions of the graph clustering problems.
Chen, Jiang, and Lin [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] considered the closest phylogenetic root problems and also
proved NP-hardness of GCC. Bansal, Blum, and Chawla [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], using a reduction from
PARTITION INTO TRIANGLES, show that GCC is NP-hard even if all clusters are
of size 3 as a maximum.
      </p>
      <p>
        Shamir, Sharan, and Tsur [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] independently showed NP-hardness of problem GCC
by a reduction from the 3-exact 3-Cover problem. They also reduced the known
NPcomplete problem of 2-coloring of 3-Uniform Hypergraph to problem GCC2 and as
a result they showed that problem GCCk is NP-hard for any xed k 2. In both
cases Shamir, Sharan, and Tsur use rather complicated reduction. Later, Giotis and
Guruswami [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] published a more simple proof of the same result using a polynomial
reduction from the graph bisection problem.
      </p>
      <p>
        At the same time, Ageev, Il'ev, Kononov, and Talevnin [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] independently proved
that problems GCC2 and GCC1;2 are NP-hard on cubic (i.e., 3-regular) graphs and
deduced from this that all the above-mentioned variants of the graph clustering
problems (including GCC1;k) are NP-hard.
      </p>
      <p>
        In 2004, Bansal, Blum, and Chawla [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] presented a simple polynomial time
3approximation algorithm for GCC1;2. For each v 2 V their algorithm considers the
following pair of clusters. The rst cluster contains v and all neighbors of v in G = (V; E).
The second cluster contains all other vertices. The algorithm outputs the pair that
minimizes the number of mismatched edges. More formally this algorithm may be described
as follows.
      </p>
      <sec id="sec-2-1">
        <title>Algorithm N1;2(G).</title>
        <p>Step 1. For each vertex v 2 V construct the cluster graph Mv 2 M1;2(V ) with
V1 = fvg [ N (G) and V2 = V n V1 as the vertex sets of connected components of Mv.</p>
        <p>Step 2. Pick the graph Mv with minimal distance from G, i.e.,</p>
        <p>
          In 2006, Ageev, Il'ev, Kononov, and Talevnin [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ] proved the existence of a
randomized PTAS for problem GCC1;2 by reducing this problem to the graph bisection
problem, and Giotis and Guruswami [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] presented a randomized PTAS for problem
GCCk (for any xed k 2). In 2007, Il'ev, Navrotskaya, and Talevnin [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ] considered
a local search algorithm for problem GCC1;2. They showed that if the number of
edges in a graph is subquadratic of the number of vertices, the local search algorithm
is asymptotically exact.
        </p>
        <p>
          In 2008, Coleman, Saunderson, and Wirth [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ] pointed out that complexity of PTAS
from [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] make this scheme practically useless. They presented a 2-approximation
algorithm for problem GCC1;2 applying local search to the feasible solution obtained by
the 3-approximation algorithm from [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ].
        </p>
        <p>
          In 2005, Charicar, Guruswami, and Wirth [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ] proved that problem GCC is
APXhard. They also constructed a 4-approximation algorithm for problem GCC by
rounding a natural LP relaxation using the region growing technique. In 2008, Ailon, Charicar,
and Newman [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ] proposed a randomized 2.5-approximation algorithm for GCC.
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>An approximation algorithm for GCC1;k</title>
      <p>
        As it was already said, Coleman, Saunderson, and Wirth [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] presented a
2-approximation algorithm for problem GCC1;2 applying local search to the feasible solution
obtained by the 3-approximation algorithm N1;2 from [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Extending this strategy
we propose a polynomial time approximation algorithm NLS1;k for problem GCC1;k
when k &gt; 2 and use algorithm from [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] for k = 2.
      </p>
      <p>First we describe the algorithm formally. Denote by N (v) the set of all neighbors
of a vertex v.</p>
      <sec id="sec-3-1">
        <title>Algorithm NLS1;k</title>
        <p>Input: Given graph G = (V; E) and k &gt; 2.</p>
        <p>Step 1. For each vertex v 2 V construct the cluster graph Mv 2 M1;k(V ) as follows:
if fvg [ N (v) = V , then Mv = KjV j, else Mv = N1;k(G; fvg [ N (v); k).</p>
        <p>Step 2. Use procedure LS1;k to modify each graph Mv.</p>
        <p>Step 3. Pick the graph Mv with minimal distance from G, i.e.,</p>
        <p>For any vertex u 2 V de ne the value
impu(Vi; Vj) = Vi+(u) + Vj (u)</p>
        <p>Vi (u)</p>
        <p>Vj+(u);
where Vi+(u) is the number of vertices in the set Vi adjacent to u and Vi (u) is the
number of vertices in Vi not adjacent to u.</p>
      </sec>
      <sec id="sec-3-2">
        <title>Procedure LS1;k</title>
        <p>Input: A graph G = (V; E) and a cluster graph M 2 M1;k(V ). The sets V1; : : : ; Vk
are the vertex sets of the connected components of M .</p>
        <p>Step s (s = 1; 2; :::). Pick the vertex v 2 V such that
impv(Vp; Vq) = max ( max impu(Vi; Vj)):
i=1;:::k; j=1;:::k;</p>
        <p>u2Vi j̸=i
If impv(Vp; Vq) &gt; 0, then move v from Vp to Vq and go to step s + 1, else stop.</p>
        <p>Comments. Algorithm NLS1;k uses the function N1;k for constructing a cluster
graph and the local search procedure LS1;k for improving the found cluster graph. In
the end the algorithm picks a cluster graph 'nearest' to G.</p>
        <p>Function N1;k makes a partition of the vertex set of a given graph G = (V; E).
Consider the subgraph of G without the subsets of the vertex set V constructed at
the previous step. Function N1;2 solves problem GCC1;2 approximately and returns
a vertex set of the rst connected component of the found cluster graph. This subset
is added to already constructed ones. At the next step the algorithm considers the
subgraph without all found subsets involving the last constructed subset. At step 4 we
have k subsets (some of which may be empty) which are a partition of the vertex set
of given graph G. This partition induces a cluster graph M and the algorithm returns
M .</p>
        <p>Function N1;2 takes as an input a graph G and for each vertex v of G constructs
a cluster graph whose rst connected component has vertex set consisting of v and all
adjacent to v vertices. The second connected component consists of all other vertices
of G. Later, cluster graph 'nearest' to G among all the constructed cluster graphs is
selected. Function N1;2 returns the vertex set of the rst connected component of the
cluster graph, i.e., vertex v and all its neighbors.</p>
        <p>Procedure LS1;k takes as an input a given graph G = (V; E) and a cluster graph
M 2 M1;k(V ) constructed by algorithm N1;k. On each iteration the algorithm nds
a vertex whose moving to one of the rest connected components leads to steepest
decreasing the distance bitween graphs G and M . If such vertex is found, it is moved
to the respective corresponding connected component, else the algorithm nishes.</p>
        <p>The followimg theorem shows that algorithm NLS1;k is k-approximation algorithm
for problem GCC1;k.</p>
        <p>Theorem 1. For any graph G = (V; E) and an integer k, 2
bound occurs:
k</p>
        <p>jV j, the following
d(G; M )
kd(G; M );
where M is the cluster graph constucted by algorithm NLS1;k and M
solution to GCC1;k.
is an optimal</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Acknowledgement</title>
      <p>This research was supported by the RSF grant 15-11-10009.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Ageev</surname>
            ,
            <given-names>A. A.</given-names>
          </string-name>
          , Il'ev,
          <string-name>
            <given-names>V. P.</given-names>
            ,
            <surname>Kononov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. V.</given-names>
            ,
            <surname>Talevnin</surname>
          </string-name>
          ,
          <string-name>
            <surname>A. S.:</surname>
          </string-name>
          <article-title>Computational complexity of the graph approximation problem</article-title>
          .
          <source>Diskretnyi Analiz i Issledovanie Operatsii. Ser</source>
          .
          <volume>1</volume>
          .
          <issue>13</issue>
          (
          <issue>1</issue>
          ),
          <volume>3</volume>
          {
          <fpage>11</fpage>
          (
          <year>2006</year>
          )
          <article-title>(in Russian)</article-title>
          .
          <article-title>English transl</article-title>
          .
          <source>in J. of Applied and Industrial Math</source>
          .
          <volume>1</volume>
          (
          <issue>1</issue>
          ), 1{
          <issue>8</issue>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Ailon</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Charikar</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Newman</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Aggregating inconsistent information: Ranking and clustering</article-title>
          .
          <source>J. ACM</source>
          .
          <volume>55</volume>
          (
          <issue>5</issue>
          ),
          <volume>1</volume>
          {
          <fpage>27</fpage>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Bansal</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Blum</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chawla</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Correlation clustering</article-title>
          .
          <source>Machine Learning</source>
          .
          <volume>56</volume>
          ,
          <issue>89</issue>
          {
          <fpage>113</fpage>
          (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Charikar</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Guruswami</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wirth</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Clustering with qualitative information</article-title>
          .
          <source>J. Comput. Syst. Sci</source>
          .
          <volume>71</volume>
          (
          <issue>3</issue>
          ),
          <volume>360</volume>
          {
          <fpage>383</fpage>
          (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Chen</surname>
            ,
            <given-names>Z.-Z.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jiang</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lin</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          :
          <article-title>Computing phylogenetic roots with bounded degrees and errors</article-title>
          .
          <source>SIAM J. Comput</source>
          .
          <volume>32</volume>
          (
          <issue>4</issue>
          ),
          <volume>864</volume>
          {
          <fpage>879</fpage>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Coleman</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Saunderson</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wirth</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>A local-search 2-approximation for 2-correlationclustering</article-title>
          . In: Algorithms {
          <string-name>
            <surname>ESA</surname>
          </string-name>
          <year>2008</year>
          .
          <article-title>LNCS</article-title>
          , vol.
          <volume>5193</volume>
          , pp.
          <volume>308</volume>
          {
          <fpage>319</fpage>
          . Springer, Heidelberg (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Giotis</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Guruswami</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          :
          <article-title>Correlation clustering with a xed number of clusters</article-title>
          .
          <source>Theory of Computing</source>
          .
          <volume>2</volume>
          (
          <issue>1</issue>
          ),
          <volume>249</volume>
          {
          <fpage>266</fpage>
          (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8. Il'ev,
          <string-name>
            <given-names>V. P.</given-names>
            ,
            <surname>Navrotskaya</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. A.</given-names>
            ,
            <surname>Talevnin</surname>
          </string-name>
          ,
          <string-name>
            <surname>A. S.:</surname>
          </string-name>
          <article-title>Polynomial time approximation scheme for the graph approximation problem</article-title>
          .
          <source>Vestnik Omskogo Universiteta</source>
          .
          <volume>4</volume>
          ,
          <issue>24</issue>
          {
          <fpage>27</fpage>
          (
          <year>2007</year>
          )
          <article-title>(in Russian)</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Krivanek</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Moravek</surname>
          </string-name>
          , J.:
          <article-title>NP-hard problems in hierarchical-tree clustering</article-title>
          .
          <source>Acta informatica</source>
          .
          <volume>23</volume>
          ,
          <issue>311</issue>
          {
          <fpage>323</fpage>
          (
          <year>1986</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Schaeffer</surname>
            ,
            <given-names>S. E.</given-names>
          </string-name>
          :
          <article-title>Graph clustering</article-title>
          .
          <source>Computer Science Review</source>
          .
          <volume>1</volume>
          (
          <issue>1</issue>
          ),
          <volume>27</volume>
          {
          <fpage>64</fpage>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Shamir</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sharan</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tsur</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Cluster graph modi cation problems</article-title>
          .
          <source>Discrete Appl</source>
          . Math.
          <volume>144</volume>
          (
          <issue>1</issue>
          {2),
          <volume>173</volume>
          {
          <fpage>182</fpage>
          (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>