2013-11-02 2 views
0

Jung 그래프가 에지를 처리하는 방법을 이해하는 데 문제가 있습니다. PageRankWithPriors를 사용하고 가장자리 가중치가없는 생성자를 사용할 때 OK 결과를 얻지 만 edgeweights를 사용하여 PageRankWithPriors를 구성하면 결과가 없습니다.JUNG 그래프 라이브러리 (PageRankWithPriors)가 에지를 어떻게 처리합니까?

PageRankWithPriors<customVertex, customEdge> ranker = new PageRankWithPriors<customVertex, customEdge>(graph.getGraph(), 
     new Transformer<customEdge, Double>() { 
     @Override 
     public Double transform(customEdge edge) { 

      return edge.getnormalizedWeight(); 
     } 
    }, 
    new Transformer<customVertex, Double>() { 
     @Override 
     public Double transform(customVertex vertex) { 
     //return getSourceNodes().contains(vertex) ? 1.0 : 0; 
      if (priorityVertexList !=null){ 
       if (priorityVertexList.contains(vertex)) return new Double((0.85/priorityVertexList.size())).doubleValue(); 
       else return new Double((0.15/(graph.getGraph().getVertexCount()-priorityVertexList.size()))).doubleValue(); 
      } 
      else{ 
       return new Double((0.15/(graph.getGraph().getVertexCount()))).doubleValue(); 
      } 
     } 
    }, alpha); 

그래서 내 질문은 edgeweights 해석하는 방법을 ... 나는 5의 가장자리 무게를 줄 수있다거나해야합니까 : PageRankWithPriors .getVertexScore()는 여기

생성자는 "NaN이"를 반환 0에서 1 사이가 되나요? (성질을 가지고)

답변

0

에지 가중치가 전이 확률을 나타내는, 그래서 주어진 정점의 나가는 가장자리에 가중치의 합이

+0

1. 정보에 감사해야합니다. 나는 결국 이것을 알아 냈고 시스템이 이제는 잘 작동하도록했습니다. 좋은 대답. – cm4l