Examples of LabelVertex


Examples of com.sun.sgs.impl.service.nodemap.affinity.graph.LabelVertex

        // fission in small group,
        // Journal of Anthropological Research 33, 452-473 (1977)
        LabelVertex[] nodes = new LabelVertex[35];
        for (int i = 1; i < nodes.length; i++) {
            // Add identities 1-34
            nodes[i] = new LabelVertex(new DummyIdentity(String.valueOf(i)));
            graph.addVertex(nodes[i]);
        }
        graph.addEdge(new WeightedEdge(), nodes[2], nodes[1]);
        graph.addEdge(new WeightedEdge(), nodes[3], nodes[1]);
        graph.addEdge(new WeightedEdge(), nodes[3], nodes[2]);
View Full Code Here

Examples of com.sun.sgs.impl.service.nodemap.affinity.graph.LabelVertex

            LabelVertex[] nodes = new LabelVertex[6];
            for (int i = 1; i < nodes.length; i++) {
                // Add identities 1-5
                nodes[i] =
                        new LabelVertex(new DummyIdentity(String.valueOf(i)));
                graph.addVertex(nodes[i]);
            }

            graph.addEdge(new WeightedEdge(), nodes[1], nodes[2]);
            graph.addEdge(new WeightedEdge(), nodes[1], nodes[3]);
View Full Code Here

Examples of com.sun.sgs.impl.service.nodemap.affinity.graph.LabelVertex

            LabelVertex[] nodes = new LabelVertex[6];
            for (int i = 1; i < nodes.length; i++) {
                // Add identities 1-5
                nodes[i] =
                        new LabelVertex(new DummyIdentity(String.valueOf(i)));
                graph.addVertex(nodes[i]);
            }

            graph.addEdge(new WeightedEdge(2), nodes[1], nodes[2]);
            graph.addEdge(new WeightedEdge(2), nodes[1], nodes[3]);
View Full Code Here

Examples of com.sun.sgs.impl.service.nodemap.affinity.graph.LabelVertex

            Set<Identity> ids = g.getIdentities();
            int size = ids.size();
            ArrayList<LabelVertex> groupList =
                    new ArrayList<LabelVertex>(size);
            for (Identity id : ids) {
                groupList.add(new LabelVertex(id));
            }
            for (LabelVertex vertex : groupList) {
                for (WeightedEdge edge : graph.getIncidentEdges(vertex)) {
                    totEdges = totEdges + edge.getWeight();
                }
            }

            // Look at each of the pairs in the community to find the number
            // of edges within
            for (int i = 0; i < size - 1; i++) {
                LabelVertex  v1 = groupList.get(i);
                for (int j = i + 1; j < size; j++) {
                    LabelVertex v2 = groupList.get(j);
                    // Calculate the adjacency info for v1 and v2;  each edge
                    // is counted twice to account for the two vertices it
                    // connects.
                    // We allow parallel (multiple) edges in the graph so
                    // use findEdgeSet.
View Full Code Here

Examples of com.sun.sgs.impl.service.nodemap.affinity.graph.LabelVertex

            if (idents != null) {
                for (Map.Entry<Identity, Long> entry : idents.entrySet())
                {
                    // Find the label associated with the identity in
                    // the graph.
                    LabelVertex vert = builder.getVertex(entry.getKey());
                    if (vert != null) {
                        // If the vertex wasn't found in the vertices list,
                        // it is a new identity since the vertices were
                        // captured at the start of this algorithm run,
                        // and we just ignore the label.
                        // Otherwise, add the label to set of labels for
                        // this identity.
                        Integer label = vert.getLabel();

                        List<Long> weightList = labelWeightMap.get(label);
                        if (weightList == null) {
                            weightList = new ArrayList<Long>();
                            labelWeightMap.put(label, weightList);
View Full Code Here

Examples of com.sun.sgs.impl.service.nodemap.affinity.graph.LabelVertex

            int nodeAsInt = (int) node;
            // Create a partial graph
            for (int i = nodeAsInt; i < nodes.length; i+=3) {
                // Add identities 1, 4, etc.
                idents[i] = new DummyIdentity(String.valueOf(i));
                nodes[i] = new LabelVertex(idents[i]);
                graph.addVertex(nodes[i]);
            }
            // Obj uses
            Map<Identity, Long> tempMap = new HashMap<Identity, Long>();
            if (node == NODE1) {
View Full Code Here

Examples of com.sun.sgs.impl.service.nodemap.affinity.graph.LabelVertex

            // Create a partial graph
            Identity[] idents = {new DummyIdentity("1"),
                                 new DummyIdentity("2")};
            LabelVertex[] nodes = new LabelVertex[2];
            for (int i = 0; i < nodes.length; i++) {
                nodes[i] = new LabelVertex(idents[i]);
                graph.addVertex(nodes[i]);
            }
            graph.addEdge(new WeightedEdge(2), nodes[0], nodes[1]);

        } else if (node == PartialToyBuilder.NODE2) {
            // Create a partial graph
            Identity ident = new DummyIdentity("3");
            LabelVertex ver = new LabelVertex(ident);
            graph.addVertex(ver);

        } else if (node == PartialToyBuilder.NODE3) {
            Identity[] idents = {new DummyIdentity("4"),
                                 new DummyIdentity("5")};
            LabelVertex[] nodes = new LabelVertex[2];
            for (int i = 0; i < nodes.length; i++) {
                nodes[i] = new LabelVertex(idents[i]);
                graph.addVertex(nodes[i]);
            }
            graph.addEdge(new WeightedEdge(), nodes[0], nodes[1]);
        }
        return Graphs.unmodifiableUndirectedGraph(graph);
View Full Code Here

Examples of com.sun.sgs.impl.service.nodemap.affinity.graph.LabelVertex

        // As we iterate, calculate the maximum count of any particular label
        // for use later
        long maxCount = -1L;
        StringBuilder logSB = new StringBuilder();     // for logging
        for (WeightedEdge edge : edges) {
            LabelVertex neighbor = graph.getOpposite(vertex, edge);
            Integer label = neighbor.getLabel();
            Long value = labelMap.containsKey(label) ? labelMap.get(label) : 0;
            if (logger.isLoggable(Level.FINEST)) {
                logSB.append(neighbor + "(" + edge.getWeight() + ") ");
            }
            value += edge.getWeight();
View Full Code Here

Examples of com.sun.sgs.impl.service.nodemap.affinity.graph.LabelVertex

            }

            synchronized (affinityGraph) {
                // Add the vertex while synchronized to ensure no interference
                // from the graph pruner.
                LabelVertex vowner = addOrGetVertex(owner);
                // add or update edges between task owner and identities
                for (Map.Entry<Identity, Long> entry : idMap.entrySet()) {
                    Identity ident = entry.getKey();

                    // Our folded graph has no self-loops:  only add an
                    // edge if the identity isn't the owner
                    if (!ident.equals(owner)) {
                        LabelVertex vident = addOrGetVertex(ident);
                        // Check to see if we already have an edge between
                        // the two vertices.  If so, update its weight.
                        WeightedEdge edge =
                                affinityGraph.findEdge(vowner, vident);
                        if (edge == null) {
View Full Code Here

Examples of com.sun.sgs.impl.service.nodemap.affinity.graph.LabelVertex

     * existing one.
     * @param id the identity
     * @return the graph vertex representing the identity
     */
    private LabelVertex addOrGetVertex(Identity id) {
        LabelVertex v = getVertex(id);
        if (v == null) {
            v = new LabelVertex(id);
            affinityGraph.addVertex(v);
            identMap.put(id, v);
        }
        return v;
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.