2
$\begingroup$

I am having around 1000 DAG(Directed Acyclic Graph) of different files showing java.io.BufferedReader usage. Following is representation of one of the graphs

digraph G {
  9 [ label="9 : ROOT:setup()#0" ];
  10 [ label="10 : START IF" ];
  12 [ label="12 : java.net.URL.openConnection()#1" ];
  11 [ label="11 : END IF" ];
  13 [ label="13 : java.net.URL.openConnection()#0" ];
  14 [ label="14 : START IF" ];
  16 [ label="16 : java.net.HttpURLConnection.setRequestProperty()#2" ];
  15 [ label="15 : END IF" ];
  17 [ label="17 : START IF" ];
  19 [ label="19 : java.net.HttpURLConnection.addRequestProperty()#2" ];
  18 [ label="18 : END IF" ];
  21 [ label="21 : java.net.HttpURLConnection.setReadTimeout()#1" ];
  22 [ label="22 : java.net.HttpURLConnection.setConnectTimeout()#1" ];
  23 [ label="23 : java.net.HttpURLConnection.setUseCaches()#1" ];
  24 [ label="24 : <static>java.net.HttpURLConnection.setFollowRedirects()#1" ];
  25 [ label="25 : START IF" ];
  27 [ label="27 : java.net.HttpURLConnection.setRequestMethod()#1" ];
  28 [ label="28 : java.net.HttpURLConnection.setDoOutput()#1" ];
  29 [ label="29 : java.net.HttpURLConnection.setDoInput()#1" ];
  30 [ label="30 : java.net.HttpURLConnection.getOutputStream()#0" ];
  31 [ label="31 : java.io.DataOutputStream.<init>()#1" ];
  32 [ label="32 : java.io.DataOutputStream.writeBytes()#1" ];
  33 [ label="33 : java.io.DataOutputStream.flush()#0" ];
  26 [ label="26 : END IF" ];
  34 [ label="34 : java.net.HttpURLConnection.getInputStream()#0" ];
  35 [ label="35 : java.io.InputStreamReader.<init>()#1" ];
  36 [ label="36 : java.io.BufferedReader.<init>()#1" ];
  9 -> 10;
  10 -> 12;
  12 -> 11;
  10 -> 13;
  12 -> 13;
  13 -> 11;
  11 -> 14;
  14 -> 16;
  12 -> 16;
  13 -> 16;
  16 -> 15;
  15 -> 17;
  17 -> 19;
  12 -> 19;
  13 -> 19;
  16 -> 19;
  19 -> 18;
  18 -> 20;
  16 -> 20;
  19 -> 20;
  20 -> 21;
  12 -> 21;
  13 -> 21;
  19 -> 21;
  21 -> 22;
  12 -> 22;
  13 -> 22;
  16 -> 22;
  19 -> 22;
  22 -> 23;
  12 -> 23;
  13 -> 23;
  16 -> 23;
  19 -> 23;
  21 -> 23;
  23 -> 24;
  24 -> 25;
  25 -> 27;
  12 -> 27;
  13 -> 27;
  16 -> 27;
  19 -> 27;
  21 -> 27;
  22 -> 27;
  23 -> 27;
  27 -> 28;
  12 -> 28;
  13 -> 28;
  16 -> 28;
  19 -> 28;
  21 -> 28;
  22 -> 28;
  23 -> 28;
  28 -> 29;
  12 -> 29;
  13 -> 29;
  16 -> 29;
  19 -> 29;
  21 -> 29;
  22 -> 29;
  23 -> 29;
  27 -> 29;
  29 -> 30;
  12 -> 30;
  13 -> 30;
  16 -> 30;
  19 -> 30;
  21 -> 30;
  22 -> 30;
  23 -> 30;
  27 -> 30;
  28 -> 30;
  30 -> 31;
  31 -> 32;
  32 -> 33;
  31 -> 33;
  33 -> 26;
  26 -> 34;
  12 -> 34;
  13 -> 34;
  16 -> 34;
  19 -> 34;
  21 -> 34;
  22 -> 34;
  23 -> 34;
  27 -> 34;
  28 -> 34;
  29 -> 34;
  30 -> 34;
  34 -> 35;
  35 -> 36;
}

I want to cluster these graphs.I am trying to implement K-Medoids.

How to start with K-Medoid implementation? How can i find distance between two graphs?

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.