Ignore:
Timestamp:
Oct 5, 2010, 8:44:43 AM (14 years ago)
Author:
gnappo
Message:

Correzione nel calcolo della conduttanza.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/main/java/weka/clusterers/forMetisMQI/MQI.java

    r20 r21  
    1616import weka.clusterers.forMetisMQI.graph.Node;
    1717import weka.clusterers.forMetisMQI.graph.Subgraph;
    18 import weka.clusterers.forMetisMQI.util.Util;
    1918import edu.uci.ics.jung.algorithms.flows.EdmondsKarpMaxFlow;
    2019import edu.uci.ics.jung.graph.DirectedGraph;
    2120import edu.uci.ics.jung.graph.DirectedSparseGraph;
     21import weka.clusterers.forMetisMQI.util.Util;
    2222
    2323public class MQI {
     
    8888                        a = A.getVertexCount();
    8989                else {
    90                         Iterator<Node> aIterator = A.iterator();
    91                         while(aIterator.hasNext()) {
    92                                 a += bisection.getGraph().degree(aIterator.next());
    93                         }
     90                        a = Math.min(B.totalDegree(),A.totalDegree());
    9491                }
    9592                int c = bisection.edgeCut() / 2;
     
    195192                                                * bisection.edgeCut() / 2;
    196193                        else {
    197                                 Iterator<Node> aIterator = bisection.getLargerSubgraph().iterator();
    198                                 maxFlowThreshold = 0;
    199                                 while(aIterator.hasNext())
    200                                         maxFlowThreshold += partition.getGraph().degree(aIterator.next());
     194                                maxFlowThreshold = Math.min(bisection.getLargerSubgraph().totalDegree(), bisection.getSmallerSubgraph().totalDegree());
    201195                                maxFlowThreshold = maxFlowThreshold
    202196                                                * (bisection.edgeCut() / 2);
    203197                        }
    204198                        alg.evaluate();
    205 //                      Util.viewFlowGraph(directedGraph, edgeFlowMap);
     199                        Util.viewFlowGraph(directedGraph, edgeFlowMap);
    206200                        System.out.println("MAX FLOW: " + alg.getMaxFlow() + " THRESHOLD: "
    207201                                        + maxFlowThreshold);
Note: See TracChangeset for help on using the changeset viewer.