빠른 트리 폭 알고리즘


18

그래프 의 트리 폭 을 계산하고 싶습니다 . 하위 그래프 동형에 대한 VF2 와 같은 다른 NP-hard 그래프 문제에 대한 휴리스틱이 실제로 있으며 igraph 에서 코드를 사용할 수 있습니다 . 나는 그래프에서 그것들을 시험해 보았고 내 데이터에 대해 매우 빠르게 실행되는 것을 발견했습니다.

비슷한 맥락에서 트리 폭 계산을위한 빠른 알고리즘이 있습니까?


1
최근에 FOCS 에서 Gaspers / Szeider에 의해 나무 폭이 SAT 경도 에 연결되었습니다. 채팅 / 토론에서 다른 사람들의 의견을 듣고 싶습니다
vzn

답변:


19

내가 아는 한, 최첨단 기술은

Hans L. Bodlaender, Fedor V. Fomin, Arie MCA Koster, Dieter Kratsch 및 Dimitrios M. Thilikos (2012), "나무 폭에 대한 정확한 알고리즘", 알고리즘 9의 ACM 트랜잭션 (1) : A12, doi : 10.1145 / 239017390390188 .

여기에 설명 된 방법에는 실제로 휴리스틱 최적화를 구현 한 알고리즘이 포함되어 있습니다.영형(2)


2
감사합니다. 상한 및 하한 휴리스틱을 제공하는 참고 문헌 2, 8 및 15는 실제로이 논문에서 가장 유용 할 수 있습니다.
felix

10

ICTAI 2011에서 Treewidth에 대한 고속 병렬 분기 및 바운드 알고리즘이라는 논문을 작성했습니다 . 다중 코어 에서 트리 폭을 계산할 수 있습니다 . 나는 많은 휴리스틱을 사용했고 프로그램을 수정하는데 많은 시간을 보냈다.

나는 중국의 임의의 학부생이었고 좋은 회의에 참석하지 않았습니다. 그러나 내 실험 결과에 따르면 내 프로그램이 매우 빠르다고 생각합니다. Treewidth lib에서 해결되지 않은 많은 벤치 마크를 해결했으며 프로그램은 IJCAI 09의 Zhou 및 Hansen이 제안한 알고리즘보다 40 배 빠릅니다.

더 이상이 주제에 대해 연구하고 있지 않습니다. 그러나 이전 작업이 도움이된다면 http://www.callowbird.com/undergraduate-stuff.html 에서 내 프로그램 (src 및 exe)을 다운로드 하여 사용해 볼 수 있습니다. (여전히 약간 큰 인스턴스에서는 매우 느립니다)


5

여기 http://arxiv.org/abs/1304.6321 (올해 FOCS에 수용 됨) Bodlaender et al. 그래프의 트리 폭이 최대 k 인 경우 최대 5k + 4의 트리 분해를 제공하는 알고리즘을 제공합니다. 당신이 관심을 가질 수 있습니다.영형(2케이)


1
알고리즘은 또는 시간으로 실행됩니다. 즉, 이 논문은 정말 구현 가능한 알고리즘을주지 않도록 매우 불쾌한입니다. 2영형(케이)영형(케이)
Pål GD

5

다음은 도움이 될 수있는 트리 폭 계산 알고리즘에 대한 두 가지 조사입니다. 첫 번째는 경험적 비교가 있으며 Java 라이브러리로 구현 된 기타 알고리즘이 있습니다.

그래프의 상한, 하한 또는 정확한 트리 폭을 계산하는 많은 알고리즘이 있습니다. 우리는 많은 상한 및 하한 휴리스틱과 두 개의 정확한 알고리즘 (동적 프로그래밍 및 분기 및 바운드 알고리즘)을 구현했습니다. 이 보고서는 다른 종류의 알고리즘을 비교하고 일부 알고리즘이 선호됨을 보여줍니다.

Treewidth는 몇 가지 흥미로운 이론적이고 실용적인 응용 프로그램이있는 그래프 매개 변수입니다. 이 설문 조사는 주어진 그래프의 트리 폭을 결정하고 작은 폭의 트리 분해를 찾는 알고리즘 결과를 검토합니다. 휴리스틱에 대한 실험적 작업 (하한에 대한 상한과 하한에 대한 실험적 작업), 전처리, 정확한 알고리즘 및 사후 처리가 논의됨에 따라 문제의 점근 적 계산 복잡성을 확립하는 두 이론적 결과.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.