Szukam odniesień do następującego problemu: biorąc pod uwagę liczby całkowite i , wyliczyć wszystkie nieizomorficzne wykresy płaskie na wierzchołkach i szerokości linii . Interesują mnie zarówno wyniki teoretyczne, jak i praktyczne, ale przede wszystkim praktyczne algorytmy, które można kodować i uruchamiać dla możliwie dużych wartości i (pomyśl i ). Jeśli masz już odpowiedź, zignoruj poniższe bzdury.
Poniższe podejście działa całkiem dobrze w przypadku wyliczania wszystkich grafów nieizomorficznych na wierzchołkach i treewidth (tj. Po usunięciu ograniczenia płaskości ):
(a) Zliczyć wszystkie wykresy nieizomorficzne na wierzchołkach i krzyżyku .
(b) Dla każdego wierzchołka na wierzchołków i szerokości wierzchołka , każdej kliki na wierzchołków w i każdego podzbioru krawędzi w , utwórz z , dodając nowy wierzchołek sąsiedztwie . Dodaj do listy grahów na wierzchołkach i treewidth .
(c) Przytnij , usuwając kopie tego samego wykresu.
Kuszącym sposobem na rozszerzenie tego zakresu na wyliczanie płaskich wykresów treewidth jest po prostu filtrowanie wykresów niepłaskich przy każdej iteracji. Niestety nie generuje to wszystkich płaskich wykresów treewidth (na przykład, ponieważ wylicza tylko wykresy zdegenerowane).
Oczywiście moglibyśmy wyliczyć wszystkie wykresy na wierzchołkach i krzywe a dopiero potem odfiltrować te niepłaskie, ale to nie wykorzystuje tego, że większość wykresów jest niepłaskich i wydaje się bardzo nieoptymalna.