2011-03-09 3 views
2

최단 경로 알고리즘 (2D waypoint pathfinding: combinations of WPs to go from curLocation to targetLocation)에 대한 일반적인 조언을 한 다음 더 구체적인 구현 (Shortest path algorithm (eg. Dijkstra's) for 500+ waypoints/nodes?)에 대해 질문 한 후 JUNG 라이브러리 (http://jung.sf.net/)를 사용하기로 결정했습니다.JUNG의 트리 맵 (최단 경로 알고리즘 용)

내 목표는 각 점이 x 거리 내에있는 모든 점에 직접 연결되어있는 점 목록 (크기 ~ 1000)에서 임의의 점의 조합을 사용하여 점 A에서 점 B까지 최단 경로를 얻는 것입니다. .

이 경우 트리 맵을 설정해야합니다. 이 트리 맵 구현의 목록을 믿습니다 : http://jung.sourceforge.net/doc/api/edu/uci/ics/jung/graph/class-use/Hypergraph.html#edu.uci.ics.jung.algorithms.shortestpath

맞습니까? 자, 이러한 모든 구현은 제한된 트리 맵으로 제한되지만, 다소 조밀 한 트리 맵을 만들어야합니다.

그래서 내 목표를 달성하기 위해 정에서 사용해야하는 트리 맵은 무엇입니까?

답변

1

당신의 주요 목표는 정과 함께 달성 할 수 있다고 생각하지만, 주어진 "x"거리 (모든 가능한 노드 - 노드 조합)를 필터링해야합니다. 그러나 Jung의 최단 경로 알고리즘을 사용한 경험은 없는데, 아래 예제에서 제외합니다.

정 프레임 워크 2.x는 GUI의 예는 일반적인 하이퍼 그래프을 필요로 BFSDistanceLabeler에서 최단 경로 알고리즘을 사용합니다. 에지 가중치 기반 거리 계산이 아닌 BFS 거리 기반 계산을 적용합니다. 그것은 Breadth-first search (BFS) 알고리즘입니다.

당신은 edu.uci.ics.jung.samples 패키지에서 소스 코드에 ShortestPathDemo.class를 참조 할 수 있습니다에서 중구 샘플-2.0.1.jar

내가 할 수있는 가장 좋은 참조 다른 JUNG의 최단 거리 경로 알고리즘을 찾으려면 여기를 클릭하십시오. (PDF) : www.grotto-networking.com/JUNG/JUNG2-Tutorial.pdf

+0

미안하지만 뭔가 정답이 없으면 JAW 트리 맵 구현이 스파 스 트리 맵보다 밀도가 높은 트리 맵에 어떻게 적용됩니까? – Tom

+0

하드웨어와 JVM이 크기를 처리 할 수있는 한 약 1,000 개의 노드에 대한 목록은 JUNG에서 문제가되지 않습니다. JUNG 구현에서 이러한 제약이 있음을 알 수 있습니다. 의도가 2-D 웨이 포인트 데이터를위한 것이라는 점을 고려하여 그래프를 사용할 수있는 이유는 무엇입니까? JUNG 일반 그래프, 하이퍼 그래프 또는 트리 클래스에서 고유 한 데이터 유형을 지정할 수 있습니다. 하지만, 시도하지 않은 나무 ((지시 된 뿌리가있는) 나무)에 대한 지원이 제한적입니다. 만약 그렇지 않다면 JUNG FAQ를보십시오 : http://jung.sourceforge.net/faq.html – eee

+0

그래프가 나무라고 생각했습니다. 그러나 당신은 그것이 2D 환경이라고 맞습니다. 전에이 샘플을 살펴 봤지만 실제로는별로 이해가되지 않습니다. 예를 들어 실제로 그래프를 작성하고 채 웁니다. 정글에서 non-gui 최단 경로 구현을 위해 여기에 코드의 작은 예제를 줄 수 있다면 좋을 것입니다. – Tom