A polynomial-time partitioning algorithm for weighted cactus graphs Maike Buchin, Leonie Selbach Ruhr University Bochum EuroCG 2020 Leonie Selbach 17.3.2020
Motivation & Problem p - ( l, u ) -partition problem Given: Vertex-weighted graph G = ( V, E, w ) , non-negative integers l and u with l ≤ u , positive integer p Leonie Selbach 17.3.2020
Motivation & Problem p - ( l, u ) -partition problem Given: Vertex-weighted graph G = ( V, E, w ) , non-negative integers l and u with l ≤ u , positive integer p Find a vertex partition into p clusters V 1 , V 2 , . . . , V p such that l ≤ w ( V i ) ≤ u for all 1 ≤ i ≤ p . Leonie Selbach 17.3.2020
Motivation & Problem p - ( l, u ) -partition problem Given: Vertex-weighted graph G = ( V, E, w ) , non-negative integers l and u with l ≤ u , positive integer p connected and pairwise disjoint Find a vertex partition into p clusters V 1 , V 2 , . . . , V p such that l ≤ w ( V i ) ≤ u for all 1 ≤ i ≤ p . Leonie Selbach 17.3.2020
Motivation & Problem p - ( l, u ) -partition problem Given: Vertex-weighted graph G = ( V, E, w ) , non-negative integers l and u with l ≤ u , positive integer p connected and pairwise disjoint Find a vertex partition into p clusters V 1 , V 2 , . . . , V p such that l ≤ w ( V i ) ≤ u for all 1 ≤ i ≤ p . � = w ( v ) v ∈ V i Leonie Selbach 17.3.2020
Motivation & Problem p - ( l, u ) -partition problem Given: Vertex-weighted graph G = ( V, E, w ) , non-negative integers l and u with l ≤ u , positive integer p connected and pairwise disjoint Find a vertex partition into p clusters V 1 , V 2 , . . . , V p such that l ≤ w ( V i ) ≤ u for all 1 ≤ i ≤ p . � = w ( v ) v ∈ V i Motivation Fragmentation of biomedical structures Leonie Selbach 17.3.2020
Motivation & Problem p - ( l, u ) -partition problem Find a ( l, u ) -partition with exactly p clusters. Leonie Selbach 17.3.2020
Motivation & Problem 3 4 2 5 p - ( l, u ) -partition problem 8 7 Find a ( l, u ) -partition with exactly p clusters. 2 1 4 2 3 Leonie Selbach 17.3.2020
Motivation & Problem 3 4 2 5 p - ( l, u ) -partition problem 8 7 Find a ( l, u ) -partition with exactly p clusters. 2 1 4 6 - (3 , 12) -partition 2 3 Leonie Selbach 17.3.2020
Motivation & Problem 3 4 2 5 p - ( l, u ) -partition problem 8 7 Find a ( l, u ) -partition with exactly p clusters. 2 1 4 6 - (3 , 12) -partition 2 3 Minimum/maximum- ( l, u ) -partition problem Find a ( l, u ) -partition with the minimal resp. maximal number of clusters. Leonie Selbach 17.3.2020
Motivation & Problem 3 4 2 5 p - ( l, u ) -partition problem 8 7 Find a ( l, u ) -partition with exactly p clusters. 2 1 4 6 - (3 , 12) -partition 2 3 3 4 Minimum/maximum- ( l, u ) -partition problem 2 5 Find a ( l, u ) -partition with the minimal resp. 8 7 maximal number of clusters. 2 1 4 minimum ( 3 , 12 )-partition 2 3 Leonie Selbach 17.3.2020
(Related) Results Related results • series-parallel graphs NP-hard Leonie Selbach 17.3.2020
(Related) Results Related results • series-parallel graphs NP-hard O ( u 4 p 2 n ) O ( u 4 n ) • partitial k-trees O ( u 2( k +1) p 2 n ) O ( u 2( k +1) n ) p - ( l, u ) -partition problem min/max- ( l, u ) -partition problem Leonie Selbach 17.3.2020
(Related) Results Related results • series-parallel graphs NP-hard O ( u 4 p 2 n ) O ( u 4 n ) • partitial k-trees O ( u 2( k +1) p 2 n ) O ( u 2( k +1) n ) • trees polynomial (Decision) O ( p 4 n ) O ( n 5 ) p - ( l, u ) -partition problem min/max- ( l, u ) -partition problem Leonie Selbach 17.3.2020
(Related) Results Related results • series-parallel graphs NP-hard O ( u 4 p 2 n ) O ( u 4 n ) • partitial k-trees O ( u 2( k +1) p 2 n ) O ( u 2( k +1) n ) • trees polynomial (Decision) O ( p 4 n ) O ( n 5 ) p - ( l, u ) -partition problem min/max- ( l, u ) -partition problem Our results • cactus graphs polynomial O ( p 4 n 2 ) O ( n 6 ) Leonie Selbach 17.3.2020
(Related) Results Related results • series-parallel graphs NP-hard O ( u 4 p 2 n ) O ( u 4 n ) • partitial k-trees O ( u 2( k +1) p 2 n ) O ( u 2( k +1) n ) • trees polynomial (Decision & computation) O ( p 4 n ) O ( n 5 ) p - ( l, u ) -partition problem min/max- ( l, u ) -partition problem Our results • cactus graphs polynomial (Decision & Computation) O ( p 4 n 2 ) O ( n 6 ) Leonie Selbach 17.3.2020
Preprocessing DFS on some vertex r ∈ G and store cycles Leonie Selbach 17.3.2020
Preprocessing DFS on some vertex r ∈ G and store cycles r Leonie Selbach 17.3.2020
Preprocessing DFS on some vertex r ∈ G and store cycles r Leonie Selbach 17.3.2020
Preprocessing DFS on some vertex r ∈ G and store cycles r Leonie Selbach 17.3.2020
Preprocessing DFS on some vertex r ∈ G and store cycles r Leonie Selbach 17.3.2020
Preprocessing DFS on some vertex r ∈ G and store cycles r z x r y y z x Leonie Selbach 17.3.2020
Preprocessing DFS on some vertex r ∈ G and store cycles start node r z x r end node y y z x C ( r, z ) = � r, x, y, z � Leonie Selbach 17.3.2020
Some Definitions For a partition P of T v : | P | = number of clusters in P C v = cluster containing the node v Leonie Selbach 17.3.2020
Some Definitions subtree rooted in node v For a partition P of T v : | P | = number of clusters in P C v = cluster containing the node v Leonie Selbach 17.3.2020
Some Definitions subtree rooted in node v For a partition P of T v : | P | = number of clusters in P C v = cluster containing the node v Extendable ( l, u ) -partition of T v : • w ( C v ) ≤ u • l ≤ w ( C ′ ) ≤ u for every cluster C ′ � = C v Leonie Selbach 17.3.2020
Some Definitions Partition Sets S ( T v ) = { ( x, k ) | ∃ extendable ( l, u ) -partition P of T v such that | P | = k ∧ w ( C v ) = x } Leonie Selbach 17.3.2020
Some Definitions Partition Sets S ( T v ) = { ( x, k ) | ∃ extendable ( l, u ) -partition P of T v such that | P | = k ∧ w ( C v ) = x } | S ( T v ) | = O ( up ) Leonie Selbach 17.3.2020
Some Definitions Partition Sets S ( T v ) = { ( x, k ) | ∃ extendable ( l, u ) -partition P of T v such that | P | = k ∧ w ( C v ) = x } Lemma T v has p - ( l, u ) -partition ⇔ ∃ ( x, p ) ∈ S ( T v ) such that l ≤ x ≤ u Leonie Selbach 17.3.2020
Some Definitions Partition Sets S ( T v ) = { ( x, k ) | ∃ extendable ( l, u ) -partition P of T v such that | P | = k ∧ w ( C v ) = x } Lemma T v has p - ( l, u ) -partition ⇔ ∃ ( x, p ) ∈ S ( T v ) such that l ≤ x ≤ u Idea Compute S ( T r ) for r being the root of the DFS-Tree Leonie Selbach 17.3.2020
Some Definitions Partition Sets S ( T v ) = { ( x, k ) | ∃ extendable ( l, u ) -partition P of T v such that | P | = k ∧ w ( C v ) = x } Lemma T v has p - ( l, u ) -partition ⇔ ∃ ( x, p ) ∈ S ( T v ) such that l ≤ x ≤ u Idea Compute S ( T r ) for r being the root of the DFS-Tree include an efficient procedure for the cycles Leonie Selbach 17.3.2020
Method Compute partition P of T i v by combining partitions of T i − 1 and T v i v T i v v v v 1 v 1 v i − 1 v i − 1 v i v i Leonie Selbach 17.3.2020
Method Compute partition P of T i v by combining partitions of T i − 1 and T v i v v v T i − 1 v v 1 v 1 v i − 1 v i − 1 v i v i Leonie Selbach 17.3.2020
Method Compute partition P of T i v by combining partitions of T i − 1 and T v i v v T i − 1 v v i Leonie Selbach 17.3.2020
Method Compute partition P of T i v by combining partitions of T i − 1 and T v i v v T i − 1 v v i T v i Leonie Selbach 17.3.2020
Method Compute partition P of T i v by combining partitions of T i − 1 and T v i v Given partitions P ′ of T i − 1 v v and P ′′ of T v i . C ′ v v i ′′ C v i Leonie Selbach 17.3.2020
Method Compute partition P of T i v by combining partitions of T i − 1 and T v i v Given partitions P ′ of T i − 1 v v and P ′′ of T v i . C ′ v as ( x 1 , k 1 ) ∈ S ( T i − 1 ) and v v i ′′ ( x 2 , k 2 ) ∈ S ( T v i ) C v i Leonie Selbach 17.3.2020
Method Compute partition P of T i v by combining partitions of T i − 1 and T v i v Option 1: merge v w ( C v ) = w ( C ′ v ) + w ( C ′′ v i ) C v | P | = | P ′ | + | P ′′ | − 1 v i ( x 1 + x 2 , k 1 + k 2 − 1) ∈ S ( T i v ) if x 1 + x 2 ≤ u and k 1 + k 2 − 1 ≤ p Leonie Selbach 17.3.2020
Method Compute partition P of T i v by combining partitions of T i − 1 and T v i v Option 2: don’t merge v w ( C v ) = w ( C ′ v ) C v | P | = | P ′ | + | P ′′ | v i ( x 1 , k 1 + k 2 ) ∈ S ( T i v ) if x 2 ≥ l and k 1 + k 2 ≤ p Leonie Selbach 17.3.2020
Method Compute partition P of T i v by combining partitions of T i − 1 and T v i v Leonie Selbach 17.3.2020
Method Compute partition P of T i v by combining partitions of T i − 1 and T v i v Compute set S ( T i v ) by combining sets S ( T i − 1 ) and S ( T v i ) v Leonie Selbach 17.3.2020
Recommend
More recommend